vim_rs 0.4.4

Rust Bindings for the VMware by Broadcom vCenter VI JSON API
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
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
5129
5130
5131
5132
5133
5134
5135
5136
5137
5138
5139
5140
5141
5142
5143
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230
5231
5232
5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424
5425
5426
5427
5428
5429
5430
5431
5432
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444
5445
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549
5550
5551
5552
5553
5554
5555
5556
5557
5558
5559
5560
5561
5562
5563
5564
5565
5566
5567
5568
5569
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011
6012
6013
6014
6015
6016
6017
6018
6019
6020
6021
6022
6023
6024
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
6105
6106
6107
6108
6109
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
6219
6220
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524
6525
6526
6527
6528
6529
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544
6545
6546
6547
6548
6549
6550
6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737
6738
6739
6740
6741
6742
6743
6744
6745
6746
6747
6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879
6880
6881
6882
6883
6884
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
7006
7007
7008
7009
7010
7011
7012
7013
7014
7015
7016
7017
7018
7019
7020
7021
7022
7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033
7034
7035
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045
7046
7047
7048
7049
7050
7051
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105
7106
7107
7108
7109
7110
7111
7112
7113
7114
7115
7116
7117
7118
7119
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153
7154
7155
7156
7157
7158
7159
7160
7161
7162
7163
7164
7165
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199
7200
7201
7202
7203
7204
7205
7206
7207
7208
7209
7210
7211
7212
7213
7214
7215
7216
7217
7218
7219
7220
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272
7273
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7415
7416
7417
7418
7419
7420
7421
7422
7423
7424
7425
7426
7427
7428
7429
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439
7440
7441
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463
7464
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619
7620
7621
7622
7623
7624
7625
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635
7636
7637
7638
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766
7767
7768
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820
7821
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842
7843
7844
7845
7846
7847
7848
7849
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883
7884
7885
7886
7887
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939
7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963
7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079
8080
8081
8082
8083
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101
8102
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123
8124
8125
8126
8127
8128
8129
8130
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
8166
8167
8168
8169
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183
8184
8185
8186
8187
8188
8189
8190
8191
8192
8193
8194
8195
8196
8197
8198
8199
8200
8201
8202
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213
8214
8215
8216
8217
8218
8219
8220
8221
8222
8223
8224
8225
8226
8227
8228
8229
8230
8231
8232
8233
8234
8235
8236
8237
8238
8239
8240
8241
8242
8243
8244
8245
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255
8256
8257
8258
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278
8279
8280
8281
8282
8283
8284
8285
8286
8287
8288
8289
8290
8291
8292
8293
8294
8295
8296
8297
8298
8299
8300
8301
8302
8303
8304
8305
8306
8307
8308
8309
8310
8311
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321
8322
8323
8324
8325
8326
8327
8328
8329
8330
8331
8332
8333
8334
8335
8336
8337
8338
8339
8340
8341
8342
8343
8344
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354
8355
8356
8357
8358
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374
8375
8376
8377
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387
8388
8389
8390
8391
8392
8393
8394
8395
8396
8397
8398
8399
8400
8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428
8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
8451
8452
8453
8454
8455
8456
8457
8458
8459
8460
8461
8462
8463
8464
8465
8466
8467
8468
8469
8470
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486
8487
8488
8489
8490
8491
8492
8493
8494
8495
8496
8497
8498
8499
8500
8501
8502
8503
8504
8505
8506
8507
8508
8509
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519
8520
8521
8522
8523
8524
8525
8526
8527
8528
8529
8530
8531
8532
8533
8534
8535
8536
8537
8538
8539
8540
8541
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551
8552
8553
8554
8555
8556
8557
8558
8559
8560
8561
8562
8563
8564
8565
8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585
8586
8587
8588
8589
8590
8591
8592
8593
8594
8595
8596
8597
8598
8599
8600
8601
8602
8603
8604
8605
8606
8607
8608
8609
8610
8611
8612
8613
8614
8615
8616
8617
8618
8619
8620
8621
8622
8623
8624
8625
8626
8627
8628
8629
8630
8631
8632
8633
8634
8635
8636
8637
8638
8639
8640
8641
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651
8652
8653
8654
8655
8656
8657
8658
8659
8660
8661
8662
8663
8664
8665
8666
8667
8668
8669
8670
8671
8672
8673
8674
8675
8676
8677
8678
8679
8680
8681
8682
8683
8684
8685
8686
8687
8688
8689
8690
8691
8692
8693
8694
8695
8696
8697
8698
8699
8700
8701
8702
8703
8704
8705
8706
8707
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717
8718
8719
8720
8721
8722
8723
8724
8725
8726
8727
8728
8729
8730
8731
8732
8733
8734
8735
8736
8737
8738
8739
8740
8741
8742
8743
8744
8745
8746
8747
8748
8749
8750
8751
8752
8753
8754
8755
8756
8757
8758
8759
8760
8761
8762
8763
8764
8765
8766
8767
8768
8769
8770
8771
8772
8773
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783
8784
8785
8786
8787
8788
8789
8790
8791
8792
8793
8794
8795
8796
8797
8798
8799
8800
8801
8802
8803
8804
8805
8806
8807
8808
8809
8810
8811
8812
8813
8814
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865
8866
8867
8868
8869
8870
8871
8872
8873
8874
8875
8876
8877
8878
8879
8880
8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915
8916
8917
8918
8919
8920
8921
8922
8923
8924
8925
8926
8927
8928
8929
8930
8931
8932
8933
8934
8935
8936
8937
8938
8939
8940
8941
8942
8943
8944
8945
8946
8947
8948
8949
8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
8984
8985
8986
8987
8988
8989
8990
8991
8992
8993
8994
8995
8996
8997
8998
8999
9000
9001
9002
9003
9004
9005
9006
9007
9008
9009
9010
9011
9012
9013
9014
9015
9016
9017
9018
9019
9020
9021
9022
9023
9024
9025
9026
9027
9028
9029
9030
9031
9032
9033
9034
9035
9036
9037
9038
9039
9040
9041
9042
9043
9044
9045
9046
9047
9048
9049
9050
9051
9052
9053
9054
9055
9056
9057
9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068
9069
9070
9071
9072
9073
9074
9075
9076
9077
9078
9079
9080
9081
9082
9083
9084
9085
9086
9087
9088
9089
9090
9091
9092
9093
9094
9095
9096
9097
9098
9099
9100
9101
9102
9103
9104
9105
9106
9107
9108
9109
9110
9111
9112
9113
9114
9115
9116
9117
9118
9119
9120
9121
9122
9123
9124
9125
9126
9127
9128
9129
9130
9131
9132
9133
9134
9135
9136
9137
9138
9139
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150
9151
9152
9153
9154
9155
9156
9157
9158
9159
9160
9161
9162
9163
9164
9165
9166
9167
9168
9169
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179
9180
9181
9182
9183
9184
9185
9186
9187
9188
9189
9190
9191
9192
9193
9194
9195
9196
9197
9198
9199
9200
9201
9202
9203
9204
9205
9206
9207
9208
9209
9210
9211
9212
9213
9214
9215
9216
9217
9218
9219
9220
9221
9222
9223
9224
9225
9226
9227
9228
9229
9230
9231
9232
9233
9234
9235
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
9256
9257
9258
9259
9260
9261
9262
9263
9264
9265
9266
9267
9268
9269
9270
9271
9272
9273
9274
9275
9276
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
9287
9288
9289
9290
9291
9292
9293
9294
9295
9296
9297
9298
9299
9300
9301
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311
9312
9313
9314
9315
9316
9317
9318
9319
9320
9321
9322
9323
9324
9325
9326
9327
9328
9329
9330
9331
9332
9333
9334
9335
9336
9337
9338
9339
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
9352
9353
9354
9355
9356
9357
9358
9359
9360
9361
9362
9363
9364
9365
9366
9367
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377
9378
9379
9380
9381
9382
9383
9384
9385
9386
9387
9388
9389
9390
9391
9392
9393
9394
9395
9396
9397
9398
9399
9400
9401
9402
9403
9404
9405
9406
9407
9408
9409
9410
9411
9412
9413
9414
9415
9416
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429
9430
9431
9432
9433
9434
9435
9436
9437
9438
9439
9440
9441
9442
9443
9444
9445
9446
9447
9448
9449
9450
9451
9452
9453
9454
9455
9456
9457
9458
9459
9460
9461
9462
9463
9464
9465
9466
9467
9468
9469
9470
9471
9472
9473
9474
9475
9476
9477
9478
9479
9480
9481
9482
9483
9484
9485
9486
9487
9488
9489
9490
9491
9492
9493
9494
9495
9496
9497
9498
9499
9500
9501
9502
9503
9504
9505
9506
9507
9508
9509
9510
9511
9512
9513
9514
9515
9516
9517
9518
9519
9520
9521
9522
9523
9524
9525
9526
9527
9528
9529
9530
9531
9532
9533
9534
9535
9536
9537
9538
9539
9540
9541
9542
9543
9544
9545
9546
9547
9548
9549
9550
9551
9552
9553
9554
9555
9556
9557
9558
9559
9560
9561
9562
9563
9564
9565
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575
9576
9577
9578
9579
9580
9581
9582
9583
9584
9585
9586
9587
9588
9589
9590
9591
9592
9593
9594
9595
9596
9597
9598
9599
9600
9601
9602
9603
9604
9605
9606
9607
9608
9609
9610
9611
9612
9613
9614
9615
9616
9617
9618
9619
9620
9621
9622
9623
9624
9625
9626
9627
9628
9629
9630
9631
9632
9633
9634
9635
9636
9637
9638
9639
9640
9641
9642
9643
9644
9645
9646
9647
9648
9649
9650
9651
9652
9653
9654
9655
9656
9657
9658
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676
9677
9678
9679
9680
9681
9682
9683
9684
9685
9686
9687
9688
9689
9690
9691
9692
9693
9694
9695
9696
9697
9698
9699
9700
9701
9702
9703
9704
9705
9706
9707
9708
9709
9710
9711
9712
9713
9714
9715
9716
9717
9718
9719
9720
9721
9722
9723
9724
9725
9726
9727
9728
9729
9730
9731
9732
9733
9734
9735
9736
9737
9738
9739
9740
9741
9742
9743
9744
9745
9746
9747
9748
9749
9750
9751
9752
9753
9754
9755
9756
9757
9758
9759
9760
9761
9762
9763
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789
9790
9791
9792
9793
9794
9795
9796
9797
9798
9799
9800
9801
9802
9803
9804
9805
9806
9807
9808
9809
9810
9811
9812
9813
9814
9815
9816
9817
9818
9819
9820
9821
9822
9823
9824
9825
9826
9827
9828
9829
9830
9831
9832
9833
9834
9835
9836
9837
9838
9839
9840
9841
9842
9843
9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
9930
9931
9932
9933
9934
9935
9936
9937
9938
9939
9940
9941
9942
9943
9944
9945
9946
9947
9948
9949
9950
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971
9972
9973
9974
9975
9976
9977
9978
9979
9980
9981
9982
9983
9984
9985
9986
9987
9988
9989
9990
9991
9992
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
10005
10006
10007
10008
10009
10010
10011
10012
10013
10014
10015
10016
10017
10018
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045
10046
10047
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
10070
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109
10110
10111
10112
10113
10114
10115
10116
10117
10118
10119
10120
10121
10122
10123
10124
10125
10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169
10170
10171
10172
10173
10174
10175
10176
10177
10178
10179
10180
10181
10182
10183
10184
10185
10186
10187
10188
10189
10190
10191
10192
10193
10194
10195
10196
10197
10198
10199
10200
10201
10202
10203
10204
10205
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235
10236
10237
10238
10239
10240
10241
10242
10243
10244
10245
10246
10247
10248
10249
10250
10251
10252
10253
10254
10255
10256
10257
10258
10259
10260
10261
10262
10263
10264
10265
10266
10267
10268
10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312
10313
10314
10315
10316
10317
10318
10319
10320
10321
10322
10323
10324
10325
10326
10327
10328
10329
10330
10331
10332
10333
10334
10335
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
10353
10354
10355
10356
10357
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
10483
10484
10485
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514
10515
10516
10517
10518
10519
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572
10573
10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585
10586
10587
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
10609
10610
10611
10612
10613
10614
10615
10616
10617
10618
10619
10620
10621
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631
10632
10633
10634
10635
10636
10637
10638
10639
10640
10641
10642
10643
10644
10645
10646
10647
10648
10649
10650
10651
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686
10687
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701
10702
10703
10704
10705
10706
10707
10708
10709
10710
10711
10712
10713
10714
10715
10716
10717
10718
10719
10720
10721
10722
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766
10767
10768
10769
10770
10771
10772
10773
10774
10775
10776
10777
10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789
10790
10791
10792
10793
10794
10795
10796
10797
10798
10799
10800
10801
10802
10803
10804
10805
10806
10807
10808
10809
10810
10811
10812
10813
10814
10815
10816
10817
10818
10819
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832
10833
10834
10835
10836
10837
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897
10898
10899
10900
10901
10902
10903
10904
10905
10906
10907
10908
10909
10910
10911
10912
10913
10914
10915
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926
10927
10928
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961
10962
10963
10964
10965
10966
10967
10968
10969
10970
10971
10972
10973
10974
10975
10976
10977
10978
10979
10980
10981
10982
10983
10984
10985
10986
10987
10988
10989
10990
10991
10992
10993
10994
10995
10996
10997
10998
10999
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030
11031
11032
11033
11034
11035
11036
11037
11038
11039
11040
11041
11042
11043
11044
11045
11046
11047
11048
11049
11050
11051
11052
11053
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093
11094
11095
11096
11097
11098
11099
11100
11101
11102
11103
11104
11105
11106
11107
11108
11109
11110
11111
11112
11113
11114
11115
11116
11117
11118
11119
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162
11163
11164
11165
11166
11167
11168
11169
11170
11171
11172
11173
11174
11175
11176
11177
11178
11179
11180
11181
11182
11183
11184
11185
11186
11187
11188
11189
11190
11191
11192
11193
11194
11195
11196
11197
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225
11226
11227
11228
11229
11230
11231
11232
11233
11234
11235
11236
11237
11238
11239
11240
11241
11242
11243
11244
11245
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260
11261
11262
11263
11264
11265
11266
11267
11268
11269
11270
11271
11272
11273
11274
11275
11276
11277
11278
11279
11280
11281
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
11317
11318
11319
11320
11321
11322
11323
11324
11325
11326
11327
11328
11329
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339
11340
11341
11342
11343
11344
11345
11346
11347
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357
11358
11359
11360
11361
11362
11363
11364
11365
11366
11367
11368
11369
11370
11371
11372
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
11472
11473
11474
11475
11476
11477
11478
11479
11480
11481
11482
11483
11484
11485
11486
11487
11488
11489
11490
11491
11492
11493
11494
11495
11496
11497
11498
11499
11500
11501
11502
11503
11504
11505
11506
11507
11508
11509
11510
11511
11512
11513
11514
11515
11516
11517
11518
11519
11520
11521
11522
11523
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545
11546
11547
11548
11549
11550
11551
11552
11553
11554
11555
11556
11557
11558
11559
11560
11561
11562
11563
11564
11565
11566
11567
11568
11569
11570
11571
11572
11573
11574
11575
11576
11577
11578
11579
11580
11581
11582
11583
11584
11585
11586
11587
11588
11589
11590
11591
11592
11593
11594
11595
11596
11597
11598
11599
11600
11601
11602
11603
11604
11605
11606
11607
11608
11609
11610
11611
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621
11622
11623
11624
11625
11626
11627
11628
11629
11630
11631
11632
11633
11634
11635
11636
11637
11638
11639
11640
11641
11642
11643
11644
11645
11646
11647
11648
11649
11650
11651
11652
11653
11654
11655
11656
11657
11658
11659
11660
11661
11662
11663
11664
11665
11666
11667
11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687
11688
11689
11690
11691
11692
11693
11694
11695
11696
11697
11698
11699
11700
11701
11702
11703
11704
11705
11706
11707
11708
11709
11710
11711
11712
11713
11714
11715
11716
11717
11718
11719
11720
11721
11722
11723
11724
11725
11726
11727
11728
11729
11730
11731
11732
11733
11734
11735
11736
11737
11738
11739
11740
11741
11742
11743
11744
11745
11746
11747
11748
11749
11750
11751
11752
11753
11754
11755
11756
11757
11758
11759
11760
11761
11762
11763
11764
11765
11766
11767
11768
11769
11770
11771
11772
11773
11774
11775
11776
11777
11778
11779
11780
11781
11782
11783
11784
11785
11786
11787
11788
11789
11790
11791
11792
11793
11794
11795
11796
11797
11798
11799
11800
11801
11802
11803
11804
11805
11806
11807
11808
11809
11810
11811
11812
11813
11814
11815
11816
11817
11818
11819
11820
11821
11822
11823
11824
11825
11826
11827
11828
11829
11830
11831
11832
11833
11834
11835
11836
11837
11838
11839
11840
11841
11842
11843
11844
11845
11846
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866
11867
11868
11869
11870
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880
11881
11882
11883
11884
11885
11886
11887
11888
11889
11890
11891
11892
11893
11894
11895
11896
11897
11898
11899
11900
11901
11902
11903
11904
11905
11906
11907
11908
11909
11910
11911
11912
11913
11914
11915
11916
11917
11918
11919
11920
11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
11943
11944
11945
11946
11947
11948
11949
11950
11951
11952
11953
11954
11955
11956
11957
11958
11959
11960
11961
11962
11963
11964
11965
11966
11967
11968
11969
11970
11971
11972
11973
11974
11975
11976
11977
11978
11979
11980
11981
11982
11983
11984
11985
11986
11987
11988
11989
11990
11991
11992
11993
11994
11995
11996
11997
11998
11999
12000
12001
12002
12003
12004
12005
12006
12007
12008
12009
12010
12011
12012
12013
12014
12015
12016
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
12033
12034
12035
12036
12037
12038
12039
12040
12041
12042
12043
12044
12045
12046
12047
12048
12049
12050
12051
12052
12053
12054
12055
12056
12057
12058
12059
12060
12061
12062
12063
12064
12065
12066
12067
12068
12069
12070
12071
12072
12073
12074
12075
12076
12077
12078
12079
12080
12081
12082
12083
12084
12085
12086
12087
12088
12089
12090
12091
12092
12093
12094
12095
12096
12097
12098
12099
12100
12101
12102
12103
12104
12105
12106
12107
12108
12109
12110
12111
12112
12113
12114
12115
12116
12117
12118
12119
12120
12121
12122
12123
12124
12125
12126
12127
12128
12129
12130
12131
12132
12133
12134
12135
12136
12137
12138
12139
12140
12141
12142
12143
12144
12145
12146
12147
12148
12149
12150
12151
12152
12153
12154
12155
12156
12157
12158
12159
12160
12161
12162
12163
12164
12165
12166
12167
12168
12169
12170
12171
12172
12173
12174
12175
12176
12177
12178
12179
12180
12181
12182
12183
12184
12185
12186
12187
12188
12189
12190
12191
12192
12193
12194
12195
12196
12197
12198
12199
12200
12201
12202
12203
12204
12205
12206
12207
12208
12209
12210
12211
12212
12213
12214
12215
12216
12217
12218
12219
12220
12221
12222
12223
12224
12225
12226
12227
12228
12229
12230
12231
12232
12233
12234
12235
12236
12237
12238
12239
12240
12241
12242
12243
12244
12245
12246
12247
12248
12249
12250
12251
12252
12253
12254
12255
12256
12257
12258
12259
12260
12261
12262
12263
12264
12265
12266
12267
12268
12269
12270
12271
12272
12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
12294
12295
12296
12297
12298
12299
12300
12301
12302
12303
12304
12305
12306
12307
12308
12309
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320
12321
12322
12323
12324
12325
12326
12327
12328
12329
12330
12331
12332
12333
12334
12335
12336
12337
12338
12339
12340
12341
12342
12343
12344
12345
12346
12347
12348
12349
12350
12351
12352
12353
12354
12355
12356
12357
12358
12359
12360
12361
12362
12363
12364
12365
12366
12367
12368
12369
12370
12371
12372
12373
12374
12375
12376
12377
12378
12379
12380
12381
12382
12383
12384
12385
12386
12387
12388
12389
12390
12391
12392
12393
12394
12395
12396
12397
12398
12399
12400
12401
12402
12403
12404
12405
12406
12407
12408
12409
12410
12411
12412
12413
12414
12415
12416
12417
12418
12419
12420
12421
12422
12423
12424
12425
12426
12427
12428
12429
12430
12431
12432
12433
12434
12435
12436
12437
12438
12439
12440
12441
12442
12443
12444
12445
12446
12447
12448
12449
12450
12451
12452
12453
12454
12455
12456
12457
12458
12459
12460
12461
12462
12463
12464
12465
12466
12467
12468
12469
12470
12471
12472
12473
12474
12475
12476
12477
12478
12479
12480
12481
12482
12483
12484
12485
12486
12487
12488
12489
12490
12491
12492
12493
12494
12495
12496
12497
12498
12499
12500
12501
12502
12503
12504
12505
12506
12507
12508
12509
12510
12511
12512
12513
12514
12515
12516
12517
12518
12519
12520
12521
12522
12523
12524
12525
12526
12527
12528
12529
12530
12531
12532
12533
12534
12535
12536
12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
12547
12548
12549
12550
12551
12552
12553
12554
12555
12556
12557
12558
12559
12560
12561
12562
12563
12564
12565
12566
12567
12568
12569
12570
12571
12572
12573
12574
12575
12576
12577
12578
12579
12580
12581
12582
12583
12584
12585
12586
12587
12588
12589
12590
12591
12592
12593
12594
12595
12596
12597
12598
12599
12600
12601
12602
12603
12604
12605
12606
12607
12608
12609
12610
12611
12612
12613
12614
12615
12616
12617
12618
12619
12620
12621
12622
12623
12624
12625
12626
12627
12628
12629
12630
12631
12632
12633
12634
12635
12636
12637
12638
12639
12640
12641
12642
12643
12644
12645
12646
12647
12648
12649
12650
12651
12652
12653
12654
12655
12656
12657
12658
12659
12660
12661
12662
12663
12664
12665
12666
12667
12668
12669
12670
12671
12672
12673
12674
12675
12676
12677
12678
12679
12680
12681
12682
12683
12684
12685
12686
12687
12688
12689
12690
12691
12692
12693
12694
12695
12696
12697
12698
12699
12700
12701
12702
12703
12704
12705
12706
12707
12708
12709
12710
12711
12712
12713
12714
12715
12716
12717
12718
12719
12720
12721
12722
12723
12724
12725
12726
12727
12728
12729
12730
12731
12732
12733
12734
12735
12736
12737
12738
12739
12740
12741
12742
12743
12744
12745
12746
12747
12748
12749
12750
12751
12752
12753
12754
12755
12756
12757
12758
12759
12760
12761
12762
12763
12764
12765
12766
12767
12768
12769
12770
12771
12772
12773
12774
12775
12776
12777
12778
12779
12780
12781
12782
12783
12784
12785
12786
12787
12788
12789
12790
12791
12792
12793
12794
12795
12796
12797
12798
12799
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812
12813
12814
12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
12825
12826
12827
12828
12829
12830
12831
12832
12833
12834
12835
12836
12837
12838
12839
12840
12841
12842
12843
12844
12845
12846
12847
12848
12849
12850
12851
12852
12853
12854
12855
12856
12857
12858
12859
12860
12861
12862
12863
12864
12865
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
12903
12904
12905
12906
12907
12908
12909
12910
12911
12912
12913
12914
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924
12925
12926
12927
12928
12929
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944
12945
12946
12947
12948
12949
12950
12951
12952
12953
12954
12955
12956
12957
12958
12959
12960
12961
12962
12963
12964
12965
12966
12967
12968
12969
12970
12971
12972
12973
12974
12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
12985
12986
12987
12988
12989
12990
12991
12992
12993
12994
12995
12996
12997
12998
12999
13000
13001
13002
13003
13004
13005
13006
13007
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042
13043
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054
13055
13056
13057
13058
13059
13060
13061
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
13077
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134
13135
13136
13137
13138
13139
13140
13141
13142
13143
13144
13145
13146
13147
13148
13149
13150
13151
13152
13153
13154
13155
13156
13157
13158
13159
13160
13161
13162
13163
13164
13165
13166
13167
13168
13169
13170
13171
13172
13173
13174
13175
13176
13177
13178
13179
13180
13181
13182
13183
13184
13185
13186
13187
13188
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
13204
13205
13206
13207
13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
13226
13227
13228
13229
13230
13231
13232
13233
13234
13235
13236
13237
13238
13239
13240
13241
13242
13243
13244
13245
13246
13247
13248
13249
13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
13260
13261
13262
13263
13264
13265
13266
13267
13268
13269
13270
13271
13272
13273
13274
13275
13276
13277
13278
13279
13280
13281
13282
13283
13284
13285
13286
13287
13288
13289
13290
13291
13292
13293
13294
13295
13296
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
13311
13312
13313
13314
13315
13316
13317
13318
13319
13320
13321
13322
13323
13324
13325
13326
13327
13328
13329
13330
13331
13332
13333
13334
13335
13336
13337
13338
13339
13340
13341
13342
13343
13344
13345
13346
13347
13348
13349
13350
13351
13352
13353
13354
13355
13356
13357
13358
13359
13360
13361
13362
13363
13364
13365
13366
13367
13368
13369
13370
13371
13372
13373
13374
13375
13376
13377
13378
13379
13380
13381
13382
13383
13384
13385
13386
13387
13388
13389
13390
13391
13392
13393
13394
13395
13396
13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409
13410
13411
13412
13413
13414
13415
13416
13417
13418
13419
13420
13421
13422
13423
13424
13425
13426
13427
13428
13429
13430
13431
13432
13433
13434
13435
13436
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447
13448
13449
13450
13451
13452
13453
13454
13455
13456
13457
13458
13459
13460
13461
13462
13463
13464
13465
13466
13467
13468
13469
13470
13471
13472
13473
13474
13475
13476
13477
13478
13479
13480
13481
13482
13483
13484
13485
13486
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13503
13504
13505
13506
13507
13508
13509
13510
13511
13512
13513
13514
13515
13516
13517
13518
13519
13520
13521
13522
13523
13524
13525
13526
13527
13528
13529
13530
13531
13532
13533
13534
13535
13536
13537
13538
13539
13540
13541
13542
13543
13544
13545
13546
13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
13559
13560
13561
13562
13563
13564
13565
13566
13567
13568
13569
13570
13571
13572
13573
13574
13575
13576
13577
13578
13579
13580
13581
13582
13583
13584
13585
13586
13587
13588
13589
13590
13591
13592
13593
13594
13595
13596
13597
13598
13599
13600
13601
13602
13603
13604
13605
13606
13607
13608
13609
13610
13611
13612
13613
13614
13615
13616
13617
13618
13619
13620
13621
13622
13623
13624
13625
13626
13627
13628
13629
13630
13631
13632
13633
13634
13635
13636
13637
13638
13639
13640
13641
13642
13643
13644
13645
13646
13647
13648
13649
13650
13651
13652
13653
13654
13655
13656
13657
13658
13659
13660
13661
13662
13663
13664
13665
13666
13667
13668
13669
13670
13671
13672
13673
13674
13675
13676
13677
13678
13679
13680
13681
13682
13683
13684
13685
13686
13687
13688
13689
13690
13691
13692
13693
13694
13695
13696
13697
13698
13699
13700
13701
13702
13703
13704
13705
13706
13707
13708
13709
13710
13711
13712
13713
13714
13715
13716
13717
13718
13719
13720
13721
13722
13723
13724
13725
13726
13727
13728
13729
13730
13731
13732
13733
13734
13735
13736
13737
13738
13739
13740
13741
13742
13743
13744
13745
13746
13747
13748
13749
13750
13751
13752
13753
13754
13755
13756
13757
13758
13759
13760
13761
13762
13763
13764
13765
13766
13767
13768
13769
13770
13771
13772
13773
13774
13775
13776
13777
13778
13779
13780
13781
13782
13783
13784
13785
13786
13787
13788
13789
13790
13791
13792
13793
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
13804
13805
13806
13807
13808
13809
13810
13811
13812
13813
13814
13815
13816
13817
13818
13819
13820
13821
13822
13823
13824
13825
13826
13827
13828
13829
13830
13831
13832
13833
13834
13835
13836
13837
13838
13839
13840
13841
13842
13843
13844
13845
13846
13847
13848
13849
13850
13851
13852
13853
13854
13855
13856
13857
13858
13859
13860
13861
13862
13863
13864
13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
13877
13878
13879
13880
13881
13882
13883
13884
13885
13886
13887
13888
13889
13890
13891
13892
13893
13894
13895
13896
13897
13898
13899
13900
13901
13902
13903
13904
13905
13906
13907
13908
13909
13910
13911
13912
13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
13940
13941
13942
13943
13944
13945
13946
13947
13948
13949
13950
13951
13952
13953
13954
13955
13956
13957
13958
13959
13960
13961
13962
13963
13964
13965
13966
13967
13968
13969
13970
13971
13972
13973
13974
13975
13976
13977
13978
13979
13980
13981
13982
13983
13984
13985
13986
13987
13988
13989
13990
13991
13992
13993
13994
13995
13996
13997
13998
13999
14000
14001
14002
14003
14004
14005
14006
14007
14008
14009
14010
14011
14012
14013
14014
14015
14016
14017
14018
14019
14020
14021
14022
14023
14024
14025
14026
14027
14028
14029
14030
14031
14032
14033
14034
14035
14036
14037
14038
14039
14040
14041
14042
14043
14044
14045
14046
14047
14048
14049
14050
14051
14052
14053
14054
14055
14056
14057
14058
14059
14060
14061
14062
14063
14064
14065
14066
14067
14068
14069
14070
14071
14072
14073
14074
14075
14076
14077
14078
14079
14080
14081
14082
14083
14084
14085
14086
14087
14088
14089
14090
14091
14092
14093
14094
14095
14096
14097
14098
14099
14100
14101
14102
14103
14104
14105
14106
14107
14108
14109
14110
14111
14112
14113
14114
14115
14116
14117
14118
14119
14120
14121
14122
14123
14124
14125
14126
14127
14128
14129
14130
14131
14132
14133
14134
14135
14136
14137
14138
14139
14140
14141
14142
14143
14144
14145
14146
14147
14148
14149
14150
14151
14152
14153
14154
14155
14156
14157
14158
14159
14160
14161
14162
14163
14164
14165
14166
14167
14168
14169
14170
14171
14172
14173
14174
14175
14176
14177
14178
14179
14180
14181
14182
14183
14184
14185
14186
14187
14188
14189
14190
14191
14192
14193
14194
14195
14196
14197
14198
14199
14200
14201
14202
14203
14204
14205
14206
14207
14208
14209
14210
14211
14212
14213
14214
14215
14216
14217
14218
14219
14220
14221
14222
14223
14224
14225
14226
14227
14228
14229
14230
14231
14232
14233
14234
14235
14236
14237
14238
14239
14240
14241
14242
14243
14244
14245
14246
14247
14248
14249
14250
14251
14252
14253
14254
14255
14256
14257
14258
14259
14260
14261
14262
14263
14264
14265
14266
14267
14268
14269
14270
14271
14272
14273
14274
14275
14276
14277
14278
14279
14280
14281
14282
14283
14284
14285
14286
14287
14288
14289
14290
14291
14292
14293
14294
14295
14296
14297
14298
14299
14300
14301
14302
14303
14304
14305
14306
14307
14308
14309
14310
14311
14312
14313
14314
14315
14316
14317
14318
14319
14320
14321
14322
14323
14324
14325
14326
14327
14328
14329
14330
14331
14332
14333
14334
14335
14336
14337
14338
14339
14340
14341
14342
14343
14344
14345
14346
14347
14348
14349
14350
14351
14352
14353
14354
14355
14356
14357
14358
14359
14360
14361
14362
14363
14364
14365
14366
14367
14368
14369
14370
14371
14372
14373
14374
14375
14376
14377
14378
14379
14380
14381
14382
14383
14384
14385
14386
14387
14388
14389
14390
14391
14392
14393
14394
14395
14396
14397
14398
14399
14400
14401
14402
14403
14404
14405
14406
14407
14408
14409
14410
14411
14412
14413
14414
14415
14416
14417
14418
14419
14420
14421
14422
14423
14424
14425
14426
14427
14428
14429
14430
14431
14432
14433
14434
14435
14436
14437
14438
14439
14440
14441
14442
14443
14444
14445
14446
14447
14448
14449
14450
14451
14452
14453
14454
14455
14456
14457
14458
14459
14460
14461
14462
14463
14464
14465
14466
14467
14468
14469
14470
14471
14472
14473
14474
14475
14476
14477
14478
14479
14480
14481
14482
14483
14484
14485
14486
14487
14488
14489
14490
14491
14492
14493
14494
14495
14496
14497
14498
14499
14500
14501
14502
14503
14504
14505
14506
14507
14508
14509
14510
14511
14512
14513
14514
14515
14516
14517
14518
14519
14520
14521
14522
14523
14524
14525
14526
14527
14528
14529
14530
14531
14532
14533
14534
14535
14536
14537
14538
14539
14540
14541
14542
14543
14544
14545
14546
14547
14548
14549
14550
14551
14552
14553
14554
14555
14556
14557
14558
14559
14560
14561
14562
14563
14564
14565
14566
14567
14568
14569
14570
14571
14572
14573
14574
14575
14576
14577
14578
14579
14580
14581
14582
14583
14584
14585
14586
14587
14588
14589
14590
14591
14592
14593
14594
14595
14596
14597
14598
14599
14600
14601
14602
14603
14604
14605
14606
14607
14608
14609
14610
14611
14612
14613
14614
14615
14616
14617
14618
14619
14620
14621
14622
14623
14624
14625
14626
14627
14628
14629
14630
14631
14632
14633
14634
14635
14636
14637
14638
14639
14640
14641
14642
14643
14644
14645
14646
14647
14648
14649
14650
14651
14652
14653
14654
14655
14656
14657
14658
14659
14660
14661
14662
14663
14664
14665
14666
14667
14668
14669
14670
14671
14672
14673
14674
14675
14676
14677
14678
14679
14680
14681
14682
14683
14684
14685
14686
14687
14688
14689
14690
14691
14692
14693
14694
14695
14696
14697
14698
14699
14700
14701
14702
14703
14704
14705
14706
14707
14708
14709
14710
14711
14712
14713
14714
14715
14716
14717
14718
14719
14720
14721
14722
14723
14724
14725
14726
14727
14728
14729
14730
14731
14732
14733
14734
14735
14736
14737
14738
14739
14740
14741
14742
14743
14744
14745
14746
14747
14748
14749
14750
14751
14752
14753
14754
14755
14756
14757
14758
14759
14760
14761
14762
14763
14764
14765
14766
14767
14768
14769
14770
14771
14772
14773
14774
14775
14776
14777
14778
14779
14780
14781
14782
14783
14784
14785
14786
14787
14788
14789
14790
14791
14792
14793
14794
14795
14796
14797
14798
14799
14800
14801
14802
14803
14804
14805
14806
14807
14808
14809
14810
14811
14812
14813
14814
14815
14816
14817
14818
14819
14820
14821
14822
14823
14824
14825
14826
14827
14828
14829
14830
14831
14832
14833
14834
14835
14836
14837
14838
14839
14840
14841
14842
14843
14844
14845
14846
14847
14848
14849
14850
14851
14852
14853
14854
14855
14856
14857
14858
14859
14860
14861
14862
14863
14864
14865
14866
14867
14868
14869
14870
14871
14872
14873
14874
14875
14876
14877
14878
14879
14880
14881
14882
14883
14884
14885
14886
14887
14888
14889
14890
14891
14892
14893
14894
14895
14896
14897
14898
14899
14900
14901
14902
14903
14904
14905
14906
14907
14908
14909
14910
14911
14912
14913
14914
14915
14916
14917
14918
14919
14920
14921
14922
14923
14924
14925
14926
14927
14928
14929
14930
14931
14932
14933
14934
14935
14936
14937
14938
14939
14940
14941
14942
14943
14944
14945
14946
14947
14948
14949
14950
14951
14952
14953
14954
14955
14956
14957
14958
14959
14960
14961
14962
14963
14964
14965
14966
14967
14968
14969
14970
14971
14972
14973
14974
14975
14976
14977
14978
14979
14980
14981
14982
14983
14984
14985
14986
14987
14988
14989
14990
14991
14992
14993
14994
14995
14996
14997
14998
14999
15000
15001
15002
15003
15004
15005
15006
15007
15008
15009
15010
15011
15012
15013
15014
15015
15016
15017
15018
15019
15020
15021
15022
15023
15024
15025
15026
15027
15028
15029
15030
15031
15032
15033
15034
15035
15036
15037
15038
15039
15040
15041
15042
15043
15044
15045
15046
15047
15048
15049
15050
15051
15052
15053
15054
15055
15056
15057
15058
15059
15060
15061
15062
15063
15064
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
15076
15077
15078
15079
15080
15081
15082
15083
15084
15085
15086
15087
15088
15089
15090
15091
15092
15093
15094
15095
15096
15097
15098
15099
15100
15101
15102
15103
15104
15105
15106
15107
15108
15109
15110
15111
15112
15113
15114
15115
15116
15117
15118
15119
15120
15121
15122
15123
15124
15125
15126
15127
15128
15129
15130
15131
15132
15133
15134
15135
15136
15137
15138
15139
15140
15141
15142
15143
15144
15145
15146
15147
15148
15149
15150
15151
15152
15153
15154
15155
15156
15157
15158
15159
15160
15161
15162
15163
15164
15165
15166
15167
15168
15169
15170
15171
15172
15173
15174
15175
15176
15177
15178
15179
15180
15181
15182
15183
15184
15185
15186
15187
15188
15189
15190
15191
15192
15193
15194
15195
15196
15197
15198
15199
15200
15201
15202
15203
15204
15205
15206
15207
15208
15209
15210
15211
15212
15213
15214
15215
15216
15217
15218
15219
15220
15221
15222
15223
15224
15225
15226
15227
15228
15229
15230
15231
15232
15233
15234
15235
15236
15237
15238
15239
15240
15241
15242
15243
15244
15245
15246
15247
15248
15249
15250
15251
15252
15253
15254
15255
15256
15257
15258
15259
15260
15261
15262
15263
15264
15265
15266
15267
15268
15269
15270
15271
15272
15273
15274
15275
15276
15277
15278
15279
15280
15281
15282
15283
15284
15285
15286
15287
15288
15289
15290
15291
15292
15293
15294
15295
15296
15297
15298
15299
15300
15301
15302
15303
15304
15305
15306
15307
15308
15309
15310
15311
15312
15313
15314
15315
15316
15317
15318
15319
15320
15321
15322
15323
15324
15325
15326
15327
15328
15329
15330
15331
15332
15333
15334
15335
15336
15337
15338
15339
15340
15341
15342
15343
15344
15345
15346
15347
15348
15349
15350
15351
15352
15353
15354
15355
15356
15357
15358
15359
15360
15361
15362
15363
15364
15365
15366
15367
15368
15369
15370
15371
15372
15373
15374
15375
15376
15377
15378
15379
15380
15381
15382
15383
15384
15385
15386
15387
15388
15389
15390
15391
15392
15393
15394
15395
15396
15397
15398
15399
15400
15401
15402
15403
15404
15405
15406
15407
15408
15409
15410
15411
15412
15413
15414
15415
15416
15417
15418
15419
15420
15421
15422
15423
15424
15425
15426
15427
15428
15429
15430
15431
15432
15433
15434
15435
15436
15437
15438
15439
15440
15441
15442
15443
15444
15445
15446
15447
15448
15449
15450
15451
15452
15453
15454
15455
15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
15468
15469
15470
15471
15472
15473
15474
15475
15476
15477
15478
15479
15480
15481
15482
15483
15484
15485
15486
15487
15488
15489
15490
15491
15492
15493
15494
15495
15496
15497
15498
15499
15500
15501
15502
15503
15504
15505
15506
15507
15508
15509
15510
15511
15512
15513
15514
15515
15516
15517
15518
15519
15520
15521
15522
15523
15524
15525
15526
15527
15528
15529
15530
15531
15532
15533
15534
15535
15536
15537
15538
15539
15540
15541
15542
15543
15544
15545
15546
15547
15548
15549
15550
15551
15552
15553
15554
15555
15556
15557
15558
15559
15560
15561
15562
15563
15564
15565
15566
15567
15568
15569
15570
15571
15572
15573
15574
15575
15576
15577
15578
15579
15580
15581
15582
15583
15584
15585
15586
15587
15588
15589
15590
15591
15592
15593
15594
15595
15596
15597
15598
15599
15600
15601
15602
15603
15604
15605
15606
15607
15608
15609
15610
15611
15612
15613
15614
15615
15616
15617
15618
15619
15620
15621
15622
15623
15624
15625
15626
15627
15628
15629
15630
15631
15632
15633
15634
15635
15636
15637
15638
15639
15640
15641
15642
15643
15644
15645
15646
15647
15648
15649
15650
15651
15652
15653
15654
15655
15656
15657
15658
15659
15660
15661
15662
15663
15664
15665
15666
15667
15668
15669
15670
15671
15672
15673
15674
15675
15676
15677
15678
15679
15680
15681
15682
15683
15684
15685
15686
15687
15688
15689
15690
15691
15692
15693
15694
15695
15696
15697
15698
15699
15700
15701
15702
15703
15704
15705
15706
15707
15708
15709
15710
15711
15712
15713
15714
15715
15716
15717
15718
15719
15720
15721
15722
15723
15724
15725
15726
15727
15728
15729
15730
15731
15732
15733
15734
15735
15736
15737
15738
15739
15740
15741
15742
15743
15744
15745
15746
15747
15748
15749
15750
15751
15752
15753
15754
15755
15756
15757
15758
15759
15760
15761
15762
15763
15764
15765
15766
15767
15768
15769
15770
15771
15772
15773
15774
15775
15776
15777
15778
15779
15780
15781
15782
15783
15784
15785
15786
15787
15788
15789
15790
15791
15792
15793
15794
15795
15796
15797
15798
15799
15800
15801
15802
15803
15804
15805
15806
15807
15808
15809
15810
15811
15812
15813
15814
15815
15816
15817
15818
15819
15820
15821
15822
15823
15824
15825
15826
15827
15828
15829
15830
15831
15832
15833
15834
15835
15836
15837
15838
15839
15840
15841
15842
15843
15844
15845
15846
15847
15848
15849
15850
15851
15852
15853
15854
15855
15856
15857
15858
15859
15860
15861
15862
15863
15864
15865
15866
15867
15868
15869
15870
15871
15872
15873
15874
15875
15876
15877
15878
15879
15880
15881
15882
15883
15884
15885
15886
15887
15888
15889
15890
15891
15892
15893
15894
15895
15896
15897
15898
15899
15900
15901
15902
15903
15904
15905
15906
15907
15908
15909
15910
15911
15912
15913
15914
15915
15916
15917
15918
15919
15920
15921
15922
15923
15924
15925
15926
15927
15928
15929
15930
15931
15932
15933
15934
15935
15936
15937
15938
15939
15940
15941
15942
15943
15944
15945
15946
15947
15948
15949
15950
15951
15952
15953
15954
15955
15956
15957
15958
15959
15960
15961
15962
15963
15964
15965
15966
15967
15968
15969
15970
15971
15972
15973
15974
15975
15976
15977
15978
15979
15980
15981
15982
15983
15984
15985
15986
15987
15988
15989
15990
15991
15992
15993
15994
15995
15996
15997
15998
15999
16000
16001
16002
16003
16004
16005
16006
16007
16008
16009
16010
16011
16012
16013
16014
16015
16016
16017
16018
16019
16020
16021
16022
16023
16024
16025
16026
16027
16028
16029
16030
16031
16032
16033
16034
16035
16036
16037
16038
16039
16040
16041
16042
16043
16044
16045
16046
16047
16048
16049
16050
16051
16052
16053
16054
16055
16056
16057
16058
16059
16060
16061
16062
16063
16064
16065
16066
16067
16068
16069
16070
16071
16072
16073
16074
16075
16076
16077
16078
16079
16080
16081
16082
16083
16084
16085
16086
16087
16088
16089
16090
16091
16092
16093
16094
16095
16096
16097
16098
16099
16100
16101
16102
16103
16104
16105
16106
16107
16108
16109
16110
16111
16112
16113
16114
16115
16116
16117
16118
16119
16120
16121
16122
16123
16124
16125
16126
16127
16128
16129
16130
16131
16132
16133
16134
16135
16136
16137
16138
16139
16140
16141
16142
16143
16144
16145
16146
16147
16148
16149
16150
16151
16152
16153
16154
16155
16156
16157
16158
16159
16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
16174
16175
16176
16177
16178
16179
16180
16181
16182
16183
16184
16185
16186
16187
16188
16189
16190
16191
16192
16193
16194
16195
16196
16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209
16210
16211
16212
16213
16214
16215
16216
16217
16218
16219
16220
16221
16222
16223
16224
16225
16226
16227
16228
16229
16230
16231
16232
16233
16234
16235
16236
16237
16238
16239
16240
16241
16242
16243
16244
16245
16246
16247
16248
16249
16250
16251
16252
16253
16254
16255
16256
16257
16258
16259
16260
16261
16262
16263
16264
16265
16266
16267
16268
16269
16270
16271
16272
16273
16274
16275
16276
16277
16278
16279
16280
16281
16282
16283
16284
16285
16286
16287
16288
16289
16290
16291
16292
16293
16294
16295
16296
16297
16298
16299
16300
16301
16302
16303
16304
16305
16306
16307
16308
16309
16310
16311
16312
16313
16314
16315
16316
16317
16318
16319
16320
16321
16322
16323
16324
16325
16326
16327
16328
16329
16330
16331
16332
16333
16334
16335
16336
16337
16338
16339
16340
16341
16342
16343
16344
16345
16346
16347
16348
16349
16350
16351
16352
16353
16354
16355
16356
16357
16358
16359
16360
16361
16362
16363
16364
16365
16366
16367
16368
16369
16370
16371
16372
16373
16374
16375
16376
16377
16378
16379
16380
16381
16382
16383
16384
16385
16386
16387
16388
16389
16390
16391
16392
16393
16394
16395
16396
16397
16398
16399
16400
16401
16402
16403
16404
16405
16406
16407
16408
16409
16410
16411
16412
16413
16414
16415
16416
16417
16418
16419
16420
16421
16422
16423
16424
16425
16426
16427
16428
16429
16430
16431
16432
16433
16434
16435
16436
16437
16438
16439
16440
16441
16442
16443
16444
16445
16446
16447
16448
16449
16450
16451
16452
16453
16454
16455
16456
16457
16458
16459
16460
16461
16462
16463
16464
16465
16466
16467
16468
16469
16470
16471
16472
16473
16474
16475
16476
16477
16478
16479
16480
16481
16482
16483
16484
16485
16486
16487
16488
16489
16490
16491
16492
16493
16494
16495
16496
16497
16498
16499
16500
16501
16502
16503
16504
16505
16506
16507
16508
16509
16510
16511
16512
16513
16514
16515
16516
16517
16518
16519
16520
16521
16522
16523
16524
16525
16526
16527
16528
16529
16530
16531
16532
16533
16534
16535
16536
16537
16538
16539
16540
16541
16542
16543
16544
16545
16546
16547
16548
16549
16550
16551
16552
16553
16554
16555
16556
16557
16558
16559
16560
16561
16562
16563
16564
16565
16566
16567
16568
16569
16570
16571
16572
16573
16574
16575
16576
16577
16578
16579
16580
16581
16582
16583
16584
16585
16586
16587
16588
16589
16590
16591
16592
16593
16594
16595
16596
16597
16598
16599
16600
16601
16602
16603
16604
16605
16606
16607
16608
16609
16610
16611
16612
16613
16614
16615
16616
16617
16618
16619
16620
16621
16622
16623
16624
16625
16626
16627
16628
16629
16630
16631
16632
16633
16634
16635
16636
16637
16638
16639
16640
16641
16642
16643
16644
16645
16646
16647
16648
16649
16650
16651
16652
16653
16654
16655
16656
16657
16658
16659
16660
16661
16662
16663
16664
16665
16666
16667
16668
16669
16670
16671
16672
16673
16674
16675
16676
16677
16678
16679
16680
16681
16682
16683
16684
16685
16686
16687
16688
16689
16690
16691
16692
16693
16694
16695
16696
16697
16698
16699
16700
16701
16702
16703
16704
16705
16706
16707
16708
16709
16710
16711
16712
16713
16714
16715
16716
16717
16718
16719
16720
16721
16722
16723
16724
16725
16726
16727
16728
16729
16730
16731
16732
16733
16734
16735
16736
16737
16738
16739
16740
16741
16742
16743
16744
16745
16746
16747
16748
16749
16750
16751
16752
16753
16754
16755
16756
16757
16758
16759
16760
16761
16762
16763
16764
16765
16766
16767
16768
16769
16770
16771
16772
16773
16774
16775
16776
16777
16778
16779
16780
16781
16782
16783
16784
16785
16786
16787
16788
16789
16790
16791
16792
16793
16794
16795
16796
16797
16798
16799
16800
16801
16802
16803
16804
16805
16806
16807
16808
16809
16810
16811
16812
16813
16814
16815
16816
16817
16818
16819
16820
16821
16822
16823
16824
16825
16826
16827
16828
16829
16830
16831
16832
16833
16834
16835
16836
16837
16838
16839
16840
16841
16842
16843
16844
16845
16846
16847
16848
16849
16850
16851
16852
16853
16854
16855
16856
16857
16858
16859
16860
16861
16862
16863
16864
16865
16866
16867
16868
16869
16870
16871
16872
16873
16874
16875
16876
16877
16878
16879
16880
16881
16882
16883
16884
16885
16886
16887
16888
16889
16890
16891
16892
16893
16894
16895
16896
16897
16898
16899
16900
16901
16902
16903
16904
16905
16906
16907
16908
16909
16910
16911
16912
16913
16914
16915
16916
16917
16918
16919
16920
16921
16922
16923
16924
16925
16926
16927
16928
16929
16930
16931
16932
16933
16934
16935
16936
16937
16938
16939
16940
16941
16942
16943
16944
16945
16946
16947
16948
16949
16950
16951
16952
16953
16954
16955
16956
16957
16958
16959
16960
16961
16962
16963
16964
16965
16966
16967
16968
16969
16970
16971
16972
16973
16974
16975
16976
16977
16978
16979
16980
16981
16982
16983
16984
16985
16986
16987
16988
16989
16990
16991
16992
16993
16994
16995
16996
16997
16998
16999
17000
17001
17002
17003
17004
17005
17006
17007
17008
17009
17010
17011
17012
17013
17014
17015
17016
17017
17018
17019
17020
17021
17022
17023
17024
17025
17026
17027
17028
17029
17030
17031
17032
17033
17034
17035
17036
17037
17038
17039
17040
17041
17042
17043
17044
17045
17046
17047
17048
17049
17050
17051
17052
17053
17054
17055
17056
17057
17058
17059
17060
17061
17062
17063
17064
17065
17066
17067
17068
17069
17070
17071
17072
17073
17074
17075
17076
17077
17078
17079
17080
17081
17082
17083
17084
17085
17086
17087
17088
17089
17090
17091
17092
17093
17094
17095
17096
17097
17098
17099
17100
17101
17102
17103
17104
17105
17106
17107
17108
17109
17110
17111
17112
17113
17114
17115
17116
17117
17118
17119
17120
17121
17122
17123
17124
17125
17126
17127
17128
17129
17130
17131
17132
17133
17134
17135
17136
17137
17138
17139
17140
17141
17142
17143
17144
17145
17146
17147
17148
17149
17150
17151
17152
17153
17154
17155
17156
17157
17158
17159
17160
17161
17162
17163
17164
17165
17166
17167
17168
17169
17170
17171
17172
17173
17174
17175
17176
17177
17178
17179
17180
17181
17182
17183
17184
17185
17186
17187
17188
17189
17190
17191
17192
17193
17194
17195
17196
17197
17198
17199
17200
17201
17202
17203
17204
17205
17206
17207
17208
17209
17210
17211
17212
17213
17214
17215
17216
17217
17218
17219
17220
17221
17222
17223
17224
17225
17226
17227
17228
17229
17230
17231
17232
17233
17234
17235
17236
17237
17238
17239
17240
17241
17242
17243
17244
17245
17246
17247
17248
17249
17250
17251
17252
17253
17254
17255
17256
17257
17258
17259
17260
17261
17262
17263
17264
17265
17266
17267
17268
17269
17270
17271
17272
17273
17274
17275
17276
17277
17278
17279
17280
17281
17282
17283
17284
17285
17286
17287
17288
17289
17290
17291
17292
17293
17294
17295
17296
17297
17298
17299
17300
17301
17302
17303
17304
17305
17306
17307
17308
17309
17310
17311
17312
17313
17314
17315
17316
17317
17318
17319
17320
17321
17322
17323
17324
17325
17326
17327
17328
17329
17330
17331
17332
17333
17334
17335
17336
17337
17338
17339
17340
17341
17342
17343
17344
17345
17346
17347
17348
17349
17350
17351
17352
17353
17354
17355
17356
17357
17358
17359
17360
17361
17362
17363
17364
17365
17366
17367
17368
17369
17370
17371
17372
17373
17374
17375
17376
17377
17378
17379
17380
17381
17382
17383
17384
17385
17386
17387
17388
17389
17390
17391
17392
17393
17394
17395
17396
17397
17398
17399
17400
17401
17402
17403
17404
17405
17406
17407
17408
17409
17410
17411
17412
17413
17414
17415
17416
17417
17418
17419
17420
17421
17422
17423
17424
17425
17426
17427
17428
17429
17430
17431
17432
17433
17434
17435
17436
17437
17438
17439
17440
17441
17442
17443
17444
17445
17446
17447
17448
17449
17450
17451
17452
17453
17454
17455
17456
17457
17458
17459
17460
17461
17462
17463
17464
17465
17466
17467
17468
17469
17470
17471
17472
17473
17474
17475
17476
17477
17478
17479
17480
17481
17482
17483
17484
17485
17486
17487
17488
17489
17490
17491
17492
17493
17494
17495
17496
17497
17498
17499
17500
17501
17502
17503
17504
17505
17506
17507
17508
17509
17510
17511
17512
17513
17514
17515
17516
17517
17518
17519
17520
17521
17522
17523
17524
17525
17526
17527
17528
17529
17530
17531
17532
17533
17534
17535
17536
17537
17538
17539
17540
17541
17542
17543
17544
17545
17546
17547
17548
17549
17550
17551
17552
17553
17554
17555
17556
17557
17558
17559
17560
17561
17562
17563
17564
17565
17566
17567
17568
17569
17570
17571
17572
17573
17574
17575
17576
17577
17578
17579
17580
17581
17582
17583
17584
17585
17586
17587
17588
17589
17590
17591
17592
17593
17594
17595
17596
17597
17598
17599
17600
17601
17602
17603
17604
17605
17606
17607
17608
17609
17610
17611
17612
17613
17614
17615
17616
17617
17618
17619
17620
17621
17622
17623
17624
17625
17626
17627
17628
17629
17630
17631
17632
17633
17634
17635
17636
17637
17638
17639
17640
17641
17642
17643
17644
17645
17646
17647
17648
17649
17650
17651
17652
17653
17654
17655
17656
17657
17658
17659
17660
17661
17662
17663
17664
17665
17666
17667
17668
17669
17670
17671
17672
17673
17674
17675
17676
17677
17678
17679
17680
17681
17682
17683
17684
17685
17686
17687
17688
17689
17690
17691
17692
17693
17694
17695
17696
17697
17698
17699
17700
17701
17702
17703
17704
17705
17706
17707
17708
17709
17710
17711
17712
17713
17714
17715
17716
17717
17718
17719
17720
17721
17722
17723
17724
17725
17726
17727
17728
17729
17730
17731
17732
17733
17734
17735
17736
17737
17738
17739
17740
17741
17742
17743
17744
17745
17746
17747
17748
17749
17750
17751
17752
17753
17754
17755
17756
17757
17758
17759
17760
17761
17762
17763
17764
17765
17766
17767
17768
17769
17770
17771
17772
17773
17774
17775
17776
17777
17778
17779
17780
17781
17782
17783
17784
17785
17786
17787
17788
17789
17790
17791
17792
17793
17794
17795
17796
17797
17798
17799
17800
17801
17802
17803
17804
17805
17806
17807
17808
17809
17810
17811
17812
17813
17814
17815
17816
17817
17818
17819
17820
17821
17822
17823
17824
17825
17826
17827
17828
17829
17830
17831
17832
17833
17834
17835
17836
17837
17838
17839
17840
17841
17842
17843
17844
17845
17846
17847
17848
17849
17850
17851
17852
17853
17854
17855
17856
17857
17858
17859
17860
17861
17862
17863
17864
17865
17866
17867
17868
17869
17870
17871
17872
17873
17874
17875
17876
17877
17878
17879
17880
17881
17882
17883
17884
17885
17886
17887
17888
17889
17890
17891
17892
17893
17894
17895
17896
17897
17898
17899
17900
17901
17902
17903
17904
17905
17906
17907
17908
17909
17910
17911
17912
17913
17914
17915
17916
17917
17918
17919
17920
17921
17922
17923
17924
17925
17926
17927
17928
17929
17930
17931
17932
17933
17934
17935
17936
17937
17938
17939
17940
17941
17942
17943
17944
17945
17946
17947
17948
17949
17950
17951
17952
17953
17954
17955
17956
17957
17958
17959
17960
17961
17962
17963
17964
17965
17966
17967
17968
17969
17970
17971
17972
17973
17974
17975
17976
17977
17978
17979
17980
17981
17982
17983
17984
17985
17986
17987
17988
17989
17990
17991
17992
17993
17994
17995
17996
17997
17998
17999
18000
18001
18002
18003
18004
18005
18006
18007
18008
18009
18010
18011
18012
18013
18014
18015
18016
18017
18018
18019
18020
18021
18022
18023
18024
18025
18026
18027
18028
18029
18030
18031
18032
18033
18034
18035
18036
18037
18038
18039
18040
18041
18042
18043
18044
18045
18046
18047
18048
18049
18050
18051
18052
18053
18054
18055
18056
18057
18058
18059
18060
18061
18062
18063
18064
18065
18066
18067
18068
18069
18070
18071
18072
18073
18074
18075
18076
18077
18078
18079
18080
18081
18082
18083
18084
18085
18086
18087
18088
18089
18090
18091
18092
18093
18094
18095
18096
18097
18098
18099
18100
18101
18102
18103
18104
18105
18106
18107
18108
18109
18110
18111
18112
18113
18114
18115
18116
18117
18118
18119
18120
18121
18122
18123
18124
18125
18126
18127
18128
18129
18130
18131
18132
18133
18134
18135
18136
18137
18138
18139
18140
18141
18142
18143
18144
18145
18146
18147
18148
18149
18150
18151
18152
18153
18154
18155
18156
18157
18158
18159
18160
18161
18162
18163
18164
18165
18166
18167
18168
18169
18170
18171
18172
18173
18174
18175
18176
18177
18178
18179
18180
18181
18182
18183
18184
18185
18186
18187
18188
18189
18190
18191
18192
18193
18194
18195
18196
18197
18198
18199
18200
18201
18202
18203
18204
18205
18206
18207
18208
18209
18210
18211
18212
18213
18214
18215
18216
18217
18218
18219
18220
18221
18222
18223
18224
18225
18226
18227
18228
18229
18230
18231
18232
18233
18234
18235
18236
18237
18238
18239
18240
18241
18242
18243
18244
18245
18246
18247
18248
18249
18250
18251
18252
18253
18254
18255
18256
18257
18258
18259
18260
18261
18262
18263
18264
18265
18266
18267
18268
18269
18270
18271
18272
18273
18274
18275
18276
18277
18278
18279
18280
18281
18282
18283
18284
18285
18286
18287
18288
18289
18290
18291
18292
18293
18294
18295
18296
18297
18298
18299
18300
18301
18302
18303
18304
18305
18306
18307
18308
18309
18310
18311
18312
18313
18314
18315
18316
18317
18318
18319
18320
18321
18322
18323
18324
18325
18326
18327
18328
18329
18330
18331
18332
18333
18334
18335
18336
18337
18338
18339
18340
18341
18342
18343
18344
18345
18346
18347
18348
18349
18350
18351
18352
18353
18354
18355
18356
18357
18358
18359
18360
18361
18362
18363
18364
18365
18366
18367
18368
18369
18370
18371
18372
18373
18374
18375
18376
18377
18378
18379
18380
18381
18382
18383
18384
18385
18386
18387
18388
18389
18390
18391
18392
18393
18394
18395
18396
18397
18398
18399
18400
18401
18402
18403
18404
18405
18406
18407
18408
18409
18410
18411
18412
18413
18414
18415
18416
18417
18418
18419
18420
18421
18422
18423
18424
18425
18426
18427
18428
18429
18430
18431
18432
18433
18434
18435
18436
18437
18438
18439
18440
18441
18442
18443
18444
18445
18446
18447
18448
18449
18450
18451
18452
18453
18454
18455
18456
18457
18458
18459
18460
18461
18462
18463
18464
18465
18466
18467
18468
18469
18470
18471
18472
18473
18474
18475
18476
18477
18478
18479
18480
18481
18482
18483
18484
18485
18486
18487
18488
18489
18490
18491
18492
18493
18494
18495
18496
18497
18498
18499
18500
18501
18502
18503
18504
18505
18506
18507
18508
18509
18510
18511
18512
18513
18514
18515
18516
18517
18518
18519
18520
18521
18522
18523
18524
18525
18526
18527
18528
18529
18530
18531
18532
18533
18534
18535
18536
18537
18538
18539
18540
18541
18542
18543
18544
18545
18546
18547
18548
18549
18550
18551
18552
18553
18554
18555
18556
18557
18558
18559
18560
18561
18562
18563
18564
18565
18566
18567
18568
18569
18570
18571
18572
18573
18574
18575
18576
18577
18578
18579
18580
18581
18582
18583
18584
18585
18586
18587
18588
18589
18590
18591
18592
18593
18594
18595
18596
18597
18598
18599
18600
18601
18602
18603
18604
18605
18606
18607
18608
18609
18610
18611
18612
18613
18614
18615
18616
18617
18618
18619
18620
18621
18622
18623
18624
18625
18626
18627
18628
18629
18630
18631
18632
18633
18634
18635
18636
18637
18638
18639
18640
18641
18642
18643
18644
18645
18646
18647
18648
18649
18650
18651
18652
18653
18654
18655
18656
18657
18658
18659
18660
18661
18662
18663
18664
18665
18666
18667
18668
18669
18670
18671
18672
18673
18674
18675
18676
18677
18678
18679
18680
18681
18682
18683
18684
18685
18686
18687
18688
18689
18690
18691
18692
18693
18694
18695
18696
18697
18698
18699
18700
18701
18702
18703
18704
18705
18706
18707
18708
18709
18710
18711
18712
18713
18714
18715
18716
18717
18718
18719
18720
18721
18722
18723
18724
18725
18726
18727
18728
18729
18730
18731
18732
18733
18734
18735
18736
18737
18738
18739
18740
18741
18742
18743
18744
18745
18746
18747
18748
18749
18750
18751
18752
18753
18754
18755
18756
18757
18758
18759
18760
18761
18762
18763
18764
18765
18766
18767
18768
18769
18770
18771
18772
18773
18774
18775
18776
18777
18778
18779
18780
18781
18782
18783
18784
18785
18786
18787
18788
18789
18790
18791
18792
18793
18794
18795
18796
18797
18798
18799
18800
18801
18802
18803
18804
18805
18806
18807
18808
18809
18810
18811
18812
18813
18814
18815
18816
18817
18818
18819
18820
18821
18822
18823
18824
18825
18826
18827
18828
18829
18830
18831
18832
18833
18834
18835
18836
18837
18838
18839
18840
18841
18842
18843
18844
18845
18846
18847
18848
18849
18850
18851
18852
18853
18854
18855
18856
18857
18858
18859
18860
18861
18862
18863
18864
18865
18866
18867
18868
18869
18870
18871
18872
18873
18874
18875
18876
18877
18878
18879
18880
18881
18882
18883
18884
18885
18886
18887
18888
18889
18890
18891
18892
18893
18894
18895
18896
18897
18898
18899
18900
18901
18902
18903
18904
18905
18906
18907
18908
18909
18910
18911
18912
18913
18914
18915
18916
18917
18918
18919
18920
18921
18922
18923
18924
18925
18926
18927
18928
18929
18930
18931
18932
18933
18934
18935
18936
18937
18938
18939
18940
18941
18942
18943
18944
18945
18946
18947
18948
18949
18950
18951
18952
18953
18954
18955
18956
18957
18958
18959
18960
18961
18962
18963
18964
18965
18966
18967
18968
18969
18970
18971
18972
18973
18974
18975
18976
18977
18978
18979
18980
18981
18982
18983
18984
18985
18986
18987
18988
18989
18990
18991
18992
18993
18994
18995
18996
18997
18998
18999
19000
19001
19002
19003
19004
19005
19006
19007
19008
19009
19010
19011
19012
19013
19014
19015
19016
19017
19018
19019
19020
19021
19022
19023
19024
19025
19026
19027
19028
19029
19030
19031
19032
19033
19034
19035
19036
19037
19038
19039
19040
19041
19042
19043
19044
19045
19046
19047
19048
19049
19050
19051
19052
19053
19054
19055
19056
19057
19058
19059
19060
19061
19062
19063
19064
19065
19066
19067
19068
19069
19070
19071
19072
19073
19074
19075
19076
19077
19078
19079
19080
19081
19082
19083
19084
19085
19086
19087
19088
19089
19090
19091
19092
19093
19094
19095
19096
19097
19098
19099
19100
19101
19102
19103
19104
19105
19106
19107
19108
19109
19110
19111
19112
19113
19114
19115
19116
19117
19118
19119
19120
19121
19122
19123
19124
19125
19126
19127
19128
19129
19130
19131
19132
19133
19134
19135
19136
19137
19138
19139
19140
19141
19142
19143
19144
19145
19146
19147
19148
19149
19150
19151
19152
19153
19154
19155
19156
19157
19158
19159
19160
19161
19162
19163
19164
19165
19166
19167
19168
19169
19170
19171
19172
19173
19174
19175
19176
19177
19178
19179
19180
19181
19182
19183
19184
19185
19186
19187
19188
19189
19190
19191
19192
19193
19194
19195
19196
19197
19198
19199
19200
19201
19202
19203
19204
19205
19206
19207
19208
19209
19210
19211
19212
19213
19214
19215
19216
19217
19218
19219
19220
19221
19222
19223
19224
19225
19226
19227
19228
19229
19230
19231
19232
19233
19234
19235
19236
19237
19238
19239
19240
19241
19242
19243
19244
19245
19246
19247
19248
19249
19250
19251
19252
19253
19254
19255
19256
19257
19258
19259
19260
19261
19262
19263
19264
19265
19266
19267
19268
19269
19270
19271
19272
19273
19274
19275
19276
19277
19278
19279
19280
19281
19282
19283
19284
19285
19286
19287
19288
19289
19290
19291
19292
19293
19294
19295
19296
19297
19298
19299
19300
19301
19302
19303
19304
19305
19306
19307
19308
19309
19310
19311
19312
19313
19314
19315
19316
19317
19318
19319
19320
19321
19322
19323
19324
19325
19326
19327
19328
19329
19330
19331
19332
19333
19334
19335
19336
19337
19338
19339
19340
19341
19342
19343
19344
19345
19346
19347
19348
19349
19350
19351
19352
19353
19354
19355
19356
19357
19358
19359
19360
19361
19362
19363
19364
19365
19366
19367
19368
19369
19370
19371
19372
19373
19374
19375
19376
19377
19378
19379
19380
19381
19382
19383
19384
19385
19386
19387
19388
19389
19390
19391
19392
19393
19394
19395
19396
19397
19398
19399
19400
19401
19402
19403
19404
19405
19406
19407
19408
19409
19410
19411
19412
19413
19414
19415
19416
19417
19418
19419
19420
19421
19422
19423
19424
19425
19426
19427
19428
19429
19430
19431
19432
19433
19434
19435
19436
19437
19438
19439
19440
19441
19442
19443
19444
19445
19446
19447
19448
19449
19450
19451
19452
19453
19454
19455
19456
19457
19458
19459
19460
19461
19462
19463
19464
19465
19466
19467
19468
19469
19470
19471
19472
19473
19474
19475
19476
19477
19478
19479
19480
19481
19482
19483
19484
19485
19486
19487
19488
19489
19490
19491
19492
19493
19494
19495
19496
19497
19498
19499
19500
19501
19502
19503
19504
19505
19506
19507
19508
19509
19510
19511
19512
19513
19514
19515
19516
19517
19518
19519
19520
19521
19522
19523
19524
19525
19526
19527
19528
19529
19530
19531
19532
19533
19534
19535
19536
19537
19538
19539
19540
19541
19542
19543
19544
19545
19546
19547
19548
19549
19550
19551
19552
19553
19554
19555
19556
19557
19558
19559
19560
19561
19562
19563
19564
19565
19566
19567
19568
19569
19570
19571
19572
19573
19574
19575
19576
19577
19578
19579
19580
19581
19582
19583
19584
19585
19586
19587
19588
19589
19590
19591
19592
19593
19594
19595
19596
19597
19598
19599
19600
19601
19602
19603
19604
19605
19606
19607
19608
19609
19610
19611
19612
19613
19614
19615
19616
19617
19618
19619
19620
19621
19622
19623
19624
19625
19626
19627
19628
19629
19630
19631
19632
19633
19634
19635
19636
19637
19638
19639
19640
19641
19642
19643
19644
19645
19646
19647
19648
19649
19650
19651
19652
19653
19654
19655
19656
19657
19658
19659
19660
19661
19662
19663
19664
19665
19666
19667
19668
19669
19670
19671
19672
19673
19674
19675
19676
19677
19678
19679
19680
19681
19682
19683
19684
19685
19686
19687
19688
19689
19690
19691
19692
19693
19694
19695
19696
19697
19698
19699
19700
19701
19702
19703
19704
19705
19706
19707
19708
19709
19710
19711
19712
19713
19714
19715
19716
19717
19718
19719
19720
19721
19722
19723
19724
19725
19726
19727
19728
19729
19730
19731
19732
19733
19734
19735
19736
19737
19738
19739
19740
19741
19742
19743
19744
19745
19746
19747
19748
19749
19750
19751
19752
19753
19754
19755
19756
19757
19758
19759
19760
19761
19762
19763
19764
19765
19766
19767
19768
19769
19770
19771
19772
19773
19774
19775
19776
19777
19778
19779
19780
19781
19782
19783
19784
19785
19786
19787
19788
19789
19790
19791
19792
19793
19794
19795
19796
19797
19798
19799
19800
19801
19802
19803
19804
19805
19806
19807
19808
19809
19810
19811
19812
19813
19814
19815
19816
19817
19818
19819
19820
19821
19822
19823
19824
19825
19826
19827
19828
19829
19830
19831
19832
19833
19834
19835
19836
19837
19838
19839
19840
19841
19842
19843
19844
19845
19846
19847
19848
19849
19850
19851
19852
19853
19854
19855
19856
19857
19858
19859
19860
19861
19862
19863
19864
19865
19866
19867
19868
19869
19870
19871
19872
19873
19874
19875
19876
19877
19878
19879
19880
19881
19882
19883
19884
19885
19886
19887
19888
19889
19890
19891
19892
19893
19894
19895
19896
19897
19898
19899
19900
19901
19902
19903
19904
19905
19906
19907
19908
19909
19910
19911
19912
19913
19914
19915
19916
19917
19918
19919
19920
19921
19922
19923
19924
19925
19926
19927
19928
19929
19930
19931
19932
19933
19934
19935
19936
19937
19938
19939
19940
19941
19942
19943
19944
19945
19946
19947
19948
19949
19950
19951
19952
19953
19954
19955
19956
19957
19958
19959
19960
19961
19962
19963
19964
19965
19966
19967
19968
19969
19970
19971
19972
19973
19974
19975
19976
19977
19978
19979
19980
19981
19982
19983
19984
19985
19986
19987
19988
19989
19990
19991
19992
19993
19994
19995
19996
19997
19998
19999
20000
20001
20002
20003
20004
20005
20006
20007
20008
20009
20010
20011
20012
20013
20014
20015
20016
20017
20018
20019
20020
20021
20022
20023
20024
20025
20026
20027
20028
20029
20030
20031
20032
20033
20034
20035
20036
20037
20038
20039
20040
20041
20042
20043
20044
20045
20046
20047
20048
20049
20050
20051
20052
20053
20054
20055
20056
20057
20058
20059
20060
20061
20062
20063
20064
20065
20066
20067
20068
20069
20070
20071
20072
20073
20074
20075
20076
20077
20078
20079
20080
20081
20082
20083
20084
20085
20086
20087
20088
20089
20090
20091
20092
20093
20094
20095
20096
20097
20098
20099
20100
20101
20102
20103
20104
20105
20106
20107
20108
20109
20110
20111
20112
20113
20114
20115
20116
20117
20118
20119
20120
20121
20122
20123
20124
20125
20126
20127
20128
20129
20130
20131
20132
20133
20134
20135
20136
20137
20138
20139
20140
20141
20142
20143
20144
20145
20146
20147
20148
20149
20150
20151
20152
20153
20154
20155
20156
20157
20158
20159
20160
20161
20162
20163
20164
20165
20166
20167
20168
20169
20170
20171
20172
20173
20174
20175
20176
20177
20178
20179
20180
20181
20182
20183
20184
20185
20186
20187
20188
20189
20190
20191
20192
20193
20194
20195
20196
20197
20198
20199
20200
20201
20202
20203
20204
20205
20206
20207
20208
20209
20210
20211
20212
20213
20214
20215
20216
20217
20218
20219
20220
20221
20222
20223
20224
20225
20226
20227
20228
20229
20230
20231
20232
20233
20234
20235
20236
20237
20238
20239
20240
20241
20242
20243
20244
20245
20246
20247
20248
20249
20250
20251
20252
20253
20254
20255
20256
20257
20258
20259
20260
20261
20262
20263
20264
20265
20266
20267
20268
20269
20270
20271
20272
20273
20274
20275
20276
20277
20278
20279
20280
20281
20282
20283
20284
20285
20286
20287
20288
20289
20290
20291
20292
20293
20294
20295
20296
20297
20298
20299
20300
20301
20302
20303
20304
20305
20306
20307
20308
20309
20310
20311
20312
20313
20314
20315
20316
20317
20318
20319
20320
20321
20322
20323
20324
20325
20326
20327
20328
20329
20330
20331
20332
20333
20334
20335
20336
20337
20338
20339
20340
20341
20342
20343
20344
20345
20346
20347
20348
20349
20350
20351
20352
20353
20354
20355
20356
20357
20358
20359
20360
20361
20362
20363
20364
20365
20366
20367
20368
20369
20370
20371
20372
20373
20374
20375
20376
20377
20378
20379
20380
20381
20382
20383
20384
20385
20386
20387
20388
20389
20390
20391
20392
20393
20394
20395
20396
20397
20398
20399
20400
20401
20402
20403
20404
20405
20406
20407
20408
20409
20410
20411
20412
20413
20414
20415
20416
20417
20418
20419
20420
20421
20422
20423
20424
20425
20426
20427
20428
20429
20430
20431
20432
20433
20434
20435
20436
20437
20438
20439
20440
20441
20442
20443
20444
20445
20446
20447
20448
20449
20450
20451
20452
20453
20454
20455
20456
20457
20458
20459
20460
20461
20462
20463
20464
20465
20466
20467
20468
20469
20470
20471
20472
20473
20474
20475
20476
20477
20478
20479
20480
20481
20482
20483
20484
20485
20486
20487
20488
20489
20490
20491
20492
20493
20494
20495
20496
20497
20498
20499
20500
20501
20502
20503
20504
20505
20506
20507
20508
20509
20510
20511
20512
20513
20514
20515
20516
20517
20518
20519
20520
20521
20522
20523
20524
20525
20526
20527
20528
20529
20530
20531
20532
20533
20534
20535
20536
20537
20538
20539
20540
20541
20542
20543
20544
20545
20546
20547
20548
20549
20550
20551
20552
20553
20554
20555
20556
20557
20558
20559
20560
20561
20562
20563
20564
20565
20566
20567
20568
20569
20570
20571
20572
20573
20574
20575
20576
20577
20578
20579
20580
20581
20582
20583
20584
20585
20586
20587
20588
20589
20590
20591
20592
20593
20594
20595
20596
20597
20598
20599
20600
20601
20602
20603
20604
20605
20606
20607
20608
20609
20610
20611
20612
20613
20614
20615
20616
20617
20618
20619
20620
20621
20622
20623
20624
20625
20626
20627
20628
20629
20630
20631
20632
20633
20634
20635
20636
20637
20638
20639
20640
20641
20642
20643
20644
20645
20646
20647
20648
20649
20650
20651
20652
20653
20654
20655
20656
20657
20658
20659
20660
20661
20662
20663
20664
20665
20666
20667
20668
20669
20670
20671
20672
20673
20674
20675
20676
20677
20678
20679
20680
20681
20682
20683
20684
20685
20686
20687
20688
20689
20690
20691
20692
20693
20694
20695
20696
20697
20698
20699
20700
20701
20702
20703
20704
20705
20706
20707
20708
20709
20710
20711
20712
20713
20714
20715
20716
20717
20718
20719
20720
20721
20722
20723
20724
20725
20726
20727
20728
20729
20730
20731
20732
20733
20734
20735
20736
20737
20738
20739
20740
20741
20742
20743
20744
20745
20746
20747
20748
20749
20750
20751
20752
20753
20754
20755
20756
20757
20758
20759
20760
20761
20762
20763
20764
20765
20766
20767
20768
20769
20770
20771
20772
20773
20774
20775
20776
20777
20778
20779
20780
20781
20782
20783
20784
20785
20786
20787
20788
20789
20790
20791
20792
20793
20794
20795
20796
20797
20798
20799
20800
20801
20802
20803
20804
20805
20806
20807
20808
20809
20810
20811
20812
20813
20814
20815
20816
20817
20818
20819
20820
20821
20822
20823
20824
20825
20826
20827
20828
20829
20830
20831
20832
20833
20834
20835
20836
20837
20838
20839
20840
20841
20842
20843
20844
20845
20846
20847
20848
20849
20850
20851
20852
20853
20854
20855
20856
20857
20858
20859
20860
20861
20862
20863
20864
20865
20866
20867
20868
20869
20870
20871
20872
20873
20874
20875
20876
20877
20878
20879
20880
20881
20882
20883
20884
20885
20886
20887
20888
20889
20890
20891
20892
20893
20894
20895
20896
20897
20898
20899
20900
20901
20902
20903
20904
20905
20906
20907
20908
20909
20910
20911
20912
20913
20914
20915
20916
20917
20918
20919
20920
20921
20922
20923
20924
20925
20926
20927
20928
20929
20930
20931
20932
20933
20934
20935
20936
20937
20938
20939
20940
20941
20942
20943
20944
20945
20946
20947
20948
20949
20950
20951
20952
20953
20954
20955
20956
20957
20958
20959
20960
20961
20962
20963
20964
20965
20966
20967
20968
20969
20970
20971
20972
20973
20974
20975
20976
20977
20978
20979
20980
20981
20982
20983
20984
20985
20986
20987
20988
20989
20990
20991
20992
20993
20994
20995
20996
20997
20998
20999
21000
21001
21002
21003
21004
21005
21006
21007
21008
21009
21010
21011
21012
21013
21014
21015
21016
21017
21018
21019
21020
21021
21022
21023
21024
21025
21026
21027
21028
21029
21030
21031
21032
21033
21034
21035
21036
21037
21038
21039
21040
21041
21042
21043
21044
21045
21046
21047
21048
21049
21050
21051
21052
21053
21054
21055
21056
21057
21058
21059
21060
21061
21062
21063
21064
21065
21066
21067
21068
21069
21070
21071
21072
21073
21074
21075
21076
21077
21078
21079
21080
21081
21082
21083
21084
21085
21086
21087
21088
21089
21090
21091
21092
21093
21094
21095
21096
21097
21098
21099
21100
21101
21102
21103
21104
21105
21106
21107
21108
21109
21110
21111
21112
21113
21114
21115
21116
21117
21118
21119
21120
21121
21122
21123
21124
21125
21126
21127
21128
21129
21130
21131
21132
21133
21134
21135
21136
21137
21138
21139
21140
21141
21142
21143
21144
21145
21146
21147
21148
21149
21150
21151
21152
21153
21154
21155
21156
21157
21158
21159
21160
21161
21162
21163
21164
21165
21166
21167
21168
21169
21170
21171
21172
21173
21174
21175
21176
21177
21178
21179
21180
21181
21182
21183
21184
21185
21186
21187
21188
21189
21190
21191
21192
21193
21194
21195
21196
21197
21198
21199
21200
21201
21202
21203
21204
21205
21206
21207
21208
21209
21210
21211
21212
21213
21214
21215
21216
21217
21218
21219
21220
21221
21222
21223
21224
21225
21226
21227
21228
21229
21230
21231
21232
21233
21234
21235
21236
21237
21238
21239
21240
21241
21242
21243
21244
21245
21246
21247
21248
21249
21250
21251
21252
21253
21254
21255
21256
21257
21258
21259
21260
21261
21262
21263
21264
21265
21266
21267
21268
21269
21270
21271
21272
21273
21274
21275
21276
21277
21278
21279
21280
21281
21282
21283
21284
21285
21286
21287
21288
21289
21290
21291
21292
21293
21294
21295
21296
21297
21298
21299
21300
21301
21302
21303
21304
21305
21306
21307
21308
21309
21310
21311
21312
21313
21314
21315
21316
21317
21318
21319
21320
21321
21322
21323
21324
21325
21326
21327
21328
21329
21330
21331
21332
21333
21334
21335
21336
21337
21338
21339
21340
21341
21342
21343
21344
21345
21346
21347
21348
21349
21350
21351
21352
21353
21354
21355
21356
21357
21358
21359
21360
21361
21362
21363
21364
21365
21366
21367
21368
21369
21370
21371
21372
21373
21374
21375
21376
21377
21378
21379
21380
21381
21382
21383
21384
21385
21386
21387
21388
21389
21390
21391
21392
21393
21394
21395
21396
21397
21398
21399
21400
21401
21402
21403
21404
21405
21406
21407
21408
21409
21410
21411
21412
21413
21414
21415
21416
21417
21418
21419
21420
21421
21422
21423
21424
21425
21426
21427
21428
21429
21430
21431
21432
21433
21434
21435
21436
21437
21438
21439
21440
21441
21442
21443
21444
21445
21446
21447
21448
21449
21450
21451
21452
21453
21454
21455
21456
21457
21458
21459
21460
21461
21462
21463
21464
21465
21466
21467
21468
21469
21470
21471
21472
21473
21474
21475
21476
21477
21478
21479
21480
21481
21482
21483
21484
21485
21486
21487
21488
21489
21490
21491
21492
21493
21494
21495
21496
21497
21498
21499
21500
21501
21502
21503
21504
21505
21506
21507
21508
21509
21510
21511
21512
21513
21514
21515
21516
21517
21518
21519
21520
21521
21522
21523
21524
21525
21526
21527
21528
21529
21530
21531
21532
21533
21534
21535
21536
21537
21538
21539
21540
21541
21542
21543
21544
21545
21546
21547
21548
21549
21550
21551
21552
21553
21554
21555
21556
21557
21558
21559
21560
21561
21562
21563
21564
21565
21566
21567
21568
21569
21570
21571
21572
21573
21574
21575
21576
21577
21578
21579
21580
21581
21582
21583
21584
21585
21586
21587
21588
21589
21590
21591
21592
21593
21594
21595
21596
21597
21598
21599
21600
21601
21602
21603
21604
21605
21606
21607
21608
21609
21610
21611
21612
21613
21614
21615
21616
21617
21618
21619
21620
21621
21622
21623
21624
21625
21626
21627
21628
21629
21630
21631
21632
21633
21634
21635
21636
21637
21638
21639
21640
21641
21642
21643
21644
21645
21646
21647
21648
21649
21650
21651
21652
21653
21654
21655
21656
21657
21658
21659
21660
21661
21662
21663
21664
21665
21666
21667
21668
21669
21670
21671
21672
21673
21674
21675
21676
21677
21678
21679
21680
21681
21682
21683
21684
21685
21686
21687
21688
21689
21690
21691
21692
21693
21694
21695
21696
21697
21698
21699
21700
21701
21702
21703
21704
21705
21706
21707
21708
21709
21710
21711
21712
21713
21714
21715
21716
21717
21718
21719
21720
21721
21722
21723
21724
21725
21726
21727
21728
21729
21730
21731
21732
21733
21734
21735
21736
21737
21738
21739
21740
21741
21742
21743
21744
21745
21746
21747
21748
21749
21750
21751
21752
21753
21754
21755
21756
21757
21758
21759
21760
21761
21762
21763
21764
21765
21766
21767
21768
21769
21770
21771
21772
21773
21774
21775
21776
21777
21778
21779
21780
21781
21782
21783
21784
21785
21786
21787
21788
21789
21790
21791
21792
21793
21794
21795
21796
21797
21798
21799
21800
21801
21802
21803
21804
21805
21806
21807
21808
21809
21810
21811
21812
21813
21814
21815
21816
21817
21818
21819
21820
21821
21822
21823
21824
21825
21826
21827
21828
21829
21830
21831
use super::mini_de_static::{
    TypeInfo, DelegatingDeserializer,
    VimObjectHolder, VimObjectHolderBuilder, VimAnyBuilder,
    make_deser_with, from_val_with, polymorphic_array_cast,
};
use super::mini_helpers::from_value;
use super::vim_any::VimAny;
use super::boxed_types::ValueElements;
use super::struct_enum::StructType;
use super::structs::*;

miniserde::make_place!(Place);

// Per-variant wrap functions for ValueElements types
fn wrap_array_of_any_type(value: Vec<super::vim_any::VimAny>) -> ValueElements {
    ValueElements::ArrayOfAnyType(value)
}
fn wrap_array_of_managed_object_reference(value: Vec<super::structs::ManagedObjectReference>) -> ValueElements {
    ValueElements::ArrayOfManagedObjectReference(value)
}
fn wrap_primitive_boolean(value: bool) -> ValueElements {
    ValueElements::PrimitiveBoolean(value)
}
fn wrap_array_of_boolean(value: Vec<bool>) -> ValueElements {
    ValueElements::ArrayOfBoolean(value)
}
fn wrap_primitive_byte(value: i8) -> ValueElements {
    ValueElements::PrimitiveByte(value)
}
fn wrap_array_of_byte(value: Vec<i8>) -> ValueElements {
    ValueElements::ArrayOfByte(value)
}
fn wrap_primitive_short(value: i16) -> ValueElements {
    ValueElements::PrimitiveShort(value)
}
fn wrap_array_of_short(value: Vec<i16>) -> ValueElements {
    ValueElements::ArrayOfShort(value)
}
fn wrap_primitive_int(value: i32) -> ValueElements {
    ValueElements::PrimitiveInt(value)
}
fn wrap_array_of_int(value: Vec<i32>) -> ValueElements {
    ValueElements::ArrayOfInt(value)
}
fn wrap_primitive_long(value: i64) -> ValueElements {
    ValueElements::PrimitiveLong(value)
}
fn wrap_array_of_long(value: Vec<i64>) -> ValueElements {
    ValueElements::ArrayOfLong(value)
}
fn wrap_primitive_float(value: f32) -> ValueElements {
    ValueElements::PrimitiveFloat(value)
}
fn wrap_array_of_float(value: Vec<f32>) -> ValueElements {
    ValueElements::ArrayOfFloat(value)
}
fn wrap_primitive_double(value: f64) -> ValueElements {
    ValueElements::PrimitiveDouble(value)
}
fn wrap_array_of_double(value: Vec<f64>) -> ValueElements {
    ValueElements::ArrayOfDouble(value)
}
fn wrap_primitive_string(value: String) -> ValueElements {
    ValueElements::PrimitiveString(value)
}
fn wrap_array_of_string(value: Vec<String>) -> ValueElements {
    ValueElements::ArrayOfString(value)
}
fn wrap_primitive_date_time(value: String) -> ValueElements {
    ValueElements::PrimitiveDateTime(value)
}
fn wrap_array_of_date_time(value: Vec<String>) -> ValueElements {
    ValueElements::ArrayOfDateTime(value)
}
fn wrap_primitive_uri(value: String) -> ValueElements {
    ValueElements::PrimitiveUri(value)
}
fn wrap_array_of_uri(value: Vec<String>) -> ValueElements {
    ValueElements::ArrayOfUri(value)
}
fn wrap_primitive_binary(value: Vec<u8>) -> ValueElements {
    ValueElements::PrimitiveBinary(value)
}
fn wrap_array_of_binary(value: Vec<Vec<u8>>) -> ValueElements {
    ValueElements::ArrayOfBinary(value)
}
fn wrap_primitive_type_name(value: String) -> ValueElements {
    ValueElements::PrimitiveTypeName(value)
}
fn wrap_array_of_type_name(value: Vec<String>) -> ValueElements {
    ValueElements::ArrayOfTypeName(value)
}
fn wrap_primitive_prop_path(value: String) -> ValueElements {
    ValueElements::PrimitivePropPath(value)
}
fn wrap_array_of_prop_path(value: Vec<String>) -> ValueElements {
    ValueElements::ArrayOfPropPath(value)
}
fn wrap_primitive_method_name(value: String) -> ValueElements {
    ValueElements::PrimitiveMethodName(value)
}
fn wrap_array_of_method_name(value: Vec<String>) -> ValueElements {
    ValueElements::ArrayOfMethodName(value)
}
fn wrap_array_of_agency_compute_resource_scope(value: Vec<super::structs::AgencyComputeResourceScope>) -> ValueElements {
    ValueElements::ArrayOfAgencyComputeResourceScope(value)
}
fn wrap_array_of_agency_config_info(value: Vec<super::structs::AgencyConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfAgencyConfigInfo(value)
}
fn wrap_array_of_agency_vm_folder(value: Vec<super::structs::AgencyVmFolder>) -> ValueElements {
    ValueElements::ArrayOfAgencyVmFolder(value)
}
fn wrap_array_of_agency_vm_resource_pool(value: Vec<super::structs::AgencyVmResourcePool>) -> ValueElements {
    ValueElements::ArrayOfAgencyVmResourcePool(value)
}
fn wrap_array_of_agent_any_certificate(value: Vec<super::structs::AgentAnyCertificate>) -> ValueElements {
    ValueElements::ArrayOfAgentAnyCertificate(value)
}
fn wrap_array_of_agent_config_info(value: Vec<super::structs::AgentConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfAgentConfigInfo(value)
}
fn wrap_array_of_agent_ovf_environment_info(value: Vec<super::structs::AgentOvfEnvironmentInfo>) -> ValueElements {
    ValueElements::ArrayOfAgentOvfEnvironmentInfo(value)
}
fn wrap_array_of_agent_ovf_environment_info_ovf_property(value: Vec<super::structs::AgentOvfEnvironmentInfoOvfProperty>) -> ValueElements {
    ValueElements::ArrayOfAgentOvfEnvironmentInfoOvfProperty(value)
}
fn wrap_array_of_agent_pinned_pem_certificate(value: Vec<super::structs::AgentPinnedPemCertificate>) -> ValueElements {
    ValueElements::ArrayOfAgentPinnedPemCertificate(value)
}
fn wrap_array_of_agent_runtime_info(value: Vec<super::structs::AgentRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfAgentRuntimeInfo(value)
}
fn wrap_array_of_agent_vib_matching_rule(value: Vec<super::structs::AgentVibMatchingRule>) -> ValueElements {
    ValueElements::ArrayOfAgentVibMatchingRule(value)
}
fn wrap_array_of_agent_vm_hook(value: Vec<super::structs::AgentVmHook>) -> ValueElements {
    ValueElements::ArrayOfAgentVmHook(value)
}
fn wrap_array_of_agent_vsan_storage_policy(value: Vec<super::structs::AgentVsanStoragePolicy>) -> ValueElements {
    ValueElements::ArrayOfAgentVsanStoragePolicy(value)
}
fn wrap_array_of_certificate_not_trusted_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCertificateNotTrustedFault(value)
}
fn wrap_array_of_disabled_cluster_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDisabledClusterFault(value)
}
fn wrap_array_of_eam_app_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEamAppFault(value)
}
fn wrap_array_of_eam_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEamFault(value)
}
fn wrap_array_of_eam_io_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEamIoFault(value)
}
fn wrap_array_of_eam_runtime_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEamRuntimeFault(value)
}
fn wrap_array_of_eam_service_not_initialized(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEamServiceNotInitialized(value)
}
fn wrap_array_of_eam_system_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEamSystemFault(value)
}
fn wrap_array_of_invalid_agency_scope(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidAgencyScope(value)
}
fn wrap_array_of_invalid_agent_configuration(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidAgentConfiguration(value)
}
fn wrap_array_of_eam_invalid_login(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEamInvalidLogin(value)
}
fn wrap_array_of_eam_invalid_state(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEamInvalidState(value)
}
fn wrap_array_of_eam_invalid_url(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEamInvalidUrl(value)
}
fn wrap_array_of_eam_invalid_vib_package(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEamInvalidVibPackage(value)
}
fn wrap_array_of_no_connection_to_v_center(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoConnectionToVCenter(value)
}
fn wrap_array_of_not_authorized(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotAuthorized(value)
}
fn wrap_array_of_agency_disabled(value: Vec<super::structs::AgencyDisabled>) -> ValueElements {
    ValueElements::ArrayOfAgencyDisabled(value)
}
fn wrap_array_of_cannot_access_agent_ovf(value: Vec<super::structs::CannotAccessAgentOvf>) -> ValueElements {
    ValueElements::ArrayOfCannotAccessAgentOvf(value)
}
fn wrap_array_of_cannot_access_agent_vib(value: Vec<super::structs::CannotAccessAgentVib>) -> ValueElements {
    ValueElements::ArrayOfCannotAccessAgentVib(value)
}
fn wrap_array_of_eam_certificate_not_trusted(value: Vec<super::structs::EamCertificateNotTrusted>) -> ValueElements {
    ValueElements::ArrayOfEamCertificateNotTrusted(value)
}
fn wrap_array_of_extensible_issue(value: Vec<super::structs::ExtensibleIssue>) -> ValueElements {
    ValueElements::ArrayOfExtensibleIssue(value)
}
fn wrap_array_of_host_in_maintenance_mode(value: Vec<super::structs::HostInMaintenanceMode>) -> ValueElements {
    ValueElements::ArrayOfHostInMaintenanceMode(value)
}
fn wrap_array_of_host_in_partial_maintenance_mode(value: Vec<super::structs::HostInPartialMaintenanceMode>) -> ValueElements {
    ValueElements::ArrayOfHostInPartialMaintenanceMode(value)
}
fn wrap_array_of_host_in_standby_mode(value: Vec<super::structs::HostInStandbyMode>) -> ValueElements {
    ValueElements::ArrayOfHostInStandbyMode(value)
}
fn wrap_array_of_managed_host_not_reachable(value: Vec<super::structs::ManagedHostNotReachable>) -> ValueElements {
    ValueElements::ArrayOfManagedHostNotReachable(value)
}
fn wrap_array_of_host_powered_off(value: Vec<super::structs::HostPoweredOff>) -> ValueElements {
    ValueElements::ArrayOfHostPoweredOff(value)
}
fn wrap_array_of_immediate_host_reboot_required(value: Vec<super::structs::ImmediateHostRebootRequired>) -> ValueElements {
    ValueElements::ArrayOfImmediateHostRebootRequired(value)
}
fn wrap_array_of_incompatible_host_version(value: Vec<super::structs::IncompatibleHostVersion>) -> ValueElements {
    ValueElements::ArrayOfIncompatibleHostVersion(value)
}
fn wrap_array_of_insufficient_ip_addresses(value: Vec<super::structs::InsufficientIpAddresses>) -> ValueElements {
    ValueElements::ArrayOfInsufficientIpAddresses(value)
}
fn wrap_array_of_insufficient_resources(value: Vec<super::structs::InsufficientResources>) -> ValueElements {
    ValueElements::ArrayOfInsufficientResources(value)
}
fn wrap_array_of_insufficient_space(value: Vec<super::structs::InsufficientSpace>) -> ValueElements {
    ValueElements::ArrayOfInsufficientSpace(value)
}
fn wrap_array_of_invalid_config(value: Vec<super::structs::InvalidConfig>) -> ValueElements {
    ValueElements::ArrayOfInvalidConfig(value)
}
fn wrap_array_of_missing_agent_ip_pool(value: Vec<super::structs::MissingAgentIpPool>) -> ValueElements {
    ValueElements::ArrayOfMissingAgentIpPool(value)
}
fn wrap_array_of_missing_dv_filter_switch(value: Vec<super::structs::MissingDvFilterSwitch>) -> ValueElements {
    ValueElements::ArrayOfMissingDvFilterSwitch(value)
}
fn wrap_array_of_no_custom_agent_vm_datastore(value: Vec<super::structs::NoCustomAgentVmDatastore>) -> ValueElements {
    ValueElements::ArrayOfNoCustomAgentVmDatastore(value)
}
fn wrap_array_of_no_custom_agent_vm_network(value: Vec<super::structs::NoCustomAgentVmNetwork>) -> ValueElements {
    ValueElements::ArrayOfNoCustomAgentVmNetwork(value)
}
fn wrap_array_of_no_discoverable_agent_vm_datastore(value: Vec<super::structs::NoDiscoverableAgentVmDatastore>) -> ValueElements {
    ValueElements::ArrayOfNoDiscoverableAgentVmDatastore(value)
}
fn wrap_array_of_no_discoverable_agent_vm_network(value: Vec<super::structs::NoDiscoverableAgentVmNetwork>) -> ValueElements {
    ValueElements::ArrayOfNoDiscoverableAgentVmNetwork(value)
}
fn wrap_array_of_orphaned_agency(value: Vec<super::structs::OrphanedAgency>) -> ValueElements {
    ValueElements::ArrayOfOrphanedAgency(value)
}
fn wrap_array_of_orphaned_dv_filter_switch(value: Vec<super::structs::OrphanedDvFilterSwitch>) -> ValueElements {
    ValueElements::ArrayOfOrphanedDvFilterSwitch(value)
}
fn wrap_array_of_ovf_invalid_format(value: Vec<super::structs::OvfInvalidFormat>) -> ValueElements {
    ValueElements::ArrayOfOvfInvalidFormat(value)
}
fn wrap_array_of_ovf_invalid_property(value: Vec<super::structs::OvfInvalidProperty>) -> ValueElements {
    ValueElements::ArrayOfOvfInvalidProperty(value)
}
fn wrap_array_of_transition_failed(value: Vec<super::structs::TransitionFailed>) -> ValueElements {
    ValueElements::ArrayOfTransitionFailed(value)
}
fn wrap_array_of_unknown_agent_vm(value: Vec<super::structs::UnknownAgentVm>) -> ValueElements {
    ValueElements::ArrayOfUnknownAgentVm(value)
}
fn wrap_array_of_vib_cannot_put_host_in_maintenance_mode(value: Vec<super::structs::VibCannotPutHostInMaintenanceMode>) -> ValueElements {
    ValueElements::ArrayOfVibCannotPutHostInMaintenanceMode(value)
}
fn wrap_array_of_vib_cannot_put_host_out_of_maintenance_mode(value: Vec<super::structs::VibCannotPutHostOutOfMaintenanceMode>) -> ValueElements {
    ValueElements::ArrayOfVibCannotPutHostOutOfMaintenanceMode(value)
}
fn wrap_array_of_vib_dependencies_not_met_by_host(value: Vec<super::structs::VibDependenciesNotMetByHost>) -> ValueElements {
    ValueElements::ArrayOfVibDependenciesNotMetByHost(value)
}
fn wrap_array_of_vib_invalid_format(value: Vec<super::structs::VibInvalidFormat>) -> ValueElements {
    ValueElements::ArrayOfVibInvalidFormat(value)
}
fn wrap_array_of_vib_requirements_not_met_by_host(value: Vec<super::structs::VibRequirementsNotMetByHost>) -> ValueElements {
    ValueElements::ArrayOfVibRequirementsNotMetByHost(value)
}
fn wrap_array_of_vib_requires_host_in_maintenance_mode(value: Vec<super::structs::VibRequiresHostInMaintenanceMode>) -> ValueElements {
    ValueElements::ArrayOfVibRequiresHostInMaintenanceMode(value)
}
fn wrap_array_of_vib_requires_host_reboot(value: Vec<super::structs::VibRequiresHostReboot>) -> ValueElements {
    ValueElements::ArrayOfVibRequiresHostReboot(value)
}
fn wrap_array_of_vib_requires_manual_installation(value: Vec<super::structs::VibRequiresManualInstallation>) -> ValueElements {
    ValueElements::ArrayOfVibRequiresManualInstallation(value)
}
fn wrap_array_of_vib_requires_manual_uninstallation(value: Vec<super::structs::VibRequiresManualUninstallation>) -> ValueElements {
    ValueElements::ArrayOfVibRequiresManualUninstallation(value)
}
fn wrap_array_of_vm_corrupted(value: Vec<super::structs::VmCorrupted>) -> ValueElements {
    ValueElements::ArrayOfVmCorrupted(value)
}
fn wrap_array_of_vm_hook_failed(value: Vec<super::structs::VmHookFailed>) -> ValueElements {
    ValueElements::ArrayOfVmHookFailed(value)
}
fn wrap_array_of_vm_hook_timedout(value: Vec<super::structs::VmHookTimedout>) -> ValueElements {
    ValueElements::ArrayOfVmHookTimedout(value)
}
fn wrap_array_of_vm_inaccessible(value: Vec<super::structs::VmInaccessible>) -> ValueElements {
    ValueElements::ArrayOfVmInaccessible(value)
}
fn wrap_array_of_vm_marked_as_template(value: Vec<super::structs::VmMarkedAsTemplate>) -> ValueElements {
    ValueElements::ArrayOfVmMarkedAsTemplate(value)
}
fn wrap_array_of_vm_orphaned(value: Vec<super::structs::VmOrphaned>) -> ValueElements {
    ValueElements::ArrayOfVmOrphaned(value)
}
fn wrap_array_of_vm_powered_on(value: Vec<super::structs::VmPoweredOn>) -> ValueElements {
    ValueElements::ArrayOfVmPoweredOn(value)
}
fn wrap_array_of_vm_protected(value: Vec<super::structs::VmProtected>) -> ValueElements {
    ValueElements::ArrayOfVmProtected(value)
}
fn wrap_array_of_vm_requires_host_out_of_maintenance_mode(value: Vec<super::structs::VmRequiresHostOutOfMaintenanceMode>) -> ValueElements {
    ValueElements::ArrayOfVmRequiresHostOutOfMaintenanceMode(value)
}
fn wrap_array_of_vm_suspended(value: Vec<super::structs::VmSuspended>) -> ValueElements {
    ValueElements::ArrayOfVmSuspended(value)
}
fn wrap_array_of_vm_wrong_folder(value: Vec<super::structs::VmWrongFolder>) -> ValueElements {
    ValueElements::ArrayOfVmWrongFolder(value)
}
fn wrap_array_of_vm_wrong_resource_pool(value: Vec<super::structs::VmWrongResourcePool>) -> ValueElements {
    ValueElements::ArrayOfVmWrongResourcePool(value)
}
fn wrap_array_of_cluster_agent_certificate_not_trusted(value: Vec<super::structs::ClusterAgentCertificateNotTrusted>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentCertificateNotTrusted(value)
}
fn wrap_array_of_cluster_agent_host_in_maintenance_mode(value: Vec<super::structs::ClusterAgentHostInMaintenanceMode>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentHostInMaintenanceMode(value)
}
fn wrap_array_of_cluster_agent_host_in_partial_maintenance_mode(value: Vec<super::structs::ClusterAgentHostInPartialMaintenanceMode>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentHostInPartialMaintenanceMode(value)
}
fn wrap_array_of_cluster_agent_insufficient_cluster_resources(value: Vec<super::structs::ClusterAgentInsufficientClusterResources>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentInsufficientClusterResources(value)
}
fn wrap_array_of_cluster_agent_insufficient_cluster_space(value: Vec<super::structs::ClusterAgentInsufficientClusterSpace>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentInsufficientClusterSpace(value)
}
fn wrap_array_of_cluster_agent_invalid_config(value: Vec<super::structs::ClusterAgentInvalidConfig>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentInvalidConfig(value)
}
fn wrap_array_of_cluster_agent_missing_cluster_vm_datastore(value: Vec<super::structs::ClusterAgentMissingClusterVmDatastore>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentMissingClusterVmDatastore(value)
}
fn wrap_array_of_cluster_agent_missing_cluster_vm_network(value: Vec<super::structs::ClusterAgentMissingClusterVmNetwork>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentMissingClusterVmNetwork(value)
}
fn wrap_array_of_cluster_agent_ovf_invalid_property(value: Vec<super::structs::ClusterAgentOvfInvalidProperty>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentOvfInvalidProperty(value)
}
fn wrap_array_of_cluster_agent_transition_failed(value: Vec<super::structs::ClusterAgentTransitionFailed>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentTransitionFailed(value)
}
fn wrap_array_of_cluster_agent_vm_hook_failed(value: Vec<super::structs::ClusterAgentVmHookFailed>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentVmHookFailed(value)
}
fn wrap_array_of_cluster_agent_vm_hook_timedout(value: Vec<super::structs::ClusterAgentVmHookTimedout>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentVmHookTimedout(value)
}
fn wrap_array_of_cluster_agent_vm_inaccessible(value: Vec<super::structs::ClusterAgentVmInaccessible>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentVmInaccessible(value)
}
fn wrap_array_of_cluster_agent_vm_not_removed(value: Vec<super::structs::ClusterAgentVmNotRemoved>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentVmNotRemoved(value)
}
fn wrap_array_of_cluster_agent_vm_powered_on(value: Vec<super::structs::ClusterAgentVmPoweredOn>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentVmPoweredOn(value)
}
fn wrap_array_of_cluster_agent_vm_protected(value: Vec<super::structs::ClusterAgentVmProtected>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentVmProtected(value)
}
fn wrap_array_of_cluster_agent_vm_suspended(value: Vec<super::structs::ClusterAgentVmSuspended>) -> ValueElements {
    ValueElements::ArrayOfClusterAgentVmSuspended(value)
}
fn wrap_array_of_integrity_agency_cannot_delete_software(value: Vec<super::structs::IntegrityAgencyCannotDeleteSoftware>) -> ValueElements {
    ValueElements::ArrayOfIntegrityAgencyCannotDeleteSoftware(value)
}
fn wrap_array_of_integrity_agency_cannot_stage_software(value: Vec<super::structs::IntegrityAgencyCannotStageSoftware>) -> ValueElements {
    ValueElements::ArrayOfIntegrityAgencyCannotStageSoftware(value)
}
fn wrap_array_of_integrity_agency_vum_unavailable(value: Vec<super::structs::IntegrityAgencyVumUnavailable>) -> ValueElements {
    ValueElements::ArrayOfIntegrityAgencyVumUnavailable(value)
}
fn wrap_array_of_personality_agency_cannot_configure_solutions(value: Vec<super::structs::PersonalityAgencyCannotConfigureSolutions>) -> ValueElements {
    ValueElements::ArrayOfPersonalityAgencyCannotConfigureSolutions(value)
}
fn wrap_array_of_personality_agency_cannot_upload_depot(value: Vec<super::structs::PersonalityAgencyCannotUploadDepot>) -> ValueElements {
    ValueElements::ArrayOfPersonalityAgencyCannotUploadDepot(value)
}
fn wrap_array_of_personality_agency_inaccessible_depot(value: Vec<super::structs::PersonalityAgencyInaccessibleDepot>) -> ValueElements {
    ValueElements::ArrayOfPersonalityAgencyInaccessibleDepot(value)
}
fn wrap_array_of_personality_agency_invalid_depot(value: Vec<super::structs::PersonalityAgencyInvalidDepot>) -> ValueElements {
    ValueElements::ArrayOfPersonalityAgencyInvalidDepot(value)
}
fn wrap_array_of_personality_agency_pm_unavailable(value: Vec<super::structs::PersonalityAgencyPmUnavailable>) -> ValueElements {
    ValueElements::ArrayOfPersonalityAgencyPmUnavailable(value)
}
fn wrap_array_of_personality_agent_awaiting_pm_remediation(value: Vec<super::structs::PersonalityAgentAwaitingPmRemediation>) -> ValueElements {
    ValueElements::ArrayOfPersonalityAgentAwaitingPmRemediation(value)
}
fn wrap_array_of_personality_agent_blocked_by_agency_operation(value: Vec<super::structs::PersonalityAgentBlockedByAgencyOperation>) -> ValueElements {
    ValueElements::ArrayOfPersonalityAgentBlockedByAgencyOperation(value)
}
fn wrap_array_of_hooks_hook_list_spec(value: Vec<super::structs::HooksHookListSpec>) -> ValueElements {
    ValueElements::ArrayOfHooksHookListSpec(value)
}
fn wrap_array_of_hooks_mark_as_processed_spec(value: Vec<super::structs::HooksMarkAsProcessedSpec>) -> ValueElements {
    ValueElements::ArrayOfHooksMarkAsProcessedSpec(value)
}
fn wrap_array_of_solutions_apply_spec(value: Vec<super::structs::SolutionsApplySpec>) -> ValueElements {
    ValueElements::ArrayOfSolutionsApplySpec(value)
}
fn wrap_array_of_solutions_cluster_bound_solution_config(value: Vec<super::structs::SolutionsClusterBoundSolutionConfig>) -> ValueElements {
    ValueElements::ArrayOfSolutionsClusterBoundSolutionConfig(value)
}
fn wrap_array_of_solutions_cluster_solution_compliance_result(value: Vec<super::structs::SolutionsClusterSolutionComplianceResult>) -> ValueElements {
    ValueElements::ArrayOfSolutionsClusterSolutionComplianceResult(value)
}
fn wrap_array_of_solutions_compliance_result(value: Vec<super::structs::SolutionsComplianceResult>) -> ValueElements {
    ValueElements::ArrayOfSolutionsComplianceResult(value)
}
fn wrap_array_of_solutions_compliance_spec(value: Vec<super::structs::SolutionsComplianceSpec>) -> ValueElements {
    ValueElements::ArrayOfSolutionsComplianceSpec(value)
}
fn wrap_array_of_solutions_deployment_unit_compliance_result(value: Vec<super::structs::SolutionsDeploymentUnitComplianceResult>) -> ValueElements {
    ValueElements::ArrayOfSolutionsDeploymentUnitComplianceResult(value)
}
fn wrap_array_of_solutions_hook_config(value: Vec<super::structs::SolutionsHookConfig>) -> ValueElements {
    ValueElements::ArrayOfSolutionsHookConfig(value)
}
fn wrap_array_of_solutions_hook_info(value: Vec<super::structs::SolutionsHookInfo>) -> ValueElements {
    ValueElements::ArrayOfSolutionsHookInfo(value)
}
fn wrap_array_of_solutions_host_bound_solution_config(value: Vec<super::structs::SolutionsHostBoundSolutionConfig>) -> ValueElements {
    ValueElements::ArrayOfSolutionsHostBoundSolutionConfig(value)
}
fn wrap_array_of_solutions_host_compliance_result(value: Vec<super::structs::SolutionsHostComplianceResult>) -> ValueElements {
    ValueElements::ArrayOfSolutionsHostComplianceResult(value)
}
fn wrap_array_of_solutions_interactive_hook_acknowledge_config(value: Vec<super::structs::SolutionsInteractiveHookAcknowledgeConfig>) -> ValueElements {
    ValueElements::ArrayOfSolutionsInteractiveHookAcknowledgeConfig(value)
}
fn wrap_array_of_solutions_ovf_property(value: Vec<super::structs::SolutionsOvfProperty>) -> ValueElements {
    ValueElements::ArrayOfSolutionsOvfProperty(value)
}
fn wrap_array_of_solutions_profile_id_storage_policy(value: Vec<super::structs::SolutionsProfileIdStoragePolicy>) -> ValueElements {
    ValueElements::ArrayOfSolutionsProfileIdStoragePolicy(value)
}
fn wrap_array_of_solutions_solution_compliance_result(value: Vec<super::structs::SolutionsSolutionComplianceResult>) -> ValueElements {
    ValueElements::ArrayOfSolutionsSolutionComplianceResult(value)
}
fn wrap_array_of_solutions_solution_config(value: Vec<super::structs::SolutionsSolutionConfig>) -> ValueElements {
    ValueElements::ArrayOfSolutionsSolutionConfig(value)
}
fn wrap_array_of_solutions_solution_validation_result(value: Vec<super::structs::SolutionsSolutionValidationResult>) -> ValueElements {
    ValueElements::ArrayOfSolutionsSolutionValidationResult(value)
}
fn wrap_array_of_solutions_transition_spec(value: Vec<super::structs::SolutionsTransitionSpec>) -> ValueElements {
    ValueElements::ArrayOfSolutionsTransitionSpec(value)
}
fn wrap_array_of_solutions_url_vm_source(value: Vec<super::structs::SolutionsUrlVmSource>) -> ValueElements {
    ValueElements::ArrayOfSolutionsUrlVmSource(value)
}
fn wrap_array_of_solutions_vm_network_mapping(value: Vec<super::structs::SolutionsVmNetworkMapping>) -> ValueElements {
    ValueElements::ArrayOfSolutionsVmNetworkMapping(value)
}
fn wrap_array_of_solutions_validate_spec(value: Vec<super::structs::SolutionsValidateSpec>) -> ValueElements {
    ValueElements::ArrayOfSolutionsValidateSpec(value)
}
fn wrap_array_of_solutions_validation_result(value: Vec<super::structs::SolutionsValidationResult>) -> ValueElements {
    ValueElements::ArrayOfSolutionsValidationResult(value)
}
fn wrap_array_of_solutions_vm_resource_spec(value: Vec<super::structs::SolutionsVmResourceSpec>) -> ValueElements {
    ValueElements::ArrayOfSolutionsVmResourceSpec(value)
}
fn wrap_array_of_vib_vib_info(value: Vec<super::structs::VibVibInfo>) -> ValueElements {
    ValueElements::ArrayOfVibVibInfo(value)
}
fn wrap_array_of_vib_vib_info_software_tags(value: Vec<super::structs::VibVibInfoSoftwareTags>) -> ValueElements {
    ValueElements::ArrayOfVibVibInfoSoftwareTags(value)
}
fn wrap_array_of_vib_vib_services_any_certificate(value: Vec<super::structs::VibVibServicesAnyCertificate>) -> ValueElements {
    ValueElements::ArrayOfVibVibServicesAnyCertificate(value)
}
fn wrap_array_of_vib_vib_services_pinned_pem_certificate(value: Vec<super::structs::VibVibServicesPinnedPemCertificate>) -> ValueElements {
    ValueElements::ArrayOfVibVibServicesPinnedPemCertificate(value)
}
fn wrap_array_of_pbm_about_info(value: Vec<super::structs::PbmAboutInfo>) -> ValueElements {
    ValueElements::ArrayOfPbmAboutInfo(value)
}
fn wrap_array_of_pbm_extended_element_description(value: Vec<super::structs::PbmExtendedElementDescription>) -> ValueElements {
    ValueElements::ArrayOfPbmExtendedElementDescription(value)
}
fn wrap_array_of_pbm_logging_configuration(value: Vec<super::structs::PbmLoggingConfiguration>) -> ValueElements {
    ValueElements::ArrayOfPbmLoggingConfiguration(value)
}
fn wrap_array_of_pbm_server_object_ref(value: Vec<super::structs::PbmServerObjectRef>) -> ValueElements {
    ValueElements::ArrayOfPbmServerObjectRef(value)
}
fn wrap_array_of_pbm_service_instance_content(value: Vec<super::structs::PbmServiceInstanceContent>) -> ValueElements {
    ValueElements::ArrayOfPbmServiceInstanceContent(value)
}
fn wrap_array_of_pbm_capability_instance(value: Vec<super::structs::PbmCapabilityInstance>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityInstance(value)
}
fn wrap_array_of_pbm_capability_metadata(value: Vec<super::structs::PbmCapabilityMetadata>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityMetadata(value)
}
fn wrap_array_of_pbm_capability_metadata_unique_id(value: Vec<super::structs::PbmCapabilityMetadataUniqueId>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityMetadataUniqueId(value)
}
fn wrap_array_of_pbm_capability_constraint_instance(value: Vec<super::structs::PbmCapabilityConstraintInstance>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityConstraintInstance(value)
}
fn wrap_array_of_pbm_capability_generic_type_info(value: Vec<super::structs::PbmCapabilityGenericTypeInfo>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityGenericTypeInfo(value)
}
fn wrap_array_of_pbm_capability_property_instance(value: Vec<super::structs::PbmCapabilityPropertyInstance>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityPropertyInstance(value)
}
fn wrap_array_of_pbm_capability_property_metadata(value: Vec<super::structs::PbmCapabilityPropertyMetadata>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityPropertyMetadata(value)
}
fn wrap_array_of_pbm_capability_metadata_per_category(value: Vec<super::structs::PbmCapabilityMetadataPerCategory>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityMetadataPerCategory(value)
}
fn wrap_array_of_pbm_capability_schema(value: Vec<super::structs::PbmCapabilitySchema>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilitySchema(value)
}
fn wrap_array_of_pbm_capability_namespace_info(value: Vec<super::structs::PbmCapabilityNamespaceInfo>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityNamespaceInfo(value)
}
fn wrap_array_of_pbm_capability_schema_vendor_info(value: Vec<super::structs::PbmCapabilitySchemaVendorInfo>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilitySchemaVendorInfo(value)
}
fn wrap_array_of_pbm_capability_vendor_namespace_info(value: Vec<super::structs::PbmCapabilityVendorNamespaceInfo>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityVendorNamespaceInfo(value)
}
fn wrap_array_of_pbm_capability_vendor_resource_type_info(value: Vec<super::structs::PbmCapabilityVendorResourceTypeInfo>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityVendorResourceTypeInfo(value)
}
fn wrap_array_of_pbm_persistence_based_data_service_info(value: Vec<super::structs::PbmPersistenceBasedDataServiceInfo>) -> ValueElements {
    ValueElements::ArrayOfPbmPersistenceBasedDataServiceInfo(value)
}
fn wrap_array_of_pbm_vaio_data_service_info(value: Vec<super::structs::PbmVaioDataServiceInfo>) -> ValueElements {
    ValueElements::ArrayOfPbmVaioDataServiceInfo(value)
}
fn wrap_array_of_pbm_capability_description(value: Vec<super::structs::PbmCapabilityDescription>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityDescription(value)
}
fn wrap_array_of_pbm_capability_discrete_set(value: Vec<super::structs::PbmCapabilityDiscreteSet>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityDiscreteSet(value)
}
fn wrap_array_of_pbm_capability_range(value: Vec<super::structs::PbmCapabilityRange>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityRange(value)
}
fn wrap_array_of_pbm_capability_time_span(value: Vec<super::structs::PbmCapabilityTimeSpan>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityTimeSpan(value)
}
fn wrap_array_of_pbm_compliance_result(value: Vec<super::structs::PbmComplianceResult>) -> ValueElements {
    ValueElements::ArrayOfPbmComplianceResult(value)
}
fn wrap_array_of_pbm_fetch_entity_health_status_spec(value: Vec<super::structs::PbmFetchEntityHealthStatusSpec>) -> ValueElements {
    ValueElements::ArrayOfPbmFetchEntityHealthStatusSpec(value)
}
fn wrap_array_of_pbm_compliance_operational_status(value: Vec<super::structs::PbmComplianceOperationalStatus>) -> ValueElements {
    ValueElements::ArrayOfPbmComplianceOperationalStatus(value)
}
fn wrap_array_of_pbm_compliance_policy_status(value: Vec<super::structs::PbmCompliancePolicyStatus>) -> ValueElements {
    ValueElements::ArrayOfPbmCompliancePolicyStatus(value)
}
fn wrap_array_of_pbm_rollup_compliance_result(value: Vec<super::structs::PbmRollupComplianceResult>) -> ValueElements {
    ValueElements::ArrayOfPbmRollupComplianceResult(value)
}
fn wrap_array_of_pbm_already_exists(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmAlreadyExists(value)
}
fn wrap_array_of_pbm_capability_profile_property_mismatch_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityProfilePropertyMismatchFault(value)
}
fn wrap_array_of_pbm_compatibility_check_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmCompatibilityCheckFault(value)
}
fn wrap_array_of_pbm_default_profile_applies_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmDefaultProfileAppliesFault(value)
}
fn wrap_array_of_pbm_duplicate_name(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmDuplicateName(value)
}
fn wrap_array_of_pbm_incompatible_vendor_specific_rule_set(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmIncompatibleVendorSpecificRuleSet(value)
}
fn wrap_array_of_pbm_fault_invalid_login(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmFaultInvalidLogin(value)
}
fn wrap_array_of_pbm_legacy_hubs_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmLegacyHubsNotSupported(value)
}
fn wrap_array_of_pbm_fault_no_permission(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmFaultNoPermission(value)
}
fn wrap_array_of_pbm_fault_no_permission_entity_privileges(value: Vec<super::structs::PbmFaultNoPermissionEntityPrivileges>) -> ValueElements {
    ValueElements::ArrayOfPbmFaultNoPermissionEntityPrivileges(value)
}
fn wrap_array_of_pbm_non_existent_hubs(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmNonExistentHubs(value)
}
fn wrap_array_of_pbm_fault_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmFaultNotFound(value)
}
fn wrap_array_of_pbm_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmFault(value)
}
fn wrap_array_of_pbm_fault_profile_storage_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmFaultProfileStorageFault(value)
}
fn wrap_array_of_pbm_property_mismatch_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmPropertyMismatchFault(value)
}
fn wrap_array_of_pbm_resource_in_use(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPbmResourceInUse(value)
}
fn wrap_array_of_pbm_placement_capability_constraints_requirement(value: Vec<super::structs::PbmPlacementCapabilityConstraintsRequirement>) -> ValueElements {
    ValueElements::ArrayOfPbmPlacementCapabilityConstraintsRequirement(value)
}
fn wrap_array_of_pbm_placement_capability_profile_requirement(value: Vec<super::structs::PbmPlacementCapabilityProfileRequirement>) -> ValueElements {
    ValueElements::ArrayOfPbmPlacementCapabilityProfileRequirement(value)
}
fn wrap_array_of_pbm_placement_compatibility_result(value: Vec<super::structs::PbmPlacementCompatibilityResult>) -> ValueElements {
    ValueElements::ArrayOfPbmPlacementCompatibilityResult(value)
}
fn wrap_array_of_pbm_placement_matching_replication_resources(value: Vec<super::structs::PbmPlacementMatchingReplicationResources>) -> ValueElements {
    ValueElements::ArrayOfPbmPlacementMatchingReplicationResources(value)
}
fn wrap_array_of_pbm_placement_hub(value: Vec<super::structs::PbmPlacementHub>) -> ValueElements {
    ValueElements::ArrayOfPbmPlacementHub(value)
}
fn wrap_array_of_pbm_placement_resource_utilization(value: Vec<super::structs::PbmPlacementResourceUtilization>) -> ValueElements {
    ValueElements::ArrayOfPbmPlacementResourceUtilization(value)
}
fn wrap_array_of_pbm_capability_profile_create_spec(value: Vec<super::structs::PbmCapabilityProfileCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityProfileCreateSpec(value)
}
fn wrap_array_of_pbm_capability_profile_update_spec(value: Vec<super::structs::PbmCapabilityProfileUpdateSpec>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilityProfileUpdateSpec(value)
}
fn wrap_array_of_pbm_data_service_to_policies_map(value: Vec<super::structs::PbmDataServiceToPoliciesMap>) -> ValueElements {
    ValueElements::ArrayOfPbmDataServiceToPoliciesMap(value)
}
fn wrap_array_of_pbm_default_capability_profile(value: Vec<super::structs::PbmDefaultCapabilityProfile>) -> ValueElements {
    ValueElements::ArrayOfPbmDefaultCapabilityProfile(value)
}
fn wrap_array_of_pbm_default_profile_info(value: Vec<super::structs::PbmDefaultProfileInfo>) -> ValueElements {
    ValueElements::ArrayOfPbmDefaultProfileInfo(value)
}
fn wrap_array_of_pbm_profile_id(value: Vec<super::structs::PbmProfileId>) -> ValueElements {
    ValueElements::ArrayOfPbmProfileId(value)
}
fn wrap_array_of_pbm_profile_operation_outcome(value: Vec<super::structs::PbmProfileOperationOutcome>) -> ValueElements {
    ValueElements::ArrayOfPbmProfileOperationOutcome(value)
}
fn wrap_array_of_pbm_profile_type(value: Vec<super::structs::PbmProfileType>) -> ValueElements {
    ValueElements::ArrayOfPbmProfileType(value)
}
fn wrap_array_of_pbm_query_profile_result(value: Vec<super::structs::PbmQueryProfileResult>) -> ValueElements {
    ValueElements::ArrayOfPbmQueryProfileResult(value)
}
fn wrap_array_of_pbm_profile_resource_type(value: Vec<super::structs::PbmProfileResourceType>) -> ValueElements {
    ValueElements::ArrayOfPbmProfileResourceType(value)
}
fn wrap_array_of_pbm_capability_sub_profile_constraints(value: Vec<super::structs::PbmCapabilitySubProfileConstraints>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilitySubProfileConstraints(value)
}
fn wrap_array_of_pbm_capability_sub_profile(value: Vec<super::structs::PbmCapabilitySubProfile>) -> ValueElements {
    ValueElements::ArrayOfPbmCapabilitySubProfile(value)
}
fn wrap_array_of_pbm_datastore_space_statistics(value: Vec<super::structs::PbmDatastoreSpaceStatistics>) -> ValueElements {
    ValueElements::ArrayOfPbmDatastoreSpaceStatistics(value)
}
fn wrap_array_of_pbm_query_replication_group_result(value: Vec<super::structs::PbmQueryReplicationGroupResult>) -> ValueElements {
    ValueElements::ArrayOfPbmQueryReplicationGroupResult(value)
}
fn wrap_array_of_sms_about_info(value: Vec<super::structs::SmsAboutInfo>) -> ValueElements {
    ValueElements::ArrayOfSmsAboutInfo(value)
}
fn wrap_array_of_entity_reference(value: Vec<super::structs::EntityReference>) -> ValueElements {
    ValueElements::ArrayOfEntityReference(value)
}
fn wrap_array_of_fault_domain_filter(value: Vec<super::structs::FaultDomainFilter>) -> ValueElements {
    ValueElements::ArrayOfFaultDomainFilter(value)
}
fn wrap_array_of_replication_group_filter(value: Vec<super::structs::ReplicationGroupFilter>) -> ValueElements {
    ValueElements::ArrayOfReplicationGroupFilter(value)
}
fn wrap_array_of_sms_task_info(value: Vec<super::structs::SmsTaskInfo>) -> ValueElements {
    ValueElements::ArrayOfSmsTaskInfo(value)
}
fn wrap_array_of_auth_connection_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAuthConnectionFailed(value)
}
fn wrap_array_of_certificate_authority_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCertificateAuthorityFault(value)
}
fn wrap_array_of_certificate_not_imported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCertificateNotImported(value)
}
fn wrap_array_of_certificate_not_trusted(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCertificateNotTrusted(value)
}
fn wrap_array_of_certificate_refresh_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCertificateRefreshFailed(value)
}
fn wrap_array_of_certificate_revocation_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCertificateRevocationFailed(value)
}
fn wrap_array_of_duplicate_entry(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDuplicateEntry(value)
}
fn wrap_array_of_inactive_provider(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInactiveProvider(value)
}
fn wrap_array_of_incorrect_username_password(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIncorrectUsernamePassword(value)
}
fn wrap_array_of_invalid_certificate(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidCertificate(value)
}
fn wrap_array_of_sms_invalid_login(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSmsInvalidLogin(value)
}
fn wrap_array_of_invalid_profile(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidProfile(value)
}
fn wrap_array_of_invalid_session(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidSession(value)
}
fn wrap_array_of_invalid_url(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidUrl(value)
}
fn wrap_array_of_multiple_sort_specs_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMultipleSortSpecsNotSupported(value)
}
fn wrap_array_of_no_common_provider_for_all_backings(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoCommonProviderForAllBackings(value)
}
fn wrap_array_of_not_supported_by_provider(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedByProvider(value)
}
fn wrap_array_of_provider_busy(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProviderBusy(value)
}
fn wrap_array_of_provider_connection_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProviderConnectionFailed(value)
}
fn wrap_array_of_provider_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProviderNotFound(value)
}
fn wrap_array_of_provider_out_of_provisioning_resource(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProviderOutOfProvisioningResource(value)
}
fn wrap_array_of_provider_out_of_resource(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProviderOutOfResource(value)
}
fn wrap_array_of_provider_registration_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProviderRegistrationFault(value)
}
fn wrap_array_of_provider_sync_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProviderSyncFailed(value)
}
fn wrap_array_of_provider_unavailable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProviderUnavailable(value)
}
fn wrap_array_of_provider_unregistration_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProviderUnregistrationFault(value)
}
fn wrap_array_of_proxy_registration_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProxyRegistrationFailed(value)
}
fn wrap_array_of_query_execution_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfQueryExecutionFault(value)
}
fn wrap_array_of_query_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfQueryNotSupported(value)
}
fn wrap_array_of_sms_resource_in_use(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSmsResourceInUse(value)
}
fn wrap_array_of_service_not_initialized(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfServiceNotInitialized(value)
}
fn wrap_array_of_sms_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSmsFault(value)
}
fn wrap_array_of_sync_in_progress(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSyncInProgress(value)
}
fn wrap_array_of_too_many(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTooMany(value)
}
fn wrap_array_of_already_done(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAlreadyDone(value)
}
fn wrap_array_of_invalid_function_target(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidFunctionTarget(value)
}
fn wrap_array_of_invalid_replication_state(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidReplicationState(value)
}
fn wrap_array_of_no_replication_target(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoReplicationTarget(value)
}
fn wrap_array_of_no_valid_replica(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoValidReplica(value)
}
fn wrap_array_of_peer_not_reachable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPeerNotReachable(value)
}
fn wrap_array_of_sms_replication_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSmsReplicationFault(value)
}
fn wrap_array_of_sync_ongoing(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSyncOngoing(value)
}
fn wrap_array_of_alarm_filter(value: Vec<super::structs::AlarmFilter>) -> ValueElements {
    ValueElements::ArrayOfAlarmFilter(value)
}
fn wrap_array_of_alarm_result(value: Vec<super::structs::AlarmResult>) -> ValueElements {
    ValueElements::ArrayOfAlarmResult(value)
}
fn wrap_array_of_vasa_provider_upgrade_spec(value: Vec<super::structs::VasaProviderUpgradeSpec>) -> ValueElements {
    ValueElements::ArrayOfVasaProviderUpgradeSpec(value)
}
fn wrap_array_of_vasa_provider_info(value: Vec<super::structs::VasaProviderInfo>) -> ValueElements {
    ValueElements::ArrayOfVasaProviderInfo(value)
}
fn wrap_array_of_related_storage_array(value: Vec<super::structs::RelatedStorageArray>) -> ValueElements {
    ValueElements::ArrayOfRelatedStorageArray(value)
}
fn wrap_array_of_supported_vendor_model_mapping(value: Vec<super::structs::SupportedVendorModelMapping>) -> ValueElements {
    ValueElements::ArrayOfSupportedVendorModelMapping(value)
}
fn wrap_array_of_vasa_provider_spec(value: Vec<super::structs::VasaProviderSpec>) -> ValueElements {
    ValueElements::ArrayOfVasaProviderSpec(value)
}
fn wrap_array_of_backing_config(value: Vec<super::structs::BackingConfig>) -> ValueElements {
    ValueElements::ArrayOfBackingConfig(value)
}
fn wrap_array_of_backing_storage_pool(value: Vec<super::structs::BackingStoragePool>) -> ValueElements {
    ValueElements::ArrayOfBackingStoragePool(value)
}
fn wrap_array_of_datastore_backing_pool_mapping(value: Vec<super::structs::DatastoreBackingPoolMapping>) -> ValueElements {
    ValueElements::ArrayOfDatastoreBackingPoolMapping(value)
}
fn wrap_array_of_datastore_pair(value: Vec<super::structs::DatastorePair>) -> ValueElements {
    ValueElements::ArrayOfDatastorePair(value)
}
fn wrap_array_of_drs_migration_capability_result(value: Vec<super::structs::DrsMigrationCapabilityResult>) -> ValueElements {
    ValueElements::ArrayOfDrsMigrationCapabilityResult(value)
}
fn wrap_array_of_fault_domain_provider_mapping(value: Vec<super::structs::FaultDomainProviderMapping>) -> ValueElements {
    ValueElements::ArrayOfFaultDomainProviderMapping(value)
}
fn wrap_array_of_fc_storage_port(value: Vec<super::structs::FcStoragePort>) -> ValueElements {
    ValueElements::ArrayOfFcStoragePort(value)
}
fn wrap_array_of_fcoe_storage_port(value: Vec<super::structs::FcoeStoragePort>) -> ValueElements {
    ValueElements::ArrayOfFcoeStoragePort(value)
}
fn wrap_array_of_storage_file_system_info(value: Vec<super::structs::StorageFileSystemInfo>) -> ValueElements {
    ValueElements::ArrayOfStorageFileSystemInfo(value)
}
fn wrap_array_of_iscsi_storage_port(value: Vec<super::structs::IscsiStoragePort>) -> ValueElements {
    ValueElements::ArrayOfIscsiStoragePort(value)
}
fn wrap_array_of_lun_hba_association(value: Vec<super::structs::LunHbaAssociation>) -> ValueElements {
    ValueElements::ArrayOfLunHbaAssociation(value)
}
fn wrap_array_of_name_value_pair(value: Vec<super::structs::NameValuePair>) -> ValueElements {
    ValueElements::ArrayOfNameValuePair(value)
}
fn wrap_array_of_storage_alarm(value: Vec<super::structs::StorageAlarm>) -> ValueElements {
    ValueElements::ArrayOfStorageAlarm(value)
}
fn wrap_array_of_storage_array(value: Vec<super::structs::StorageArray>) -> ValueElements {
    ValueElements::ArrayOfStorageArray(value)
}
fn wrap_array_of_storage_capability(value: Vec<super::structs::StorageCapability>) -> ValueElements {
    ValueElements::ArrayOfStorageCapability(value)
}
fn wrap_array_of_storage_container(value: Vec<super::structs::StorageContainer>) -> ValueElements {
    ValueElements::ArrayOfStorageContainer(value)
}
fn wrap_array_of_storage_container_result(value: Vec<super::structs::StorageContainerResult>) -> ValueElements {
    ValueElements::ArrayOfStorageContainerResult(value)
}
fn wrap_array_of_storage_container_spec(value: Vec<super::structs::StorageContainerSpec>) -> ValueElements {
    ValueElements::ArrayOfStorageContainerSpec(value)
}
fn wrap_array_of_storage_file_system(value: Vec<super::structs::StorageFileSystem>) -> ValueElements {
    ValueElements::ArrayOfStorageFileSystem(value)
}
fn wrap_array_of_storage_lun(value: Vec<super::structs::StorageLun>) -> ValueElements {
    ValueElements::ArrayOfStorageLun(value)
}
fn wrap_array_of_storage_processor(value: Vec<super::structs::StorageProcessor>) -> ValueElements {
    ValueElements::ArrayOfStorageProcessor(value)
}
fn wrap_array_of_policy_association(value: Vec<super::structs::PolicyAssociation>) -> ValueElements {
    ValueElements::ArrayOfPolicyAssociation(value)
}
fn wrap_array_of_replication_group_data(value: Vec<super::structs::ReplicationGroupData>) -> ValueElements {
    ValueElements::ArrayOfReplicationGroupData(value)
}
fn wrap_array_of_failover_success_result(value: Vec<super::structs::FailoverSuccessResult>) -> ValueElements {
    ValueElements::ArrayOfFailoverSuccessResult(value)
}
fn wrap_array_of_recovered_device(value: Vec<super::structs::RecoveredDevice>) -> ValueElements {
    ValueElements::ArrayOfRecoveredDevice(value)
}
fn wrap_array_of_recovered_disk_info(value: Vec<super::structs::RecoveredDiskInfo>) -> ValueElements {
    ValueElements::ArrayOfRecoveredDiskInfo(value)
}
fn wrap_array_of_fault_domain_info(value: Vec<super::structs::FaultDomainInfo>) -> ValueElements {
    ValueElements::ArrayOfFaultDomainInfo(value)
}
fn wrap_array_of_group_error_result(value: Vec<super::structs::GroupErrorResult>) -> ValueElements {
    ValueElements::ArrayOfGroupErrorResult(value)
}
fn wrap_array_of_point_in_time_replica_id(value: Vec<super::structs::PointInTimeReplicaId>) -> ValueElements {
    ValueElements::ArrayOfPointInTimeReplicaId(value)
}
fn wrap_array_of_promote_param(value: Vec<super::structs::PromoteParam>) -> ValueElements {
    ValueElements::ArrayOfPromoteParam(value)
}
fn wrap_array_of_query_point_in_time_replica_param(value: Vec<super::structs::QueryPointInTimeReplicaParam>) -> ValueElements {
    ValueElements::ArrayOfQueryPointInTimeReplicaParam(value)
}
fn wrap_array_of_replica_query_interval_param(value: Vec<super::structs::ReplicaQueryIntervalParam>) -> ValueElements {
    ValueElements::ArrayOfReplicaQueryIntervalParam(value)
}
fn wrap_array_of_query_point_in_time_replica_success_result(value: Vec<super::structs::QueryPointInTimeReplicaSuccessResult>) -> ValueElements {
    ValueElements::ArrayOfQueryPointInTimeReplicaSuccessResult(value)
}
fn wrap_array_of_point_in_time_replica_info(value: Vec<super::structs::PointInTimeReplicaInfo>) -> ValueElements {
    ValueElements::ArrayOfPointInTimeReplicaInfo(value)
}
fn wrap_array_of_query_point_in_time_replica_summary_result(value: Vec<super::structs::QueryPointInTimeReplicaSummaryResult>) -> ValueElements {
    ValueElements::ArrayOfQueryPointInTimeReplicaSummaryResult(value)
}
fn wrap_array_of_replica_interval_query_result(value: Vec<super::structs::ReplicaIntervalQueryResult>) -> ValueElements {
    ValueElements::ArrayOfReplicaIntervalQueryResult(value)
}
fn wrap_array_of_query_replication_group_success_result(value: Vec<super::structs::QueryReplicationGroupSuccessResult>) -> ValueElements {
    ValueElements::ArrayOfQueryReplicationGroupSuccessResult(value)
}
fn wrap_array_of_query_replication_peer_result(value: Vec<super::structs::QueryReplicationPeerResult>) -> ValueElements {
    ValueElements::ArrayOfQueryReplicationPeerResult(value)
}
fn wrap_array_of_recovered_target_group_member_info(value: Vec<super::structs::RecoveredTargetGroupMemberInfo>) -> ValueElements {
    ValueElements::ArrayOfRecoveredTargetGroupMemberInfo(value)
}
fn wrap_array_of_replica_id(value: Vec<super::structs::ReplicaId>) -> ValueElements {
    ValueElements::ArrayOfReplicaId(value)
}
fn wrap_array_of_reverse_replication_success_result(value: Vec<super::structs::ReverseReplicationSuccessResult>) -> ValueElements {
    ValueElements::ArrayOfReverseReplicationSuccessResult(value)
}
fn wrap_array_of_source_group_info(value: Vec<super::structs::SourceGroupInfo>) -> ValueElements {
    ValueElements::ArrayOfSourceGroupInfo(value)
}
fn wrap_array_of_replication_target_info(value: Vec<super::structs::ReplicationTargetInfo>) -> ValueElements {
    ValueElements::ArrayOfReplicationTargetInfo(value)
}
fn wrap_array_of_source_group_member_info(value: Vec<super::structs::SourceGroupMemberInfo>) -> ValueElements {
    ValueElements::ArrayOfSourceGroupMemberInfo(value)
}
fn wrap_array_of_target_device_id(value: Vec<super::structs::TargetDeviceId>) -> ValueElements {
    ValueElements::ArrayOfTargetDeviceId(value)
}
fn wrap_array_of_sync_replication_group_success_result(value: Vec<super::structs::SyncReplicationGroupSuccessResult>) -> ValueElements {
    ValueElements::ArrayOfSyncReplicationGroupSuccessResult(value)
}
fn wrap_array_of_target_group_info(value: Vec<super::structs::TargetGroupInfo>) -> ValueElements {
    ValueElements::ArrayOfTargetGroupInfo(value)
}
fn wrap_array_of_target_to_source_info(value: Vec<super::structs::TargetToSourceInfo>) -> ValueElements {
    ValueElements::ArrayOfTargetToSourceInfo(value)
}
fn wrap_array_of_test_failover_param(value: Vec<super::structs::TestFailoverParam>) -> ValueElements {
    ValueElements::ArrayOfTestFailoverParam(value)
}
fn wrap_array_of_v_vol_id(value: Vec<super::structs::VVolId>) -> ValueElements {
    ValueElements::ArrayOfVVolId(value)
}
fn wrap_array_of_vasa_virtual_disk_id(value: Vec<super::structs::VasaVirtualDiskId>) -> ValueElements {
    ValueElements::ArrayOfVasaVirtualDiskId(value)
}
fn wrap_array_of_virtual_disk_key(value: Vec<super::structs::VirtualDiskKey>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskKey(value)
}
fn wrap_array_of_virtual_disk_mo_id(value: Vec<super::structs::VirtualDiskMoId>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskMoId(value)
}
fn wrap_array_of_virtual_machine_file_path(value: Vec<super::structs::VirtualMachineFilePath>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFilePath(value)
}
fn wrap_array_of_virtual_machine_mo_id(value: Vec<super::structs::VirtualMachineMoId>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMoId(value)
}
fn wrap_array_of_virtual_machine_uuid(value: Vec<super::structs::VirtualMachineUuid>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineUuid(value)
}
fn wrap_array_of_about_info(value: Vec<super::structs::AboutInfo>) -> ValueElements {
    ValueElements::ArrayOfAboutInfo(value)
}
fn wrap_array_of_authorization_description(value: Vec<super::structs::AuthorizationDescription>) -> ValueElements {
    ValueElements::ArrayOfAuthorizationDescription(value)
}
fn wrap_array_of_entity_privilege(value: Vec<super::structs::EntityPrivilege>) -> ValueElements {
    ValueElements::ArrayOfEntityPrivilege(value)
}
fn wrap_array_of_permission(value: Vec<super::structs::Permission>) -> ValueElements {
    ValueElements::ArrayOfPermission(value)
}
fn wrap_array_of_authorization_privilege(value: Vec<super::structs::AuthorizationPrivilege>) -> ValueElements {
    ValueElements::ArrayOfAuthorizationPrivilege(value)
}
fn wrap_array_of_privilege_availability(value: Vec<super::structs::PrivilegeAvailability>) -> ValueElements {
    ValueElements::ArrayOfPrivilegeAvailability(value)
}
fn wrap_array_of_authorization_role(value: Vec<super::structs::AuthorizationRole>) -> ValueElements {
    ValueElements::ArrayOfAuthorizationRole(value)
}
fn wrap_array_of_user_privilege_result(value: Vec<super::structs::UserPrivilegeResult>) -> ValueElements {
    ValueElements::ArrayOfUserPrivilegeResult(value)
}
fn wrap_array_of_batch_result(value: Vec<super::structs::BatchResult>) -> ValueElements {
    ValueElements::ArrayOfBatchResult(value)
}
fn wrap_array_of_bool_policy(value: Vec<super::structs::BoolPolicy>) -> ValueElements {
    ValueElements::ArrayOfBoolPolicy(value)
}
fn wrap_array_of_capability(value: Vec<super::structs::Capability>) -> ValueElements {
    ValueElements::ArrayOfCapability(value)
}
fn wrap_array_of_cluster_compute_resource_cluster_config_result(value: Vec<super::structs::ClusterComputeResourceClusterConfigResult>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceClusterConfigResult(value)
}
fn wrap_array_of_cluster_compute_resource_crypto_mode_policy(value: Vec<super::structs::ClusterComputeResourceCryptoModePolicy>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceCryptoModePolicy(value)
}
fn wrap_array_of_cluster_compute_resource_dvs_configuration_validation(value: Vec<super::structs::ClusterComputeResourceDvsConfigurationValidation>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceDvsConfigurationValidation(value)
}
fn wrap_array_of_cluster_compute_resource_dvs_setting(value: Vec<super::structs::ClusterComputeResourceDvsSetting>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceDvsSetting(value)
}
fn wrap_array_of_cluster_compute_resource_dvs_setting_dv_portgroup_to_service_mapping(value: Vec<super::structs::ClusterComputeResourceDvsSettingDvPortgroupToServiceMapping>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceDvsSettingDvPortgroupToServiceMapping(value)
}
fn wrap_array_of_cluster_compute_resource_dvs_profile(value: Vec<super::structs::ClusterComputeResourceDvsProfile>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceDvsProfile(value)
}
fn wrap_array_of_cluster_compute_resource_dvs_profile_dv_portgroup_spec_to_service_mapping(value: Vec<super::structs::ClusterComputeResourceDvsProfileDvPortgroupSpecToServiceMapping>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceDvsProfileDvPortgroupSpecToServiceMapping(value)
}
fn wrap_array_of_cluster_compute_resource_hci_config_info(value: Vec<super::structs::ClusterComputeResourceHciConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceHciConfigInfo(value)
}
fn wrap_array_of_cluster_compute_resource_hci_config_spec(value: Vec<super::structs::ClusterComputeResourceHciConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceHciConfigSpec(value)
}
fn wrap_array_of_cluster_compute_resource_host_configuration_input(value: Vec<super::structs::ClusterComputeResourceHostConfigurationInput>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceHostConfigurationInput(value)
}
fn wrap_array_of_cluster_compute_resource_host_configuration_profile(value: Vec<super::structs::ClusterComputeResourceHostConfigurationProfile>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceHostConfigurationProfile(value)
}
fn wrap_array_of_cluster_compute_resource_host_configuration_validation(value: Vec<super::structs::ClusterComputeResourceHostConfigurationValidation>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceHostConfigurationValidation(value)
}
fn wrap_array_of_cluster_compute_resource_host_evacuation_info(value: Vec<super::structs::ClusterComputeResourceHostEvacuationInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceHostEvacuationInfo(value)
}
fn wrap_array_of_cluster_compute_resource_host_vmk_nic_info(value: Vec<super::structs::ClusterComputeResourceHostVmkNicInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceHostVmkNicInfo(value)
}
fn wrap_array_of_cluster_compute_resource_maintenance_info(value: Vec<super::structs::ClusterComputeResourceMaintenanceInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceMaintenanceInfo(value)
}
fn wrap_array_of_cluster_compute_resource_summary(value: Vec<super::structs::ClusterComputeResourceSummary>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceSummary(value)
}
fn wrap_array_of_cluster_compute_resource_vc_profile(value: Vec<super::structs::ClusterComputeResourceVcProfile>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceVcProfile(value)
}
fn wrap_array_of_cluster_compute_resource_vcs_slots(value: Vec<super::structs::ClusterComputeResourceVcsSlots>) -> ValueElements {
    ValueElements::ArrayOfClusterComputeResourceVcsSlots(value)
}
fn wrap_array_of_compute_resource_host_spbm_license_info(value: Vec<super::structs::ComputeResourceHostSpbmLicenseInfo>) -> ValueElements {
    ValueElements::ArrayOfComputeResourceHostSpbmLicenseInfo(value)
}
fn wrap_array_of_compute_resource_host_seed_spec(value: Vec<super::structs::ComputeResourceHostSeedSpec>) -> ValueElements {
    ValueElements::ArrayOfComputeResourceHostSeedSpec(value)
}
fn wrap_array_of_compute_resource_host_seed_spec_single_host_spec(value: Vec<super::structs::ComputeResourceHostSeedSpecSingleHostSpec>) -> ValueElements {
    ValueElements::ArrayOfComputeResourceHostSeedSpecSingleHostSpec(value)
}
fn wrap_array_of_custom_field_def(value: Vec<super::structs::CustomFieldDef>) -> ValueElements {
    ValueElements::ArrayOfCustomFieldDef(value)
}
fn wrap_array_of_custom_field_string_value(value: Vec<super::structs::CustomFieldStringValue>) -> ValueElements {
    ValueElements::ArrayOfCustomFieldStringValue(value)
}
fn wrap_array_of_customization_spec_info(value: Vec<super::structs::CustomizationSpecInfo>) -> ValueElements {
    ValueElements::ArrayOfCustomizationSpecInfo(value)
}
fn wrap_array_of_customization_spec_item(value: Vec<super::structs::CustomizationSpecItem>) -> ValueElements {
    ValueElements::ArrayOfCustomizationSpecItem(value)
}
fn wrap_array_of_datacenter_basic_connect_info(value: Vec<super::structs::DatacenterBasicConnectInfo>) -> ValueElements {
    ValueElements::ArrayOfDatacenterBasicConnectInfo(value)
}
fn wrap_array_of_datacenter_config_info(value: Vec<super::structs::DatacenterConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfDatacenterConfigInfo(value)
}
fn wrap_array_of_datacenter_config_spec(value: Vec<super::structs::DatacenterConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfDatacenterConfigSpec(value)
}
fn wrap_array_of_datastore_capability(value: Vec<super::structs::DatastoreCapability>) -> ValueElements {
    ValueElements::ArrayOfDatastoreCapability(value)
}
fn wrap_array_of_datastore_host_mount(value: Vec<super::structs::DatastoreHostMount>) -> ValueElements {
    ValueElements::ArrayOfDatastoreHostMount(value)
}
fn wrap_array_of_datastore_mount_path_datastore_pair(value: Vec<super::structs::DatastoreMountPathDatastorePair>) -> ValueElements {
    ValueElements::ArrayOfDatastoreMountPathDatastorePair(value)
}
fn wrap_array_of_datastore_summary(value: Vec<super::structs::DatastoreSummary>) -> ValueElements {
    ValueElements::ArrayOfDatastoreSummary(value)
}
fn wrap_array_of_datastore_v_vol_container_failover_pair(value: Vec<super::structs::DatastoreVVolContainerFailoverPair>) -> ValueElements {
    ValueElements::ArrayOfDatastoreVVolContainerFailoverPair(value)
}
fn wrap_array_of_datastore_namespace_manager_directory_info(value: Vec<super::structs::DatastoreNamespaceManagerDirectoryInfo>) -> ValueElements {
    ValueElements::ArrayOfDatastoreNamespaceManagerDirectoryInfo(value)
}
fn wrap_array_of_desired_software_spec(value: Vec<super::structs::DesiredSoftwareSpec>) -> ValueElements {
    ValueElements::ArrayOfDesiredSoftwareSpec(value)
}
fn wrap_array_of_desired_software_spec_base_image_spec(value: Vec<super::structs::DesiredSoftwareSpecBaseImageSpec>) -> ValueElements {
    ValueElements::ArrayOfDesiredSoftwareSpecBaseImageSpec(value)
}
fn wrap_array_of_desired_software_spec_component_spec(value: Vec<super::structs::DesiredSoftwareSpecComponentSpec>) -> ValueElements {
    ValueElements::ArrayOfDesiredSoftwareSpecComponentSpec(value)
}
fn wrap_array_of_desired_software_spec_vendor_add_on_spec(value: Vec<super::structs::DesiredSoftwareSpecVendorAddOnSpec>) -> ValueElements {
    ValueElements::ArrayOfDesiredSoftwareSpecVendorAddOnSpec(value)
}
fn wrap_array_of_diagnostic_manager_audit_record_result(value: Vec<super::structs::DiagnosticManagerAuditRecordResult>) -> ValueElements {
    ValueElements::ArrayOfDiagnosticManagerAuditRecordResult(value)
}
fn wrap_array_of_diagnostic_manager_bundle_info(value: Vec<super::structs::DiagnosticManagerBundleInfo>) -> ValueElements {
    ValueElements::ArrayOfDiagnosticManagerBundleInfo(value)
}
fn wrap_array_of_diagnostic_manager_log_descriptor(value: Vec<super::structs::DiagnosticManagerLogDescriptor>) -> ValueElements {
    ValueElements::ArrayOfDiagnosticManagerLogDescriptor(value)
}
fn wrap_array_of_diagnostic_manager_log_header(value: Vec<super::structs::DiagnosticManagerLogHeader>) -> ValueElements {
    ValueElements::ArrayOfDiagnosticManagerLogHeader(value)
}
fn wrap_array_of_direct_path_profile_manager_capacity_info(value: Vec<super::structs::DirectPathProfileManagerCapacityInfo>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerCapacityInfo(value)
}
fn wrap_array_of_direct_path_profile_manager_capacity_query_by_device_config(value: Vec<super::structs::DirectPathProfileManagerCapacityQueryByDeviceConfig>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerCapacityQueryByDeviceConfig(value)
}
fn wrap_array_of_direct_path_profile_manager_capacity_query_by_id(value: Vec<super::structs::DirectPathProfileManagerCapacityQueryById>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerCapacityQueryById(value)
}
fn wrap_array_of_direct_path_profile_manager_capacity_query_by_name(value: Vec<super::structs::DirectPathProfileManagerCapacityQueryByName>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerCapacityQueryByName(value)
}
fn wrap_array_of_direct_path_profile_manager_capacity_unknown(value: Vec<super::structs::DirectPathProfileManagerCapacityUnknown>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerCapacityUnknown(value)
}
fn wrap_array_of_direct_path_profile_manager_create_spec(value: Vec<super::structs::DirectPathProfileManagerCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerCreateSpec(value)
}
fn wrap_array_of_direct_path_profile_info(value: Vec<super::structs::DirectPathProfileInfo>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileInfo(value)
}
fn wrap_array_of_direct_path_profile_manager_dvx_direct_path_config(value: Vec<super::structs::DirectPathProfileManagerDvxDirectPathConfig>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerDvxDirectPathConfig(value)
}
fn wrap_array_of_direct_path_profile_manager_dynamic_direct_path_config(value: Vec<super::structs::DirectPathProfileManagerDynamicDirectPathConfig>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerDynamicDirectPathConfig(value)
}
fn wrap_array_of_direct_path_profile_manager_filter_spec(value: Vec<super::structs::DirectPathProfileManagerFilterSpec>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerFilterSpec(value)
}
fn wrap_array_of_direct_path_profile_manager_target_cluster(value: Vec<super::structs::DirectPathProfileManagerTargetCluster>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerTargetCluster(value)
}
fn wrap_array_of_direct_path_profile_manager_target_host(value: Vec<super::structs::DirectPathProfileManagerTargetHost>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerTargetHost(value)
}
fn wrap_array_of_direct_path_profile_manager_update_spec(value: Vec<super::structs::DirectPathProfileManagerUpdateSpec>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerUpdateSpec(value)
}
fn wrap_array_of_direct_path_profile_manager_virtual_device_group_direct_path_config(value: Vec<super::structs::DirectPathProfileManagerVirtualDeviceGroupDirectPathConfig>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerVirtualDeviceGroupDirectPathConfig(value)
}
fn wrap_array_of_direct_path_profile_manager_vmiop_direct_path_config(value: Vec<super::structs::DirectPathProfileManagerVmiopDirectPathConfig>) -> ValueElements {
    ValueElements::ArrayOfDirectPathProfileManagerVmiopDirectPathConfig(value)
}
fn wrap_array_of_dvs_backup_restore_capability(value: Vec<super::structs::DvsBackupRestoreCapability>) -> ValueElements {
    ValueElements::ArrayOfDvsBackupRestoreCapability(value)
}
fn wrap_array_of_dvs_capability(value: Vec<super::structs::DvsCapability>) -> ValueElements {
    ValueElements::ArrayOfDvsCapability(value)
}
fn wrap_array_of_dvs_contact_info(value: Vec<super::structs::DvsContactInfo>) -> ValueElements {
    ValueElements::ArrayOfDvsContactInfo(value)
}
fn wrap_array_of_dvs_create_spec(value: Vec<super::structs::DvsCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsCreateSpec(value)
}
fn wrap_array_of_dvs_host_infrastructure_traffic_resource(value: Vec<super::structs::DvsHostInfrastructureTrafficResource>) -> ValueElements {
    ValueElements::ArrayOfDvsHostInfrastructureTrafficResource(value)
}
fn wrap_array_of_dvs_host_infrastructure_traffic_resource_allocation(value: Vec<super::structs::DvsHostInfrastructureTrafficResourceAllocation>) -> ValueElements {
    ValueElements::ArrayOfDvsHostInfrastructureTrafficResourceAllocation(value)
}
fn wrap_array_of_dvs_name_array_uplink_port_policy(value: Vec<super::structs::DvsNameArrayUplinkPortPolicy>) -> ValueElements {
    ValueElements::ArrayOfDvsNameArrayUplinkPortPolicy(value)
}
fn wrap_array_of_dvs_network_resource_management_capability(value: Vec<super::structs::DvsNetworkResourceManagementCapability>) -> ValueElements {
    ValueElements::ArrayOfDvsNetworkResourceManagementCapability(value)
}
fn wrap_array_of_dvs_resource_runtime_info(value: Vec<super::structs::DvsResourceRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfDvsResourceRuntimeInfo(value)
}
fn wrap_array_of_dvs_rollback_capability(value: Vec<super::structs::DvsRollbackCapability>) -> ValueElements {
    ValueElements::ArrayOfDvsRollbackCapability(value)
}
fn wrap_array_of_dvs_runtime_info(value: Vec<super::structs::DvsRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfDvsRuntimeInfo(value)
}
fn wrap_array_of_dvs_summary(value: Vec<super::structs::DvsSummary>) -> ValueElements {
    ValueElements::ArrayOfDvsSummary(value)
}
fn wrap_array_of_dvs_policy(value: Vec<super::structs::DvsPolicy>) -> ValueElements {
    ValueElements::ArrayOfDvsPolicy(value)
}
fn wrap_array_of_evc_mode(value: Vec<super::structs::EvcMode>) -> ValueElements {
    ValueElements::ArrayOfEvcMode(value)
}
fn wrap_array_of_enum_description(value: Vec<super::structs::EnumDescription>) -> ValueElements {
    ValueElements::ArrayOfEnumDescription(value)
}
fn wrap_array_of_environment_browser_config_option_query_spec(value: Vec<super::structs::EnvironmentBrowserConfigOptionQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfEnvironmentBrowserConfigOptionQuerySpec(value)
}
fn wrap_array_of_extended_description(value: Vec<super::structs::ExtendedDescription>) -> ValueElements {
    ValueElements::ArrayOfExtendedDescription(value)
}
fn wrap_array_of_extended_element_description(value: Vec<super::structs::ExtendedElementDescription>) -> ValueElements {
    ValueElements::ArrayOfExtendedElementDescription(value)
}
fn wrap_array_of_extension(value: Vec<super::structs::Extension>) -> ValueElements {
    ValueElements::ArrayOfExtension(value)
}
fn wrap_array_of_extension_client_info(value: Vec<super::structs::ExtensionClientInfo>) -> ValueElements {
    ValueElements::ArrayOfExtensionClientInfo(value)
}
fn wrap_array_of_extension_event_type_info(value: Vec<super::structs::ExtensionEventTypeInfo>) -> ValueElements {
    ValueElements::ArrayOfExtensionEventTypeInfo(value)
}
fn wrap_array_of_extension_fault_type_info(value: Vec<super::structs::ExtensionFaultTypeInfo>) -> ValueElements {
    ValueElements::ArrayOfExtensionFaultTypeInfo(value)
}
fn wrap_array_of_extension_health_info(value: Vec<super::structs::ExtensionHealthInfo>) -> ValueElements {
    ValueElements::ArrayOfExtensionHealthInfo(value)
}
fn wrap_array_of_extension_ovf_consumer_info(value: Vec<super::structs::ExtensionOvfConsumerInfo>) -> ValueElements {
    ValueElements::ArrayOfExtensionOvfConsumerInfo(value)
}
fn wrap_array_of_extension_privilege_info(value: Vec<super::structs::ExtensionPrivilegeInfo>) -> ValueElements {
    ValueElements::ArrayOfExtensionPrivilegeInfo(value)
}
fn wrap_array_of_extension_resource_info(value: Vec<super::structs::ExtensionResourceInfo>) -> ValueElements {
    ValueElements::ArrayOfExtensionResourceInfo(value)
}
fn wrap_array_of_extension_server_info(value: Vec<super::structs::ExtensionServerInfo>) -> ValueElements {
    ValueElements::ArrayOfExtensionServerInfo(value)
}
fn wrap_array_of_extension_task_type_info(value: Vec<super::structs::ExtensionTaskTypeInfo>) -> ValueElements {
    ValueElements::ArrayOfExtensionTaskTypeInfo(value)
}
fn wrap_array_of_extension_manager_ip_allocation_usage(value: Vec<super::structs::ExtensionManagerIpAllocationUsage>) -> ValueElements {
    ValueElements::ArrayOfExtensionManagerIpAllocationUsage(value)
}
fn wrap_array_of_faults_by_host(value: Vec<super::structs::FaultsByHost>) -> ValueElements {
    ValueElements::ArrayOfFaultsByHost(value)
}
fn wrap_array_of_faults_by_vm(value: Vec<super::structs::FaultsByVm>) -> ValueElements {
    ValueElements::ArrayOfFaultsByVm(value)
}
fn wrap_array_of_feature_evc_mode(value: Vec<super::structs::FeatureEvcMode>) -> ValueElements {
    ValueElements::ArrayOfFeatureEvcMode(value)
}
fn wrap_array_of_file_lock_info(value: Vec<super::structs::FileLockInfo>) -> ValueElements {
    ValueElements::ArrayOfFileLockInfo(value)
}
fn wrap_array_of_file_lock_info_result(value: Vec<super::structs::FileLockInfoResult>) -> ValueElements {
    ValueElements::ArrayOfFileLockInfoResult(value)
}
fn wrap_array_of_folder_batch_add_hosts_to_cluster_result(value: Vec<super::structs::FolderBatchAddHostsToClusterResult>) -> ValueElements {
    ValueElements::ArrayOfFolderBatchAddHostsToClusterResult(value)
}
fn wrap_array_of_folder_batch_add_standalone_hosts_result(value: Vec<super::structs::FolderBatchAddStandaloneHostsResult>) -> ValueElements {
    ValueElements::ArrayOfFolderBatchAddStandaloneHostsResult(value)
}
fn wrap_array_of_folder_externally_managed_folder_info(value: Vec<super::structs::FolderExternallyManagedFolderInfo>) -> ValueElements {
    ValueElements::ArrayOfFolderExternallyManagedFolderInfo(value)
}
fn wrap_array_of_folder_failed_host_result(value: Vec<super::structs::FolderFailedHostResult>) -> ValueElements {
    ValueElements::ArrayOfFolderFailedHostResult(value)
}
fn wrap_array_of_folder_new_host_spec(value: Vec<super::structs::FolderNewHostSpec>) -> ValueElements {
    ValueElements::ArrayOfFolderNewHostSpec(value)
}
fn wrap_array_of_hbr_manager_replication_vm_info(value: Vec<super::structs::HbrManagerReplicationVmInfo>) -> ValueElements {
    ValueElements::ArrayOfHbrManagerReplicationVmInfo(value)
}
fn wrap_array_of_replication_vm_progress_info(value: Vec<super::structs::ReplicationVmProgressInfo>) -> ValueElements {
    ValueElements::ArrayOfReplicationVmProgressInfo(value)
}
fn wrap_array_of_hbr_manager_vm_replication_capability(value: Vec<super::structs::HbrManagerVmReplicationCapability>) -> ValueElements {
    ValueElements::ArrayOfHbrManagerVmReplicationCapability(value)
}
fn wrap_array_of_hbr_target_spec(value: Vec<super::structs::HbrTargetSpec>) -> ValueElements {
    ValueElements::ArrayOfHbrTargetSpec(value)
}
fn wrap_array_of_hbr_target_spec_replacement(value: Vec<super::structs::HbrTargetSpecReplacement>) -> ValueElements {
    ValueElements::ArrayOfHbrTargetSpecReplacement(value)
}
fn wrap_array_of_health_update(value: Vec<super::structs::HealthUpdate>) -> ValueElements {
    ValueElements::ArrayOfHealthUpdate(value)
}
fn wrap_array_of_health_update_info(value: Vec<super::structs::HealthUpdateInfo>) -> ValueElements {
    ValueElements::ArrayOfHealthUpdateInfo(value)
}
fn wrap_array_of_perf_interval(value: Vec<super::structs::PerfInterval>) -> ValueElements {
    ValueElements::ArrayOfPerfInterval(value)
}
fn wrap_array_of_host_service_ticket(value: Vec<super::structs::HostServiceTicket>) -> ValueElements {
    ValueElements::ArrayOfHostServiceTicket(value)
}
fn wrap_array_of_host_system_compliance_check_state(value: Vec<super::structs::HostSystemComplianceCheckState>) -> ValueElements {
    ValueElements::ArrayOfHostSystemComplianceCheckState(value)
}
fn wrap_array_of_host_system_reconnect_spec(value: Vec<super::structs::HostSystemReconnectSpec>) -> ValueElements {
    ValueElements::ArrayOfHostSystemReconnectSpec(value)
}
fn wrap_array_of_host_system_remediation_state(value: Vec<super::structs::HostSystemRemediationState>) -> ValueElements {
    ValueElements::ArrayOfHostSystemRemediationState(value)
}
fn wrap_array_of_http_nfc_lease_capabilities(value: Vec<super::structs::HttpNfcLeaseCapabilities>) -> ValueElements {
    ValueElements::ArrayOfHttpNfcLeaseCapabilities(value)
}
fn wrap_array_of_http_nfc_lease_datastore_lease_info(value: Vec<super::structs::HttpNfcLeaseDatastoreLeaseInfo>) -> ValueElements {
    ValueElements::ArrayOfHttpNfcLeaseDatastoreLeaseInfo(value)
}
fn wrap_array_of_http_nfc_lease_device_url(value: Vec<super::structs::HttpNfcLeaseDeviceUrl>) -> ValueElements {
    ValueElements::ArrayOfHttpNfcLeaseDeviceUrl(value)
}
fn wrap_array_of_http_nfc_lease_host_info(value: Vec<super::structs::HttpNfcLeaseHostInfo>) -> ValueElements {
    ValueElements::ArrayOfHttpNfcLeaseHostInfo(value)
}
fn wrap_array_of_http_nfc_lease_info(value: Vec<super::structs::HttpNfcLeaseInfo>) -> ValueElements {
    ValueElements::ArrayOfHttpNfcLeaseInfo(value)
}
fn wrap_array_of_http_nfc_lease_manifest_entry(value: Vec<super::structs::HttpNfcLeaseManifestEntry>) -> ValueElements {
    ValueElements::ArrayOfHttpNfcLeaseManifestEntry(value)
}
fn wrap_array_of_http_nfc_lease_probe_result(value: Vec<super::structs::HttpNfcLeaseProbeResult>) -> ValueElements {
    ValueElements::ArrayOfHttpNfcLeaseProbeResult(value)
}
fn wrap_array_of_http_nfc_lease_source_file(value: Vec<super::structs::HttpNfcLeaseSourceFile>) -> ValueElements {
    ValueElements::ArrayOfHttpNfcLeaseSourceFile(value)
}
fn wrap_array_of_int_expression(value: Vec<super::structs::IntExpression>) -> ValueElements {
    ValueElements::ArrayOfIntExpression(value)
}
fn wrap_array_of_int_policy(value: Vec<super::structs::IntPolicy>) -> ValueElements {
    ValueElements::ArrayOfIntPolicy(value)
}
fn wrap_array_of_cluster_io_filter_info(value: Vec<super::structs::ClusterIoFilterInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterIoFilterInfo(value)
}
fn wrap_array_of_host_io_filter_info(value: Vec<super::structs::HostIoFilterInfo>) -> ValueElements {
    ValueElements::ArrayOfHostIoFilterInfo(value)
}
fn wrap_array_of_pinned_certificate(value: Vec<super::structs::PinnedCertificate>) -> ValueElements {
    ValueElements::ArrayOfPinnedCertificate(value)
}
fn wrap_array_of_io_filter_query_issue_result(value: Vec<super::structs::IoFilterQueryIssueResult>) -> ValueElements {
    ValueElements::ArrayOfIoFilterQueryIssueResult(value)
}
fn wrap_array_of_io_filter_host_issue(value: Vec<super::structs::IoFilterHostIssue>) -> ValueElements {
    ValueElements::ArrayOfIoFilterHostIssue(value)
}
fn wrap_array_of_untrusted_certificate(value: Vec<super::structs::UntrustedCertificate>) -> ValueElements {
    ValueElements::ArrayOfUntrustedCertificate(value)
}
fn wrap_array_of_ip_pool_manager_ip_allocation(value: Vec<super::structs::IpPoolManagerIpAllocation>) -> ValueElements {
    ValueElements::ArrayOfIpPoolManagerIpAllocation(value)
}
fn wrap_array_of_ip_range(value: Vec<super::structs::IpRange>) -> ValueElements {
    ValueElements::ArrayOfIpRange(value)
}
fn wrap_array_of_key_value(value: Vec<super::structs::KeyValue>) -> ValueElements {
    ValueElements::ArrayOfKeyValue(value)
}
fn wrap_array_of_latency_sensitivity(value: Vec<super::structs::LatencySensitivity>) -> ValueElements {
    ValueElements::ArrayOfLatencySensitivity(value)
}
fn wrap_array_of_license_assignment_manager_license_assignment(value: Vec<super::structs::LicenseAssignmentManagerLicenseAssignment>) -> ValueElements {
    ValueElements::ArrayOfLicenseAssignmentManagerLicenseAssignment(value)
}
fn wrap_array_of_license_availability_info(value: Vec<super::structs::LicenseAvailabilityInfo>) -> ValueElements {
    ValueElements::ArrayOfLicenseAvailabilityInfo(value)
}
fn wrap_array_of_license_diagnostics(value: Vec<super::structs::LicenseDiagnostics>) -> ValueElements {
    ValueElements::ArrayOfLicenseDiagnostics(value)
}
fn wrap_array_of_license_manager_evaluation_info(value: Vec<super::structs::LicenseManagerEvaluationInfo>) -> ValueElements {
    ValueElements::ArrayOfLicenseManagerEvaluationInfo(value)
}
fn wrap_array_of_evaluation_license_source(value: Vec<super::structs::EvaluationLicenseSource>) -> ValueElements {
    ValueElements::ArrayOfEvaluationLicenseSource(value)
}
fn wrap_array_of_license_feature_info(value: Vec<super::structs::LicenseFeatureInfo>) -> ValueElements {
    ValueElements::ArrayOfLicenseFeatureInfo(value)
}
fn wrap_array_of_host_licensable_resource_info(value: Vec<super::structs::HostLicensableResourceInfo>) -> ValueElements {
    ValueElements::ArrayOfHostLicensableResourceInfo(value)
}
fn wrap_array_of_license_manager_license_info(value: Vec<super::structs::LicenseManagerLicenseInfo>) -> ValueElements {
    ValueElements::ArrayOfLicenseManagerLicenseInfo(value)
}
fn wrap_array_of_license_server_source(value: Vec<super::structs::LicenseServerSource>) -> ValueElements {
    ValueElements::ArrayOfLicenseServerSource(value)
}
fn wrap_array_of_license_usage_info(value: Vec<super::structs::LicenseUsageInfo>) -> ValueElements {
    ValueElements::ArrayOfLicenseUsageInfo(value)
}
fn wrap_array_of_local_license_source(value: Vec<super::structs::LocalLicenseSource>) -> ValueElements {
    ValueElements::ArrayOfLocalLicenseSource(value)
}
fn wrap_array_of_license_reservation_info(value: Vec<super::structs::LicenseReservationInfo>) -> ValueElements {
    ValueElements::ArrayOfLicenseReservationInfo(value)
}
fn wrap_array_of_localization_manager_message_catalog(value: Vec<super::structs::LocalizationManagerMessageCatalog>) -> ValueElements {
    ValueElements::ArrayOfLocalizationManagerMessageCatalog(value)
}
fn wrap_array_of_long_policy(value: Vec<super::structs::LongPolicy>) -> ValueElements {
    ValueElements::ArrayOfLongPolicy(value)
}
fn wrap_array_of_mac_range(value: Vec<super::structs::MacRange>) -> ValueElements {
    ValueElements::ArrayOfMacRange(value)
}
fn wrap_array_of_method_description(value: Vec<super::structs::MethodDescription>) -> ValueElements {
    ValueElements::ArrayOfMethodDescription(value)
}
fn wrap_array_of_numeric_range(value: Vec<super::structs::NumericRange>) -> ValueElements {
    ValueElements::ArrayOfNumericRange(value)
}
fn wrap_array_of_opaque_network_capability(value: Vec<super::structs::OpaqueNetworkCapability>) -> ValueElements {
    ValueElements::ArrayOfOpaqueNetworkCapability(value)
}
fn wrap_array_of_opaque_network_summary(value: Vec<super::structs::OpaqueNetworkSummary>) -> ValueElements {
    ValueElements::ArrayOfOpaqueNetworkSummary(value)
}
fn wrap_array_of_ovf_consumer_ost_node(value: Vec<super::structs::OvfConsumerOstNode>) -> ValueElements {
    ValueElements::ArrayOfOvfConsumerOstNode(value)
}
fn wrap_array_of_ovf_consumer_ovf_section(value: Vec<super::structs::OvfConsumerOvfSection>) -> ValueElements {
    ValueElements::ArrayOfOvfConsumerOvfSection(value)
}
fn wrap_array_of_ovf_create_descriptor_params(value: Vec<super::structs::OvfCreateDescriptorParams>) -> ValueElements {
    ValueElements::ArrayOfOvfCreateDescriptorParams(value)
}
fn wrap_array_of_ovf_create_descriptor_result(value: Vec<super::structs::OvfCreateDescriptorResult>) -> ValueElements {
    ValueElements::ArrayOfOvfCreateDescriptorResult(value)
}
fn wrap_array_of_ovf_create_import_spec_result(value: Vec<super::structs::OvfCreateImportSpecResult>) -> ValueElements {
    ValueElements::ArrayOfOvfCreateImportSpecResult(value)
}
fn wrap_array_of_ovf_datastore_mapping(value: Vec<super::structs::OvfDatastoreMapping>) -> ValueElements {
    ValueElements::ArrayOfOvfDatastoreMapping(value)
}
fn wrap_array_of_ovf_deployment_option(value: Vec<super::structs::OvfDeploymentOption>) -> ValueElements {
    ValueElements::ArrayOfOvfDeploymentOption(value)
}
fn wrap_array_of_ovf_file_item(value: Vec<super::structs::OvfFileItem>) -> ValueElements {
    ValueElements::ArrayOfOvfFileItem(value)
}
fn wrap_array_of_ovf_network_info(value: Vec<super::structs::OvfNetworkInfo>) -> ValueElements {
    ValueElements::ArrayOfOvfNetworkInfo(value)
}
fn wrap_array_of_ovf_network_mapping(value: Vec<super::structs::OvfNetworkMapping>) -> ValueElements {
    ValueElements::ArrayOfOvfNetworkMapping(value)
}
fn wrap_array_of_ovf_file(value: Vec<super::structs::OvfFile>) -> ValueElements {
    ValueElements::ArrayOfOvfFile(value)
}
fn wrap_array_of_ovf_import_params(value: Vec<super::structs::OvfImportParams>) -> ValueElements {
    ValueElements::ArrayOfOvfImportParams(value)
}
fn wrap_array_of_ovf_option_info(value: Vec<super::structs::OvfOptionInfo>) -> ValueElements {
    ValueElements::ArrayOfOvfOptionInfo(value)
}
fn wrap_array_of_ovf_parse_descriptor_params(value: Vec<super::structs::OvfParseDescriptorParams>) -> ValueElements {
    ValueElements::ArrayOfOvfParseDescriptorParams(value)
}
fn wrap_array_of_ovf_parse_descriptor_result(value: Vec<super::structs::OvfParseDescriptorResult>) -> ValueElements {
    ValueElements::ArrayOfOvfParseDescriptorResult(value)
}
fn wrap_array_of_ovf_resource_map(value: Vec<super::structs::OvfResourceMap>) -> ValueElements {
    ValueElements::ArrayOfOvfResourceMap(value)
}
fn wrap_array_of_ovf_storage_profile_mapping(value: Vec<super::structs::OvfStorageProfileMapping>) -> ValueElements {
    ValueElements::ArrayOfOvfStorageProfileMapping(value)
}
fn wrap_array_of_ovf_validate_host_params(value: Vec<super::structs::OvfValidateHostParams>) -> ValueElements {
    ValueElements::ArrayOfOvfValidateHostParams(value)
}
fn wrap_array_of_ovf_validate_host_result(value: Vec<super::structs::OvfValidateHostResult>) -> ValueElements {
    ValueElements::ArrayOfOvfValidateHostResult(value)
}
fn wrap_array_of_password_field(value: Vec<super::structs::PasswordField>) -> ValueElements {
    ValueElements::ArrayOfPasswordField(value)
}
fn wrap_array_of_performance_description(value: Vec<super::structs::PerformanceDescription>) -> ValueElements {
    ValueElements::ArrayOfPerformanceDescription(value)
}
fn wrap_array_of_perf_composite_metric(value: Vec<super::structs::PerfCompositeMetric>) -> ValueElements {
    ValueElements::ArrayOfPerfCompositeMetric(value)
}
fn wrap_array_of_perf_counter_info(value: Vec<super::structs::PerfCounterInfo>) -> ValueElements {
    ValueElements::ArrayOfPerfCounterInfo(value)
}
fn wrap_array_of_performance_manager_counter_level_mapping(value: Vec<super::structs::PerformanceManagerCounterLevelMapping>) -> ValueElements {
    ValueElements::ArrayOfPerformanceManagerCounterLevelMapping(value)
}
fn wrap_array_of_perf_entity_metric(value: Vec<super::structs::PerfEntityMetric>) -> ValueElements {
    ValueElements::ArrayOfPerfEntityMetric(value)
}
fn wrap_array_of_perf_entity_metric_csv(value: Vec<super::structs::PerfEntityMetricCsv>) -> ValueElements {
    ValueElements::ArrayOfPerfEntityMetricCsv(value)
}
fn wrap_array_of_perf_metric_int_series(value: Vec<super::structs::PerfMetricIntSeries>) -> ValueElements {
    ValueElements::ArrayOfPerfMetricIntSeries(value)
}
fn wrap_array_of_perf_metric_id(value: Vec<super::structs::PerfMetricId>) -> ValueElements {
    ValueElements::ArrayOfPerfMetricId(value)
}
fn wrap_array_of_perf_metric_series_csv(value: Vec<super::structs::PerfMetricSeriesCsv>) -> ValueElements {
    ValueElements::ArrayOfPerfMetricSeriesCsv(value)
}
fn wrap_array_of_perf_provider_summary(value: Vec<super::structs::PerfProviderSummary>) -> ValueElements {
    ValueElements::ArrayOfPerfProviderSummary(value)
}
fn wrap_array_of_perf_query_spec(value: Vec<super::structs::PerfQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfPerfQuerySpec(value)
}
fn wrap_array_of_perf_sample_info(value: Vec<super::structs::PerfSampleInfo>) -> ValueElements {
    ValueElements::ArrayOfPerfSampleInfo(value)
}
fn wrap_array_of_posix_user_search_result(value: Vec<super::structs::PosixUserSearchResult>) -> ValueElements {
    ValueElements::ArrayOfPosixUserSearchResult(value)
}
fn wrap_array_of_privilege_policy_def(value: Vec<super::structs::PrivilegePolicyDef>) -> ValueElements {
    ValueElements::ArrayOfPrivilegePolicyDef(value)
}
fn wrap_array_of_resource_allocation_info(value: Vec<super::structs::ResourceAllocationInfo>) -> ValueElements {
    ValueElements::ArrayOfResourceAllocationInfo(value)
}
fn wrap_array_of_resource_allocation_option(value: Vec<super::structs::ResourceAllocationOption>) -> ValueElements {
    ValueElements::ArrayOfResourceAllocationOption(value)
}
fn wrap_array_of_resource_config_option(value: Vec<super::structs::ResourceConfigOption>) -> ValueElements {
    ValueElements::ArrayOfResourceConfigOption(value)
}
fn wrap_array_of_resource_config_spec(value: Vec<super::structs::ResourceConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfResourceConfigSpec(value)
}
fn wrap_array_of_database_size_estimate(value: Vec<super::structs::DatabaseSizeEstimate>) -> ValueElements {
    ValueElements::ArrayOfDatabaseSizeEstimate(value)
}
fn wrap_array_of_database_size_param(value: Vec<super::structs::DatabaseSizeParam>) -> ValueElements {
    ValueElements::ArrayOfDatabaseSizeParam(value)
}
fn wrap_array_of_inventory_description(value: Vec<super::structs::InventoryDescription>) -> ValueElements {
    ValueElements::ArrayOfInventoryDescription(value)
}
fn wrap_array_of_performance_statistics_description(value: Vec<super::structs::PerformanceStatisticsDescription>) -> ValueElements {
    ValueElements::ArrayOfPerformanceStatisticsDescription(value)
}
fn wrap_array_of_resource_pool_resource_usage(value: Vec<super::structs::ResourcePoolResourceUsage>) -> ValueElements {
    ValueElements::ArrayOfResourcePoolResourceUsage(value)
}
fn wrap_array_of_resource_pool_runtime_info(value: Vec<super::structs::ResourcePoolRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfResourcePoolRuntimeInfo(value)
}
fn wrap_array_of_resource_pool_quick_stats(value: Vec<super::structs::ResourcePoolQuickStats>) -> ValueElements {
    ValueElements::ArrayOfResourcePoolQuickStats(value)
}
fn wrap_array_of_host_v_motion_compatibility(value: Vec<super::structs::HostVMotionCompatibility>) -> ValueElements {
    ValueElements::ArrayOfHostVMotionCompatibility(value)
}
fn wrap_array_of_product_component_info(value: Vec<super::structs::ProductComponentInfo>) -> ValueElements {
    ValueElements::ArrayOfProductComponentInfo(value)
}
fn wrap_array_of_service_content(value: Vec<super::structs::ServiceContent>) -> ValueElements {
    ValueElements::ArrayOfServiceContent(value)
}
fn wrap_array_of_service_locator(value: Vec<super::structs::ServiceLocator>) -> ValueElements {
    ValueElements::ArrayOfServiceLocator(value)
}
fn wrap_array_of_service_locator_name_password(value: Vec<super::structs::ServiceLocatorNamePassword>) -> ValueElements {
    ValueElements::ArrayOfServiceLocatorNamePassword(value)
}
fn wrap_array_of_service_locator_saml_credential(value: Vec<super::structs::ServiceLocatorSamlCredential>) -> ValueElements {
    ValueElements::ArrayOfServiceLocatorSamlCredential(value)
}
fn wrap_array_of_service_manager_service_info(value: Vec<super::structs::ServiceManagerServiceInfo>) -> ValueElements {
    ValueElements::ArrayOfServiceManagerServiceInfo(value)
}
fn wrap_array_of_session_manager_generic_service_ticket(value: Vec<super::structs::SessionManagerGenericServiceTicket>) -> ValueElements {
    ValueElements::ArrayOfSessionManagerGenericServiceTicket(value)
}
fn wrap_array_of_session_manager_http_service_request_spec(value: Vec<super::structs::SessionManagerHttpServiceRequestSpec>) -> ValueElements {
    ValueElements::ArrayOfSessionManagerHttpServiceRequestSpec(value)
}
fn wrap_array_of_session_manager_local_ticket(value: Vec<super::structs::SessionManagerLocalTicket>) -> ValueElements {
    ValueElements::ArrayOfSessionManagerLocalTicket(value)
}
fn wrap_array_of_session_manager_vmomi_service_request_spec(value: Vec<super::structs::SessionManagerVmomiServiceRequestSpec>) -> ValueElements {
    ValueElements::ArrayOfSessionManagerVmomiServiceRequestSpec(value)
}
fn wrap_array_of_shares_info(value: Vec<super::structs::SharesInfo>) -> ValueElements {
    ValueElements::ArrayOfSharesInfo(value)
}
fn wrap_array_of_shares_option(value: Vec<super::structs::SharesOption>) -> ValueElements {
    ValueElements::ArrayOfSharesOption(value)
}
fn wrap_array_of_single_ip(value: Vec<super::structs::SingleIp>) -> ValueElements {
    ValueElements::ArrayOfSingleIp(value)
}
fn wrap_array_of_single_mac(value: Vec<super::structs::SingleMac>) -> ValueElements {
    ValueElements::ArrayOfSingleMac(value)
}
fn wrap_array_of_site_info(value: Vec<super::structs::SiteInfo>) -> ValueElements {
    ValueElements::ArrayOfSiteInfo(value)
}
fn wrap_array_of_storage_pod_summary(value: Vec<super::structs::StoragePodSummary>) -> ValueElements {
    ValueElements::ArrayOfStoragePodSummary(value)
}
fn wrap_array_of_storage_io_allocation_info(value: Vec<super::structs::StorageIoAllocationInfo>) -> ValueElements {
    ValueElements::ArrayOfStorageIoAllocationInfo(value)
}
fn wrap_array_of_storage_io_allocation_option(value: Vec<super::structs::StorageIoAllocationOption>) -> ValueElements {
    ValueElements::ArrayOfStorageIoAllocationOption(value)
}
fn wrap_array_of_storage_iorm_info(value: Vec<super::structs::StorageIormInfo>) -> ValueElements {
    ValueElements::ArrayOfStorageIormInfo(value)
}
fn wrap_array_of_storage_iorm_config_option(value: Vec<super::structs::StorageIormConfigOption>) -> ValueElements {
    ValueElements::ArrayOfStorageIormConfigOption(value)
}
fn wrap_array_of_storage_iorm_config_spec(value: Vec<super::structs::StorageIormConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfStorageIormConfigSpec(value)
}
fn wrap_array_of_pod_storage_drs_entry(value: Vec<super::structs::PodStorageDrsEntry>) -> ValueElements {
    ValueElements::ArrayOfPodStorageDrsEntry(value)
}
fn wrap_array_of_storage_performance_summary(value: Vec<super::structs::StoragePerformanceSummary>) -> ValueElements {
    ValueElements::ArrayOfStoragePerformanceSummary(value)
}
fn wrap_array_of_storage_resource_manager_storage_profile_statistics(value: Vec<super::structs::StorageResourceManagerStorageProfileStatistics>) -> ValueElements {
    ValueElements::ArrayOfStorageResourceManagerStorageProfileStatistics(value)
}
fn wrap_array_of_string_expression(value: Vec<super::structs::StringExpression>) -> ValueElements {
    ValueElements::ArrayOfStringExpression(value)
}
fn wrap_array_of_string_policy(value: Vec<super::structs::StringPolicy>) -> ValueElements {
    ValueElements::ArrayOfStringPolicy(value)
}
fn wrap_array_of_tag(value: Vec<super::structs::Tag>) -> ValueElements {
    ValueElements::ArrayOfTag(value)
}
fn wrap_array_of_task_description(value: Vec<super::structs::TaskDescription>) -> ValueElements {
    ValueElements::ArrayOfTaskDescription(value)
}
fn wrap_array_of_task_filter_spec(value: Vec<super::structs::TaskFilterSpec>) -> ValueElements {
    ValueElements::ArrayOfTaskFilterSpec(value)
}
fn wrap_array_of_task_filter_spec_by_entity(value: Vec<super::structs::TaskFilterSpecByEntity>) -> ValueElements {
    ValueElements::ArrayOfTaskFilterSpecByEntity(value)
}
fn wrap_array_of_task_filter_spec_by_time(value: Vec<super::structs::TaskFilterSpecByTime>) -> ValueElements {
    ValueElements::ArrayOfTaskFilterSpecByTime(value)
}
fn wrap_array_of_task_filter_spec_by_username(value: Vec<super::structs::TaskFilterSpecByUsername>) -> ValueElements {
    ValueElements::ArrayOfTaskFilterSpecByUsername(value)
}
fn wrap_array_of_task_info(value: Vec<super::structs::TaskInfo>) -> ValueElements {
    ValueElements::ArrayOfTaskInfo(value)
}
fn wrap_array_of_task_info_filter_spec(value: Vec<super::structs::TaskInfoFilterSpec>) -> ValueElements {
    ValueElements::ArrayOfTaskInfoFilterSpec(value)
}
fn wrap_array_of_task_info_filter_spec_filter_task_results(value: Vec<super::structs::TaskInfoFilterSpecFilterTaskResults>) -> ValueElements {
    ValueElements::ArrayOfTaskInfoFilterSpecFilterTaskResults(value)
}
fn wrap_array_of_task_manager_view_by_start_id(value: Vec<super::structs::TaskManagerViewByStartId>) -> ValueElements {
    ValueElements::ArrayOfTaskManagerViewByStartId(value)
}
fn wrap_array_of_task_reason_alarm(value: Vec<super::structs::TaskReasonAlarm>) -> ValueElements {
    ValueElements::ArrayOfTaskReasonAlarm(value)
}
fn wrap_array_of_task_reason_schedule(value: Vec<super::structs::TaskReasonSchedule>) -> ValueElements {
    ValueElements::ArrayOfTaskReasonSchedule(value)
}
fn wrap_array_of_task_reason_system(value: Vec<super::structs::TaskReasonSystem>) -> ValueElements {
    ValueElements::ArrayOfTaskReasonSystem(value)
}
fn wrap_array_of_task_reason_user(value: Vec<super::structs::TaskReasonUser>) -> ValueElements {
    ValueElements::ArrayOfTaskReasonUser(value)
}
fn wrap_array_of_update_virtual_machine_files_result(value: Vec<super::structs::UpdateVirtualMachineFilesResult>) -> ValueElements {
    ValueElements::ArrayOfUpdateVirtualMachineFilesResult(value)
}
fn wrap_array_of_update_virtual_machine_files_result_failed_vm_file_info(value: Vec<super::structs::UpdateVirtualMachineFilesResultFailedVmFileInfo>) -> ValueElements {
    ValueElements::ArrayOfUpdateVirtualMachineFilesResultFailedVmFileInfo(value)
}
fn wrap_array_of_user_session(value: Vec<super::structs::UserSession>) -> ValueElements {
    ValueElements::ArrayOfUserSession(value)
}
fn wrap_array_of_v_vol_vm_config_file_update_result(value: Vec<super::structs::VVolVmConfigFileUpdateResult>) -> ValueElements {
    ValueElements::ArrayOfVVolVmConfigFileUpdateResult(value)
}
fn wrap_array_of_v_vol_vm_config_file_update_result_failed_vm_config_file_info(value: Vec<super::structs::VVolVmConfigFileUpdateResultFailedVmConfigFileInfo>) -> ValueElements {
    ValueElements::ArrayOfVVolVmConfigFileUpdateResultFailedVmConfigFileInfo(value)
}
fn wrap_array_of_vasa_storage_array(value: Vec<super::structs::VasaStorageArray>) -> ValueElements {
    ValueElements::ArrayOfVasaStorageArray(value)
}
fn wrap_array_of_vasa_storage_array_discovery_fc_transport(value: Vec<super::structs::VasaStorageArrayDiscoveryFcTransport>) -> ValueElements {
    ValueElements::ArrayOfVasaStorageArrayDiscoveryFcTransport(value)
}
fn wrap_array_of_vasa_storage_array_discovery_ip_transport(value: Vec<super::structs::VasaStorageArrayDiscoveryIpTransport>) -> ValueElements {
    ValueElements::ArrayOfVasaStorageArrayDiscoveryIpTransport(value)
}
fn wrap_array_of_vasa_storage_array_discovery_svc_info(value: Vec<super::structs::VasaStorageArrayDiscoverySvcInfo>) -> ValueElements {
    ValueElements::ArrayOfVasaStorageArrayDiscoverySvcInfo(value)
}
fn wrap_array_of_vasa_provider_container_spec(value: Vec<super::structs::VasaProviderContainerSpec>) -> ValueElements {
    ValueElements::ArrayOfVasaProviderContainerSpec(value)
}
fn wrap_array_of_vim_vasa_provider(value: Vec<super::structs::VimVasaProvider>) -> ValueElements {
    ValueElements::ArrayOfVimVasaProvider(value)
}
fn wrap_array_of_vim_vasa_provider_state_per_array(value: Vec<super::structs::VimVasaProviderStatePerArray>) -> ValueElements {
    ValueElements::ArrayOfVimVasaProviderStatePerArray(value)
}
fn wrap_array_of_vim_vasa_provider_virtual_host_config(value: Vec<super::structs::VimVasaProviderVirtualHostConfig>) -> ValueElements {
    ValueElements::ArrayOfVimVasaProviderVirtualHostConfig(value)
}
fn wrap_array_of_vim_vasa_provider_info(value: Vec<super::structs::VimVasaProviderInfo>) -> ValueElements {
    ValueElements::ArrayOfVimVasaProviderInfo(value)
}
fn wrap_array_of_virtual_app_link_info(value: Vec<super::structs::VirtualAppLinkInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualAppLinkInfo(value)
}
fn wrap_array_of_virtual_app_summary(value: Vec<super::structs::VirtualAppSummary>) -> ValueElements {
    ValueElements::ArrayOfVirtualAppSummary(value)
}
fn wrap_array_of_device_backed_virtual_disk_spec(value: Vec<super::structs::DeviceBackedVirtualDiskSpec>) -> ValueElements {
    ValueElements::ArrayOfDeviceBackedVirtualDiskSpec(value)
}
fn wrap_array_of_se_sparse_virtual_disk_spec(value: Vec<super::structs::SeSparseVirtualDiskSpec>) -> ValueElements {
    ValueElements::ArrayOfSeSparseVirtualDiskSpec(value)
}
fn wrap_array_of_disk_change_info(value: Vec<super::structs::DiskChangeInfo>) -> ValueElements {
    ValueElements::ArrayOfDiskChangeInfo(value)
}
fn wrap_array_of_disk_change_extent(value: Vec<super::structs::DiskChangeExtent>) -> ValueElements {
    ValueElements::ArrayOfDiskChangeExtent(value)
}
fn wrap_array_of_virtual_machine_display_topology(value: Vec<super::structs::VirtualMachineDisplayTopology>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineDisplayTopology(value)
}
fn wrap_array_of_virtual_machine_mks_connection(value: Vec<super::structs::VirtualMachineMksConnection>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMksConnection(value)
}
fn wrap_array_of_virtual_machine_mks_ticket(value: Vec<super::structs::VirtualMachineMksTicket>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMksTicket(value)
}
fn wrap_array_of_storage_requirement(value: Vec<super::structs::StorageRequirement>) -> ValueElements {
    ValueElements::ArrayOfStorageRequirement(value)
}
fn wrap_array_of_virtual_machine_ticket(value: Vec<super::structs::VirtualMachineTicket>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineTicket(value)
}
fn wrap_array_of_virtual_machine_wipe_result(value: Vec<super::structs::VirtualMachineWipeResult>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineWipeResult(value)
}
fn wrap_array_of_vsan_composite_constraint(value: Vec<super::structs::VsanCompositeConstraint>) -> ValueElements {
    ValueElements::ArrayOfVsanCompositeConstraint(value)
}
fn wrap_array_of_vsan_data_obfuscation_rule(value: Vec<super::structs::VsanDataObfuscationRule>) -> ValueElements {
    ValueElements::ArrayOfVsanDataObfuscationRule(value)
}
fn wrap_array_of_vsan_json_comparator(value: Vec<super::structs::VsanJsonComparator>) -> ValueElements {
    ValueElements::ArrayOfVsanJsonComparator(value)
}
fn wrap_array_of_vsan_json_filter_rule(value: Vec<super::structs::VsanJsonFilterRule>) -> ValueElements {
    ValueElements::ArrayOfVsanJsonFilterRule(value)
}
fn wrap_array_of_vsan_mass_collector_property_params(value: Vec<super::structs::VsanMassCollectorPropertyParams>) -> ValueElements {
    ValueElements::ArrayOfVsanMassCollectorPropertyParams(value)
}
fn wrap_array_of_vsan_mass_collector_spec(value: Vec<super::structs::VsanMassCollectorSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanMassCollectorSpec(value)
}
fn wrap_array_of_vsan_nest_json_comparator(value: Vec<super::structs::VsanNestJsonComparator>) -> ValueElements {
    ValueElements::ArrayOfVsanNestJsonComparator(value)
}
fn wrap_array_of_vsan_object_type_rule(value: Vec<super::structs::VsanObjectTypeRule>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectTypeRule(value)
}
fn wrap_array_of_vsan_property_constraint(value: Vec<super::structs::VsanPropertyConstraint>) -> ValueElements {
    ValueElements::ArrayOfVsanPropertyConstraint(value)
}
fn wrap_array_of_vsan_regex_based_rule(value: Vec<super::structs::VsanRegexBasedRule>) -> ValueElements {
    ValueElements::ArrayOfVsanRegexBasedRule(value)
}
fn wrap_array_of_vsan_upgrade_system_api_broken_issue(value: Vec<super::structs::VsanUpgradeSystemApiBrokenIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemApiBrokenIssue(value)
}
fn wrap_array_of_vsan_upgrade_system_auto_claim_enabled_on_hosts_issue(value: Vec<super::structs::VsanUpgradeSystemAutoClaimEnabledOnHostsIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemAutoClaimEnabledOnHostsIssue(value)
}
fn wrap_array_of_vsan_upgrade_system_hosts_disconnected_issue(value: Vec<super::structs::VsanUpgradeSystemHostsDisconnectedIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemHostsDisconnectedIssue(value)
}
fn wrap_array_of_vsan_upgrade_system_missing_hosts_in_cluster_issue(value: Vec<super::structs::VsanUpgradeSystemMissingHostsInClusterIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemMissingHostsInClusterIssue(value)
}
fn wrap_array_of_vsan_upgrade_system_network_partition_info(value: Vec<super::structs::VsanUpgradeSystemNetworkPartitionInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemNetworkPartitionInfo(value)
}
fn wrap_array_of_vsan_upgrade_system_network_partition_issue(value: Vec<super::structs::VsanUpgradeSystemNetworkPartitionIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemNetworkPartitionIssue(value)
}
fn wrap_array_of_vsan_upgrade_system_not_enough_free_capacity_issue(value: Vec<super::structs::VsanUpgradeSystemNotEnoughFreeCapacityIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemNotEnoughFreeCapacityIssue(value)
}
fn wrap_array_of_vsan_upgrade_system_rogue_hosts_in_cluster_issue(value: Vec<super::structs::VsanUpgradeSystemRogueHostsInClusterIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemRogueHostsInClusterIssue(value)
}
fn wrap_array_of_vsan_upgrade_system_upgrade_history_disk_group_op(value: Vec<super::structs::VsanUpgradeSystemUpgradeHistoryDiskGroupOp>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemUpgradeHistoryDiskGroupOp(value)
}
fn wrap_array_of_vsan_upgrade_system_upgrade_history_preflight_fail(value: Vec<super::structs::VsanUpgradeSystemUpgradeHistoryPreflightFail>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemUpgradeHistoryPreflightFail(value)
}
fn wrap_array_of_vsan_upgrade_system_v_2_objects_present_during_downgrade_issue(value: Vec<super::structs::VsanUpgradeSystemV2ObjectsPresentDuringDowngradeIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemV2ObjectsPresentDuringDowngradeIssue(value)
}
fn wrap_array_of_vsan_upgrade_system_wrong_esx_version_issue(value: Vec<super::structs::VsanUpgradeSystemWrongEsxVersionIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemWrongEsxVersionIssue(value)
}
fn wrap_array_of_create_task_action(value: Vec<super::structs::CreateTaskAction>) -> ValueElements {
    ValueElements::ArrayOfCreateTaskAction(value)
}
fn wrap_array_of_method_action(value: Vec<super::structs::MethodAction>) -> ValueElements {
    ValueElements::ArrayOfMethodAction(value)
}
fn wrap_array_of_method_action_argument(value: Vec<super::structs::MethodActionArgument>) -> ValueElements {
    ValueElements::ArrayOfMethodActionArgument(value)
}
fn wrap_array_of_run_script_action(value: Vec<super::structs::RunScriptAction>) -> ValueElements {
    ValueElements::ArrayOfRunScriptAction(value)
}
fn wrap_array_of_send_email_action(value: Vec<super::structs::SendEmailAction>) -> ValueElements {
    ValueElements::ArrayOfSendEmailAction(value)
}
fn wrap_array_of_send_snmp_action(value: Vec<super::structs::SendSnmpAction>) -> ValueElements {
    ValueElements::ArrayOfSendSnmpAction(value)
}
fn wrap_array_of_alarm_description(value: Vec<super::structs::AlarmDescription>) -> ValueElements {
    ValueElements::ArrayOfAlarmDescription(value)
}
fn wrap_array_of_alarm_filter_spec(value: Vec<super::structs::AlarmFilterSpec>) -> ValueElements {
    ValueElements::ArrayOfAlarmFilterSpec(value)
}
fn wrap_array_of_alarm_info(value: Vec<super::structs::AlarmInfo>) -> ValueElements {
    ValueElements::ArrayOfAlarmInfo(value)
}
fn wrap_array_of_alarm_setting(value: Vec<super::structs::AlarmSetting>) -> ValueElements {
    ValueElements::ArrayOfAlarmSetting(value)
}
fn wrap_array_of_alarm_state(value: Vec<super::structs::AlarmState>) -> ValueElements {
    ValueElements::ArrayOfAlarmState(value)
}
fn wrap_array_of_alarm_triggering_action(value: Vec<super::structs::AlarmTriggeringAction>) -> ValueElements {
    ValueElements::ArrayOfAlarmTriggeringAction(value)
}
fn wrap_array_of_alarm_triggering_action_transition_spec(value: Vec<super::structs::AlarmTriggeringActionTransitionSpec>) -> ValueElements {
    ValueElements::ArrayOfAlarmTriggeringActionTransitionSpec(value)
}
fn wrap_array_of_and_alarm_expression(value: Vec<super::structs::AndAlarmExpression>) -> ValueElements {
    ValueElements::ArrayOfAndAlarmExpression(value)
}
fn wrap_array_of_event_alarm_expression(value: Vec<super::structs::EventAlarmExpression>) -> ValueElements {
    ValueElements::ArrayOfEventAlarmExpression(value)
}
fn wrap_array_of_event_alarm_expression_comparison(value: Vec<super::structs::EventAlarmExpressionComparison>) -> ValueElements {
    ValueElements::ArrayOfEventAlarmExpressionComparison(value)
}
fn wrap_array_of_group_alarm_action(value: Vec<super::structs::GroupAlarmAction>) -> ValueElements {
    ValueElements::ArrayOfGroupAlarmAction(value)
}
fn wrap_array_of_metric_alarm_expression(value: Vec<super::structs::MetricAlarmExpression>) -> ValueElements {
    ValueElements::ArrayOfMetricAlarmExpression(value)
}
fn wrap_array_of_or_alarm_expression(value: Vec<super::structs::OrAlarmExpression>) -> ValueElements {
    ValueElements::ArrayOfOrAlarmExpression(value)
}
fn wrap_array_of_state_alarm_expression(value: Vec<super::structs::StateAlarmExpression>) -> ValueElements {
    ValueElements::ArrayOfStateAlarmExpression(value)
}
fn wrap_array_of_cluster_action_history(value: Vec<super::structs::ClusterActionHistory>) -> ValueElements {
    ValueElements::ArrayOfClusterActionHistory(value)
}
fn wrap_array_of_cluster_affinity_rule_spec(value: Vec<super::structs::ClusterAffinityRuleSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterAffinityRuleSpec(value)
}
fn wrap_array_of_cluster_anti_affinity_rule_spec(value: Vec<super::structs::ClusterAntiAffinityRuleSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterAntiAffinityRuleSpec(value)
}
fn wrap_array_of_cluster_attempted_vm_info(value: Vec<super::structs::ClusterAttemptedVmInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterAttemptedVmInfo(value)
}
fn wrap_array_of_cluster_cluster_initial_placement_action(value: Vec<super::structs::ClusterClusterInitialPlacementAction>) -> ValueElements {
    ValueElements::ArrayOfClusterClusterInitialPlacementAction(value)
}
fn wrap_array_of_cluster_power_context(value: Vec<super::structs::ClusterPowerContext>) -> ValueElements {
    ValueElements::ArrayOfClusterPowerContext(value)
}
fn wrap_array_of_cluster_config_info(value: Vec<super::structs::ClusterConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterConfigInfo(value)
}
fn wrap_array_of_cluster_config_info_ex(value: Vec<super::structs::ClusterConfigInfoEx>) -> ValueElements {
    ValueElements::ArrayOfClusterConfigInfoEx(value)
}
fn wrap_array_of_cluster_config_spec(value: Vec<super::structs::ClusterConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterConfigSpec(value)
}
fn wrap_array_of_cluster_config_spec_ex(value: Vec<super::structs::ClusterConfigSpecEx>) -> ValueElements {
    ValueElements::ArrayOfClusterConfigSpecEx(value)
}
fn wrap_array_of_cluster_crypto_config_info(value: Vec<super::structs::ClusterCryptoConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterCryptoConfigInfo(value)
}
fn wrap_array_of_cluster_das_aam_host_info(value: Vec<super::structs::ClusterDasAamHostInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDasAamHostInfo(value)
}
fn wrap_array_of_cluster_das_aam_node_state(value: Vec<super::structs::ClusterDasAamNodeState>) -> ValueElements {
    ValueElements::ArrayOfClusterDasAamNodeState(value)
}
fn wrap_array_of_das_heartbeat_datastore_info(value: Vec<super::structs::DasHeartbeatDatastoreInfo>) -> ValueElements {
    ValueElements::ArrayOfDasHeartbeatDatastoreInfo(value)
}
fn wrap_array_of_cluster_das_advanced_runtime_info_vmcp_capability_info(value: Vec<super::structs::ClusterDasAdvancedRuntimeInfoVmcpCapabilityInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDasAdvancedRuntimeInfoVmcpCapabilityInfo(value)
}
fn wrap_array_of_cluster_das_config_info(value: Vec<super::structs::ClusterDasConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDasConfigInfo(value)
}
fn wrap_array_of_cluster_das_data_summary(value: Vec<super::structs::ClusterDasDataSummary>) -> ValueElements {
    ValueElements::ArrayOfClusterDasDataSummary(value)
}
fn wrap_array_of_cluster_das_failover_level_advanced_runtime_info(value: Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfo(value)
}
fn wrap_array_of_cluster_das_failover_level_advanced_runtime_info_host_slots(value: Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots>) -> ValueElements {
    ValueElements::ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots(value)
}
fn wrap_array_of_cluster_das_failover_level_advanced_runtime_info_slot_info(value: Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfoSlotInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfoSlotInfo(value)
}
fn wrap_array_of_cluster_das_failover_level_advanced_runtime_info_vm_slots(value: Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots>) -> ValueElements {
    ValueElements::ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots(value)
}
fn wrap_array_of_cluster_das_fdm_host_state(value: Vec<super::structs::ClusterDasFdmHostState>) -> ValueElements {
    ValueElements::ArrayOfClusterDasFdmHostState(value)
}
fn wrap_array_of_cluster_das_host_recommendation(value: Vec<super::structs::ClusterDasHostRecommendation>) -> ValueElements {
    ValueElements::ArrayOfClusterDasHostRecommendation(value)
}
fn wrap_array_of_cluster_das_vm_config_info(value: Vec<super::structs::ClusterDasVmConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDasVmConfigInfo(value)
}
fn wrap_array_of_cluster_das_vm_config_spec(value: Vec<super::structs::ClusterDasVmConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterDasVmConfigSpec(value)
}
fn wrap_array_of_cluster_das_vm_settings(value: Vec<super::structs::ClusterDasVmSettings>) -> ValueElements {
    ValueElements::ArrayOfClusterDasVmSettings(value)
}
fn wrap_array_of_cluster_datastore_update_spec(value: Vec<super::structs::ClusterDatastoreUpdateSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterDatastoreUpdateSpec(value)
}
fn wrap_array_of_cluster_dependency_rule_info(value: Vec<super::structs::ClusterDependencyRuleInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDependencyRuleInfo(value)
}
fn wrap_array_of_cluster_dpm_config_info(value: Vec<super::structs::ClusterDpmConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDpmConfigInfo(value)
}
fn wrap_array_of_cluster_dpm_host_config_info(value: Vec<super::structs::ClusterDpmHostConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDpmHostConfigInfo(value)
}
fn wrap_array_of_cluster_dpm_host_config_spec(value: Vec<super::structs::ClusterDpmHostConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterDpmHostConfigSpec(value)
}
fn wrap_array_of_cluster_drs_config_info(value: Vec<super::structs::ClusterDrsConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDrsConfigInfo(value)
}
fn wrap_array_of_cluster_drs_faults(value: Vec<super::structs::ClusterDrsFaults>) -> ValueElements {
    ValueElements::ArrayOfClusterDrsFaults(value)
}
fn wrap_array_of_cluster_drs_faults_faults_by_virtual_disk(value: Vec<super::structs::ClusterDrsFaultsFaultsByVirtualDisk>) -> ValueElements {
    ValueElements::ArrayOfClusterDrsFaultsFaultsByVirtualDisk(value)
}
fn wrap_array_of_cluster_drs_migration(value: Vec<super::structs::ClusterDrsMigration>) -> ValueElements {
    ValueElements::ArrayOfClusterDrsMigration(value)
}
fn wrap_array_of_cluster_drs_recommendation(value: Vec<super::structs::ClusterDrsRecommendation>) -> ValueElements {
    ValueElements::ArrayOfClusterDrsRecommendation(value)
}
fn wrap_array_of_cluster_drs_vm_config_info(value: Vec<super::structs::ClusterDrsVmConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterDrsVmConfigInfo(value)
}
fn wrap_array_of_cluster_drs_vm_config_spec(value: Vec<super::structs::ClusterDrsVmConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterDrsVmConfigSpec(value)
}
fn wrap_array_of_cluster_evc_manager_check_result(value: Vec<super::structs::ClusterEvcManagerCheckResult>) -> ValueElements {
    ValueElements::ArrayOfClusterEvcManagerCheckResult(value)
}
fn wrap_array_of_cluster_evc_manager_evc_state(value: Vec<super::structs::ClusterEvcManagerEvcState>) -> ValueElements {
    ValueElements::ArrayOfClusterEvcManagerEvcState(value)
}
fn wrap_array_of_cluster_enter_maintenance_result(value: Vec<super::structs::ClusterEnterMaintenanceResult>) -> ValueElements {
    ValueElements::ArrayOfClusterEnterMaintenanceResult(value)
}
fn wrap_array_of_cluster_failover_host_admission_control_info(value: Vec<super::structs::ClusterFailoverHostAdmissionControlInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterFailoverHostAdmissionControlInfo(value)
}
fn wrap_array_of_cluster_failover_host_admission_control_info_host_status(value: Vec<super::structs::ClusterFailoverHostAdmissionControlInfoHostStatus>) -> ValueElements {
    ValueElements::ArrayOfClusterFailoverHostAdmissionControlInfoHostStatus(value)
}
fn wrap_array_of_cluster_failover_host_admission_control_policy(value: Vec<super::structs::ClusterFailoverHostAdmissionControlPolicy>) -> ValueElements {
    ValueElements::ArrayOfClusterFailoverHostAdmissionControlPolicy(value)
}
fn wrap_array_of_cluster_failover_level_admission_control_info(value: Vec<super::structs::ClusterFailoverLevelAdmissionControlInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterFailoverLevelAdmissionControlInfo(value)
}
fn wrap_array_of_cluster_failover_level_admission_control_policy(value: Vec<super::structs::ClusterFailoverLevelAdmissionControlPolicy>) -> ValueElements {
    ValueElements::ArrayOfClusterFailoverLevelAdmissionControlPolicy(value)
}
fn wrap_array_of_cluster_failover_resources_admission_control_info(value: Vec<super::structs::ClusterFailoverResourcesAdmissionControlInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterFailoverResourcesAdmissionControlInfo(value)
}
fn wrap_array_of_cluster_failover_resources_admission_control_policy(value: Vec<super::structs::ClusterFailoverResourcesAdmissionControlPolicy>) -> ValueElements {
    ValueElements::ArrayOfClusterFailoverResourcesAdmissionControlPolicy(value)
}
fn wrap_array_of_vsan_fault_domain_destroy_spec(value: Vec<super::structs::VsanFaultDomainDestroySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanFaultDomainDestroySpec(value)
}
fn wrap_array_of_vsan_fault_domain_update_spec(value: Vec<super::structs::VsanFaultDomainUpdateSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanFaultDomainUpdateSpec(value)
}
fn wrap_array_of_cluster_fixed_size_slot_policy(value: Vec<super::structs::ClusterFixedSizeSlotPolicy>) -> ValueElements {
    ValueElements::ArrayOfClusterFixedSizeSlotPolicy(value)
}
fn wrap_array_of_cluster_ft_vm_host_rule_info(value: Vec<super::structs::ClusterFtVmHostRuleInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterFtVmHostRuleInfo(value)
}
fn wrap_array_of_cluster_group_spec(value: Vec<super::structs::ClusterGroupSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterGroupSpec(value)
}
fn wrap_array_of_cluster_host_group(value: Vec<super::structs::ClusterHostGroup>) -> ValueElements {
    ValueElements::ArrayOfClusterHostGroup(value)
}
fn wrap_array_of_cluster_host_infra_update_ha_mode_action(value: Vec<super::structs::ClusterHostInfraUpdateHaModeAction>) -> ValueElements {
    ValueElements::ArrayOfClusterHostInfraUpdateHaModeAction(value)
}
fn wrap_array_of_cluster_host_power_action(value: Vec<super::structs::ClusterHostPowerAction>) -> ValueElements {
    ValueElements::ArrayOfClusterHostPowerAction(value)
}
fn wrap_array_of_cluster_host_recommendation(value: Vec<super::structs::ClusterHostRecommendation>) -> ValueElements {
    ValueElements::ArrayOfClusterHostRecommendation(value)
}
fn wrap_array_of_cluster_infra_update_ha_config_info(value: Vec<super::structs::ClusterInfraUpdateHaConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterInfraUpdateHaConfigInfo(value)
}
fn wrap_array_of_cluster_initial_placement_action(value: Vec<super::structs::ClusterInitialPlacementAction>) -> ValueElements {
    ValueElements::ArrayOfClusterInitialPlacementAction(value)
}
fn wrap_array_of_cluster_migration_action(value: Vec<super::structs::ClusterMigrationAction>) -> ValueElements {
    ValueElements::ArrayOfClusterMigrationAction(value)
}
fn wrap_array_of_cluster_not_attempted_vm_info(value: Vec<super::structs::ClusterNotAttemptedVmInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterNotAttemptedVmInfo(value)
}
fn wrap_array_of_cluster_orchestration_info(value: Vec<super::structs::ClusterOrchestrationInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterOrchestrationInfo(value)
}
fn wrap_array_of_perform_cluster_power_action_spec(value: Vec<super::structs::PerformClusterPowerActionSpec>) -> ValueElements {
    ValueElements::ArrayOfPerformClusterPowerActionSpec(value)
}
fn wrap_array_of_placement_action(value: Vec<super::structs::PlacementAction>) -> ValueElements {
    ValueElements::ArrayOfPlacementAction(value)
}
fn wrap_array_of_placement_result(value: Vec<super::structs::PlacementResult>) -> ValueElements {
    ValueElements::ArrayOfPlacementResult(value)
}
fn wrap_array_of_placement_spec(value: Vec<super::structs::PlacementSpec>) -> ValueElements {
    ValueElements::ArrayOfPlacementSpec(value)
}
fn wrap_array_of_cluster_power_on_vm_result(value: Vec<super::structs::ClusterPowerOnVmResult>) -> ValueElements {
    ValueElements::ArrayOfClusterPowerOnVmResult(value)
}
fn wrap_array_of_cluster_preemptible_vm_pair_info(value: Vec<super::structs::ClusterPreemptibleVmPairInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterPreemptibleVmPairInfo(value)
}
fn wrap_array_of_cluster_preemptible_vm_pair_spec(value: Vec<super::structs::ClusterPreemptibleVmPairSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterPreemptibleVmPairSpec(value)
}
fn wrap_array_of_cluster_proactive_drs_config_info(value: Vec<super::structs::ClusterProactiveDrsConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterProactiveDrsConfigInfo(value)
}
fn wrap_array_of_query_vsan_managed_storage_space_usage_spec(value: Vec<super::structs::QueryVsanManagedStorageSpaceUsageSpec>) -> ValueElements {
    ValueElements::ArrayOfQueryVsanManagedStorageSpaceUsageSpec(value)
}
fn wrap_array_of_cluster_recommendation(value: Vec<super::structs::ClusterRecommendation>) -> ValueElements {
    ValueElements::ArrayOfClusterRecommendation(value)
}
fn wrap_array_of_cluster_resource_usage_summary(value: Vec<super::structs::ClusterResourceUsageSummary>) -> ValueElements {
    ValueElements::ArrayOfClusterResourceUsageSummary(value)
}
fn wrap_array_of_cluster_rule_spec(value: Vec<super::structs::ClusterRuleSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterRuleSpec(value)
}
fn wrap_array_of_vsan_site_fault_domain(value: Vec<super::structs::VsanSiteFaultDomain>) -> ValueElements {
    ValueElements::ArrayOfVsanSiteFaultDomain(value)
}
fn wrap_array_of_vsan_site_fault_domain_config(value: Vec<super::structs::VsanSiteFaultDomainConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanSiteFaultDomainConfig(value)
}
fn wrap_array_of_vsan_storage_compliance_result(value: Vec<super::structs::VsanStorageComplianceResult>) -> ValueElements {
    ValueElements::ArrayOfVsanStorageComplianceResult(value)
}
fn wrap_array_of_vsan_storage_operational_status(value: Vec<super::structs::VsanStorageOperationalStatus>) -> ValueElements {
    ValueElements::ArrayOfVsanStorageOperationalStatus(value)
}
fn wrap_array_of_vsan_storage_policy_status(value: Vec<super::structs::VsanStoragePolicyStatus>) -> ValueElements {
    ValueElements::ArrayOfVsanStoragePolicyStatus(value)
}
fn wrap_array_of_cluster_system_v_ms_config_info(value: Vec<super::structs::ClusterSystemVMsConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterSystemVMsConfigInfo(value)
}
fn wrap_array_of_cluster_system_v_ms_config_spec(value: Vec<super::structs::ClusterSystemVMsConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterSystemVMsConfigSpec(value)
}
fn wrap_array_of_cluster_tag_category_update_spec(value: Vec<super::structs::ClusterTagCategoryUpdateSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterTagCategoryUpdateSpec(value)
}
fn wrap_array_of_cluster_usage_summary(value: Vec<super::structs::ClusterUsageSummary>) -> ValueElements {
    ValueElements::ArrayOfClusterUsageSummary(value)
}
fn wrap_array_of_vim_cluster_vsan_preferred_fault_domain_info(value: Vec<super::structs::VimClusterVsanPreferredFaultDomainInfo>) -> ValueElements {
    ValueElements::ArrayOfVimClusterVsanPreferredFaultDomainInfo(value)
}
fn wrap_array_of_vim_cluster_vsan_stretched_cluster_capability(value: Vec<super::structs::VimClusterVsanStretchedClusterCapability>) -> ValueElements {
    ValueElements::ArrayOfVimClusterVsanStretchedClusterCapability(value)
}
fn wrap_array_of_vim_cluster_vsan_stretched_cluster_fault_domain_config(value: Vec<super::structs::VimClusterVsanStretchedClusterFaultDomainConfig>) -> ValueElements {
    ValueElements::ArrayOfVimClusterVsanStretchedClusterFaultDomainConfig(value)
}
fn wrap_array_of_vsan_stretched_cluster_host_virtual_appliance_status(value: Vec<super::structs::VsanStretchedClusterHostVirtualApplianceStatus>) -> ValueElements {
    ValueElements::ArrayOfVsanStretchedClusterHostVirtualApplianceStatus(value)
}
fn wrap_array_of_vim_cluster_vsan_witness_host_info(value: Vec<super::structs::VimClusterVsanWitnessHostInfo>) -> ValueElements {
    ValueElements::ArrayOfVimClusterVsanWitnessHostInfo(value)
}
fn wrap_array_of_cluster_vm_component_protection_settings(value: Vec<super::structs::ClusterVmComponentProtectionSettings>) -> ValueElements {
    ValueElements::ArrayOfClusterVmComponentProtectionSettings(value)
}
fn wrap_array_of_cluster_vm_group(value: Vec<super::structs::ClusterVmGroup>) -> ValueElements {
    ValueElements::ArrayOfClusterVmGroup(value)
}
fn wrap_array_of_cluster_vm_host_rule_info(value: Vec<super::structs::ClusterVmHostRuleInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterVmHostRuleInfo(value)
}
fn wrap_array_of_cluster_vm_orchestration_info(value: Vec<super::structs::ClusterVmOrchestrationInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterVmOrchestrationInfo(value)
}
fn wrap_array_of_cluster_vm_orchestration_spec(value: Vec<super::structs::ClusterVmOrchestrationSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterVmOrchestrationSpec(value)
}
fn wrap_array_of_cluster_vm_readiness(value: Vec<super::structs::ClusterVmReadiness>) -> ValueElements {
    ValueElements::ArrayOfClusterVmReadiness(value)
}
fn wrap_array_of_cluster_vm_tools_monitoring_settings(value: Vec<super::structs::ClusterVmToolsMonitoringSettings>) -> ValueElements {
    ValueElements::ArrayOfClusterVmToolsMonitoringSettings(value)
}
fn wrap_array_of_vsan_attach_to_sr_operation(value: Vec<super::structs::VsanAttachToSrOperation>) -> ValueElements {
    ValueElements::ArrayOfVsanAttachToSrOperation(value)
}
fn wrap_array_of_vsan_capability(value: Vec<super::structs::VsanCapability>) -> ValueElements {
    ValueElements::ArrayOfVsanCapability(value)
}
fn wrap_array_of_vsan_cluster_adv_cfg_sync_host_result(value: Vec<super::structs::VsanClusterAdvCfgSyncHostResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterAdvCfgSyncHostResult(value)
}
fn wrap_array_of_vsan_cluster_adv_cfg_sync_result(value: Vec<super::structs::VsanClusterAdvCfgSyncResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterAdvCfgSyncResult(value)
}
fn wrap_array_of_vsan_cluster_balance_per_disk_info(value: Vec<super::structs::VsanClusterBalancePerDiskInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterBalancePerDiskInfo(value)
}
fn wrap_array_of_vsan_cluster_balance_summary(value: Vec<super::structs::VsanClusterBalanceSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterBalanceSummary(value)
}
fn wrap_array_of_vsan_cluster_clomd_liveness_result(value: Vec<super::structs::VsanClusterClomdLivenessResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterClomdLivenessResult(value)
}
fn wrap_array_of_vsan_cluster_config(value: Vec<super::structs::VsanClusterConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterConfig(value)
}
fn wrap_array_of_vsan_cluster_create_vm_health_test_result(value: Vec<super::structs::VsanClusterCreateVmHealthTestResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterCreateVmHealthTestResult(value)
}
fn wrap_array_of_vsan_cluster_dit_encryption_health_summary(value: Vec<super::structs::VsanClusterDitEncryptionHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterDitEncryptionHealthSummary(value)
}
fn wrap_array_of_vsan_cluster_encryption_health_summary(value: Vec<super::structs::VsanClusterEncryptionHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterEncryptionHealthSummary(value)
}
fn wrap_array_of_vsan_cluster_file_service_health_summary(value: Vec<super::structs::VsanClusterFileServiceHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterFileServiceHealthSummary(value)
}
fn wrap_array_of_vsan_cluster_global_dedup_health_summary(value: Vec<super::structs::VsanClusterGlobalDedupHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterGlobalDedupHealthSummary(value)
}
fn wrap_array_of_vsan_cluster_hcl_info(value: Vec<super::structs::VsanClusterHclInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHclInfo(value)
}
fn wrap_array_of_vsan_cluster_health_action(value: Vec<super::structs::VsanClusterHealthAction>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthAction(value)
}
fn wrap_array_of_vsan_cluster_health_check_info(value: Vec<super::structs::VsanClusterHealthCheckInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthCheckInfo(value)
}
fn wrap_array_of_vsan_cluster_health_configs(value: Vec<super::structs::VsanClusterHealthConfigs>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthConfigs(value)
}
fn wrap_array_of_vsan_cluster_health_link(value: Vec<super::structs::VsanClusterHealthLink>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthLink(value)
}
fn wrap_array_of_vsan_cluster_health_group(value: Vec<super::structs::VsanClusterHealthGroup>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthGroup(value)
}
fn wrap_array_of_vsan_cluster_health_query_spec(value: Vec<super::structs::VsanClusterHealthQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthQuerySpec(value)
}
fn wrap_array_of_vsan_cluster_health_result_column_info(value: Vec<super::structs::VsanClusterHealthResultColumnInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthResultColumnInfo(value)
}
fn wrap_array_of_vsan_cluster_health_result_key_value_pair(value: Vec<super::structs::VsanClusterHealthResultKeyValuePair>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthResultKeyValuePair(value)
}
fn wrap_array_of_vsan_cluster_health_result_row(value: Vec<super::structs::VsanClusterHealthResultRow>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthResultRow(value)
}
fn wrap_array_of_vsan_cluster_health_result_table(value: Vec<super::structs::VsanClusterHealthResultTable>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthResultTable(value)
}
fn wrap_array_of_vsan_cluster_health_result_with_remediation(value: Vec<super::structs::VsanClusterHealthResultWithRemediation>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthResultWithRemediation(value)
}
fn wrap_array_of_vsan_cluster_health_summary(value: Vec<super::structs::VsanClusterHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthSummary(value)
}
fn wrap_array_of_vsan_cluster_health_system_objects_repair_result(value: Vec<super::structs::VsanClusterHealthSystemObjectsRepairResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthSystemObjectsRepairResult(value)
}
fn wrap_array_of_vsan_cluster_health_system_status_result(value: Vec<super::structs::VsanClusterHealthSystemStatusResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthSystemStatusResult(value)
}
fn wrap_array_of_vsan_cluster_health_system_version_result(value: Vec<super::structs::VsanClusterHealthSystemVersionResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthSystemVersionResult(value)
}
fn wrap_array_of_vsan_cluster_health_test(value: Vec<super::structs::VsanClusterHealthTest>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHealthTest(value)
}
fn wrap_array_of_vsan_cluster_host_vmknic_mapping(value: Vec<super::structs::VsanClusterHostVmknicMapping>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterHostVmknicMapping(value)
}
fn wrap_array_of_vsan_cluster_limit_health_result(value: Vec<super::structs::VsanClusterLimitHealthResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterLimitHealthResult(value)
}
fn wrap_array_of_vsan_cluster_network_health_result(value: Vec<super::structs::VsanClusterNetworkHealthResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterNetworkHealthResult(value)
}
fn wrap_array_of_vsan_cluster_network_load_test_result(value: Vec<super::structs::VsanClusterNetworkLoadTestResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterNetworkLoadTestResult(value)
}
fn wrap_array_of_vsan_cluster_network_partition_info(value: Vec<super::structs::VsanClusterNetworkPartitionInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterNetworkPartitionInfo(value)
}
fn wrap_array_of_vsan_cluster_network_perf_task_spec(value: Vec<super::structs::VsanClusterNetworkPerfTaskSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterNetworkPerfTaskSpec(value)
}
fn wrap_array_of_vsan_cluster_proactive_test_result(value: Vec<super::structs::VsanClusterProactiveTestResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterProactiveTestResult(value)
}
fn wrap_array_of_vsan_cluster_telemetry_proxy_config(value: Vec<super::structs::VsanClusterTelemetryProxyConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterTelemetryProxyConfig(value)
}
fn wrap_array_of_vsan_cluster_v_ms_health_overall_result(value: Vec<super::structs::VsanClusterVMsHealthOverallResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterVMsHealthOverallResult(value)
}
fn wrap_array_of_vsan_cluster_v_ms_health_summary_result(value: Vec<super::structs::VsanClusterVMsHealthSummaryResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterVMsHealthSummaryResult(value)
}
fn wrap_array_of_vsan_cluster_vmdk_load_test_result(value: Vec<super::structs::VsanClusterVmdkLoadTestResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterVmdkLoadTestResult(value)
}
fn wrap_array_of_vsan_cluster_whatif_host_failures_result(value: Vec<super::structs::VsanClusterWhatifHostFailuresResult>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterWhatifHostFailuresResult(value)
}
fn wrap_array_of_vsan_config_generation(value: Vec<super::structs::VsanConfigGeneration>) -> ValueElements {
    ValueElements::ArrayOfVsanConfigGeneration(value)
}
fn wrap_array_of_vsan_data_driven_api_action(value: Vec<super::structs::VsanDataDrivenApiAction>) -> ValueElements {
    ValueElements::ArrayOfVsanDataDrivenApiAction(value)
}
fn wrap_array_of_vsan_diagnostics_threshold(value: Vec<super::structs::VsanDiagnosticsThreshold>) -> ValueElements {
    ValueElements::ArrayOfVsanDiagnosticsThreshold(value)
}
fn wrap_array_of_vsan_disk_format_conversion_check_result(value: Vec<super::structs::VsanDiskFormatConversionCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanDiskFormatConversionCheckResult(value)
}
fn wrap_array_of_vsan_disk_format_conversion_spec(value: Vec<super::structs::VsanDiskFormatConversionSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanDiskFormatConversionSpec(value)
}
fn wrap_array_of_vim_cluster_vsan_disk_mappings_config_spec(value: Vec<super::structs::VimClusterVsanDiskMappingsConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVimClusterVsanDiskMappingsConfigSpec(value)
}
fn wrap_array_of_vsan_entity_space_usage(value: Vec<super::structs::VsanEntitySpaceUsage>) -> ValueElements {
    ValueElements::ArrayOfVsanEntitySpaceUsage(value)
}
fn wrap_array_of_vim_cluster_vsan_fault_domains_config_spec(value: Vec<super::structs::VimClusterVsanFaultDomainsConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVimClusterVsanFaultDomainsConfigSpec(value)
}
fn wrap_array_of_vsan_health_action_steps(value: Vec<super::structs::VsanHealthActionSteps>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthActionSteps(value)
}
fn wrap_array_of_vsan_health_api_based_action(value: Vec<super::structs::VsanHealthApiBasedAction>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthApiBasedAction(value)
}
fn wrap_array_of_vsan_health_cmd_based_action(value: Vec<super::structs::VsanHealthCmdBasedAction>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthCmdBasedAction(value)
}
fn wrap_array_of_vsan_health_confirmation_dialog(value: Vec<super::structs::VsanHealthConfirmationDialog>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthConfirmationDialog(value)
}
fn wrap_array_of_vsan_health_correlation(value: Vec<super::structs::VsanHealthCorrelation>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthCorrelation(value)
}
fn wrap_array_of_vsan_health_data_driven_action(value: Vec<super::structs::VsanHealthDataDrivenAction>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthDataDrivenAction(value)
}
fn wrap_array_of_vsan_health_ext_mgmt_pre_check_result(value: Vec<super::structs::VsanHealthExtMgmtPreCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthExtMgmtPreCheckResult(value)
}
fn wrap_array_of_vsan_health_troubleshooting(value: Vec<super::structs::VsanHealthTroubleshooting>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthTroubleshooting(value)
}
fn wrap_array_of_vsan_health_txt_based_action(value: Vec<super::structs::VsanHealthTxtBasedAction>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthTxtBasedAction(value)
}
fn wrap_array_of_vsan_historical_health_query_spec(value: Vec<super::structs::VsanHistoricalHealthQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanHistoricalHealthQuerySpec(value)
}
fn wrap_array_of_vsan_historical_health_test(value: Vec<super::structs::VsanHistoricalHealthTest>) -> ValueElements {
    ValueElements::ArrayOfVsanHistoricalHealthTest(value)
}
fn wrap_array_of_vsan_host_clomd_liveness_result(value: Vec<super::structs::VsanHostClomdLivenessResult>) -> ValueElements {
    ValueElements::ArrayOfVsanHostClomdLivenessResult(value)
}
fn wrap_array_of_vsan_host_create_vm_health_test_result(value: Vec<super::structs::VsanHostCreateVmHealthTestResult>) -> ValueElements {
    ValueElements::ArrayOfVsanHostCreateVmHealthTestResult(value)
}
fn wrap_array_of_vim_cluster_vsan_host_disk_mapping(value: Vec<super::structs::VimClusterVsanHostDiskMapping>) -> ValueElements {
    ValueElements::ArrayOfVimClusterVsanHostDiskMapping(value)
}
fn wrap_array_of_vsan_host_health_system_version_result(value: Vec<super::structs::VsanHostHealthSystemVersionResult>) -> ValueElements {
    ValueElements::ArrayOfVsanHostHealthSystemVersionResult(value)
}
fn wrap_array_of_vsan_io_insight_instance(value: Vec<super::structs::VsanIoInsightInstance>) -> ValueElements {
    ValueElements::ArrayOfVsanIoInsightInstance(value)
}
fn wrap_array_of_vsan_io_insight_instance_query_spec(value: Vec<super::structs::VsanIoInsightInstanceQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanIoInsightInstanceQuerySpec(value)
}
fn wrap_array_of_vsan_iscsi_home_object_spec(value: Vec<super::structs::VsanIscsiHomeObjectSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiHomeObjectSpec(value)
}
fn wrap_array_of_vsan_iscsi_initiator_group(value: Vec<super::structs::VsanIscsiInitiatorGroup>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiInitiatorGroup(value)
}
fn wrap_array_of_vsan_iscsi_lun(value: Vec<super::structs::VsanIscsiLun>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiLun(value)
}
fn wrap_array_of_vsan_iscsi_lun_spec(value: Vec<super::structs::VsanIscsiLunSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiLunSpec(value)
}
fn wrap_array_of_vsan_iscsi_target(value: Vec<super::structs::VsanIscsiTarget>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiTarget(value)
}
fn wrap_array_of_vsan_iscsi_target_auth_spec(value: Vec<super::structs::VsanIscsiTargetAuthSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiTargetAuthSpec(value)
}
fn wrap_array_of_vsan_iscsi_target_service_default_config_spec(value: Vec<super::structs::VsanIscsiTargetServiceDefaultConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiTargetServiceDefaultConfigSpec(value)
}
fn wrap_array_of_vsan_iscsi_target_service_spec(value: Vec<super::structs::VsanIscsiTargetServiceSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiTargetServiceSpec(value)
}
fn wrap_array_of_vsan_iscsi_target_spec(value: Vec<super::structs::VsanIscsiTargetSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiTargetSpec(value)
}
fn wrap_array_of_vsan_network_diagnostics(value: Vec<super::structs::VsanNetworkDiagnostics>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkDiagnostics(value)
}
fn wrap_array_of_vsan_obj_identity_query_spec(value: Vec<super::structs::VsanObjIdentityQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanObjIdentityQuerySpec(value)
}
fn wrap_array_of_vsan_cluster_object_ext_attrs(value: Vec<super::structs::VsanClusterObjectExtAttrs>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterObjectExtAttrs(value)
}
fn wrap_array_of_vsan_object_extra_attributes(value: Vec<super::structs::VsanObjectExtraAttributes>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectExtraAttributes(value)
}
fn wrap_array_of_vsan_object_identity(value: Vec<super::structs::VsanObjectIdentity>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectIdentity(value)
}
fn wrap_array_of_vsan_object_identity_and_health(value: Vec<super::structs::VsanObjectIdentityAndHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectIdentityAndHealth(value)
}
fn wrap_array_of_vsan_object_information(value: Vec<super::structs::VsanObjectInformation>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectInformation(value)
}
fn wrap_array_of_vsan_object_query_spec(value: Vec<super::structs::VsanObjectQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectQuerySpec(value)
}
fn wrap_array_of_vsan_object_space_summary(value: Vec<super::structs::VsanObjectSpaceSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectSpaceSummary(value)
}
fn wrap_array_of_vsan_perf_diagnose_query_spec(value: Vec<super::structs::VsanPerfDiagnoseQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfDiagnoseQuerySpec(value)
}
fn wrap_array_of_vsan_perf_diagnostic_exception(value: Vec<super::structs::VsanPerfDiagnosticException>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfDiagnosticException(value)
}
fn wrap_array_of_vsan_perf_diagnostic_result(value: Vec<super::structs::VsanPerfDiagnosticResult>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfDiagnosticResult(value)
}
fn wrap_array_of_vsan_perf_entity_metric_csv(value: Vec<super::structs::VsanPerfEntityMetricCsv>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfEntityMetricCsv(value)
}
fn wrap_array_of_vsan_perf_entity_type(value: Vec<super::structs::VsanPerfEntityType>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfEntityType(value)
}
fn wrap_array_of_vsan_perf_graph(value: Vec<super::structs::VsanPerfGraph>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfGraph(value)
}
fn wrap_array_of_vsan_perf_hotspot_entities_metrics(value: Vec<super::structs::VsanPerfHotspotEntitiesMetrics>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfHotspotEntitiesMetrics(value)
}
fn wrap_array_of_vsan_perf_hotspot_query_spec(value: Vec<super::structs::VsanPerfHotspotQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfHotspotQuerySpec(value)
}
fn wrap_array_of_vsan_perf_master_information(value: Vec<super::structs::VsanPerfMasterInformation>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfMasterInformation(value)
}
fn wrap_array_of_vsan_perf_member_info(value: Vec<super::structs::VsanPerfMemberInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfMemberInfo(value)
}
fn wrap_array_of_vsan_perf_metric_id(value: Vec<super::structs::VsanPerfMetricId>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfMetricId(value)
}
fn wrap_array_of_vsan_perf_metric_series_csv(value: Vec<super::structs::VsanPerfMetricSeriesCsv>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfMetricSeriesCsv(value)
}
fn wrap_array_of_vsan_perf_node_information(value: Vec<super::structs::VsanPerfNodeInformation>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfNodeInformation(value)
}
fn wrap_array_of_vsan_perf_query_spec(value: Vec<super::structs::VsanPerfQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfQuerySpec(value)
}
fn wrap_array_of_vsan_perf_threshold(value: Vec<super::structs::VsanPerfThreshold>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfThreshold(value)
}
fn wrap_array_of_vsan_perf_time_range(value: Vec<super::structs::VsanPerfTimeRange>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfTimeRange(value)
}
fn wrap_array_of_vsan_perf_time_range_query_spec(value: Vec<super::structs::VsanPerfTimeRangeQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfTimeRangeQuerySpec(value)
}
fn wrap_array_of_vsan_perf_top_entities(value: Vec<super::structs::VsanPerfTopEntities>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfTopEntities(value)
}
fn wrap_array_of_vsan_perf_top_entity(value: Vec<super::structs::VsanPerfTopEntity>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfTopEntity(value)
}
fn wrap_array_of_vsan_perf_top_query_spec(value: Vec<super::structs::VsanPerfTopQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfTopQuerySpec(value)
}
fn wrap_array_of_vsan_perfsvc_config(value: Vec<super::structs::VsanPerfsvcConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfsvcConfig(value)
}
fn wrap_array_of_vsan_remote_cluster_query_spec(value: Vec<super::structs::VsanRemoteClusterQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanRemoteClusterQuerySpec(value)
}
fn wrap_array_of_vsan_space_query_spec(value: Vec<super::structs::VsanSpaceQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanSpaceQuerySpec(value)
}
fn wrap_array_of_vsan_space_usage(value: Vec<super::structs::VsanSpaceUsage>) -> ValueElements {
    ValueElements::ArrayOfVsanSpaceUsage(value)
}
fn wrap_array_of_vsan_space_usage_detail_result(value: Vec<super::structs::VsanSpaceUsageDetailResult>) -> ValueElements {
    ValueElements::ArrayOfVsanSpaceUsageDetailResult(value)
}
fn wrap_array_of_vsan_space_usage_with_datastore_type(value: Vec<super::structs::VsanSpaceUsageWithDatastoreType>) -> ValueElements {
    ValueElements::ArrayOfVsanSpaceUsageWithDatastoreType(value)
}
fn wrap_array_of_vsan_storage_workload_type(value: Vec<super::structs::VsanStorageWorkloadType>) -> ValueElements {
    ValueElements::ArrayOfVsanStorageWorkloadType(value)
}
fn wrap_array_of_vsan_stretched_cluster_config(value: Vec<super::structs::VsanStretchedClusterConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanStretchedClusterConfig(value)
}
fn wrap_array_of_vsan_syncing_object_filter(value: Vec<super::structs::VsanSyncingObjectFilter>) -> ValueElements {
    ValueElements::ArrayOfVsanSyncingObjectFilter(value)
}
fn wrap_array_of_vsan_unicast_address_info(value: Vec<super::structs::VsanUnicastAddressInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanUnicastAddressInfo(value)
}
fn wrap_array_of_vsan_upgrade_status_ex(value: Vec<super::structs::VsanUpgradeStatusEx>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeStatusEx(value)
}
fn wrap_array_of_vsan_upgrade_system_upgrade_history_storage_pool_op(value: Vec<super::structs::VsanUpgradeSystemUpgradeHistoryStoragePoolOp>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemUpgradeHistoryStoragePoolOp(value)
}
fn wrap_array_of_vsan_vc_kmip_servers_health(value: Vec<super::structs::VsanVcKmipServersHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanVcKmipServersHealth(value)
}
fn wrap_array_of_vsan_vc_lifecycle_check_result(value: Vec<super::structs::VsanVcLifecycleCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanVcLifecycleCheckResult(value)
}
fn wrap_array_of_vsan_vc_lifecycle_check_spec(value: Vec<super::structs::VsanVcLifecycleCheckSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanVcLifecycleCheckSpec(value)
}
fn wrap_array_of_vsan_vsan_cluster_pcap_group(value: Vec<super::structs::VsanVsanClusterPcapGroup>) -> ValueElements {
    ValueElements::ArrayOfVsanVsanClusterPcapGroup(value)
}
fn wrap_array_of_vsan_vsan_cluster_pcap_result(value: Vec<super::structs::VsanVsanClusterPcapResult>) -> ValueElements {
    ValueElements::ArrayOfVsanVsanClusterPcapResult(value)
}
fn wrap_array_of_vsan_vum_system_config(value: Vec<super::structs::VsanVumSystemConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanVumSystemConfig(value)
}
fn wrap_array_of_vsan_whatif_capacity(value: Vec<super::structs::VsanWhatifCapacity>) -> ValueElements {
    ValueElements::ArrayOfVsanWhatifCapacity(value)
}
fn wrap_array_of_vim_cluster_vsan_witness_spec(value: Vec<super::structs::VimClusterVsanWitnessSpec>) -> ValueElements {
    ValueElements::ArrayOfVimClusterVsanWitnessSpec(value)
}
fn wrap_array_of_cns_async_query_result(value: Vec<super::structs::CnsAsyncQueryResult>) -> ValueElements {
    ValueElements::ArrayOfCnsAsyncQueryResult(value)
}
fn wrap_array_of_cns_block_backing_details(value: Vec<super::structs::CnsBlockBackingDetails>) -> ValueElements {
    ValueElements::ArrayOfCnsBlockBackingDetails(value)
}
fn wrap_array_of_cns_block_volume_relocate_spec(value: Vec<super::structs::CnsBlockVolumeRelocateSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsBlockVolumeRelocateSpec(value)
}
fn wrap_array_of_cns_container_cluster(value: Vec<super::structs::CnsContainerCluster>) -> ValueElements {
    ValueElements::ArrayOfCnsContainerCluster(value)
}
fn wrap_array_of_cns_cursor(value: Vec<super::structs::CnsCursor>) -> ValueElements {
    ValueElements::ArrayOfCnsCursor(value)
}
fn wrap_array_of_cns_kubernetes_entity_metadata(value: Vec<super::structs::CnsKubernetesEntityMetadata>) -> ValueElements {
    ValueElements::ArrayOfCnsKubernetesEntityMetadata(value)
}
fn wrap_array_of_cns_kubernetes_entity_reference(value: Vec<super::structs::CnsKubernetesEntityReference>) -> ValueElements {
    ValueElements::ArrayOfCnsKubernetesEntityReference(value)
}
fn wrap_array_of_cns_kubernetes_query_filter(value: Vec<super::structs::CnsKubernetesQueryFilter>) -> ValueElements {
    ValueElements::ArrayOfCnsKubernetesQueryFilter(value)
}
fn wrap_array_of_cns_nfs_access_control_spec(value: Vec<super::structs::CnsNfsAccessControlSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsNfsAccessControlSpec(value)
}
fn wrap_array_of_cns_placement_result(value: Vec<super::structs::CnsPlacementResult>) -> ValueElements {
    ValueElements::ArrayOfCnsPlacementResult(value)
}
fn wrap_array_of_cns_query_result(value: Vec<super::structs::CnsQueryResult>) -> ValueElements {
    ValueElements::ArrayOfCnsQueryResult(value)
}
fn wrap_array_of_cns_query_selection(value: Vec<super::structs::CnsQuerySelection>) -> ValueElements {
    ValueElements::ArrayOfCnsQuerySelection(value)
}
fn wrap_array_of_cns_snapshot_create_spec(value: Vec<super::structs::CnsSnapshotCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsSnapshotCreateSpec(value)
}
fn wrap_array_of_cns_snapshot_delete_spec(value: Vec<super::structs::CnsSnapshotDeleteSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsSnapshotDeleteSpec(value)
}
fn wrap_array_of_cns_snapshot_id(value: Vec<super::structs::CnsSnapshotId>) -> ValueElements {
    ValueElements::ArrayOfCnsSnapshotId(value)
}
fn wrap_array_of_cns_snapshot_volume_source(value: Vec<super::structs::CnsSnapshotVolumeSource>) -> ValueElements {
    ValueElements::ArrayOfCnsSnapshotVolumeSource(value)
}
fn wrap_array_of_cns_vsan_file_create_spec(value: Vec<super::structs::CnsVsanFileCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsVsanFileCreateSpec(value)
}
fn wrap_array_of_cns_volume(value: Vec<super::structs::CnsVolume>) -> ValueElements {
    ValueElements::ArrayOfCnsVolume(value)
}
fn wrap_array_of_cns_volume_acl_configure_spec(value: Vec<super::structs::CnsVolumeAclConfigureSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeAclConfigureSpec(value)
}
fn wrap_array_of_cns_volume_attach_detach_spec(value: Vec<super::structs::CnsVolumeAttachDetachSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeAttachDetachSpec(value)
}
fn wrap_array_of_cns_volume_attach_result(value: Vec<super::structs::CnsVolumeAttachResult>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeAttachResult(value)
}
fn wrap_array_of_cns_volume_create_result(value: Vec<super::structs::CnsVolumeCreateResult>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeCreateResult(value)
}
fn wrap_array_of_cns_volume_create_spec(value: Vec<super::structs::CnsVolumeCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeCreateSpec(value)
}
fn wrap_array_of_cns_volume_extend_spec(value: Vec<super::structs::CnsVolumeExtendSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeExtendSpec(value)
}
fn wrap_array_of_cns_volume_id(value: Vec<super::structs::CnsVolumeId>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeId(value)
}
fn wrap_array_of_cns_volume_metadata(value: Vec<super::structs::CnsVolumeMetadata>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeMetadata(value)
}
fn wrap_array_of_cns_volume_metadata_update_spec(value: Vec<super::structs::CnsVolumeMetadataUpdateSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeMetadataUpdateSpec(value)
}
fn wrap_array_of_cns_volume_operation_batch_result(value: Vec<super::structs::CnsVolumeOperationBatchResult>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeOperationBatchResult(value)
}
fn wrap_array_of_cns_volume_policy_reconfig_spec(value: Vec<super::structs::CnsVolumePolicyReconfigSpec>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumePolicyReconfigSpec(value)
}
fn wrap_array_of_cns_vsan_file_share_backing_details(value: Vec<super::structs::CnsVsanFileShareBackingDetails>) -> ValueElements {
    ValueElements::ArrayOfCnsVsanFileShareBackingDetails(value)
}
fn wrap_array_of_distributed_virtual_port(value: Vec<super::structs::DistributedVirtualPort>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualPort(value)
}
fn wrap_array_of_dv_port_config_info(value: Vec<super::structs::DvPortConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfDvPortConfigInfo(value)
}
fn wrap_array_of_dv_port_config_spec(value: Vec<super::structs::DvPortConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfDvPortConfigSpec(value)
}
fn wrap_array_of_dvs_filter_config_spec(value: Vec<super::structs::DvsFilterConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsFilterConfigSpec(value)
}
fn wrap_array_of_dvs_filter_parameter(value: Vec<super::structs::DvsFilterParameter>) -> ValueElements {
    ValueElements::ArrayOfDvsFilterParameter(value)
}
fn wrap_array_of_dvs_filter_policy(value: Vec<super::structs::DvsFilterPolicy>) -> ValueElements {
    ValueElements::ArrayOfDvsFilterPolicy(value)
}
fn wrap_array_of_dvs_host_local_port_info(value: Vec<super::structs::DvsHostLocalPortInfo>) -> ValueElements {
    ValueElements::ArrayOfDvsHostLocalPortInfo(value)
}
fn wrap_array_of_dv_port_status(value: Vec<super::structs::DvPortStatus>) -> ValueElements {
    ValueElements::ArrayOfDvPortStatus(value)
}
fn wrap_array_of_dv_port_state(value: Vec<super::structs::DvPortState>) -> ValueElements {
    ValueElements::ArrayOfDvPortState(value)
}
fn wrap_array_of_dvs_traffic_filter_config_spec(value: Vec<super::structs::DvsTrafficFilterConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsTrafficFilterConfigSpec(value)
}
fn wrap_array_of_dvs_traffic_shaping_policy(value: Vec<super::structs::DvsTrafficShapingPolicy>) -> ValueElements {
    ValueElements::ArrayOfDvsTrafficShapingPolicy(value)
}
fn wrap_array_of_dvs_vendor_specific_config(value: Vec<super::structs::DvsVendorSpecificConfig>) -> ValueElements {
    ValueElements::ArrayOfDvsVendorSpecificConfig(value)
}
fn wrap_array_of_dv_portgroup_config_info(value: Vec<super::structs::DvPortgroupConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfDvPortgroupConfigInfo(value)
}
fn wrap_array_of_dv_portgroup_config_spec(value: Vec<super::structs::DvPortgroupConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfDvPortgroupConfigSpec(value)
}
fn wrap_array_of_distributed_virtual_portgroup_nsx_portgroup_operation_result(value: Vec<super::structs::DistributedVirtualPortgroupNsxPortgroupOperationResult>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualPortgroupNsxPortgroupOperationResult(value)
}
fn wrap_array_of_distributed_virtual_portgroup_problem(value: Vec<super::structs::DistributedVirtualPortgroupProblem>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualPortgroupProblem(value)
}
fn wrap_array_of_distributed_virtual_portgroup_info(value: Vec<super::structs::DistributedVirtualPortgroupInfo>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualPortgroupInfo(value)
}
fn wrap_array_of_dv_portgroup_selection(value: Vec<super::structs::DvPortgroupSelection>) -> ValueElements {
    ValueElements::ArrayOfDvPortgroupSelection(value)
}
fn wrap_array_of_distributed_virtual_switch_info(value: Vec<super::structs::DistributedVirtualSwitchInfo>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchInfo(value)
}
fn wrap_array_of_distributed_virtual_switch_manager_compatibility_result(value: Vec<super::structs::DistributedVirtualSwitchManagerCompatibilityResult>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchManagerCompatibilityResult(value)
}
fn wrap_array_of_dvs_manager_dvs_config_target(value: Vec<super::structs::DvsManagerDvsConfigTarget>) -> ValueElements {
    ValueElements::ArrayOfDvsManagerDvsConfigTarget(value)
}
fn wrap_array_of_distributed_virtual_switch_manager_dvs_product_spec(value: Vec<super::structs::DistributedVirtualSwitchManagerDvsProductSpec>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchManagerDvsProductSpec(value)
}
fn wrap_array_of_distributed_virtual_switch_manager_host_array_filter(value: Vec<super::structs::DistributedVirtualSwitchManagerHostArrayFilter>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchManagerHostArrayFilter(value)
}
fn wrap_array_of_distributed_virtual_switch_manager_host_container(value: Vec<super::structs::DistributedVirtualSwitchManagerHostContainer>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchManagerHostContainer(value)
}
fn wrap_array_of_distributed_virtual_switch_manager_host_container_filter(value: Vec<super::structs::DistributedVirtualSwitchManagerHostContainerFilter>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchManagerHostContainerFilter(value)
}
fn wrap_array_of_distributed_virtual_switch_manager_host_dvs_membership_filter(value: Vec<super::structs::DistributedVirtualSwitchManagerHostDvsMembershipFilter>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchManagerHostDvsMembershipFilter(value)
}
fn wrap_array_of_distributed_virtual_switch_manager_import_result(value: Vec<super::structs::DistributedVirtualSwitchManagerImportResult>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchManagerImportResult(value)
}
fn wrap_array_of_dvs_manager_physical_nics_list(value: Vec<super::structs::DvsManagerPhysicalNicsList>) -> ValueElements {
    ValueElements::ArrayOfDvsManagerPhysicalNicsList(value)
}
fn wrap_array_of_dvs_selection(value: Vec<super::structs::DvsSelection>) -> ValueElements {
    ValueElements::ArrayOfDvsSelection(value)
}
fn wrap_array_of_entity_backup(value: Vec<super::structs::EntityBackup>) -> ValueElements {
    ValueElements::ArrayOfEntityBackup(value)
}
fn wrap_array_of_entity_backup_config(value: Vec<super::structs::EntityBackupConfig>) -> ValueElements {
    ValueElements::ArrayOfEntityBackupConfig(value)
}
fn wrap_array_of_dvs_filter_spec_pnic_connectee_spec(value: Vec<super::structs::DvsFilterSpecPnicConnecteeSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsFilterSpecPnicConnecteeSpec(value)
}
fn wrap_array_of_dvs_filter_spec_pvlan_spec(value: Vec<super::structs::DvsFilterSpecPvlanSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsFilterSpecPvlanSpec(value)
}
fn wrap_array_of_dvs_filter_spec_trunk_vlan_spec(value: Vec<super::structs::DvsFilterSpecTrunkVlanSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsFilterSpecTrunkVlanSpec(value)
}
fn wrap_array_of_dvs_filter_spec_vlan_id_spec(value: Vec<super::structs::DvsFilterSpecVlanIdSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsFilterSpecVlanIdSpec(value)
}
fn wrap_array_of_dvs_filter_spec_vm_connectee_spec(value: Vec<super::structs::DvsFilterSpecVmConnecteeSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsFilterSpecVmConnecteeSpec(value)
}
fn wrap_array_of_dvs_filter_spec_vmknic_connectee_spec(value: Vec<super::structs::DvsFilterSpecVmknicConnecteeSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsFilterSpecVmknicConnecteeSpec(value)
}
fn wrap_array_of_distributed_virtual_switch_host_member(value: Vec<super::structs::DistributedVirtualSwitchHostMember>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchHostMember(value)
}
fn wrap_array_of_distributed_virtual_switch_host_member_config_info(value: Vec<super::structs::DistributedVirtualSwitchHostMemberConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchHostMemberConfigInfo(value)
}
fn wrap_array_of_distributed_virtual_switch_host_member_config_spec(value: Vec<super::structs::DistributedVirtualSwitchHostMemberConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchHostMemberConfigSpec(value)
}
fn wrap_array_of_distributed_virtual_switch_host_member_host_uplink_state(value: Vec<super::structs::DistributedVirtualSwitchHostMemberHostUplinkState>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchHostMemberHostUplinkState(value)
}
fn wrap_array_of_distributed_virtual_switch_host_member_pnic_backing(value: Vec<super::structs::DistributedVirtualSwitchHostMemberPnicBacking>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchHostMemberPnicBacking(value)
}
fn wrap_array_of_distributed_virtual_switch_host_member_pnic_spec(value: Vec<super::structs::DistributedVirtualSwitchHostMemberPnicSpec>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchHostMemberPnicSpec(value)
}
fn wrap_array_of_host_member_runtime_info(value: Vec<super::structs::HostMemberRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfHostMemberRuntimeInfo(value)
}
fn wrap_array_of_distributed_virtual_switch_host_member_runtime_state(value: Vec<super::structs::DistributedVirtualSwitchHostMemberRuntimeState>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchHostMemberRuntimeState(value)
}
fn wrap_array_of_distributed_virtual_switch_host_member_transport_zone_info(value: Vec<super::structs::DistributedVirtualSwitchHostMemberTransportZoneInfo>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchHostMemberTransportZoneInfo(value)
}
fn wrap_array_of_distributed_virtual_switch_host_product_spec(value: Vec<super::structs::DistributedVirtualSwitchHostProductSpec>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchHostProductSpec(value)
}
fn wrap_array_of_distributed_virtual_switch_keyed_opaque_blob(value: Vec<super::structs::DistributedVirtualSwitchKeyedOpaqueBlob>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchKeyedOpaqueBlob(value)
}
fn wrap_array_of_distributed_virtual_switch_network_offload_spec(value: Vec<super::structs::DistributedVirtualSwitchNetworkOffloadSpec>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchNetworkOffloadSpec(value)
}
fn wrap_array_of_dvs_network_resource_pool(value: Vec<super::structs::DvsNetworkResourcePool>) -> ValueElements {
    ValueElements::ArrayOfDvsNetworkResourcePool(value)
}
fn wrap_array_of_dvs_network_resource_pool_allocation_info(value: Vec<super::structs::DvsNetworkResourcePoolAllocationInfo>) -> ValueElements {
    ValueElements::ArrayOfDvsNetworkResourcePoolAllocationInfo(value)
}
fn wrap_array_of_dvs_network_resource_pool_config_spec(value: Vec<super::structs::DvsNetworkResourcePoolConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsNetworkResourcePoolConfigSpec(value)
}
fn wrap_array_of_distributed_virtual_switch_port_connectee(value: Vec<super::structs::DistributedVirtualSwitchPortConnectee>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchPortConnectee(value)
}
fn wrap_array_of_distributed_virtual_switch_port_connection(value: Vec<super::structs::DistributedVirtualSwitchPortConnection>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchPortConnection(value)
}
fn wrap_array_of_distributed_virtual_switch_port_criteria(value: Vec<super::structs::DistributedVirtualSwitchPortCriteria>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchPortCriteria(value)
}
fn wrap_array_of_distributed_virtual_switch_port_statistics(value: Vec<super::structs::DistributedVirtualSwitchPortStatistics>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchPortStatistics(value)
}
fn wrap_array_of_distributed_virtual_switch_product_spec(value: Vec<super::structs::DistributedVirtualSwitchProductSpec>) -> ValueElements {
    ValueElements::ArrayOfDistributedVirtualSwitchProductSpec(value)
}
fn wrap_array_of_dvs_traffic_rule(value: Vec<super::structs::DvsTrafficRule>) -> ValueElements {
    ValueElements::ArrayOfDvsTrafficRule(value)
}
fn wrap_array_of_dvs_accept_network_rule_action(value: Vec<super::structs::DvsAcceptNetworkRuleAction>) -> ValueElements {
    ValueElements::ArrayOfDvsAcceptNetworkRuleAction(value)
}
fn wrap_array_of_dvs_copy_network_rule_action(value: Vec<super::structs::DvsCopyNetworkRuleAction>) -> ValueElements {
    ValueElements::ArrayOfDvsCopyNetworkRuleAction(value)
}
fn wrap_array_of_dvs_drop_network_rule_action(value: Vec<super::structs::DvsDropNetworkRuleAction>) -> ValueElements {
    ValueElements::ArrayOfDvsDropNetworkRuleAction(value)
}
fn wrap_array_of_dvs_gre_encap_network_rule_action(value: Vec<super::structs::DvsGreEncapNetworkRuleAction>) -> ValueElements {
    ValueElements::ArrayOfDvsGreEncapNetworkRuleAction(value)
}
fn wrap_array_of_dvs_ip_port_range(value: Vec<super::structs::DvsIpPortRange>) -> ValueElements {
    ValueElements::ArrayOfDvsIpPortRange(value)
}
fn wrap_array_of_dvs_ip_network_rule_qualifier(value: Vec<super::structs::DvsIpNetworkRuleQualifier>) -> ValueElements {
    ValueElements::ArrayOfDvsIpNetworkRuleQualifier(value)
}
fn wrap_array_of_dvs_log_network_rule_action(value: Vec<super::structs::DvsLogNetworkRuleAction>) -> ValueElements {
    ValueElements::ArrayOfDvsLogNetworkRuleAction(value)
}
fn wrap_array_of_dvs_mac_network_rule_qualifier(value: Vec<super::structs::DvsMacNetworkRuleQualifier>) -> ValueElements {
    ValueElements::ArrayOfDvsMacNetworkRuleQualifier(value)
}
fn wrap_array_of_dvs_mac_rewrite_network_rule_action(value: Vec<super::structs::DvsMacRewriteNetworkRuleAction>) -> ValueElements {
    ValueElements::ArrayOfDvsMacRewriteNetworkRuleAction(value)
}
fn wrap_array_of_dvs_punt_network_rule_action(value: Vec<super::structs::DvsPuntNetworkRuleAction>) -> ValueElements {
    ValueElements::ArrayOfDvsPuntNetworkRuleAction(value)
}
fn wrap_array_of_dvs_rate_limit_network_rule_action(value: Vec<super::structs::DvsRateLimitNetworkRuleAction>) -> ValueElements {
    ValueElements::ArrayOfDvsRateLimitNetworkRuleAction(value)
}
fn wrap_array_of_dvs_single_ip_port(value: Vec<super::structs::DvsSingleIpPort>) -> ValueElements {
    ValueElements::ArrayOfDvsSingleIpPort(value)
}
fn wrap_array_of_dvs_system_traffic_network_rule_qualifier(value: Vec<super::structs::DvsSystemTrafficNetworkRuleQualifier>) -> ValueElements {
    ValueElements::ArrayOfDvsSystemTrafficNetworkRuleQualifier(value)
}
fn wrap_array_of_dvs_update_tag_network_rule_action(value: Vec<super::structs::DvsUpdateTagNetworkRuleAction>) -> ValueElements {
    ValueElements::ArrayOfDvsUpdateTagNetworkRuleAction(value)
}
fn wrap_array_of_dvs_traffic_ruleset(value: Vec<super::structs::DvsTrafficRuleset>) -> ValueElements {
    ValueElements::ArrayOfDvsTrafficRuleset(value)
}
fn wrap_array_of_dvs_vm_vnic_network_resource_pool(value: Vec<super::structs::DvsVmVnicNetworkResourcePool>) -> ValueElements {
    ValueElements::ArrayOfDvsVmVnicNetworkResourcePool(value)
}
fn wrap_array_of_dvs_vm_vnic_resource_pool_config_spec(value: Vec<super::structs::DvsVmVnicResourcePoolConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfDvsVmVnicResourcePoolConfigSpec(value)
}
fn wrap_array_of_dvs_vm_vnic_resource_allocation(value: Vec<super::structs::DvsVmVnicResourceAllocation>) -> ValueElements {
    ValueElements::ArrayOfDvsVmVnicResourceAllocation(value)
}
fn wrap_array_of_dvs_vm_vnic_network_resource_pool_runtime_info(value: Vec<super::structs::DvsVmVnicNetworkResourcePoolRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfDvsVmVnicNetworkResourcePoolRuntimeInfo(value)
}
fn wrap_array_of_dvs_vnic_allocated_resource(value: Vec<super::structs::DvsVnicAllocatedResource>) -> ValueElements {
    ValueElements::ArrayOfDvsVnicAllocatedResource(value)
}
fn wrap_array_of_v_mware_dvs_config_info(value: Vec<super::structs::VMwareDvsConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsConfigInfo(value)
}
fn wrap_array_of_v_mware_dvs_config_spec(value: Vec<super::structs::VMwareDvsConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsConfigSpec(value)
}
fn wrap_array_of_vmware_distributed_virtual_switch_dpu_failover_policy(value: Vec<super::structs::VmwareDistributedVirtualSwitchDpuFailoverPolicy>) -> ValueElements {
    ValueElements::ArrayOfVmwareDistributedVirtualSwitchDpuFailoverPolicy(value)
}
fn wrap_array_of_v_mware_dvs_dpu_capability(value: Vec<super::structs::VMwareDvsDpuCapability>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsDpuCapability(value)
}
fn wrap_array_of_dvs_failure_criteria(value: Vec<super::structs::DvsFailureCriteria>) -> ValueElements {
    ValueElements::ArrayOfDvsFailureCriteria(value)
}
fn wrap_array_of_v_mware_dvs_feature_capability(value: Vec<super::structs::VMwareDvsFeatureCapability>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsFeatureCapability(value)
}
fn wrap_array_of_v_mware_ipfix_config(value: Vec<super::structs::VMwareIpfixConfig>) -> ValueElements {
    ValueElements::ArrayOfVMwareIpfixConfig(value)
}
fn wrap_array_of_v_mware_dvs_ipfix_capability(value: Vec<super::structs::VMwareDvsIpfixCapability>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsIpfixCapability(value)
}
fn wrap_array_of_v_mware_dvs_lacp_capability(value: Vec<super::structs::VMwareDvsLacpCapability>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsLacpCapability(value)
}
fn wrap_array_of_v_mware_dvs_lacp_group_config(value: Vec<super::structs::VMwareDvsLacpGroupConfig>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsLacpGroupConfig(value)
}
fn wrap_array_of_v_mware_dvs_lacp_group_spec(value: Vec<super::structs::VMwareDvsLacpGroupSpec>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsLacpGroupSpec(value)
}
fn wrap_array_of_v_mware_dvs_lag_ipfix_config(value: Vec<super::structs::VMwareDvsLagIpfixConfig>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsLagIpfixConfig(value)
}
fn wrap_array_of_v_mware_dvs_lag_vlan_config(value: Vec<super::structs::VMwareDvsLagVlanConfig>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsLagVlanConfig(value)
}
fn wrap_array_of_dvs_mac_learning_policy(value: Vec<super::structs::DvsMacLearningPolicy>) -> ValueElements {
    ValueElements::ArrayOfDvsMacLearningPolicy(value)
}
fn wrap_array_of_dvs_mac_management_policy(value: Vec<super::structs::DvsMacManagementPolicy>) -> ValueElements {
    ValueElements::ArrayOfDvsMacManagementPolicy(value)
}
fn wrap_array_of_v_mware_dvs_mtu_capability(value: Vec<super::structs::VMwareDvsMtuCapability>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsMtuCapability(value)
}
fn wrap_array_of_v_mware_dvs_mtu_health_check_result(value: Vec<super::structs::VMwareDvsMtuHealthCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsMtuHealthCheckResult(value)
}
fn wrap_array_of_vmware_distributed_virtual_switch_network_offload_config(value: Vec<super::structs::VmwareDistributedVirtualSwitchNetworkOffloadConfig>) -> ValueElements {
    ValueElements::ArrayOfVmwareDistributedVirtualSwitchNetworkOffloadConfig(value)
}
fn wrap_array_of_v_mware_dvs_pvlan_config_spec(value: Vec<super::structs::VMwareDvsPvlanConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsPvlanConfigSpec(value)
}
fn wrap_array_of_v_mware_dvs_pvlan_map_entry(value: Vec<super::structs::VMwareDvsPvlanMapEntry>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsPvlanMapEntry(value)
}
fn wrap_array_of_vmware_distributed_virtual_switch_pvlan_spec(value: Vec<super::structs::VmwareDistributedVirtualSwitchPvlanSpec>) -> ValueElements {
    ValueElements::ArrayOfVmwareDistributedVirtualSwitchPvlanSpec(value)
}
fn wrap_array_of_vmware_distributed_virtual_switch_real_time_config(value: Vec<super::structs::VmwareDistributedVirtualSwitchRealTimeConfig>) -> ValueElements {
    ValueElements::ArrayOfVmwareDistributedVirtualSwitchRealTimeConfig(value)
}
fn wrap_array_of_vmware_distributed_virtual_switch_real_time_lan_annotation(value: Vec<super::structs::VmwareDistributedVirtualSwitchRealTimeLanAnnotation>) -> ValueElements {
    ValueElements::ArrayOfVmwareDistributedVirtualSwitchRealTimeLanAnnotation(value)
}
fn wrap_array_of_dvs_security_policy(value: Vec<super::structs::DvsSecurityPolicy>) -> ValueElements {
    ValueElements::ArrayOfDvsSecurityPolicy(value)
}
fn wrap_array_of_v_mware_dvs_teaming_health_check_config(value: Vec<super::structs::VMwareDvsTeamingHealthCheckConfig>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsTeamingHealthCheckConfig(value)
}
fn wrap_array_of_v_mware_dvs_teaming_health_check_result(value: Vec<super::structs::VMwareDvsTeamingHealthCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsTeamingHealthCheckResult(value)
}
fn wrap_array_of_vmware_distributed_virtual_switch_trunk_vlan_spec(value: Vec<super::structs::VmwareDistributedVirtualSwitchTrunkVlanSpec>) -> ValueElements {
    ValueElements::ArrayOfVmwareDistributedVirtualSwitchTrunkVlanSpec(value)
}
fn wrap_array_of_v_mware_uplink_lacp_policy(value: Vec<super::structs::VMwareUplinkLacpPolicy>) -> ValueElements {
    ValueElements::ArrayOfVMwareUplinkLacpPolicy(value)
}
fn wrap_array_of_v_mware_uplink_port_order_policy(value: Vec<super::structs::VMwareUplinkPortOrderPolicy>) -> ValueElements {
    ValueElements::ArrayOfVMwareUplinkPortOrderPolicy(value)
}
fn wrap_array_of_vmware_uplink_port_teaming_policy(value: Vec<super::structs::VmwareUplinkPortTeamingPolicy>) -> ValueElements {
    ValueElements::ArrayOfVmwareUplinkPortTeamingPolicy(value)
}
fn wrap_array_of_v_mware_dvs_portgroup_policy(value: Vec<super::structs::VMwareDvsPortgroupPolicy>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsPortgroupPolicy(value)
}
fn wrap_array_of_v_mware_dvs_vlan_health_check_result(value: Vec<super::structs::VMwareDvsVlanHealthCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsVlanHealthCheckResult(value)
}
fn wrap_array_of_vmware_distributed_virtual_switch_vlan_id_spec(value: Vec<super::structs::VmwareDistributedVirtualSwitchVlanIdSpec>) -> ValueElements {
    ValueElements::ArrayOfVmwareDistributedVirtualSwitchVlanIdSpec(value)
}
fn wrap_array_of_v_mware_dvs_vlan_mtu_health_check_config(value: Vec<super::structs::VMwareDvsVlanMtuHealthCheckConfig>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsVlanMtuHealthCheckConfig(value)
}
fn wrap_array_of_v_mware_dvs_health_check_capability(value: Vec<super::structs::VMwareDvsHealthCheckCapability>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsHealthCheckCapability(value)
}
fn wrap_array_of_v_mware_dvs_port_setting(value: Vec<super::structs::VMwareDvsPortSetting>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsPortSetting(value)
}
fn wrap_array_of_v_mware_dvs_vspan_config_spec(value: Vec<super::structs::VMwareDvsVspanConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsVspanConfigSpec(value)
}
fn wrap_array_of_v_mware_dvs_vspan_capability(value: Vec<super::structs::VMwareDvsVspanCapability>) -> ValueElements {
    ValueElements::ArrayOfVMwareDvsVspanCapability(value)
}
fn wrap_array_of_v_mware_vspan_port(value: Vec<super::structs::VMwareVspanPort>) -> ValueElements {
    ValueElements::ArrayOfVMwareVspanPort(value)
}
fn wrap_array_of_v_mware_vspan_session(value: Vec<super::structs::VMwareVspanSession>) -> ValueElements {
    ValueElements::ArrayOfVMwareVspanSession(value)
}
fn wrap_array_of_crypto_key_id(value: Vec<super::structs::CryptoKeyId>) -> ValueElements {
    ValueElements::ArrayOfCryptoKeyId(value)
}
fn wrap_array_of_crypto_key_plain(value: Vec<super::structs::CryptoKeyPlain>) -> ValueElements {
    ValueElements::ArrayOfCryptoKeyPlain(value)
}
fn wrap_array_of_crypto_key_result(value: Vec<super::structs::CryptoKeyResult>) -> ValueElements {
    ValueElements::ArrayOfCryptoKeyResult(value)
}
fn wrap_array_of_crypto_manager_host_key_status(value: Vec<super::structs::CryptoManagerHostKeyStatus>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerHostKeyStatus(value)
}
fn wrap_array_of_crypto_manager_kmip_cert_sign_request(value: Vec<super::structs::CryptoManagerKmipCertSignRequest>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerKmipCertSignRequest(value)
}
fn wrap_array_of_crypto_manager_kmip_certificate_info(value: Vec<super::structs::CryptoManagerKmipCertificateInfo>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerKmipCertificateInfo(value)
}
fn wrap_array_of_crypto_manager_kmip_cluster_status(value: Vec<super::structs::CryptoManagerKmipClusterStatus>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerKmipClusterStatus(value)
}
fn wrap_array_of_crypto_manager_kmip_crypto_key_status(value: Vec<super::structs::CryptoManagerKmipCryptoKeyStatus>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerKmipCryptoKeyStatus(value)
}
fn wrap_array_of_crypto_manager_kmip_crypto_key_status_wrapping_key_id_key_info(value: Vec<super::structs::CryptoManagerKmipCryptoKeyStatusWrappingKeyIdKeyInfo>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerKmipCryptoKeyStatusWrappingKeyIdKeyInfo(value)
}
fn wrap_array_of_crypto_manager_kmip_crypto_key_status_wrapping_rotation_interval_key_info(value: Vec<super::structs::CryptoManagerKmipCryptoKeyStatusWrappingRotationIntervalKeyInfo>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerKmipCryptoKeyStatusWrappingRotationIntervalKeyInfo(value)
}
fn wrap_array_of_crypto_manager_kmip_custom_attribute_spec(value: Vec<super::structs::CryptoManagerKmipCustomAttributeSpec>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerKmipCustomAttributeSpec(value)
}
fn wrap_array_of_crypto_manager_kmip_generate_key_spec(value: Vec<super::structs::CryptoManagerKmipGenerateKeySpec>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerKmipGenerateKeySpec(value)
}
fn wrap_array_of_crypto_manager_kmip_server_cert_info(value: Vec<super::structs::CryptoManagerKmipServerCertInfo>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerKmipServerCertInfo(value)
}
fn wrap_array_of_crypto_manager_kmip_server_status(value: Vec<super::structs::CryptoManagerKmipServerStatus>) -> ValueElements {
    ValueElements::ArrayOfCryptoManagerKmipServerStatus(value)
}
fn wrap_array_of_crypto_spec_decrypt(value: Vec<super::structs::CryptoSpecDecrypt>) -> ValueElements {
    ValueElements::ArrayOfCryptoSpecDecrypt(value)
}
fn wrap_array_of_crypto_spec_deep_recrypt(value: Vec<super::structs::CryptoSpecDeepRecrypt>) -> ValueElements {
    ValueElements::ArrayOfCryptoSpecDeepRecrypt(value)
}
fn wrap_array_of_crypto_spec_encrypt(value: Vec<super::structs::CryptoSpecEncrypt>) -> ValueElements {
    ValueElements::ArrayOfCryptoSpecEncrypt(value)
}
fn wrap_array_of_crypto_spec_register(value: Vec<super::structs::CryptoSpecRegister>) -> ValueElements {
    ValueElements::ArrayOfCryptoSpecRegister(value)
}
fn wrap_array_of_crypto_spec_shallow_recrypt(value: Vec<super::structs::CryptoSpecShallowRecrypt>) -> ValueElements {
    ValueElements::ArrayOfCryptoSpecShallowRecrypt(value)
}
fn wrap_array_of_key_provider_id(value: Vec<super::structs::KeyProviderId>) -> ValueElements {
    ValueElements::ArrayOfKeyProviderId(value)
}
fn wrap_array_of_kmip_cluster_info(value: Vec<super::structs::KmipClusterInfo>) -> ValueElements {
    ValueElements::ArrayOfKmipClusterInfo(value)
}
fn wrap_array_of_kmip_cluster_info_wrapping_key_id_key_info(value: Vec<super::structs::KmipClusterInfoWrappingKeyIdKeyInfo>) -> ValueElements {
    ValueElements::ArrayOfKmipClusterInfoWrappingKeyIdKeyInfo(value)
}
fn wrap_array_of_kmip_cluster_info_wrapping_rotation_interval_key_info(value: Vec<super::structs::KmipClusterInfoWrappingRotationIntervalKeyInfo>) -> ValueElements {
    ValueElements::ArrayOfKmipClusterInfoWrappingRotationIntervalKeyInfo(value)
}
fn wrap_array_of_kmip_server_info(value: Vec<super::structs::KmipServerInfo>) -> ValueElements {
    ValueElements::ArrayOfKmipServerInfo(value)
}
fn wrap_array_of_kmip_server_spec(value: Vec<super::structs::KmipServerSpec>) -> ValueElements {
    ValueElements::ArrayOfKmipServerSpec(value)
}
fn wrap_array_of_kmip_server_spec_wrapping_key_id_key_spec(value: Vec<super::structs::KmipServerSpecWrappingKeyIdKeySpec>) -> ValueElements {
    ValueElements::ArrayOfKmipServerSpecWrappingKeyIdKeySpec(value)
}
fn wrap_array_of_kmip_server_spec_wrapping_rotation_interval_key_spec(value: Vec<super::structs::KmipServerSpecWrappingRotationIntervalKeySpec>) -> ValueElements {
    ValueElements::ArrayOfKmipServerSpecWrappingRotationIntervalKeySpec(value)
}
fn wrap_array_of_kmip_server_status(value: Vec<super::structs::KmipServerStatus>) -> ValueElements {
    ValueElements::ArrayOfKmipServerStatus(value)
}
fn wrap_array_of_account_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAccountCreatedEvent(value)
}
fn wrap_array_of_account_removed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAccountRemovedEvent(value)
}
fn wrap_array_of_account_updated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAccountUpdatedEvent(value)
}
fn wrap_array_of_admin_password_not_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAdminPasswordNotChangedEvent(value)
}
fn wrap_array_of_alarm_acknowledged_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmAcknowledgedEvent(value)
}
fn wrap_array_of_alarm_action_triggered_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmActionTriggeredEvent(value)
}
fn wrap_array_of_alarm_cleared_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmClearedEvent(value)
}
fn wrap_array_of_alarm_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmCreatedEvent(value)
}
fn wrap_array_of_alarm_email_completed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmEmailCompletedEvent(value)
}
fn wrap_array_of_alarm_email_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmEmailFailedEvent(value)
}
fn wrap_array_of_alarm_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmEvent(value)
}
fn wrap_array_of_alarm_event_argument(value: Vec<super::structs::AlarmEventArgument>) -> ValueElements {
    ValueElements::ArrayOfAlarmEventArgument(value)
}
fn wrap_array_of_alarm_reconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmReconfiguredEvent(value)
}
fn wrap_array_of_alarm_removed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmRemovedEvent(value)
}
fn wrap_array_of_alarm_script_complete_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmScriptCompleteEvent(value)
}
fn wrap_array_of_alarm_script_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmScriptFailedEvent(value)
}
fn wrap_array_of_alarm_snmp_completed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmSnmpCompletedEvent(value)
}
fn wrap_array_of_alarm_snmp_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmSnmpFailedEvent(value)
}
fn wrap_array_of_alarm_status_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlarmStatusChangedEvent(value)
}
fn wrap_array_of_all_virtual_machines_licensed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAllVirtualMachinesLicensedEvent(value)
}
fn wrap_array_of_already_authenticated_session_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAlreadyAuthenticatedSessionEvent(value)
}
fn wrap_array_of_authorization_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfAuthorizationEvent(value)
}
fn wrap_array_of_bad_username_session_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfBadUsernameSessionEvent(value)
}
fn wrap_array_of_canceled_host_operation_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCanceledHostOperationEvent(value)
}
fn wrap_array_of_changes_info_event_argument(value: Vec<super::structs::ChangesInfoEventArgument>) -> ValueElements {
    ValueElements::ArrayOfChangesInfoEventArgument(value)
}
fn wrap_array_of_cluster_compliance_checked_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfClusterComplianceCheckedEvent(value)
}
fn wrap_array_of_cluster_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfClusterCreatedEvent(value)
}
fn wrap_array_of_cluster_destroyed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfClusterDestroyedEvent(value)
}
fn wrap_array_of_cluster_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfClusterEvent(value)
}
fn wrap_array_of_cluster_overcommitted_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfClusterOvercommittedEvent(value)
}
fn wrap_array_of_cluster_reconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfClusterReconfiguredEvent(value)
}
fn wrap_array_of_cluster_status_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfClusterStatusChangedEvent(value)
}
fn wrap_array_of_compute_resource_event_argument(value: Vec<super::structs::ComputeResourceEventArgument>) -> ValueElements {
    ValueElements::ArrayOfComputeResourceEventArgument(value)
}
fn wrap_array_of_custom_field_def_added_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomFieldDefAddedEvent(value)
}
fn wrap_array_of_custom_field_def_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomFieldDefEvent(value)
}
fn wrap_array_of_custom_field_def_removed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomFieldDefRemovedEvent(value)
}
fn wrap_array_of_custom_field_def_renamed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomFieldDefRenamedEvent(value)
}
fn wrap_array_of_custom_field_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomFieldEvent(value)
}
fn wrap_array_of_custom_field_value_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomFieldValueChangedEvent(value)
}
fn wrap_array_of_customization_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomizationEvent(value)
}
fn wrap_array_of_customization_failed(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomizationFailed(value)
}
fn wrap_array_of_customization_linux_identity_failed(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomizationLinuxIdentityFailed(value)
}
fn wrap_array_of_customization_network_setup_failed(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomizationNetworkSetupFailed(value)
}
fn wrap_array_of_customization_started_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomizationStartedEvent(value)
}
fn wrap_array_of_customization_succeeded(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomizationSucceeded(value)
}
fn wrap_array_of_customization_sysprep_failed(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomizationSysprepFailed(value)
}
fn wrap_array_of_customization_unknown_failure(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfCustomizationUnknownFailure(value)
}
fn wrap_array_of_dv_portgroup_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvPortgroupCreatedEvent(value)
}
fn wrap_array_of_dv_portgroup_destroyed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvPortgroupDestroyedEvent(value)
}
fn wrap_array_of_dv_portgroup_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvPortgroupEvent(value)
}
fn wrap_array_of_dv_portgroup_reconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvPortgroupReconfiguredEvent(value)
}
fn wrap_array_of_dv_portgroup_renamed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvPortgroupRenamedEvent(value)
}
fn wrap_array_of_das_admission_control_disabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDasAdmissionControlDisabledEvent(value)
}
fn wrap_array_of_das_admission_control_enabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDasAdmissionControlEnabledEvent(value)
}
fn wrap_array_of_das_agent_found_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDasAgentFoundEvent(value)
}
fn wrap_array_of_das_agent_unavailable_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDasAgentUnavailableEvent(value)
}
fn wrap_array_of_das_cluster_isolated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDasClusterIsolatedEvent(value)
}
fn wrap_array_of_das_disabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDasDisabledEvent(value)
}
fn wrap_array_of_das_enabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDasEnabledEvent(value)
}
fn wrap_array_of_das_host_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDasHostFailedEvent(value)
}
fn wrap_array_of_das_host_isolated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDasHostIsolatedEvent(value)
}
fn wrap_array_of_datacenter_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatacenterCreatedEvent(value)
}
fn wrap_array_of_datacenter_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatacenterEvent(value)
}
fn wrap_array_of_datacenter_event_argument(value: Vec<super::structs::DatacenterEventArgument>) -> ValueElements {
    ValueElements::ArrayOfDatacenterEventArgument(value)
}
fn wrap_array_of_datacenter_renamed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatacenterRenamedEvent(value)
}
fn wrap_array_of_datastore_capacity_increased_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreCapacityIncreasedEvent(value)
}
fn wrap_array_of_datastore_destroyed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreDestroyedEvent(value)
}
fn wrap_array_of_datastore_discovered_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreDiscoveredEvent(value)
}
fn wrap_array_of_datastore_duplicated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreDuplicatedEvent(value)
}
fn wrap_array_of_datastore_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreEvent(value)
}
fn wrap_array_of_datastore_event_argument(value: Vec<super::structs::DatastoreEventArgument>) -> ValueElements {
    ValueElements::ArrayOfDatastoreEventArgument(value)
}
fn wrap_array_of_datastore_file_copied_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreFileCopiedEvent(value)
}
fn wrap_array_of_datastore_file_deleted_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreFileDeletedEvent(value)
}
fn wrap_array_of_datastore_file_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreFileEvent(value)
}
fn wrap_array_of_datastore_file_moved_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreFileMovedEvent(value)
}
fn wrap_array_of_datastore_iorm_reconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreIormReconfiguredEvent(value)
}
fn wrap_array_of_datastore_principal_configured(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastorePrincipalConfigured(value)
}
fn wrap_array_of_datastore_removed_on_host_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreRemovedOnHostEvent(value)
}
fn wrap_array_of_datastore_renamed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreRenamedEvent(value)
}
fn wrap_array_of_datastore_renamed_on_host_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDatastoreRenamedOnHostEvent(value)
}
fn wrap_array_of_drs_disabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsDisabledEvent(value)
}
fn wrap_array_of_drs_enabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsEnabledEvent(value)
}
fn wrap_array_of_drs_entered_standby_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsEnteredStandbyModeEvent(value)
}
fn wrap_array_of_drs_entering_standby_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsEnteringStandbyModeEvent(value)
}
fn wrap_array_of_drs_exit_standby_mode_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsExitStandbyModeFailedEvent(value)
}
fn wrap_array_of_drs_exited_standby_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsExitedStandbyModeEvent(value)
}
fn wrap_array_of_drs_exiting_standby_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsExitingStandbyModeEvent(value)
}
fn wrap_array_of_drs_invocation_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsInvocationFailedEvent(value)
}
fn wrap_array_of_drs_recovered_from_failure_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsRecoveredFromFailureEvent(value)
}
fn wrap_array_of_drs_resource_configure_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsResourceConfigureFailedEvent(value)
}
fn wrap_array_of_drs_resource_configure_synced_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsResourceConfigureSyncedEvent(value)
}
fn wrap_array_of_drs_rule_compliance_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsRuleComplianceEvent(value)
}
fn wrap_array_of_drs_rule_violation_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsRuleViolationEvent(value)
}
fn wrap_array_of_drs_soft_rule_violation_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsSoftRuleViolationEvent(value)
}
fn wrap_array_of_drs_vm_migrated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsVmMigratedEvent(value)
}
fn wrap_array_of_drs_vm_powered_on_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDrsVmPoweredOnEvent(value)
}
fn wrap_array_of_duplicate_ip_detected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDuplicateIpDetectedEvent(value)
}
fn wrap_array_of_dvpg_import_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvpgImportEvent(value)
}
fn wrap_array_of_dvpg_restore_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvpgRestoreEvent(value)
}
fn wrap_array_of_dvs_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsCreatedEvent(value)
}
fn wrap_array_of_dvs_destroyed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsDestroyedEvent(value)
}
fn wrap_array_of_dvs_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsEvent(value)
}
fn wrap_array_of_dvs_event_argument(value: Vec<super::structs::DvsEventArgument>) -> ValueElements {
    ValueElements::ArrayOfDvsEventArgument(value)
}
fn wrap_array_of_dvs_health_status_change_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsHealthStatusChangeEvent(value)
}
fn wrap_array_of_dvs_host_back_in_sync_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsHostBackInSyncEvent(value)
}
fn wrap_array_of_dvs_host_joined_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsHostJoinedEvent(value)
}
fn wrap_array_of_dvs_host_left_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsHostLeftEvent(value)
}
fn wrap_array_of_dvs_host_status_updated(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsHostStatusUpdated(value)
}
fn wrap_array_of_dvs_host_went_out_of_sync_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsHostWentOutOfSyncEvent(value)
}
fn wrap_array_of_dvs_import_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsImportEvent(value)
}
fn wrap_array_of_dvs_merged_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsMergedEvent(value)
}
fn wrap_array_of_dvs_out_of_sync_host_argument(value: Vec<super::structs::DvsOutOfSyncHostArgument>) -> ValueElements {
    ValueElements::ArrayOfDvsOutOfSyncHostArgument(value)
}
fn wrap_array_of_dvs_port_blocked_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortBlockedEvent(value)
}
fn wrap_array_of_dvs_port_connected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortConnectedEvent(value)
}
fn wrap_array_of_dvs_port_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortCreatedEvent(value)
}
fn wrap_array_of_dvs_port_deleted_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortDeletedEvent(value)
}
fn wrap_array_of_dvs_port_disconnected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortDisconnectedEvent(value)
}
fn wrap_array_of_dvs_port_entered_passthru_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortEnteredPassthruEvent(value)
}
fn wrap_array_of_dvs_port_exited_passthru_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortExitedPassthruEvent(value)
}
fn wrap_array_of_dvs_port_join_portgroup_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortJoinPortgroupEvent(value)
}
fn wrap_array_of_dvs_port_leave_portgroup_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortLeavePortgroupEvent(value)
}
fn wrap_array_of_dvs_port_link_down_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortLinkDownEvent(value)
}
fn wrap_array_of_dvs_port_link_up_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortLinkUpEvent(value)
}
fn wrap_array_of_dvs_port_reconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortReconfiguredEvent(value)
}
fn wrap_array_of_dvs_port_runtime_change_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortRuntimeChangeEvent(value)
}
fn wrap_array_of_dvs_port_unblocked_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortUnblockedEvent(value)
}
fn wrap_array_of_dvs_port_vendor_specific_state_change_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsPortVendorSpecificStateChangeEvent(value)
}
fn wrap_array_of_dvs_reconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsReconfiguredEvent(value)
}
fn wrap_array_of_dvs_renamed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsRenamedEvent(value)
}
fn wrap_array_of_dvs_restore_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsRestoreEvent(value)
}
fn wrap_array_of_dvs_upgrade_available_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsUpgradeAvailableEvent(value)
}
fn wrap_array_of_dvs_upgrade_in_progress_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsUpgradeInProgressEvent(value)
}
fn wrap_array_of_dvs_upgrade_rejected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsUpgradeRejectedEvent(value)
}
fn wrap_array_of_dvs_upgraded_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfDvsUpgradedEvent(value)
}
fn wrap_array_of_entered_maintenance_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfEnteredMaintenanceModeEvent(value)
}
fn wrap_array_of_entered_standby_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfEnteredStandbyModeEvent(value)
}
fn wrap_array_of_entering_maintenance_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfEnteringMaintenanceModeEvent(value)
}
fn wrap_array_of_entering_standby_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfEnteringStandbyModeEvent(value)
}
fn wrap_array_of_error_upgrade_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfErrorUpgradeEvent(value)
}
fn wrap_array_of_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfEvent(value)
}
fn wrap_array_of_event_description(value: Vec<super::structs::EventDescription>) -> ValueElements {
    ValueElements::ArrayOfEventDescription(value)
}
fn wrap_array_of_event_arg_desc(value: Vec<super::structs::EventArgDesc>) -> ValueElements {
    ValueElements::ArrayOfEventArgDesc(value)
}
fn wrap_array_of_event_description_event_detail(value: Vec<super::structs::EventDescriptionEventDetail>) -> ValueElements {
    ValueElements::ArrayOfEventDescriptionEventDetail(value)
}
fn wrap_array_of_event_ex(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfEventEx(value)
}
fn wrap_array_of_event_filter_spec(value: Vec<super::structs::EventFilterSpec>) -> ValueElements {
    ValueElements::ArrayOfEventFilterSpec(value)
}
fn wrap_array_of_event_filter_spec_by_entity(value: Vec<super::structs::EventFilterSpecByEntity>) -> ValueElements {
    ValueElements::ArrayOfEventFilterSpecByEntity(value)
}
fn wrap_array_of_event_filter_spec_by_time(value: Vec<super::structs::EventFilterSpecByTime>) -> ValueElements {
    ValueElements::ArrayOfEventFilterSpecByTime(value)
}
fn wrap_array_of_event_filter_spec_by_username(value: Vec<super::structs::EventFilterSpecByUsername>) -> ValueElements {
    ValueElements::ArrayOfEventFilterSpecByUsername(value)
}
fn wrap_array_of_event_manager_view_by_start_id(value: Vec<super::structs::EventManagerViewByStartId>) -> ValueElements {
    ValueElements::ArrayOfEventManagerViewByStartId(value)
}
fn wrap_array_of_exit_maintenance_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfExitMaintenanceModeEvent(value)
}
fn wrap_array_of_exit_standby_mode_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfExitStandbyModeFailedEvent(value)
}
fn wrap_array_of_exited_standby_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfExitedStandbyModeEvent(value)
}
fn wrap_array_of_exiting_standby_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfExitingStandbyModeEvent(value)
}
fn wrap_array_of_extended_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfExtendedEvent(value)
}
fn wrap_array_of_extended_event_pair(value: Vec<super::structs::ExtendedEventPair>) -> ValueElements {
    ValueElements::ArrayOfExtendedEventPair(value)
}
fn wrap_array_of_failover_level_restored(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfFailoverLevelRestored(value)
}
fn wrap_array_of_folder_event_argument(value: Vec<super::structs::FolderEventArgument>) -> ValueElements {
    ValueElements::ArrayOfFolderEventArgument(value)
}
fn wrap_array_of_general_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGeneralEvent(value)
}
fn wrap_array_of_general_host_error_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGeneralHostErrorEvent(value)
}
fn wrap_array_of_general_host_info_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGeneralHostInfoEvent(value)
}
fn wrap_array_of_general_host_warning_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGeneralHostWarningEvent(value)
}
fn wrap_array_of_general_user_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGeneralUserEvent(value)
}
fn wrap_array_of_general_vm_error_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGeneralVmErrorEvent(value)
}
fn wrap_array_of_general_vm_info_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGeneralVmInfoEvent(value)
}
fn wrap_array_of_general_vm_warning_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGeneralVmWarningEvent(value)
}
fn wrap_array_of_ghost_dvs_proxy_switch_detected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGhostDvsProxySwitchDetectedEvent(value)
}
fn wrap_array_of_ghost_dvs_proxy_switch_removed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGhostDvsProxySwitchRemovedEvent(value)
}
fn wrap_array_of_global_message_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfGlobalMessageChangedEvent(value)
}
fn wrap_array_of_health_status_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHealthStatusChangedEvent(value)
}
fn wrap_array_of_host_add_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostAddFailedEvent(value)
}
fn wrap_array_of_host_added_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostAddedEvent(value)
}
fn wrap_array_of_host_admin_disable_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostAdminDisableEvent(value)
}
fn wrap_array_of_host_admin_enable_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostAdminEnableEvent(value)
}
fn wrap_array_of_host_cnx_failed_account_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedAccountFailedEvent(value)
}
fn wrap_array_of_host_cnx_failed_already_managed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedAlreadyManagedEvent(value)
}
fn wrap_array_of_host_cnx_failed_bad_ccagent_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedBadCcagentEvent(value)
}
fn wrap_array_of_host_cnx_failed_bad_username_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedBadUsernameEvent(value)
}
fn wrap_array_of_host_cnx_failed_bad_version_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedBadVersionEvent(value)
}
fn wrap_array_of_host_cnx_failed_ccagent_upgrade_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedCcagentUpgradeEvent(value)
}
fn wrap_array_of_host_cnx_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedEvent(value)
}
fn wrap_array_of_host_cnx_failed_network_error_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedNetworkErrorEvent(value)
}
fn wrap_array_of_host_cnx_failed_no_access_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedNoAccessEvent(value)
}
fn wrap_array_of_host_cnx_failed_no_connection_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedNoConnectionEvent(value)
}
fn wrap_array_of_host_cnx_failed_no_license_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedNoLicenseEvent(value)
}
fn wrap_array_of_host_cnx_failed_not_found_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedNotFoundEvent(value)
}
fn wrap_array_of_host_cnx_failed_timeout_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCnxFailedTimeoutEvent(value)
}
fn wrap_array_of_host_compliance_checked_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostComplianceCheckedEvent(value)
}
fn wrap_array_of_host_compliant_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostCompliantEvent(value)
}
fn wrap_array_of_host_config_applied_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostConfigAppliedEvent(value)
}
fn wrap_array_of_host_connected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostConnectedEvent(value)
}
fn wrap_array_of_host_connection_lost_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostConnectionLostEvent(value)
}
fn wrap_array_of_host_das_disabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostDasDisabledEvent(value)
}
fn wrap_array_of_host_das_disabling_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostDasDisablingEvent(value)
}
fn wrap_array_of_host_das_enabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostDasEnabledEvent(value)
}
fn wrap_array_of_host_das_enabling_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostDasEnablingEvent(value)
}
fn wrap_array_of_host_das_error_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostDasErrorEvent(value)
}
fn wrap_array_of_host_das_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostDasEvent(value)
}
fn wrap_array_of_host_das_ok_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostDasOkEvent(value)
}
fn wrap_array_of_host_disconnected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostDisconnectedEvent(value)
}
fn wrap_array_of_host_enable_admin_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostEnableAdminFailedEvent(value)
}
fn wrap_array_of_host_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostEvent(value)
}
fn wrap_array_of_host_event_argument(value: Vec<super::structs::HostEventArgument>) -> ValueElements {
    ValueElements::ArrayOfHostEventArgument(value)
}
fn wrap_array_of_host_extra_networks_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostExtraNetworksEvent(value)
}
fn wrap_array_of_host_get_short_name_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostGetShortNameFailedEvent(value)
}
fn wrap_array_of_host_in_audit_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostInAuditModeEvent(value)
}
fn wrap_array_of_host_inventory_full_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostInventoryFullEvent(value)
}
fn wrap_array_of_host_inventory_unreadable_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostInventoryUnreadableEvent(value)
}
fn wrap_array_of_host_ip_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostIpChangedEvent(value)
}
fn wrap_array_of_host_ip_inconsistent_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostIpInconsistentEvent(value)
}
fn wrap_array_of_host_ip_to_short_name_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostIpToShortNameFailedEvent(value)
}
fn wrap_array_of_host_isolation_ip_ping_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostIsolationIpPingFailedEvent(value)
}
fn wrap_array_of_host_license_expired_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostLicenseExpiredEvent(value)
}
fn wrap_array_of_host_local_port_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostLocalPortCreatedEvent(value)
}
fn wrap_array_of_host_missing_networks_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostMissingNetworksEvent(value)
}
fn wrap_array_of_host_monitoring_state_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostMonitoringStateChangedEvent(value)
}
fn wrap_array_of_host_no_available_networks_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostNoAvailableNetworksEvent(value)
}
fn wrap_array_of_host_no_ha_enabled_port_groups_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostNoHaEnabledPortGroupsEvent(value)
}
fn wrap_array_of_host_no_redundant_management_network_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostNoRedundantManagementNetworkEvent(value)
}
fn wrap_array_of_host_non_compliant_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostNonCompliantEvent(value)
}
fn wrap_array_of_host_not_in_cluster_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostNotInClusterEvent(value)
}
fn wrap_array_of_host_overcommitted_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostOvercommittedEvent(value)
}
fn wrap_array_of_host_primary_agent_not_short_name_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostPrimaryAgentNotShortNameEvent(value)
}
fn wrap_array_of_host_profile_applied_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostProfileAppliedEvent(value)
}
fn wrap_array_of_host_reconnection_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostReconnectionFailedEvent(value)
}
fn wrap_array_of_host_removed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostRemovedEvent(value)
}
fn wrap_array_of_host_short_name_inconsistent_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostShortNameInconsistentEvent(value)
}
fn wrap_array_of_host_short_name_to_ip_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostShortNameToIpFailedEvent(value)
}
fn wrap_array_of_host_shutdown_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostShutdownEvent(value)
}
fn wrap_array_of_host_specification_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostSpecificationChangedEvent(value)
}
fn wrap_array_of_host_specification_require_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostSpecificationRequireEvent(value)
}
fn wrap_array_of_host_specification_update_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostSpecificationUpdateEvent(value)
}
fn wrap_array_of_host_status_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostStatusChangedEvent(value)
}
fn wrap_array_of_host_sub_specification_delete_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostSubSpecificationDeleteEvent(value)
}
fn wrap_array_of_host_sub_specification_update_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostSubSpecificationUpdateEvent(value)
}
fn wrap_array_of_host_sync_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostSyncFailedEvent(value)
}
fn wrap_array_of_host_upgrade_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostUpgradeFailedEvent(value)
}
fn wrap_array_of_host_user_world_swap_not_enabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostUserWorldSwapNotEnabledEvent(value)
}
fn wrap_array_of_host_vnic_connected_to_customized_dv_port_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostVnicConnectedToCustomizedDvPortEvent(value)
}
fn wrap_array_of_host_wwn_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostWwnChangedEvent(value)
}
fn wrap_array_of_host_wwn_conflict_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfHostWwnConflictEvent(value)
}
fn wrap_array_of_incorrect_host_information_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfIncorrectHostInformationEvent(value)
}
fn wrap_array_of_info_upgrade_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfInfoUpgradeEvent(value)
}
fn wrap_array_of_insufficient_failover_resources_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfInsufficientFailoverResourcesEvent(value)
}
fn wrap_array_of_invalid_edition_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfInvalidEditionEvent(value)
}
fn wrap_array_of_license_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfLicenseEvent(value)
}
fn wrap_array_of_license_expired_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfLicenseExpiredEvent(value)
}
fn wrap_array_of_license_non_compliance_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfLicenseNonComplianceEvent(value)
}
fn wrap_array_of_license_restricted_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfLicenseRestrictedEvent(value)
}
fn wrap_array_of_license_server_available_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfLicenseServerAvailableEvent(value)
}
fn wrap_array_of_license_server_unavailable_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfLicenseServerUnavailableEvent(value)
}
fn wrap_array_of_local_datastore_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfLocalDatastoreCreatedEvent(value)
}
fn wrap_array_of_local_tsm_enabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfLocalTsmEnabledEvent(value)
}
fn wrap_array_of_locker_misconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfLockerMisconfiguredEvent(value)
}
fn wrap_array_of_locker_reconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfLockerReconfiguredEvent(value)
}
fn wrap_array_of_managed_entity_event_argument(value: Vec<super::structs::ManagedEntityEventArgument>) -> ValueElements {
    ValueElements::ArrayOfManagedEntityEventArgument(value)
}
fn wrap_array_of_migration_error_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfMigrationErrorEvent(value)
}
fn wrap_array_of_migration_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfMigrationEvent(value)
}
fn wrap_array_of_migration_host_error_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfMigrationHostErrorEvent(value)
}
fn wrap_array_of_migration_host_warning_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfMigrationHostWarningEvent(value)
}
fn wrap_array_of_migration_resource_error_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfMigrationResourceErrorEvent(value)
}
fn wrap_array_of_migration_resource_warning_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfMigrationResourceWarningEvent(value)
}
fn wrap_array_of_migration_warning_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfMigrationWarningEvent(value)
}
fn wrap_array_of_mtu_match_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfMtuMatchEvent(value)
}
fn wrap_array_of_mtu_mismatch_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfMtuMismatchEvent(value)
}
fn wrap_array_of_nas_datastore_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfNasDatastoreCreatedEvent(value)
}
fn wrap_array_of_network_event_argument(value: Vec<super::structs::NetworkEventArgument>) -> ValueElements {
    ValueElements::ArrayOfNetworkEventArgument(value)
}
fn wrap_array_of_network_rollback_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfNetworkRollbackEvent(value)
}
fn wrap_array_of_no_access_user_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfNoAccessUserEvent(value)
}
fn wrap_array_of_no_datastores_configured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfNoDatastoresConfiguredEvent(value)
}
fn wrap_array_of_no_license_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfNoLicenseEvent(value)
}
fn wrap_array_of_no_maintenance_mode_drs_recommendation_for_vm(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfNoMaintenanceModeDrsRecommendationForVm(value)
}
fn wrap_array_of_non_vi_workload_detected_on_datastore_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfNonViWorkloadDetectedOnDatastoreEvent(value)
}
fn wrap_array_of_not_enough_resources_to_start_vm_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfNotEnoughResourcesToStartVmEvent(value)
}
fn wrap_array_of_out_of_sync_dvs_host(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfOutOfSyncDvsHost(value)
}
fn wrap_array_of_permission_added_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfPermissionAddedEvent(value)
}
fn wrap_array_of_permission_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfPermissionEvent(value)
}
fn wrap_array_of_permission_removed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfPermissionRemovedEvent(value)
}
fn wrap_array_of_permission_updated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfPermissionUpdatedEvent(value)
}
fn wrap_array_of_profile_associated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfProfileAssociatedEvent(value)
}
fn wrap_array_of_profile_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfProfileChangedEvent(value)
}
fn wrap_array_of_profile_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfProfileCreatedEvent(value)
}
fn wrap_array_of_profile_dissociated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfProfileDissociatedEvent(value)
}
fn wrap_array_of_profile_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfProfileEvent(value)
}
fn wrap_array_of_profile_event_argument(value: Vec<super::structs::ProfileEventArgument>) -> ValueElements {
    ValueElements::ArrayOfProfileEventArgument(value)
}
fn wrap_array_of_profile_reference_host_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfProfileReferenceHostChangedEvent(value)
}
fn wrap_array_of_profile_removed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfProfileRemovedEvent(value)
}
fn wrap_array_of_recovery_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfRecoveryEvent(value)
}
fn wrap_array_of_remote_tsm_enabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfRemoteTsmEnabledEvent(value)
}
fn wrap_array_of_resource_pool_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfResourcePoolCreatedEvent(value)
}
fn wrap_array_of_resource_pool_destroyed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfResourcePoolDestroyedEvent(value)
}
fn wrap_array_of_resource_pool_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfResourcePoolEvent(value)
}
fn wrap_array_of_resource_pool_event_argument(value: Vec<super::structs::ResourcePoolEventArgument>) -> ValueElements {
    ValueElements::ArrayOfResourcePoolEventArgument(value)
}
fn wrap_array_of_resource_pool_moved_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfResourcePoolMovedEvent(value)
}
fn wrap_array_of_resource_pool_reconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfResourcePoolReconfiguredEvent(value)
}
fn wrap_array_of_resource_violated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfResourceViolatedEvent(value)
}
fn wrap_array_of_role_added_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfRoleAddedEvent(value)
}
fn wrap_array_of_role_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfRoleEvent(value)
}
fn wrap_array_of_role_event_argument(value: Vec<super::structs::RoleEventArgument>) -> ValueElements {
    ValueElements::ArrayOfRoleEventArgument(value)
}
fn wrap_array_of_role_removed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfRoleRemovedEvent(value)
}
fn wrap_array_of_role_updated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfRoleUpdatedEvent(value)
}
fn wrap_array_of_rollback_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfRollbackEvent(value)
}
fn wrap_array_of_scheduled_task_completed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskCompletedEvent(value)
}
fn wrap_array_of_scheduled_task_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskCreatedEvent(value)
}
fn wrap_array_of_scheduled_task_email_completed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskEmailCompletedEvent(value)
}
fn wrap_array_of_scheduled_task_email_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskEmailFailedEvent(value)
}
fn wrap_array_of_scheduled_task_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskEvent(value)
}
fn wrap_array_of_scheduled_task_event_argument(value: Vec<super::structs::ScheduledTaskEventArgument>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskEventArgument(value)
}
fn wrap_array_of_scheduled_task_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskFailedEvent(value)
}
fn wrap_array_of_scheduled_task_reconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskReconfiguredEvent(value)
}
fn wrap_array_of_scheduled_task_removed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskRemovedEvent(value)
}
fn wrap_array_of_scheduled_task_started_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskStartedEvent(value)
}
fn wrap_array_of_server_license_expired_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfServerLicenseExpiredEvent(value)
}
fn wrap_array_of_server_started_session_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfServerStartedSessionEvent(value)
}
fn wrap_array_of_session_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfSessionEvent(value)
}
fn wrap_array_of_session_terminated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfSessionTerminatedEvent(value)
}
fn wrap_array_of_task_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfTaskEvent(value)
}
fn wrap_array_of_task_timeout_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfTaskTimeoutEvent(value)
}
fn wrap_array_of_teaming_match_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfTeamingMatchEvent(value)
}
fn wrap_array_of_teaming_mis_match_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfTeamingMisMatchEvent(value)
}
fn wrap_array_of_template_being_upgraded_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfTemplateBeingUpgradedEvent(value)
}
fn wrap_array_of_template_upgrade_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfTemplateUpgradeEvent(value)
}
fn wrap_array_of_template_upgrade_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfTemplateUpgradeFailedEvent(value)
}
fn wrap_array_of_template_upgraded_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfTemplateUpgradedEvent(value)
}
fn wrap_array_of_timed_out_host_operation_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfTimedOutHostOperationEvent(value)
}
fn wrap_array_of_unlicensed_virtual_machines_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUnlicensedVirtualMachinesEvent(value)
}
fn wrap_array_of_unlicensed_virtual_machines_found_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUnlicensedVirtualMachinesFoundEvent(value)
}
fn wrap_array_of_updated_agent_being_restarted_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUpdatedAgentBeingRestartedEvent(value)
}
fn wrap_array_of_upgrade_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUpgradeEvent(value)
}
fn wrap_array_of_uplink_port_mtu_not_support_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUplinkPortMtuNotSupportEvent(value)
}
fn wrap_array_of_uplink_port_mtu_support_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUplinkPortMtuSupportEvent(value)
}
fn wrap_array_of_uplink_port_vlan_trunked_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUplinkPortVlanTrunkedEvent(value)
}
fn wrap_array_of_uplink_port_vlan_untrunked_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUplinkPortVlanUntrunkedEvent(value)
}
fn wrap_array_of_user_assigned_to_group(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUserAssignedToGroup(value)
}
fn wrap_array_of_user_login_session_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUserLoginSessionEvent(value)
}
fn wrap_array_of_user_logout_session_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUserLogoutSessionEvent(value)
}
fn wrap_array_of_user_password_changed(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUserPasswordChanged(value)
}
fn wrap_array_of_user_unassigned_from_group(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUserUnassignedFromGroup(value)
}
fn wrap_array_of_user_upgrade_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfUserUpgradeEvent(value)
}
fn wrap_array_of_vmfs_datastore_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmfsDatastoreCreatedEvent(value)
}
fn wrap_array_of_vmfs_datastore_expanded_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmfsDatastoreExpandedEvent(value)
}
fn wrap_array_of_vmfs_datastore_extended_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmfsDatastoreExtendedEvent(value)
}
fn wrap_array_of_v_motion_license_expired_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVMotionLicenseExpiredEvent(value)
}
fn wrap_array_of_vc_agent_uninstall_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVcAgentUninstallFailedEvent(value)
}
fn wrap_array_of_vc_agent_uninstalled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVcAgentUninstalledEvent(value)
}
fn wrap_array_of_vc_agent_upgrade_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVcAgentUpgradeFailedEvent(value)
}
fn wrap_array_of_vc_agent_upgraded_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVcAgentUpgradedEvent(value)
}
fn wrap_array_of_vim_account_password_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVimAccountPasswordChangedEvent(value)
}
fn wrap_array_of_vm_acquired_mks_ticket_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmAcquiredMksTicketEvent(value)
}
fn wrap_array_of_vm_acquired_ticket_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmAcquiredTicketEvent(value)
}
fn wrap_array_of_vm_auto_rename_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmAutoRenameEvent(value)
}
fn wrap_array_of_vm_being_cloned_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmBeingClonedEvent(value)
}
fn wrap_array_of_vm_being_cloned_no_folder_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmBeingClonedNoFolderEvent(value)
}
fn wrap_array_of_vm_being_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmBeingCreatedEvent(value)
}
fn wrap_array_of_vm_being_deployed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmBeingDeployedEvent(value)
}
fn wrap_array_of_vm_being_hot_migrated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmBeingHotMigratedEvent(value)
}
fn wrap_array_of_vm_being_migrated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmBeingMigratedEvent(value)
}
fn wrap_array_of_vm_being_relocated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmBeingRelocatedEvent(value)
}
fn wrap_array_of_vm_clone_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmCloneEvent(value)
}
fn wrap_array_of_vm_clone_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmCloneFailedEvent(value)
}
fn wrap_array_of_vm_cloned_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmClonedEvent(value)
}
fn wrap_array_of_vm_config_missing_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmConfigMissingEvent(value)
}
fn wrap_array_of_vm_connected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmConnectedEvent(value)
}
fn wrap_array_of_vm_created_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmCreatedEvent(value)
}
fn wrap_array_of_vm_das_being_reset_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDasBeingResetEvent(value)
}
fn wrap_array_of_vm_das_being_reset_with_screenshot_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDasBeingResetWithScreenshotEvent(value)
}
fn wrap_array_of_vm_das_reset_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDasResetFailedEvent(value)
}
fn wrap_array_of_vm_das_update_error_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDasUpdateErrorEvent(value)
}
fn wrap_array_of_vm_das_update_ok_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDasUpdateOkEvent(value)
}
fn wrap_array_of_vm_date_rolled_back_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDateRolledBackEvent(value)
}
fn wrap_array_of_vm_deploy_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDeployFailedEvent(value)
}
fn wrap_array_of_vm_deployed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDeployedEvent(value)
}
fn wrap_array_of_vm_disconnected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDisconnectedEvent(value)
}
fn wrap_array_of_vm_discovered_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDiscoveredEvent(value)
}
fn wrap_array_of_vm_disk_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmDiskFailedEvent(value)
}
fn wrap_array_of_vm_emigrating_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmEmigratingEvent(value)
}
fn wrap_array_of_vm_end_recording_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmEndRecordingEvent(value)
}
fn wrap_array_of_vm_end_replaying_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmEndReplayingEvent(value)
}
fn wrap_array_of_vm_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmEvent(value)
}
fn wrap_array_of_vm_event_argument(value: Vec<super::structs::VmEventArgument>) -> ValueElements {
    ValueElements::ArrayOfVmEventArgument(value)
}
fn wrap_array_of_vm_failed_migrate_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedMigrateEvent(value)
}
fn wrap_array_of_vm_failed_relayout_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedRelayoutEvent(value)
}
fn wrap_array_of_vm_failed_relayout_on_vmfs_2_datastore_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedRelayoutOnVmfs2DatastoreEvent(value)
}
fn wrap_array_of_vm_failed_starting_secondary_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedStartingSecondaryEvent(value)
}
fn wrap_array_of_vm_failed_to_power_off_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedToPowerOffEvent(value)
}
fn wrap_array_of_vm_failed_to_power_on_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedToPowerOnEvent(value)
}
fn wrap_array_of_vm_failed_to_reboot_guest_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedToRebootGuestEvent(value)
}
fn wrap_array_of_vm_failed_to_reset_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedToResetEvent(value)
}
fn wrap_array_of_vm_failed_to_shutdown_guest_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedToShutdownGuestEvent(value)
}
fn wrap_array_of_vm_failed_to_standby_guest_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedToStandbyGuestEvent(value)
}
fn wrap_array_of_vm_failed_to_suspend_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedToSuspendEvent(value)
}
fn wrap_array_of_vm_failed_updating_secondary_config(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailedUpdatingSecondaryConfig(value)
}
fn wrap_array_of_vm_failover_failed(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFailoverFailed(value)
}
fn wrap_array_of_vm_fault_tolerance_state_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFaultToleranceStateChangedEvent(value)
}
fn wrap_array_of_vm_fault_tolerance_turned_off_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFaultToleranceTurnedOffEvent(value)
}
fn wrap_array_of_vm_fault_tolerance_vm_terminated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmFaultToleranceVmTerminatedEvent(value)
}
fn wrap_array_of_vm_guest_os_crashed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmGuestOsCrashedEvent(value)
}
fn wrap_array_of_vm_guest_reboot_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmGuestRebootEvent(value)
}
fn wrap_array_of_vm_guest_shutdown_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmGuestShutdownEvent(value)
}
fn wrap_array_of_vm_guest_standby_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmGuestStandbyEvent(value)
}
fn wrap_array_of_vm_health_monitoring_state_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmHealthMonitoringStateChangedEvent(value)
}
fn wrap_array_of_vm_instance_uuid_assigned_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmInstanceUuidAssignedEvent(value)
}
fn wrap_array_of_vm_instance_uuid_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmInstanceUuidChangedEvent(value)
}
fn wrap_array_of_vm_instance_uuid_conflict_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmInstanceUuidConflictEvent(value)
}
fn wrap_array_of_vm_mac_assigned_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmMacAssignedEvent(value)
}
fn wrap_array_of_vm_mac_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmMacChangedEvent(value)
}
fn wrap_array_of_vm_mac_conflict_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmMacConflictEvent(value)
}
fn wrap_array_of_vm_max_ft_restart_count_reached(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmMaxFtRestartCountReached(value)
}
fn wrap_array_of_vm_max_restart_count_reached(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmMaxRestartCountReached(value)
}
fn wrap_array_of_vm_message_error_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmMessageErrorEvent(value)
}
fn wrap_array_of_vm_message_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmMessageEvent(value)
}
fn wrap_array_of_vm_message_warning_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmMessageWarningEvent(value)
}
fn wrap_array_of_vm_migrated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmMigratedEvent(value)
}
fn wrap_array_of_vm_no_compatible_host_for_secondary_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmNoCompatibleHostForSecondaryEvent(value)
}
fn wrap_array_of_vm_no_network_access_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmNoNetworkAccessEvent(value)
}
fn wrap_array_of_vm_orphaned_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmOrphanedEvent(value)
}
fn wrap_array_of_vm_power_off_on_isolation_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmPowerOffOnIsolationEvent(value)
}
fn wrap_array_of_vm_powered_off_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmPoweredOffEvent(value)
}
fn wrap_array_of_vm_powered_on_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmPoweredOnEvent(value)
}
fn wrap_array_of_vm_powering_on_with_customized_dv_port_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmPoweringOnWithCustomizedDvPortEvent(value)
}
fn wrap_array_of_vm_primary_failover_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmPrimaryFailoverEvent(value)
}
fn wrap_array_of_vm_reconfigured_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmReconfiguredEvent(value)
}
fn wrap_array_of_vm_registered_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRegisteredEvent(value)
}
fn wrap_array_of_vm_relayout_successful_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRelayoutSuccessfulEvent(value)
}
fn wrap_array_of_vm_relayout_up_to_date_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRelayoutUpToDateEvent(value)
}
fn wrap_array_of_vm_reload_from_path_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmReloadFromPathEvent(value)
}
fn wrap_array_of_vm_reload_from_path_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmReloadFromPathFailedEvent(value)
}
fn wrap_array_of_vm_relocate_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRelocateFailedEvent(value)
}
fn wrap_array_of_vm_relocate_spec_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRelocateSpecEvent(value)
}
fn wrap_array_of_vm_relocated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRelocatedEvent(value)
}
fn wrap_array_of_vm_remote_console_connected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRemoteConsoleConnectedEvent(value)
}
fn wrap_array_of_vm_remote_console_disconnected_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRemoteConsoleDisconnectedEvent(value)
}
fn wrap_array_of_vm_removed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRemovedEvent(value)
}
fn wrap_array_of_vm_renamed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRenamedEvent(value)
}
fn wrap_array_of_vm_requirements_exceed_current_evc_mode_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRequirementsExceedCurrentEvcModeEvent(value)
}
fn wrap_array_of_vm_resetting_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmResettingEvent(value)
}
fn wrap_array_of_vm_resource_pool_moved_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmResourcePoolMovedEvent(value)
}
fn wrap_array_of_vm_resource_reallocated_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmResourceReallocatedEvent(value)
}
fn wrap_array_of_vm_restarted_on_alternate_host_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmRestartedOnAlternateHostEvent(value)
}
fn wrap_array_of_vm_resuming_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmResumingEvent(value)
}
fn wrap_array_of_vm_secondary_added_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmSecondaryAddedEvent(value)
}
fn wrap_array_of_vm_secondary_disabled_by_system_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmSecondaryDisabledBySystemEvent(value)
}
fn wrap_array_of_vm_secondary_disabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmSecondaryDisabledEvent(value)
}
fn wrap_array_of_vm_secondary_enabled_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmSecondaryEnabledEvent(value)
}
fn wrap_array_of_vm_secondary_started_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmSecondaryStartedEvent(value)
}
fn wrap_array_of_vm_shutdown_on_isolation_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmShutdownOnIsolationEvent(value)
}
fn wrap_array_of_vm_start_recording_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmStartRecordingEvent(value)
}
fn wrap_array_of_vm_start_replaying_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmStartReplayingEvent(value)
}
fn wrap_array_of_vm_starting_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmStartingEvent(value)
}
fn wrap_array_of_vm_starting_secondary_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmStartingSecondaryEvent(value)
}
fn wrap_array_of_vm_static_mac_conflict_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmStaticMacConflictEvent(value)
}
fn wrap_array_of_vm_stopping_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmStoppingEvent(value)
}
fn wrap_array_of_vm_suspended_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmSuspendedEvent(value)
}
fn wrap_array_of_vm_suspending_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmSuspendingEvent(value)
}
fn wrap_array_of_vm_timedout_starting_secondary_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmTimedoutStartingSecondaryEvent(value)
}
fn wrap_array_of_vm_unsupported_starting_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmUnsupportedStartingEvent(value)
}
fn wrap_array_of_vm_upgrade_complete_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmUpgradeCompleteEvent(value)
}
fn wrap_array_of_vm_upgrade_failed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmUpgradeFailedEvent(value)
}
fn wrap_array_of_vm_upgrading_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmUpgradingEvent(value)
}
fn wrap_array_of_vm_uuid_assigned_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmUuidAssignedEvent(value)
}
fn wrap_array_of_vm_uuid_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmUuidChangedEvent(value)
}
fn wrap_array_of_vm_uuid_conflict_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmUuidConflictEvent(value)
}
fn wrap_array_of_vm_vnic_pool_reservation_violation_clear_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmVnicPoolReservationViolationClearEvent(value)
}
fn wrap_array_of_vm_vnic_pool_reservation_violation_raise_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmVnicPoolReservationViolationRaiseEvent(value)
}
fn wrap_array_of_vm_wwn_assigned_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmWwnAssignedEvent(value)
}
fn wrap_array_of_vm_wwn_changed_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmWwnChangedEvent(value)
}
fn wrap_array_of_vm_wwn_conflict_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfVmWwnConflictEvent(value)
}
fn wrap_array_of_vnic_port_argument(value: Vec<super::structs::VnicPortArgument>) -> ValueElements {
    ValueElements::ArrayOfVnicPortArgument(value)
}
fn wrap_array_of_warning_upgrade_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfWarningUpgradeEvent(value)
}
fn wrap_array_of_i_scsi_boot_failure_event(value: Vec<super::structs::Event>) -> ValueElements {
    ValueElements::ArrayOfIScsiBootFailureEvent(value)
}
fn wrap_array_of_ext_extended_product_info(value: Vec<super::structs::ExtExtendedProductInfo>) -> ValueElements {
    ValueElements::ArrayOfExtExtendedProductInfo(value)
}
fn wrap_array_of_managed_by_info(value: Vec<super::structs::ManagedByInfo>) -> ValueElements {
    ValueElements::ArrayOfManagedByInfo(value)
}
fn wrap_array_of_ext_managed_entity_info(value: Vec<super::structs::ExtManagedEntityInfo>) -> ValueElements {
    ValueElements::ArrayOfExtManagedEntityInfo(value)
}
fn wrap_array_of_ext_solution_manager_info(value: Vec<super::structs::ExtSolutionManagerInfo>) -> ValueElements {
    ValueElements::ArrayOfExtSolutionManagerInfo(value)
}
fn wrap_array_of_ext_solution_manager_info_tab_info(value: Vec<super::structs::ExtSolutionManagerInfoTabInfo>) -> ValueElements {
    ValueElements::ArrayOfExtSolutionManagerInfoTabInfo(value)
}
fn wrap_array_of_active_directory_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfActiveDirectoryFault(value)
}
fn wrap_array_of_active_v_ms_blocking_evc(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfActiveVMsBlockingEvc(value)
}
fn wrap_array_of_admin_disabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAdminDisabled(value)
}
fn wrap_array_of_admin_not_disabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAdminNotDisabled(value)
}
fn wrap_array_of_affinity_configured(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAffinityConfigured(value)
}
fn wrap_array_of_agent_install_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAgentInstallFailed(value)
}
fn wrap_array_of_already_being_managed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAlreadyBeingManaged(value)
}
fn wrap_array_of_already_connected(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAlreadyConnected(value)
}
fn wrap_array_of_already_exists(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAlreadyExists(value)
}
fn wrap_array_of_already_upgraded(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAlreadyUpgraded(value)
}
fn wrap_array_of_answer_file_update_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAnswerFileUpdateFailed(value)
}
fn wrap_array_of_answer_file_update_failure(value: Vec<super::structs::AnswerFileUpdateFailure>) -> ValueElements {
    ValueElements::ArrayOfAnswerFileUpdateFailure(value)
}
fn wrap_array_of_application_quiesce_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfApplicationQuiesceFault(value)
}
fn wrap_array_of_auth_minimum_admin_permission(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfAuthMinimumAdminPermission(value)
}
fn wrap_array_of_backup_blob_read_failure(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfBackupBlobReadFailure(value)
}
fn wrap_array_of_backup_blob_write_failure(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfBackupBlobWriteFailure(value)
}
fn wrap_array_of_blocked_by_firewall(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfBlockedByFirewall(value)
}
fn wrap_array_of_cam_server_refused_connection(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCamServerRefusedConnection(value)
}
fn wrap_array_of_cannot_access_file(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotAccessFile(value)
}
fn wrap_array_of_cannot_access_local_source(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotAccessLocalSource(value)
}
fn wrap_array_of_cannot_access_network(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotAccessNetwork(value)
}
fn wrap_array_of_cannot_access_vm_component(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotAccessVmComponent(value)
}
fn wrap_array_of_cannot_access_vm_config(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotAccessVmConfig(value)
}
fn wrap_array_of_cannot_access_vm_device(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotAccessVmDevice(value)
}
fn wrap_array_of_cannot_access_vm_disk(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotAccessVmDisk(value)
}
fn wrap_array_of_cannot_add_host_with_ft_vm_as_standalone(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotAddHostWithFtVmAsStandalone(value)
}
fn wrap_array_of_cannot_add_host_with_ft_vm_to_different_cluster(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotAddHostWithFtVmToDifferentCluster(value)
}
fn wrap_array_of_cannot_add_host_with_ft_vm_to_non_ha_cluster(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotAddHostWithFtVmToNonHaCluster(value)
}
fn wrap_array_of_cannot_change_drs_behavior_for_ft_secondary(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotChangeDrsBehaviorForFtSecondary(value)
}
fn wrap_array_of_cannot_change_ha_settings_for_ft_secondary(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotChangeHaSettingsForFtSecondary(value)
}
fn wrap_array_of_cannot_change_vsan_cluster_uuid(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotChangeVsanClusterUuid(value)
}
fn wrap_array_of_cannot_change_vsan_node_uuid(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotChangeVsanNodeUuid(value)
}
fn wrap_array_of_cannot_compute_ft_compatible_hosts(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotComputeFtCompatibleHosts(value)
}
fn wrap_array_of_cannot_create_file(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotCreateFile(value)
}
fn wrap_array_of_cannot_decrypt_passwords(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotDecryptPasswords(value)
}
fn wrap_array_of_cannot_delete_file(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotDeleteFile(value)
}
fn wrap_array_of_cannot_disable_drs_on_clusters_with_v_apps(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotDisableDrsOnClustersWithVApps(value)
}
fn wrap_array_of_cannot_disable_snapshot(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotDisableSnapshot(value)
}
fn wrap_array_of_cannot_disconnect_host_with_fault_tolerance_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotDisconnectHostWithFaultToleranceVm(value)
}
fn wrap_array_of_cannot_enable_vmcp_for_cluster(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotEnableVmcpForCluster(value)
}
fn wrap_array_of_cannot_modify_config_cpu_requirements(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotModifyConfigCpuRequirements(value)
}
fn wrap_array_of_cannot_move_fault_tolerance_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotMoveFaultToleranceVm(value)
}
fn wrap_array_of_cannot_move_host_with_fault_tolerance_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotMoveHostWithFaultToleranceVm(value)
}
fn wrap_array_of_cannot_move_vm_with_delta_disk(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotMoveVmWithDeltaDisk(value)
}
fn wrap_array_of_cannot_move_vm_with_native_delta_disk(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotMoveVmWithNativeDeltaDisk(value)
}
fn wrap_array_of_cannot_move_vsan_enabled_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotMoveVsanEnabledHost(value)
}
fn wrap_array_of_cannot_place_without_prerequisite_moves(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotPlaceWithoutPrerequisiteMoves(value)
}
fn wrap_array_of_cannot_power_off_vm_in_cluster(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotPowerOffVmInCluster(value)
}
fn wrap_array_of_cannot_reconfigure_vsan_when_ha_enabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotReconfigureVsanWhenHaEnabled(value)
}
fn wrap_array_of_cannot_use_network(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCannotUseNetwork(value)
}
fn wrap_array_of_clock_skew(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfClockSkew(value)
}
fn wrap_array_of_clone_from_snapshot_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCloneFromSnapshotNotSupported(value)
}
fn wrap_array_of_cns_already_registered_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCnsAlreadyRegisteredFault(value)
}
fn wrap_array_of_cns_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCnsFault(value)
}
fn wrap_array_of_cns_in_compatible_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCnsInCompatibleFault(value)
}
fn wrap_array_of_cns_missing_controller_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCnsMissingControllerFault(value)
}
fn wrap_array_of_cns_missing_privilege_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCnsMissingPrivilegeFault(value)
}
fn wrap_array_of_cns_not_registered_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCnsNotRegisteredFault(value)
}
fn wrap_array_of_cns_placement_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCnsPlacementFault(value)
}
fn wrap_array_of_cns_ranked_lower_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCnsRankedLowerFault(value)
}
fn wrap_array_of_cns_snapshot_not_found_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCnsSnapshotNotFoundFault(value)
}
fn wrap_array_of_cns_volume_not_found_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCnsVolumeNotFoundFault(value)
}
fn wrap_array_of_collector_address_unset(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCollectorAddressUnset(value)
}
fn wrap_array_of_concurrent_access(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfConcurrentAccess(value)
}
fn wrap_array_of_conflicting_configuration(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfConflictingConfiguration(value)
}
fn wrap_array_of_conflicting_configuration_config(value: Vec<super::structs::ConflictingConfigurationConfig>) -> ValueElements {
    ValueElements::ArrayOfConflictingConfigurationConfig(value)
}
fn wrap_array_of_conflicting_datastore_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfConflictingDatastoreFound(value)
}
fn wrap_array_of_connected_iso(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfConnectedIso(value)
}
fn wrap_array_of_cpu_compatibility_unknown(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCpuCompatibilityUnknown(value)
}
fn wrap_array_of_cpu_hot_plug_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCpuHotPlugNotSupported(value)
}
fn wrap_array_of_cpu_incompatible(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCpuIncompatible(value)
}
fn wrap_array_of_cpu_incompatible_1_ecx(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCpuIncompatible1Ecx(value)
}
fn wrap_array_of_cpu_incompatible_81_edx(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCpuIncompatible81Edx(value)
}
fn wrap_array_of_customization_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCustomizationFault(value)
}
fn wrap_array_of_customization_pending(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfCustomizationPending(value)
}
fn wrap_array_of_dv_port_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDvPortNotSupported(value)
}
fn wrap_array_of_das_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDasConfigFault(value)
}
fn wrap_array_of_database_error(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDatabaseError(value)
}
fn wrap_array_of_datacenter_mismatch(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDatacenterMismatch(value)
}
fn wrap_array_of_datacenter_mismatch_argument(value: Vec<super::structs::DatacenterMismatchArgument>) -> ValueElements {
    ValueElements::ArrayOfDatacenterMismatchArgument(value)
}
fn wrap_array_of_datastore_not_writable_on_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDatastoreNotWritableOnHost(value)
}
fn wrap_array_of_delta_disk_format_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDeltaDiskFormatNotSupported(value)
}
fn wrap_array_of_destination_switch_full(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDestinationSwitchFull(value)
}
fn wrap_array_of_destination_vsan_disabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDestinationVsanDisabled(value)
}
fn wrap_array_of_device_backing_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDeviceBackingNotSupported(value)
}
fn wrap_array_of_device_controller_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDeviceControllerNotSupported(value)
}
fn wrap_array_of_device_hot_plug_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDeviceHotPlugNotSupported(value)
}
fn wrap_array_of_device_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDeviceNotFound(value)
}
fn wrap_array_of_device_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDeviceNotSupported(value)
}
fn wrap_array_of_device_unsupported_for_vm_platform(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDeviceUnsupportedForVmPlatform(value)
}
fn wrap_array_of_device_unsupported_for_vm_version(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDeviceUnsupportedForVmVersion(value)
}
fn wrap_array_of_digest_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDigestNotSupported(value)
}
fn wrap_array_of_directory_not_empty(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDirectoryNotEmpty(value)
}
fn wrap_array_of_disable_admin_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDisableAdminNotSupported(value)
}
fn wrap_array_of_disallowed_change_by_service(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDisallowedChangeByService(value)
}
fn wrap_array_of_disallowed_disk_mode_change(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDisallowedDiskModeChange(value)
}
fn wrap_array_of_disallowed_migration_device_attached(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDisallowedMigrationDeviceAttached(value)
}
fn wrap_array_of_disallowed_operation_on_failover_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDisallowedOperationOnFailoverHost(value)
}
fn wrap_array_of_disconnected_hosts_blocking_evc(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDisconnectedHostsBlockingEvc(value)
}
fn wrap_array_of_disk_has_partitions(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDiskHasPartitions(value)
}
fn wrap_array_of_disk_is_last_remaining_non_ssd(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDiskIsLastRemainingNonSsd(value)
}
fn wrap_array_of_disk_is_non_local(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDiskIsNonLocal(value)
}
fn wrap_array_of_disk_is_usb(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDiskIsUsb(value)
}
fn wrap_array_of_disk_move_type_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDiskMoveTypeNotSupported(value)
}
fn wrap_array_of_disk_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDiskNotSupported(value)
}
fn wrap_array_of_disk_too_small(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDiskTooSmall(value)
}
fn wrap_array_of_domain_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDomainNotFound(value)
}
fn wrap_array_of_drs_disabled_on_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDrsDisabledOnVm(value)
}
fn wrap_array_of_drs_vmotion_incompatible_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDrsVmotionIncompatibleFault(value)
}
fn wrap_array_of_duplicate_disks(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDuplicateDisks(value)
}
fn wrap_array_of_duplicate_name(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDuplicateName(value)
}
fn wrap_array_of_duplicate_vsan_network_interface(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDuplicateVsanNetworkInterface(value)
}
fn wrap_array_of_dvs_apply_operation_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDvsApplyOperationFault(value)
}
fn wrap_array_of_dvs_apply_operation_fault_fault_on_object(value: Vec<super::structs::DvsApplyOperationFaultFaultOnObject>) -> ValueElements {
    ValueElements::ArrayOfDvsApplyOperationFaultFaultOnObject(value)
}
fn wrap_array_of_dvs_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDvsFault(value)
}
fn wrap_array_of_dvs_not_authorized(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDvsNotAuthorized(value)
}
fn wrap_array_of_dvs_operation_bulk_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDvsOperationBulkFault(value)
}
fn wrap_array_of_dvs_operation_bulk_fault_fault_on_host(value: Vec<super::structs::DvsOperationBulkFaultFaultOnHost>) -> ValueElements {
    ValueElements::ArrayOfDvsOperationBulkFaultFaultOnHost(value)
}
fn wrap_array_of_dvs_scope_violated(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfDvsScopeViolated(value)
}
fn wrap_array_of_evc_admission_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcAdmissionFailed(value)
}
fn wrap_array_of_evc_admission_failed_cpu_features_for_mode(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcAdmissionFailedCpuFeaturesForMode(value)
}
fn wrap_array_of_evc_admission_failed_cpu_model(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcAdmissionFailedCpuModel(value)
}
fn wrap_array_of_evc_admission_failed_cpu_model_for_mode(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcAdmissionFailedCpuModelForMode(value)
}
fn wrap_array_of_evc_admission_failed_cpu_vendor(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcAdmissionFailedCpuVendor(value)
}
fn wrap_array_of_evc_admission_failed_cpu_vendor_unknown(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcAdmissionFailedCpuVendorUnknown(value)
}
fn wrap_array_of_evc_admission_failed_host_disconnected(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcAdmissionFailedHostDisconnected(value)
}
fn wrap_array_of_evc_admission_failed_host_software(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcAdmissionFailedHostSoftware(value)
}
fn wrap_array_of_evc_admission_failed_host_software_for_mode(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcAdmissionFailedHostSoftwareForMode(value)
}
fn wrap_array_of_evc_admission_failed_vm_active(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcAdmissionFailedVmActive(value)
}
fn wrap_array_of_evc_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcConfigFault(value)
}
fn wrap_array_of_evc_mode_illegal_by_vendor(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcModeIllegalByVendor(value)
}
fn wrap_array_of_evc_mode_unsupported_by_hosts(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcModeUnsupportedByHosts(value)
}
fn wrap_array_of_evc_unsupported_by_host_hardware(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcUnsupportedByHostHardware(value)
}
fn wrap_array_of_evc_unsupported_by_host_software(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEvcUnsupportedByHostSoftware(value)
}
fn wrap_array_of_eight_host_limit_violated(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEightHostLimitViolated(value)
}
fn wrap_array_of_encryption_key_required(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfEncryptionKeyRequired(value)
}
fn wrap_array_of_expired_addon_license(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfExpiredAddonLicense(value)
}
fn wrap_array_of_expired_edition_license(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfExpiredEditionLicense(value)
}
fn wrap_array_of_expired_feature_license(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfExpiredFeatureLicense(value)
}
fn wrap_array_of_extended_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfExtendedFault(value)
}
fn wrap_array_of_fail_to_enable_spbm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFailToEnableSpbm(value)
}
fn wrap_array_of_fail_to_lock_fault_tolerance_v_ms(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFailToLockFaultToleranceVMs(value)
}
fn wrap_array_of_fault_tolerance_anti_affinity_violated(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceAntiAffinityViolated(value)
}
fn wrap_array_of_fault_tolerance_cannot_edit_mem(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceCannotEditMem(value)
}
fn wrap_array_of_fault_tolerance_cpu_incompatible(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceCpuIncompatible(value)
}
fn wrap_array_of_fault_tolerance_needs_thick_disk(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceNeedsThickDisk(value)
}
fn wrap_array_of_fault_tolerance_not_licensed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceNotLicensed(value)
}
fn wrap_array_of_fault_tolerance_not_same_build(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceNotSameBuild(value)
}
fn wrap_array_of_fault_tolerance_primary_power_on_not_attempted(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFaultTolerancePrimaryPowerOnNotAttempted(value)
}
fn wrap_array_of_fault_tolerance_vm_not_das_protected(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceVmNotDasProtected(value)
}
fn wrap_array_of_fcoe_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFcoeFault(value)
}
fn wrap_array_of_fcoe_fault_pnic_has_no_port_set(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFcoeFaultPnicHasNoPortSet(value)
}
fn wrap_array_of_feature_requirements_not_met(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFeatureRequirementsNotMet(value)
}
fn wrap_array_of_file_already_exists(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFileAlreadyExists(value)
}
fn wrap_array_of_file_backed_port_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFileBackedPortNotSupported(value)
}
fn wrap_array_of_file_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFileFault(value)
}
fn wrap_array_of_file_locked(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFileLocked(value)
}
fn wrap_array_of_file_name_too_long(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFileNameTooLong(value)
}
fn wrap_array_of_file_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFileNotFound(value)
}
fn wrap_array_of_file_not_writable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFileNotWritable(value)
}
fn wrap_array_of_file_too_large(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFileTooLarge(value)
}
fn wrap_array_of_filesystem_quiesce_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFilesystemQuiesceFault(value)
}
fn wrap_array_of_filter_in_use(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFilterInUse(value)
}
fn wrap_array_of_ft_issues_on_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFtIssuesOnHost(value)
}
fn wrap_array_of_ft_vm_host_rule_violation(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFtVmHostRuleViolation(value)
}
fn wrap_array_of_full_storage_v_motion_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfFullStorageVMotionNotSupported(value)
}
fn wrap_array_of_gateway_connect_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGatewayConnectFault(value)
}
fn wrap_array_of_gateway_host_not_reachable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGatewayHostNotReachable(value)
}
fn wrap_array_of_gateway_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGatewayNotFound(value)
}
fn wrap_array_of_gateway_not_reachable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGatewayNotReachable(value)
}
fn wrap_array_of_gateway_operation_refused(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGatewayOperationRefused(value)
}
fn wrap_array_of_gateway_to_host_auth_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGatewayToHostAuthFault(value)
}
fn wrap_array_of_gateway_to_host_connect_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGatewayToHostConnectFault(value)
}
fn wrap_array_of_gateway_to_host_trust_verify_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGatewayToHostTrustVerifyFault(value)
}
fn wrap_array_of_generic_drs_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGenericDrsFault(value)
}
fn wrap_array_of_generic_vm_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGenericVmConfigFault(value)
}
fn wrap_array_of_guest_authentication_challenge(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestAuthenticationChallenge(value)
}
fn wrap_array_of_guest_components_out_of_date(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestComponentsOutOfDate(value)
}
fn wrap_array_of_guest_multiple_mappings(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestMultipleMappings(value)
}
fn wrap_array_of_guest_operations_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestOperationsFault(value)
}
fn wrap_array_of_guest_operations_unavailable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestOperationsUnavailable(value)
}
fn wrap_array_of_guest_permission_denied(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestPermissionDenied(value)
}
fn wrap_array_of_guest_process_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestProcessNotFound(value)
}
fn wrap_array_of_guest_registry_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestRegistryFault(value)
}
fn wrap_array_of_guest_registry_key_already_exists(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestRegistryKeyAlreadyExists(value)
}
fn wrap_array_of_guest_registry_key_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestRegistryKeyFault(value)
}
fn wrap_array_of_guest_registry_key_has_subkeys(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestRegistryKeyHasSubkeys(value)
}
fn wrap_array_of_guest_registry_key_invalid(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestRegistryKeyInvalid(value)
}
fn wrap_array_of_guest_registry_key_parent_volatile(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestRegistryKeyParentVolatile(value)
}
fn wrap_array_of_guest_registry_value_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestRegistryValueFault(value)
}
fn wrap_array_of_guest_registry_value_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfGuestRegistryValueNotFound(value)
}
fn wrap_array_of_ha_errors_at_dest(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHaErrorsAtDest(value)
}
fn wrap_array_of_heterogenous_hosts_blocking_evc(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHeterogenousHostsBlockingEvc(value)
}
fn wrap_array_of_host_access_restricted_to_management_server(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostAccessRestrictedToManagementServer(value)
}
fn wrap_array_of_host_config_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostConfigFailed(value)
}
fn wrap_array_of_host_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostConfigFault(value)
}
fn wrap_array_of_host_connect_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostConnectFault(value)
}
fn wrap_array_of_host_has_component_failure(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostHasComponentFailure(value)
}
fn wrap_array_of_host_in_domain(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostInDomain(value)
}
fn wrap_array_of_host_incompatible_for_fault_tolerance(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostIncompatibleForFaultTolerance(value)
}
fn wrap_array_of_host_incompatible_for_record_replay(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostIncompatibleForRecordReplay(value)
}
fn wrap_array_of_host_inventory_full(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostInventoryFull(value)
}
fn wrap_array_of_host_power_op_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostPowerOpFailed(value)
}
fn wrap_array_of_host_specification_operation_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostSpecificationOperationFailed(value)
}
fn wrap_array_of_hot_snapshot_move_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHotSnapshotMoveNotSupported(value)
}
fn wrap_array_of_http_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHttpFault(value)
}
fn wrap_array_of_ide_disk_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIdeDiskNotSupported(value)
}
fn wrap_array_of_iorm_not_supported_host_on_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIormNotSupportedHostOnDatastore(value)
}
fn wrap_array_of_import_host_add_failure(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfImportHostAddFailure(value)
}
fn wrap_array_of_import_operation_bulk_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfImportOperationBulkFault(value)
}
fn wrap_array_of_import_operation_bulk_fault_fault_on_import(value: Vec<super::structs::ImportOperationBulkFaultFaultOnImport>) -> ValueElements {
    ValueElements::ArrayOfImportOperationBulkFaultFaultOnImport(value)
}
fn wrap_array_of_in_use_feature_manipulation_disallowed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInUseFeatureManipulationDisallowed(value)
}
fn wrap_array_of_inaccessible_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInaccessibleDatastore(value)
}
fn wrap_array_of_inaccessible_ft_metadata_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInaccessibleFtMetadataDatastore(value)
}
fn wrap_array_of_inaccessible_v_flash_source(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInaccessibleVFlashSource(value)
}
fn wrap_array_of_incompatible_default_device(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIncompatibleDefaultDevice(value)
}
fn wrap_array_of_incompatible_host_for_ft_secondary(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIncompatibleHostForFtSecondary(value)
}
fn wrap_array_of_incompatible_host_for_vm_replication(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIncompatibleHostForVmReplication(value)
}
fn wrap_array_of_incompatible_setting(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIncompatibleSetting(value)
}
fn wrap_array_of_incorrect_file_type(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIncorrectFileType(value)
}
fn wrap_array_of_incorrect_host_information(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIncorrectHostInformation(value)
}
fn wrap_array_of_independent_disk_v_motion_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIndependentDiskVMotionNotSupported(value)
}
fn wrap_array_of_insufficient_agent_vms_deployed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientAgentVmsDeployed(value)
}
fn wrap_array_of_insufficient_cpu_resources_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientCpuResourcesFault(value)
}
fn wrap_array_of_insufficient_disks(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientDisks(value)
}
fn wrap_array_of_insufficient_failover_resources_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientFailoverResourcesFault(value)
}
fn wrap_array_of_insufficient_graphics_resources_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientGraphicsResourcesFault(value)
}
fn wrap_array_of_insufficient_host_capacity_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientHostCapacityFault(value)
}
fn wrap_array_of_insufficient_host_cpu_capacity_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientHostCpuCapacityFault(value)
}
fn wrap_array_of_insufficient_host_memory_capacity_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientHostMemoryCapacityFault(value)
}
fn wrap_array_of_insufficient_memory_resources_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientMemoryResourcesFault(value)
}
fn wrap_array_of_insufficient_network_capacity(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientNetworkCapacity(value)
}
fn wrap_array_of_insufficient_network_resource_pool_capacity(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientNetworkResourcePoolCapacity(value)
}
fn wrap_array_of_insufficient_per_cpu_capacity(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientPerCpuCapacity(value)
}
fn wrap_array_of_insufficient_resources_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientResourcesFault(value)
}
fn wrap_array_of_insufficient_standby_cpu_resource(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientStandbyCpuResource(value)
}
fn wrap_array_of_insufficient_standby_memory_resource(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientStandbyMemoryResource(value)
}
fn wrap_array_of_insufficient_standby_resource(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientStandbyResource(value)
}
fn wrap_array_of_insufficient_storage_iops(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientStorageIops(value)
}
fn wrap_array_of_insufficient_storage_space(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientStorageSpace(value)
}
fn wrap_array_of_insufficient_v_flash_resources_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInsufficientVFlashResourcesFault(value)
}
fn wrap_array_of_invalid_affinity_setting_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidAffinitySettingFault(value)
}
fn wrap_array_of_invalid_bmc_role(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidBmcRole(value)
}
fn wrap_array_of_invalid_bundle(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidBundle(value)
}
fn wrap_array_of_invalid_cam_certificate(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidCamCertificate(value)
}
fn wrap_array_of_invalid_cam_server(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidCamServer(value)
}
fn wrap_array_of_invalid_client_certificate(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidClientCertificate(value)
}
fn wrap_array_of_invalid_controller(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidController(value)
}
fn wrap_array_of_invalid_das_config_argument(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidDasConfigArgument(value)
}
fn wrap_array_of_invalid_das_restart_priority_for_ft_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidDasRestartPriorityForFtVm(value)
}
fn wrap_array_of_invalid_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidDatastore(value)
}
fn wrap_array_of_invalid_datastore_path(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidDatastorePath(value)
}
fn wrap_array_of_invalid_datastore_state(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidDatastoreState(value)
}
fn wrap_array_of_invalid_device_backing(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidDeviceBacking(value)
}
fn wrap_array_of_invalid_device_operation(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidDeviceOperation(value)
}
fn wrap_array_of_invalid_device_spec(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidDeviceSpec(value)
}
fn wrap_array_of_invalid_disk_format(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidDiskFormat(value)
}
fn wrap_array_of_invalid_drs_behavior_for_ft_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidDrsBehaviorForFtVm(value)
}
fn wrap_array_of_invalid_edition_license(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidEditionLicense(value)
}
fn wrap_array_of_invalid_event(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidEvent(value)
}
fn wrap_array_of_invalid_folder(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidFolder(value)
}
fn wrap_array_of_invalid_format(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidFormat(value)
}
fn wrap_array_of_invalid_guest_login(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidGuestLogin(value)
}
fn wrap_array_of_invalid_host_connection_state(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidHostConnectionState(value)
}
fn wrap_array_of_invalid_host_name(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidHostName(value)
}
fn wrap_array_of_invalid_host_state(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidHostState(value)
}
fn wrap_array_of_invalid_index_argument(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidIndexArgument(value)
}
fn wrap_array_of_invalid_ipfix_config(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidIpfixConfig(value)
}
fn wrap_array_of_invalid_ipmi_login_info(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidIpmiLoginInfo(value)
}
fn wrap_array_of_invalid_ipmi_mac_address(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidIpmiMacAddress(value)
}
fn wrap_array_of_invalid_license(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidLicense(value)
}
fn wrap_array_of_invalid_locale(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidLocale(value)
}
fn wrap_array_of_invalid_login(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidLogin(value)
}
fn wrap_array_of_invalid_name(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidName(value)
}
fn wrap_array_of_invalid_nas_credentials(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidNasCredentials(value)
}
fn wrap_array_of_invalid_network_in_type(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidNetworkInType(value)
}
fn wrap_array_of_invalid_network_resource(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidNetworkResource(value)
}
fn wrap_array_of_invalid_operation_on_secondary_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidOperationOnSecondaryVm(value)
}
fn wrap_array_of_invalid_power_state(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidPowerState(value)
}
fn wrap_array_of_invalid_privilege(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidPrivilege(value)
}
fn wrap_array_of_invalid_profile_reference_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidProfileReferenceHost(value)
}
fn wrap_array_of_invalid_property_type(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidPropertyType(value)
}
fn wrap_array_of_invalid_property_value(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidPropertyValue(value)
}
fn wrap_array_of_invalid_resource_pool_structure_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidResourcePoolStructureFault(value)
}
fn wrap_array_of_invalid_scheduled_task(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidScheduledTask(value)
}
fn wrap_array_of_invalid_snapshot_format(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidSnapshotFormat(value)
}
fn wrap_array_of_invalid_state(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidState(value)
}
fn wrap_array_of_invalid_vm_config(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidVmConfig(value)
}
fn wrap_array_of_invalid_vm_state(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidVmState(value)
}
fn wrap_array_of_inventory_has_standard_alone_hosts(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInventoryHasStandardAloneHosts(value)
}
fn wrap_array_of_ip_hostname_generator_error(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIpHostnameGeneratorError(value)
}
fn wrap_array_of_iscsi_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFault(value)
}
fn wrap_array_of_iscsi_fault_invalid_vnic(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultInvalidVnic(value)
}
fn wrap_array_of_iscsi_fault_pnic_in_use(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultPnicInUse(value)
}
fn wrap_array_of_iscsi_fault_vnic_already_bound(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultVnicAlreadyBound(value)
}
fn wrap_array_of_iscsi_fault_vnic_has_active_paths(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultVnicHasActivePaths(value)
}
fn wrap_array_of_iscsi_fault_vnic_has_multiple_uplinks(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultVnicHasMultipleUplinks(value)
}
fn wrap_array_of_iscsi_fault_vnic_has_no_uplinks(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultVnicHasNoUplinks(value)
}
fn wrap_array_of_iscsi_fault_vnic_has_wrong_uplink(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultVnicHasWrongUplink(value)
}
fn wrap_array_of_iscsi_fault_vnic_in_use(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultVnicInUse(value)
}
fn wrap_array_of_iscsi_fault_vnic_is_last_path(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultVnicIsLastPath(value)
}
fn wrap_array_of_iscsi_fault_vnic_not_bound(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultVnicNotBound(value)
}
fn wrap_array_of_iscsi_fault_vnic_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfIscsiFaultVnicNotFound(value)
}
fn wrap_array_of_key_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfKeyNotFound(value)
}
fn wrap_array_of_large_rdm_conversion_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLargeRdmConversionNotSupported(value)
}
fn wrap_array_of_large_rdm_not_supported_on_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLargeRdmNotSupportedOnDatastore(value)
}
fn wrap_array_of_legacy_network_interface_in_use(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLegacyNetworkInterfaceInUse(value)
}
fn wrap_array_of_license_assignment_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLicenseAssignmentFailed(value)
}
fn wrap_array_of_license_downgrade_disallowed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLicenseDowngradeDisallowed(value)
}
fn wrap_array_of_license_entity_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLicenseEntityNotFound(value)
}
fn wrap_array_of_license_expired(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLicenseExpired(value)
}
fn wrap_array_of_license_key_entity_mismatch(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLicenseKeyEntityMismatch(value)
}
fn wrap_array_of_license_restricted(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLicenseRestricted(value)
}
fn wrap_array_of_license_server_unavailable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLicenseServerUnavailable(value)
}
fn wrap_array_of_license_source_unavailable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLicenseSourceUnavailable(value)
}
fn wrap_array_of_limit_exceeded(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLimitExceeded(value)
}
fn wrap_array_of_linux_volume_not_clean(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLinuxVolumeNotClean(value)
}
fn wrap_array_of_log_bundling_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfLogBundlingFailed(value)
}
fn wrap_array_of_maintenance_mode_file_move(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMaintenanceModeFileMove(value)
}
fn wrap_array_of_memory_file_format_not_supported_by_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMemoryFileFormatNotSupportedByDatastore(value)
}
fn wrap_array_of_memory_hot_plug_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMemoryHotPlugNotSupported(value)
}
fn wrap_array_of_memory_size_not_recommended(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMemorySizeNotRecommended(value)
}
fn wrap_array_of_memory_size_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMemorySizeNotSupported(value)
}
fn wrap_array_of_memory_size_not_supported_by_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMemorySizeNotSupportedByDatastore(value)
}
fn wrap_array_of_memory_snapshot_on_independent_disk(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMemorySnapshotOnIndependentDisk(value)
}
fn wrap_array_of_method_already_disabled_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMethodAlreadyDisabledFault(value)
}
fn wrap_array_of_method_disabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMethodDisabled(value)
}
fn wrap_array_of_migration_disabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMigrationDisabled(value)
}
fn wrap_array_of_migration_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMigrationFault(value)
}
fn wrap_array_of_migration_feature_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMigrationFeatureNotSupported(value)
}
fn wrap_array_of_migration_not_ready(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMigrationNotReady(value)
}
fn wrap_array_of_mismatched_bundle(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMismatchedBundle(value)
}
fn wrap_array_of_mismatched_network_policies(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMismatchedNetworkPolicies(value)
}
fn wrap_array_of_mismatched_v_motion_network_names(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMismatchedVMotionNetworkNames(value)
}
fn wrap_array_of_missing_bmc_support(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMissingBmcSupport(value)
}
fn wrap_array_of_missing_controller(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMissingController(value)
}
fn wrap_array_of_missing_ip_pool(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMissingIpPool(value)
}
fn wrap_array_of_missing_linux_cust_resources(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMissingLinuxCustResources(value)
}
fn wrap_array_of_missing_network_ip_config(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMissingNetworkIpConfig(value)
}
fn wrap_array_of_missing_power_off_configuration(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMissingPowerOffConfiguration(value)
}
fn wrap_array_of_missing_power_on_configuration(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMissingPowerOnConfiguration(value)
}
fn wrap_array_of_missing_windows_cust_resources(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMissingWindowsCustResources(value)
}
fn wrap_array_of_mks_connection_limit_reached(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMksConnectionLimitReached(value)
}
fn wrap_array_of_mount_error(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMountError(value)
}
fn wrap_array_of_multi_writer_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMultiWriterNotSupported(value)
}
fn wrap_array_of_multiple_certificates_verify_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMultipleCertificatesVerifyFault(value)
}
fn wrap_array_of_multiple_certificates_verify_fault_thumbprint_data(value: Vec<super::structs::MultipleCertificatesVerifyFaultThumbprintData>) -> ValueElements {
    ValueElements::ArrayOfMultipleCertificatesVerifyFaultThumbprintData(value)
}
fn wrap_array_of_multiple_snapshots_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMultipleSnapshotsNotSupported(value)
}
fn wrap_array_of_namespace_full(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNamespaceFull(value)
}
fn wrap_array_of_namespace_limit_reached(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNamespaceLimitReached(value)
}
fn wrap_array_of_namespace_write_protected(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNamespaceWriteProtected(value)
}
fn wrap_array_of_nas_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNasConfigFault(value)
}
fn wrap_array_of_nas_connection_limit_reached(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNasConnectionLimitReached(value)
}
fn wrap_array_of_nas_session_credential_conflict(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNasSessionCredentialConflict(value)
}
fn wrap_array_of_nas_volume_not_mounted(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNasVolumeNotMounted(value)
}
fn wrap_array_of_network_copy_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNetworkCopyFault(value)
}
fn wrap_array_of_network_disrupted_and_config_rolled_back(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNetworkDisruptedAndConfigRolledBack(value)
}
fn wrap_array_of_network_inaccessible(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNetworkInaccessible(value)
}
fn wrap_array_of_networks_may_not_be_the_same(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNetworksMayNotBeTheSame(value)
}
fn wrap_array_of_nic_setting_mismatch(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNicSettingMismatch(value)
}
fn wrap_array_of_no_active_host_in_cluster(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoActiveHostInCluster(value)
}
fn wrap_array_of_no_available_ip(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoAvailableIp(value)
}
fn wrap_array_of_no_client_certificate(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoClientCertificate(value)
}
fn wrap_array_of_no_compatible_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoCompatibleDatastore(value)
}
fn wrap_array_of_no_compatible_hard_affinity_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoCompatibleHardAffinityHost(value)
}
fn wrap_array_of_no_compatible_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoCompatibleHost(value)
}
fn wrap_array_of_no_compatible_host_with_access_to_device(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoCompatibleHostWithAccessToDevice(value)
}
fn wrap_array_of_no_compatible_soft_affinity_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoCompatibleSoftAffinityHost(value)
}
fn wrap_array_of_no_connected_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoConnectedDatastore(value)
}
fn wrap_array_of_no_disk_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoDiskFound(value)
}
fn wrap_array_of_no_disk_space(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoDiskSpace(value)
}
fn wrap_array_of_no_disks_to_customize(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoDisksToCustomize(value)
}
fn wrap_array_of_no_gateway(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoGateway(value)
}
fn wrap_array_of_no_guest_heartbeat(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoGuestHeartbeat(value)
}
fn wrap_array_of_no_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoHost(value)
}
fn wrap_array_of_no_host_suitable_for_ft_secondary(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoHostSuitableForFtSecondary(value)
}
fn wrap_array_of_no_license_server_configured(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoLicenseServerConfigured(value)
}
fn wrap_array_of_no_peer_host_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoPeerHostFound(value)
}
fn wrap_array_of_no_permission(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoPermission(value)
}
fn wrap_array_of_no_permission_entity_privileges(value: Vec<super::structs::NoPermissionEntityPrivileges>) -> ValueElements {
    ValueElements::ArrayOfNoPermissionEntityPrivileges(value)
}
fn wrap_array_of_no_permission_on_ad(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoPermissionOnAd(value)
}
fn wrap_array_of_no_permission_on_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoPermissionOnHost(value)
}
fn wrap_array_of_no_permission_on_nas_volume(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoPermissionOnNasVolume(value)
}
fn wrap_array_of_no_subject_name(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoSubjectName(value)
}
fn wrap_array_of_no_vc_managed_ip_configured(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoVcManagedIpConfigured(value)
}
fn wrap_array_of_no_virtual_nic(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoVirtualNic(value)
}
fn wrap_array_of_no_vm_in_v_app(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNoVmInVApp(value)
}
fn wrap_array_of_non_ad_user_required(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNonAdUserRequired(value)
}
fn wrap_array_of_non_home_rdmv_motion_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNonHomeRdmvMotionNotSupported(value)
}
fn wrap_array_of_non_persistent_disks_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNonPersistentDisksNotSupported(value)
}
fn wrap_array_of_non_vmware_oui_mac_not_supported_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNonVmwareOuiMacNotSupportedHost(value)
}
fn wrap_array_of_not_a_directory(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotADirectory(value)
}
fn wrap_array_of_not_a_file(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotAFile(value)
}
fn wrap_array_of_not_authenticated(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotAuthenticated(value)
}
fn wrap_array_of_not_enough_cpus(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotEnoughCpus(value)
}
fn wrap_array_of_not_enough_logical_cpus(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotEnoughLogicalCpus(value)
}
fn wrap_array_of_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotFound(value)
}
fn wrap_array_of_not_supported_device_for_ft(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedDeviceForFt(value)
}
fn wrap_array_of_not_supported_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedHost(value)
}
fn wrap_array_of_not_supported_host_for_checksum(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedHostForChecksum(value)
}
fn wrap_array_of_not_supported_host_for_v_flash(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedHostForVFlash(value)
}
fn wrap_array_of_not_supported_host_for_vmcp(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedHostForVmcp(value)
}
fn wrap_array_of_not_supported_host_for_vmem_file(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedHostForVmemFile(value)
}
fn wrap_array_of_not_supported_host_for_vsan(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedHostForVsan(value)
}
fn wrap_array_of_not_supported_host_in_cluster(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedHostInCluster(value)
}
fn wrap_array_of_not_supported_host_in_dvs(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedHostInDvs(value)
}
fn wrap_array_of_not_supported_host_in_ha_cluster(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupportedHostInHaCluster(value)
}
fn wrap_array_of_not_user_configurable_property(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotUserConfigurableProperty(value)
}
fn wrap_array_of_num_virtual_cores_per_socket_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNumVirtualCoresPerSocketNotSupported(value)
}
fn wrap_array_of_num_virtual_cpus_exceeds_limit(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNumVirtualCpusExceedsLimit(value)
}
fn wrap_array_of_num_virtual_cpus_incompatible(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNumVirtualCpusIncompatible(value)
}
fn wrap_array_of_num_virtual_cpus_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNumVirtualCpusNotSupported(value)
}
fn wrap_array_of_operation_disabled_by_guest(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOperationDisabledByGuest(value)
}
fn wrap_array_of_operation_disallowed_on_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOperationDisallowedOnHost(value)
}
fn wrap_array_of_operation_not_supported_by_guest(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOperationNotSupportedByGuest(value)
}
fn wrap_array_of_out_of_bounds(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOutOfBounds(value)
}
fn wrap_array_of_ovf_attribute(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfAttribute(value)
}
fn wrap_array_of_ovf_connected_device(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConnectedDevice(value)
}
fn wrap_array_of_ovf_connected_device_floppy(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConnectedDeviceFloppy(value)
}
fn wrap_array_of_ovf_connected_device_iso(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConnectedDeviceIso(value)
}
fn wrap_array_of_ovf_constraint(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConstraint(value)
}
fn wrap_array_of_ovf_consumer_callback_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConsumerCallbackFault(value)
}
fn wrap_array_of_ovf_consumer_communication_error(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConsumerCommunicationError(value)
}
fn wrap_array_of_ovf_consumer_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConsumerFault(value)
}
fn wrap_array_of_ovf_consumer_invalid_section(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConsumerInvalidSection(value)
}
fn wrap_array_of_ovf_consumer_power_on_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConsumerPowerOnFault(value)
}
fn wrap_array_of_ovf_consumer_undeclared_section(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConsumerUndeclaredSection(value)
}
fn wrap_array_of_ovf_consumer_undefined_prefix(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConsumerUndefinedPrefix(value)
}
fn wrap_array_of_ovf_consumer_validation_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfConsumerValidationFault(value)
}
fn wrap_array_of_ovf_cpu_compatibility(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfCpuCompatibility(value)
}
fn wrap_array_of_ovf_cpu_compatibility_check_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfCpuCompatibilityCheckNotSupported(value)
}
fn wrap_array_of_ovf_disk_mapping_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfDiskMappingNotFound(value)
}
fn wrap_array_of_ovf_disk_order_constraint(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfDiskOrderConstraint(value)
}
fn wrap_array_of_ovf_duplicate_element(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfDuplicateElement(value)
}
fn wrap_array_of_ovf_duplicated_element_boundary(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfDuplicatedElementBoundary(value)
}
fn wrap_array_of_ovf_duplicated_property_id_export(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfDuplicatedPropertyIdExport(value)
}
fn wrap_array_of_ovf_duplicated_property_id_import(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfDuplicatedPropertyIdImport(value)
}
fn wrap_array_of_ovf_element(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfElement(value)
}
fn wrap_array_of_ovf_element_invalid_value(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfElementInvalidValue(value)
}
fn wrap_array_of_ovf_export(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfExport(value)
}
fn wrap_array_of_ovf_export_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfExportFailed(value)
}
fn wrap_array_of_ovf_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfFault(value)
}
fn wrap_array_of_ovf_hardware_check(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfHardwareCheck(value)
}
fn wrap_array_of_ovf_hardware_export(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfHardwareExport(value)
}
fn wrap_array_of_ovf_host_resource_constraint(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfHostResourceConstraint(value)
}
fn wrap_array_of_ovf_host_value_not_parsed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfHostValueNotParsed(value)
}
fn wrap_array_of_ovf_import(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfImport(value)
}
fn wrap_array_of_ovf_import_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfImportFailed(value)
}
fn wrap_array_of_ovf_internal_error(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfInternalError(value)
}
fn wrap_array_of_ovf_invalid_package(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfInvalidPackage(value)
}
fn wrap_array_of_ovf_invalid_value(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfInvalidValue(value)
}
fn wrap_array_of_ovf_invalid_value_configuration(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfInvalidValueConfiguration(value)
}
fn wrap_array_of_ovf_invalid_value_empty(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfInvalidValueEmpty(value)
}
fn wrap_array_of_ovf_invalid_value_format_malformed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfInvalidValueFormatMalformed(value)
}
fn wrap_array_of_ovf_invalid_value_reference(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfInvalidValueReference(value)
}
fn wrap_array_of_ovf_invalid_vm_name(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfInvalidVmName(value)
}
fn wrap_array_of_ovf_mapped_os_id(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfMappedOsId(value)
}
fn wrap_array_of_ovf_missing_attribute(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfMissingAttribute(value)
}
fn wrap_array_of_ovf_missing_element(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfMissingElement(value)
}
fn wrap_array_of_ovf_missing_element_normal_boundary(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfMissingElementNormalBoundary(value)
}
fn wrap_array_of_ovf_missing_hardware(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfMissingHardware(value)
}
fn wrap_array_of_ovf_network_mapping_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfNetworkMappingNotSupported(value)
}
fn wrap_array_of_ovf_no_host_nic(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfNoHostNic(value)
}
fn wrap_array_of_ovf_no_space_on_controller(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfNoSpaceOnController(value)
}
fn wrap_array_of_ovf_no_supported_hardware_family(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfNoSupportedHardwareFamily(value)
}
fn wrap_array_of_ovf_property(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfProperty(value)
}
fn wrap_array_of_ovf_property_export(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfPropertyExport(value)
}
fn wrap_array_of_ovf_property_network(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfPropertyNetwork(value)
}
fn wrap_array_of_ovf_property_network_export(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfPropertyNetworkExport(value)
}
fn wrap_array_of_ovf_property_qualifier(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfPropertyQualifier(value)
}
fn wrap_array_of_ovf_property_qualifier_duplicate(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfPropertyQualifierDuplicate(value)
}
fn wrap_array_of_ovf_property_qualifier_ignored(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfPropertyQualifierIgnored(value)
}
fn wrap_array_of_ovf_property_type(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfPropertyType(value)
}
fn wrap_array_of_ovf_property_value(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfPropertyValue(value)
}
fn wrap_array_of_ovf_system_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfSystemFault(value)
}
fn wrap_array_of_ovf_to_xml_unsupported_element(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfToXmlUnsupportedElement(value)
}
fn wrap_array_of_ovf_unable_to_export_disk(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnableToExportDisk(value)
}
fn wrap_array_of_ovf_unexpected_element(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnexpectedElement(value)
}
fn wrap_array_of_ovf_unknown_device(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnknownDevice(value)
}
fn wrap_array_of_ovf_unknown_device_backing(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnknownDeviceBacking(value)
}
fn wrap_array_of_ovf_unknown_entity(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnknownEntity(value)
}
fn wrap_array_of_ovf_unsupported_attribute(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedAttribute(value)
}
fn wrap_array_of_ovf_unsupported_attribute_value(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedAttributeValue(value)
}
fn wrap_array_of_ovf_unsupported_device_backing_info(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedDeviceBackingInfo(value)
}
fn wrap_array_of_ovf_unsupported_device_backing_option(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedDeviceBackingOption(value)
}
fn wrap_array_of_ovf_unsupported_device_export(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedDeviceExport(value)
}
fn wrap_array_of_ovf_unsupported_disk_provisioning(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedDiskProvisioning(value)
}
fn wrap_array_of_ovf_unsupported_element(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedElement(value)
}
fn wrap_array_of_ovf_unsupported_element_value(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedElementValue(value)
}
fn wrap_array_of_ovf_unsupported_package(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedPackage(value)
}
fn wrap_array_of_ovf_unsupported_section(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedSection(value)
}
fn wrap_array_of_ovf_unsupported_sub_type(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedSubType(value)
}
fn wrap_array_of_ovf_unsupported_type(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfUnsupportedType(value)
}
fn wrap_array_of_ovf_wrong_element(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfWrongElement(value)
}
fn wrap_array_of_ovf_wrong_namespace(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfWrongNamespace(value)
}
fn wrap_array_of_ovf_xml_format(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfOvfXmlFormat(value)
}
fn wrap_array_of_password_expired(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPasswordExpired(value)
}
fn wrap_array_of_patch_already_installed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPatchAlreadyInstalled(value)
}
fn wrap_array_of_patch_binaries_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPatchBinariesNotFound(value)
}
fn wrap_array_of_patch_install_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPatchInstallFailed(value)
}
fn wrap_array_of_patch_integrity_error(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPatchIntegrityError(value)
}
fn wrap_array_of_patch_metadata_corrupted(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPatchMetadataCorrupted(value)
}
fn wrap_array_of_patch_metadata_invalid(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPatchMetadataInvalid(value)
}
fn wrap_array_of_patch_metadata_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPatchMetadataNotFound(value)
}
fn wrap_array_of_patch_missing_dependencies(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPatchMissingDependencies(value)
}
fn wrap_array_of_patch_not_applicable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPatchNotApplicable(value)
}
fn wrap_array_of_patch_superseded(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPatchSuperseded(value)
}
fn wrap_array_of_phys_compat_rdm_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPhysCompatRdmNotSupported(value)
}
fn wrap_array_of_platform_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPlatformConfigFault(value)
}
fn wrap_array_of_power_on_ft_secondary_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPowerOnFtSecondaryFailed(value)
}
fn wrap_array_of_power_on_ft_secondary_timedout(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfPowerOnFtSecondaryTimedout(value)
}
fn wrap_array_of_profile_update_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfProfileUpdateFailed(value)
}
fn wrap_array_of_profile_update_failed_update_failure(value: Vec<super::structs::ProfileUpdateFailedUpdateFailure>) -> ValueElements {
    ValueElements::ArrayOfProfileUpdateFailedUpdateFailure(value)
}
fn wrap_array_of_quarantine_mode_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfQuarantineModeFault(value)
}
fn wrap_array_of_question_pending(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfQuestionPending(value)
}
fn wrap_array_of_quiesce_datastore_io_for_ha_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfQuiesceDatastoreIoForHaFailed(value)
}
fn wrap_array_of_rdm_conversion_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRdmConversionNotSupported(value)
}
fn wrap_array_of_rdm_not_preserved(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRdmNotPreserved(value)
}
fn wrap_array_of_rdm_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRdmNotSupported(value)
}
fn wrap_array_of_rdm_not_supported_on_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRdmNotSupportedOnDatastore(value)
}
fn wrap_array_of_rdm_points_to_inaccessible_disk(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRdmPointsToInaccessibleDisk(value)
}
fn wrap_array_of_raw_disk_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRawDiskNotSupported(value)
}
fn wrap_array_of_read_host_resource_pool_tree_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReadHostResourcePoolTreeFailed(value)
}
fn wrap_array_of_read_only_disks_with_legacy_destination(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReadOnlyDisksWithLegacyDestination(value)
}
fn wrap_array_of_reboot_required(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRebootRequired(value)
}
fn wrap_array_of_record_replay_disabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRecordReplayDisabled(value)
}
fn wrap_array_of_remote_device_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRemoteDeviceNotSupported(value)
}
fn wrap_array_of_remove_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRemoveFailed(value)
}
fn wrap_array_of_replication_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReplicationConfigFault(value)
}
fn wrap_array_of_replication_disk_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReplicationDiskConfigFault(value)
}
fn wrap_array_of_replication_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReplicationFault(value)
}
fn wrap_array_of_replication_incompatible_with_ft(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReplicationIncompatibleWithFt(value)
}
fn wrap_array_of_replication_invalid_options(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReplicationInvalidOptions(value)
}
fn wrap_array_of_replication_not_supported_on_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReplicationNotSupportedOnHost(value)
}
fn wrap_array_of_replication_vm_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReplicationVmConfigFault(value)
}
fn wrap_array_of_replication_vm_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReplicationVmFault(value)
}
fn wrap_array_of_replication_vm_in_progress_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfReplicationVmInProgressFault(value)
}
fn wrap_array_of_resource_in_use(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfResourceInUse(value)
}
fn wrap_array_of_resource_not_available(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfResourceNotAvailable(value)
}
fn wrap_array_of_restricted_by_administrator(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRestrictedByAdministrator(value)
}
fn wrap_array_of_restricted_version(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRestrictedVersion(value)
}
fn wrap_array_of_rollback_failure(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRollbackFailure(value)
}
fn wrap_array_of_rule_violation(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRuleViolation(value)
}
fn wrap_array_of_ssl_disabled_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSslDisabledFault(value)
}
fn wrap_array_of_ssl_verify_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSslVerifyFault(value)
}
fn wrap_array_of_sspi_challenge(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSspiChallenge(value)
}
fn wrap_array_of_secondary_vm_already_disabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSecondaryVmAlreadyDisabled(value)
}
fn wrap_array_of_secondary_vm_already_enabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSecondaryVmAlreadyEnabled(value)
}
fn wrap_array_of_secondary_vm_already_registered(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSecondaryVmAlreadyRegistered(value)
}
fn wrap_array_of_secondary_vm_not_registered(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSecondaryVmNotRegistered(value)
}
fn wrap_array_of_shared_bus_controller_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSharedBusControllerNotSupported(value)
}
fn wrap_array_of_shrink_disk_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfShrinkDiskFault(value)
}
fn wrap_array_of_snapshot_clone_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotCloneNotSupported(value)
}
fn wrap_array_of_snapshot_copy_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotCopyNotSupported(value)
}
fn wrap_array_of_snapshot_disabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotDisabled(value)
}
fn wrap_array_of_snapshot_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotFault(value)
}
fn wrap_array_of_snapshot_incompatible_device_in_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotIncompatibleDeviceInVm(value)
}
fn wrap_array_of_snapshot_locked(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotLocked(value)
}
fn wrap_array_of_snapshot_move_from_non_home_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotMoveFromNonHomeNotSupported(value)
}
fn wrap_array_of_snapshot_move_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotMoveNotSupported(value)
}
fn wrap_array_of_snapshot_move_to_non_home_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotMoveToNonHomeNotSupported(value)
}
fn wrap_array_of_snapshot_no_change(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotNoChange(value)
}
fn wrap_array_of_snapshot_revert_issue(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSnapshotRevertIssue(value)
}
fn wrap_array_of_soft_rule_vio_correction_disallowed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSoftRuleVioCorrectionDisallowed(value)
}
fn wrap_array_of_soft_rule_vio_correction_impact(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSoftRuleVioCorrectionImpact(value)
}
fn wrap_array_of_solution_user_required(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSolutionUserRequired(value)
}
fn wrap_array_of_ssd_disk_not_available(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSsdDiskNotAvailable(value)
}
fn wrap_array_of_storage_drs_cannot_move_disk_in_multi_writer_mode(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsCannotMoveDiskInMultiWriterMode(value)
}
fn wrap_array_of_storage_drs_cannot_move_ft_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsCannotMoveFtVm(value)
}
fn wrap_array_of_storage_drs_cannot_move_independent_disk(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsCannotMoveIndependentDisk(value)
}
fn wrap_array_of_storage_drs_cannot_move_manually_placed_swap_file(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsCannotMoveManuallyPlacedSwapFile(value)
}
fn wrap_array_of_storage_drs_cannot_move_manually_placed_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsCannotMoveManuallyPlacedVm(value)
}
fn wrap_array_of_storage_drs_cannot_move_shared_disk(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsCannotMoveSharedDisk(value)
}
fn wrap_array_of_storage_drs_cannot_move_template(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsCannotMoveTemplate(value)
}
fn wrap_array_of_storage_drs_cannot_move_vm_in_user_folder(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsCannotMoveVmInUserFolder(value)
}
fn wrap_array_of_storage_drs_cannot_move_vm_with_mounted_cdrom(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsCannotMoveVmWithMountedCdrom(value)
}
fn wrap_array_of_storage_drs_cannot_move_vm_with_no_files_in_layout(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsCannotMoveVmWithNoFilesInLayout(value)
}
fn wrap_array_of_storage_drs_datacenters_cannot_share_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsDatacentersCannotShareDatastore(value)
}
fn wrap_array_of_storage_drs_disabled_on_vm(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsDisabledOnVm(value)
}
fn wrap_array_of_storage_drs_hbr_disk_not_movable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsHbrDiskNotMovable(value)
}
fn wrap_array_of_storage_drs_hms_move_in_progress(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsHmsMoveInProgress(value)
}
fn wrap_array_of_storage_drs_hms_unreachable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsHmsUnreachable(value)
}
fn wrap_array_of_storage_drs_iolb_disabled_internally(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsIolbDisabledInternally(value)
}
fn wrap_array_of_storage_drs_relocate_disabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsRelocateDisabled(value)
}
fn wrap_array_of_storage_drs_stale_hms_collection(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsStaleHmsCollection(value)
}
fn wrap_array_of_storage_drs_unable_to_move_files(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsUnableToMoveFiles(value)
}
fn wrap_array_of_storage_v_motion_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageVMotionNotSupported(value)
}
fn wrap_array_of_storage_vmotion_incompatible(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfStorageVmotionIncompatible(value)
}
fn wrap_array_of_suspended_relocate_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSuspendedRelocateNotSupported(value)
}
fn wrap_array_of_swap_datastore_not_writable_on_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSwapDatastoreNotWritableOnHost(value)
}
fn wrap_array_of_swap_datastore_unset(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSwapDatastoreUnset(value)
}
fn wrap_array_of_swap_placement_override_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSwapPlacementOverrideNotSupported(value)
}
fn wrap_array_of_switch_ip_unset(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSwitchIpUnset(value)
}
fn wrap_array_of_switch_not_in_upgrade_mode(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSwitchNotInUpgradeMode(value)
}
fn wrap_array_of_task_in_progress(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTaskInProgress(value)
}
fn wrap_array_of_third_party_license_assignment_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfThirdPartyLicenseAssignmentFailed(value)
}
fn wrap_array_of_timedout(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTimedout(value)
}
fn wrap_array_of_too_many_concurrent_native_clones(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTooManyConcurrentNativeClones(value)
}
fn wrap_array_of_too_many_consecutive_overrides(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTooManyConsecutiveOverrides(value)
}
fn wrap_array_of_too_many_devices(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTooManyDevices(value)
}
fn wrap_array_of_too_many_disks_on_legacy_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTooManyDisksOnLegacyHost(value)
}
fn wrap_array_of_too_many_guest_logons(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTooManyGuestLogons(value)
}
fn wrap_array_of_too_many_hosts(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTooManyHosts(value)
}
fn wrap_array_of_too_many_native_clone_levels(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTooManyNativeCloneLevels(value)
}
fn wrap_array_of_too_many_native_clones_on_file(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTooManyNativeClonesOnFile(value)
}
fn wrap_array_of_too_many_snapshot_levels(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfTooManySnapshotLevels(value)
}
fn wrap_array_of_tools_already_upgraded(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfToolsAlreadyUpgraded(value)
}
fn wrap_array_of_tools_auto_upgrade_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfToolsAutoUpgradeNotSupported(value)
}
fn wrap_array_of_tools_image_copy_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfToolsImageCopyFailed(value)
}
fn wrap_array_of_tools_image_not_available(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfToolsImageNotAvailable(value)
}
fn wrap_array_of_tools_image_signature_check_failed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfToolsImageSignatureCheckFailed(value)
}
fn wrap_array_of_tools_installation_in_progress(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfToolsInstallationInProgress(value)
}
fn wrap_array_of_tools_unavailable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfToolsUnavailable(value)
}
fn wrap_array_of_tools_upgrade_cancelled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfToolsUpgradeCancelled(value)
}
fn wrap_array_of_un_supported_datastore_for_v_flash(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnSupportedDatastoreForVFlash(value)
}
fn wrap_array_of_uncommitted_undoable_disk(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUncommittedUndoableDisk(value)
}
fn wrap_array_of_unconfigured_property_value(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnconfiguredPropertyValue(value)
}
fn wrap_array_of_uncustomizable_guest(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUncustomizableGuest(value)
}
fn wrap_array_of_unexpected_customization_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnexpectedCustomizationFault(value)
}
fn wrap_array_of_unrecognized_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnrecognizedHost(value)
}
fn wrap_array_of_unshared_swap_v_motion_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnsharedSwapVMotionNotSupported(value)
}
fn wrap_array_of_unsupported_datastore(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnsupportedDatastore(value)
}
fn wrap_array_of_unsupported_guest(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnsupportedGuest(value)
}
fn wrap_array_of_unsupported_vim_api_version(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnsupportedVimApiVersion(value)
}
fn wrap_array_of_unsupported_vmx_location(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnsupportedVmxLocation(value)
}
fn wrap_array_of_unused_virtual_disk_blocks_not_scrubbed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnusedVirtualDiskBlocksNotScrubbed(value)
}
fn wrap_array_of_user_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUserNotFound(value)
}
fn wrap_array_of_v_app_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVAppConfigFault(value)
}
fn wrap_array_of_v_app_not_running(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVAppNotRunning(value)
}
fn wrap_array_of_v_app_operation_in_progress(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVAppOperationInProgress(value)
}
fn wrap_array_of_v_app_property_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVAppPropertyFault(value)
}
fn wrap_array_of_v_app_task_in_progress(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVAppTaskInProgress(value)
}
fn wrap_array_of_v_flash_cache_hot_config_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVFlashCacheHotConfigNotSupported(value)
}
fn wrap_array_of_v_flash_module_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVFlashModuleNotSupported(value)
}
fn wrap_array_of_v_flash_module_version_incompatible(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVFlashModuleVersionIncompatible(value)
}
fn wrap_array_of_vmi_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmiNotSupported(value)
}
fn wrap_array_of_vm_on_conflict_dv_port(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmOnConflictDvPort(value)
}
fn wrap_array_of_vm_on_virtual_intranet(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmOnVirtualIntranet(value)
}
fn wrap_array_of_v_motion_across_network_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVMotionAcrossNetworkNotSupported(value)
}
fn wrap_array_of_v_motion_interface_issue(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVMotionInterfaceIssue(value)
}
fn wrap_array_of_v_motion_link_capacity_low(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVMotionLinkCapacityLow(value)
}
fn wrap_array_of_v_motion_link_down(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVMotionLinkDown(value)
}
fn wrap_array_of_v_motion_not_configured(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVMotionNotConfigured(value)
}
fn wrap_array_of_v_motion_not_licensed(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVMotionNotLicensed(value)
}
fn wrap_array_of_v_motion_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVMotionNotSupported(value)
}
fn wrap_array_of_v_motion_protocol_incompatible(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVMotionProtocolIncompatible(value)
}
fn wrap_array_of_vim_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVimFault(value)
}
fn wrap_array_of_virtual_disk_blocks_not_fully_provisioned(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskBlocksNotFullyProvisioned(value)
}
fn wrap_array_of_virtual_disk_mode_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskModeNotSupported(value)
}
fn wrap_array_of_virtual_ethernet_card_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVirtualEthernetCardNotSupported(value)
}
fn wrap_array_of_virtual_hardware_compatibility_issue(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVirtualHardwareCompatibilityIssue(value)
}
fn wrap_array_of_virtual_hardware_version_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVirtualHardwareVersionNotSupported(value)
}
fn wrap_array_of_vm_already_exists_in_datacenter(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmAlreadyExistsInDatacenter(value)
}
fn wrap_array_of_vm_config_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmConfigFault(value)
}
fn wrap_array_of_vm_config_incompatible_for_fault_tolerance(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmConfigIncompatibleForFaultTolerance(value)
}
fn wrap_array_of_vm_config_incompatible_for_record_replay(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmConfigIncompatibleForRecordReplay(value)
}
fn wrap_array_of_vm_fault_tolerance_config_issue(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmFaultToleranceConfigIssue(value)
}
fn wrap_array_of_vm_fault_tolerance_config_issue_wrapper(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmFaultToleranceConfigIssueWrapper(value)
}
fn wrap_array_of_vm_fault_tolerance_invalid_file_backing(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmFaultToleranceInvalidFileBacking(value)
}
fn wrap_array_of_vm_fault_tolerance_issue(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmFaultToleranceIssue(value)
}
fn wrap_array_of_vm_fault_tolerance_op_issues_list(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmFaultToleranceOpIssuesList(value)
}
fn wrap_array_of_vm_fault_tolerance_too_many_ft_vcpus_on_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmFaultToleranceTooManyFtVcpusOnHost(value)
}
fn wrap_array_of_vm_fault_tolerance_too_many_v_ms_on_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmFaultToleranceTooManyVMsOnHost(value)
}
fn wrap_array_of_vm_host_affinity_rule_violation(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmHostAffinityRuleViolation(value)
}
fn wrap_array_of_vm_limit_license(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmLimitLicense(value)
}
fn wrap_array_of_vm_metadata_manager_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmMetadataManagerFault(value)
}
fn wrap_array_of_vm_monitor_incompatible_for_fault_tolerance(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmMonitorIncompatibleForFaultTolerance(value)
}
fn wrap_array_of_vm_power_on_disabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmPowerOnDisabled(value)
}
fn wrap_array_of_vm_smp_fault_tolerance_too_many_v_ms_on_host(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmSmpFaultToleranceTooManyVMsOnHost(value)
}
fn wrap_array_of_vm_tools_upgrade_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmToolsUpgradeFault(value)
}
fn wrap_array_of_vm_validate_max_device(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmValidateMaxDevice(value)
}
fn wrap_array_of_vm_wwn_conflict(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmWwnConflict(value)
}
fn wrap_array_of_vmfs_already_mounted(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmfsAlreadyMounted(value)
}
fn wrap_array_of_vmfs_ambiguous_mount(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmfsAmbiguousMount(value)
}
fn wrap_array_of_vmfs_mount_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmfsMountFault(value)
}
fn wrap_array_of_vmotion_interface_not_enabled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVmotionInterfaceNotEnabled(value)
}
fn wrap_array_of_volume_editor_error(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVolumeEditorError(value)
}
fn wrap_array_of_vram_limit_license(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVramLimitLicense(value)
}
fn wrap_array_of_vsan_cluster_uuid_mismatch(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterUuidMismatch(value)
}
fn wrap_array_of_vsan_disk_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVsanDiskFault(value)
}
fn wrap_array_of_vsan_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVsanFault(value)
}
fn wrap_array_of_vsan_incompatible_disk_mapping(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVsanIncompatibleDiskMapping(value)
}
fn wrap_array_of_vsan_node_not_master(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVsanNodeNotMaster(value)
}
fn wrap_array_of_vsan_ssl_verify_cert_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVsanSslVerifyCertFault(value)
}
fn wrap_array_of_vspan_dest_port_conflict(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVspanDestPortConflict(value)
}
fn wrap_array_of_vspan_port_conflict(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVspanPortConflict(value)
}
fn wrap_array_of_vspan_port_move_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVspanPortMoveFault(value)
}
fn wrap_array_of_vspan_port_promisc_change_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVspanPortPromiscChangeFault(value)
}
fn wrap_array_of_vspan_portgroup_promisc_change_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVspanPortgroupPromiscChangeFault(value)
}
fn wrap_array_of_vspan_portgroup_type_change_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVspanPortgroupTypeChangeFault(value)
}
fn wrap_array_of_vspan_promiscuous_port_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVspanPromiscuousPortNotSupported(value)
}
fn wrap_array_of_vspan_same_session_port_conflict(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVspanSameSessionPortConflict(value)
}
fn wrap_array_of_wake_on_lan_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfWakeOnLanNotSupported(value)
}
fn wrap_array_of_wake_on_lan_not_supported_by_vmotion_nic(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfWakeOnLanNotSupportedByVmotionNic(value)
}
fn wrap_array_of_will_lose_ha_protection(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfWillLoseHaProtection(value)
}
fn wrap_array_of_will_modify_config_cpu_requirements(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfWillModifyConfigCpuRequirements(value)
}
fn wrap_array_of_will_reset_snapshot_directory(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfWillResetSnapshotDirectory(value)
}
fn wrap_array_of_wipe_disk_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfWipeDiskFault(value)
}
fn wrap_array_of_host_active_directory_info(value: Vec<super::structs::HostActiveDirectoryInfo>) -> ValueElements {
    ValueElements::ArrayOfHostActiveDirectoryInfo(value)
}
fn wrap_array_of_host_active_directory(value: Vec<super::structs::HostActiveDirectory>) -> ValueElements {
    ValueElements::ArrayOfHostActiveDirectory(value)
}
fn wrap_array_of_host_active_directory_spec(value: Vec<super::structs::HostActiveDirectorySpec>) -> ValueElements {
    ValueElements::ArrayOfHostActiveDirectorySpec(value)
}
fn wrap_array_of_host_assignable_hardware_binding(value: Vec<super::structs::HostAssignableHardwareBinding>) -> ValueElements {
    ValueElements::ArrayOfHostAssignableHardwareBinding(value)
}
fn wrap_array_of_host_assignable_hardware_config(value: Vec<super::structs::HostAssignableHardwareConfig>) -> ValueElements {
    ValueElements::ArrayOfHostAssignableHardwareConfig(value)
}
fn wrap_array_of_host_assignable_hardware_config_attribute_override(value: Vec<super::structs::HostAssignableHardwareConfigAttributeOverride>) -> ValueElements {
    ValueElements::ArrayOfHostAssignableHardwareConfigAttributeOverride(value)
}
fn wrap_array_of_host_authentication_info(value: Vec<super::structs::HostAuthenticationInfo>) -> ValueElements {
    ValueElements::ArrayOfHostAuthenticationInfo(value)
}
fn wrap_array_of_host_authentication_manager_info(value: Vec<super::structs::HostAuthenticationManagerInfo>) -> ValueElements {
    ValueElements::ArrayOfHostAuthenticationManagerInfo(value)
}
fn wrap_array_of_auto_start_power_info(value: Vec<super::structs::AutoStartPowerInfo>) -> ValueElements {
    ValueElements::ArrayOfAutoStartPowerInfo(value)
}
fn wrap_array_of_host_auto_start_manager_config(value: Vec<super::structs::HostAutoStartManagerConfig>) -> ValueElements {
    ValueElements::ArrayOfHostAutoStartManagerConfig(value)
}
fn wrap_array_of_auto_start_defaults(value: Vec<super::structs::AutoStartDefaults>) -> ValueElements {
    ValueElements::ArrayOfAutoStartDefaults(value)
}
fn wrap_array_of_host_bios_info(value: Vec<super::structs::HostBiosInfo>) -> ValueElements {
    ValueElements::ArrayOfHostBiosInfo(value)
}
fn wrap_array_of_host_block_adapter_target_transport(value: Vec<super::structs::HostBlockAdapterTargetTransport>) -> ValueElements {
    ValueElements::ArrayOfHostBlockAdapterTargetTransport(value)
}
fn wrap_array_of_host_block_hba(value: Vec<super::structs::HostBlockHba>) -> ValueElements {
    ValueElements::ArrayOfHostBlockHba(value)
}
fn wrap_array_of_host_boot_device_info(value: Vec<super::structs::HostBootDeviceInfo>) -> ValueElements {
    ValueElements::ArrayOfHostBootDeviceInfo(value)
}
fn wrap_array_of_host_boot_device(value: Vec<super::structs::HostBootDevice>) -> ValueElements {
    ValueElements::ArrayOfHostBootDevice(value)
}
fn wrap_array_of_host_cache_configuration_info(value: Vec<super::structs::HostCacheConfigurationInfo>) -> ValueElements {
    ValueElements::ArrayOfHostCacheConfigurationInfo(value)
}
fn wrap_array_of_host_cache_configuration_spec(value: Vec<super::structs::HostCacheConfigurationSpec>) -> ValueElements {
    ValueElements::ArrayOfHostCacheConfigurationSpec(value)
}
fn wrap_array_of_host_capability(value: Vec<super::structs::HostCapability>) -> ValueElements {
    ValueElements::ArrayOfHostCapability(value)
}
fn wrap_array_of_host_certificate_manager_certificate_info(value: Vec<super::structs::HostCertificateManagerCertificateInfo>) -> ValueElements {
    ValueElements::ArrayOfHostCertificateManagerCertificateInfo(value)
}
fn wrap_array_of_host_certificate_manager_certificate_spec(value: Vec<super::structs::HostCertificateManagerCertificateSpec>) -> ValueElements {
    ValueElements::ArrayOfHostCertificateManagerCertificateSpec(value)
}
fn wrap_array_of_host_config_change(value: Vec<super::structs::HostConfigChange>) -> ValueElements {
    ValueElements::ArrayOfHostConfigChange(value)
}
fn wrap_array_of_host_config_info(value: Vec<super::structs::HostConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfHostConfigInfo(value)
}
fn wrap_array_of_host_config_manager(value: Vec<super::structs::HostConfigManager>) -> ValueElements {
    ValueElements::ArrayOfHostConfigManager(value)
}
fn wrap_array_of_host_config_spec(value: Vec<super::structs::HostConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfHostConfigSpec(value)
}
fn wrap_array_of_host_connect_info(value: Vec<super::structs::HostConnectInfo>) -> ValueElements {
    ValueElements::ArrayOfHostConnectInfo(value)
}
fn wrap_array_of_host_datastore_exists_connect_info(value: Vec<super::structs::HostDatastoreExistsConnectInfo>) -> ValueElements {
    ValueElements::ArrayOfHostDatastoreExistsConnectInfo(value)
}
fn wrap_array_of_host_datastore_name_conflict_connect_info(value: Vec<super::structs::HostDatastoreNameConflictConnectInfo>) -> ValueElements {
    ValueElements::ArrayOfHostDatastoreNameConflictConnectInfo(value)
}
fn wrap_array_of_host_license_connect_info(value: Vec<super::structs::HostLicenseConnectInfo>) -> ValueElements {
    ValueElements::ArrayOfHostLicenseConnectInfo(value)
}
fn wrap_array_of_host_new_network_connect_info(value: Vec<super::structs::HostNewNetworkConnectInfo>) -> ValueElements {
    ValueElements::ArrayOfHostNewNetworkConnectInfo(value)
}
fn wrap_array_of_host_connect_spec(value: Vec<super::structs::HostConnectSpec>) -> ValueElements {
    ValueElements::ArrayOfHostConnectSpec(value)
}
fn wrap_array_of_host_cpu_id_info(value: Vec<super::structs::HostCpuIdInfo>) -> ValueElements {
    ValueElements::ArrayOfHostCpuIdInfo(value)
}
fn wrap_array_of_host_cpu_info(value: Vec<super::structs::HostCpuInfo>) -> ValueElements {
    ValueElements::ArrayOfHostCpuInfo(value)
}
fn wrap_array_of_host_cpu_package(value: Vec<super::structs::HostCpuPackage>) -> ValueElements {
    ValueElements::ArrayOfHostCpuPackage(value)
}
fn wrap_array_of_host_cpu_power_management_info(value: Vec<super::structs::HostCpuPowerManagementInfo>) -> ValueElements {
    ValueElements::ArrayOfHostCpuPowerManagementInfo(value)
}
fn wrap_array_of_host_cpu_scheduler_info(value: Vec<super::structs::HostCpuSchedulerInfo>) -> ValueElements {
    ValueElements::ArrayOfHostCpuSchedulerInfo(value)
}
fn wrap_array_of_host_hyper_thread_schedule_info(value: Vec<super::structs::HostHyperThreadScheduleInfo>) -> ValueElements {
    ValueElements::ArrayOfHostHyperThreadScheduleInfo(value)
}
fn wrap_array_of_file_query_flags(value: Vec<super::structs::FileQueryFlags>) -> ValueElements {
    ValueElements::ArrayOfFileQueryFlags(value)
}
fn wrap_array_of_floppy_image_file_info(value: Vec<super::structs::FloppyImageFileInfo>) -> ValueElements {
    ValueElements::ArrayOfFloppyImageFileInfo(value)
}
fn wrap_array_of_floppy_image_file_query(value: Vec<super::structs::FloppyImageFileQuery>) -> ValueElements {
    ValueElements::ArrayOfFloppyImageFileQuery(value)
}
fn wrap_array_of_folder_file_info(value: Vec<super::structs::FolderFileInfo>) -> ValueElements {
    ValueElements::ArrayOfFolderFileInfo(value)
}
fn wrap_array_of_folder_file_query(value: Vec<super::structs::FolderFileQuery>) -> ValueElements {
    ValueElements::ArrayOfFolderFileQuery(value)
}
fn wrap_array_of_iso_image_file_info(value: Vec<super::structs::IsoImageFileInfo>) -> ValueElements {
    ValueElements::ArrayOfIsoImageFileInfo(value)
}
fn wrap_array_of_iso_image_file_query(value: Vec<super::structs::IsoImageFileQuery>) -> ValueElements {
    ValueElements::ArrayOfIsoImageFileQuery(value)
}
fn wrap_array_of_host_datastore_browser_search_results(value: Vec<super::structs::HostDatastoreBrowserSearchResults>) -> ValueElements {
    ValueElements::ArrayOfHostDatastoreBrowserSearchResults(value)
}
fn wrap_array_of_host_datastore_browser_search_spec(value: Vec<super::structs::HostDatastoreBrowserSearchSpec>) -> ValueElements {
    ValueElements::ArrayOfHostDatastoreBrowserSearchSpec(value)
}
fn wrap_array_of_template_config_file_info(value: Vec<super::structs::TemplateConfigFileInfo>) -> ValueElements {
    ValueElements::ArrayOfTemplateConfigFileInfo(value)
}
fn wrap_array_of_template_config_file_query(value: Vec<super::structs::TemplateConfigFileQuery>) -> ValueElements {
    ValueElements::ArrayOfTemplateConfigFileQuery(value)
}
fn wrap_array_of_vm_config_file_encryption_info(value: Vec<super::structs::VmConfigFileEncryptionInfo>) -> ValueElements {
    ValueElements::ArrayOfVmConfigFileEncryptionInfo(value)
}
fn wrap_array_of_vm_config_file_query_flags(value: Vec<super::structs::VmConfigFileQueryFlags>) -> ValueElements {
    ValueElements::ArrayOfVmConfigFileQueryFlags(value)
}
fn wrap_array_of_vm_config_file_query_filter(value: Vec<super::structs::VmConfigFileQueryFilter>) -> ValueElements {
    ValueElements::ArrayOfVmConfigFileQueryFilter(value)
}
fn wrap_array_of_vm_disk_file_info(value: Vec<super::structs::VmDiskFileInfo>) -> ValueElements {
    ValueElements::ArrayOfVmDiskFileInfo(value)
}
fn wrap_array_of_vm_disk_file_encryption_info(value: Vec<super::structs::VmDiskFileEncryptionInfo>) -> ValueElements {
    ValueElements::ArrayOfVmDiskFileEncryptionInfo(value)
}
fn wrap_array_of_vm_disk_file_query(value: Vec<super::structs::VmDiskFileQuery>) -> ValueElements {
    ValueElements::ArrayOfVmDiskFileQuery(value)
}
fn wrap_array_of_vm_disk_file_query_flags(value: Vec<super::structs::VmDiskFileQueryFlags>) -> ValueElements {
    ValueElements::ArrayOfVmDiskFileQueryFlags(value)
}
fn wrap_array_of_vm_disk_file_query_filter(value: Vec<super::structs::VmDiskFileQueryFilter>) -> ValueElements {
    ValueElements::ArrayOfVmDiskFileQueryFilter(value)
}
fn wrap_array_of_vm_log_file_info(value: Vec<super::structs::VmLogFileInfo>) -> ValueElements {
    ValueElements::ArrayOfVmLogFileInfo(value)
}
fn wrap_array_of_vm_log_file_query(value: Vec<super::structs::VmLogFileQuery>) -> ValueElements {
    ValueElements::ArrayOfVmLogFileQuery(value)
}
fn wrap_array_of_vm_nvram_file_info(value: Vec<super::structs::VmNvramFileInfo>) -> ValueElements {
    ValueElements::ArrayOfVmNvramFileInfo(value)
}
fn wrap_array_of_vm_nvram_file_query(value: Vec<super::structs::VmNvramFileQuery>) -> ValueElements {
    ValueElements::ArrayOfVmNvramFileQuery(value)
}
fn wrap_array_of_vm_snapshot_file_info(value: Vec<super::structs::VmSnapshotFileInfo>) -> ValueElements {
    ValueElements::ArrayOfVmSnapshotFileInfo(value)
}
fn wrap_array_of_vm_snapshot_file_query(value: Vec<super::structs::VmSnapshotFileQuery>) -> ValueElements {
    ValueElements::ArrayOfVmSnapshotFileQuery(value)
}
fn wrap_array_of_host_datastore_system_capabilities(value: Vec<super::structs::HostDatastoreSystemCapabilities>) -> ValueElements {
    ValueElements::ArrayOfHostDatastoreSystemCapabilities(value)
}
fn wrap_array_of_host_datastore_system_datastore_result(value: Vec<super::structs::HostDatastoreSystemDatastoreResult>) -> ValueElements {
    ValueElements::ArrayOfHostDatastoreSystemDatastoreResult(value)
}
fn wrap_array_of_host_datastore_system_vvol_datastore_spec(value: Vec<super::structs::HostDatastoreSystemVvolDatastoreSpec>) -> ValueElements {
    ValueElements::ArrayOfHostDatastoreSystemVvolDatastoreSpec(value)
}
fn wrap_array_of_host_date_time_config(value: Vec<super::structs::HostDateTimeConfig>) -> ValueElements {
    ValueElements::ArrayOfHostDateTimeConfig(value)
}
fn wrap_array_of_host_date_time_info(value: Vec<super::structs::HostDateTimeInfo>) -> ValueElements {
    ValueElements::ArrayOfHostDateTimeInfo(value)
}
fn wrap_array_of_host_date_time_system_service_test_result(value: Vec<super::structs::HostDateTimeSystemServiceTestResult>) -> ValueElements {
    ValueElements::ArrayOfHostDateTimeSystemServiceTestResult(value)
}
fn wrap_array_of_host_date_time_system_time_zone(value: Vec<super::structs::HostDateTimeSystemTimeZone>) -> ValueElements {
    ValueElements::ArrayOfHostDateTimeSystemTimeZone(value)
}
fn wrap_array_of_host_deployment_info(value: Vec<super::structs::HostDeploymentInfo>) -> ValueElements {
    ValueElements::ArrayOfHostDeploymentInfo(value)
}
fn wrap_array_of_device_pci_id(value: Vec<super::structs::DevicePciId>) -> ValueElements {
    ValueElements::ArrayOfDevicePciId(value)
}
fn wrap_array_of_host_dhcp_service(value: Vec<super::structs::HostDhcpService>) -> ValueElements {
    ValueElements::ArrayOfHostDhcpService(value)
}
fn wrap_array_of_host_dhcp_service_config(value: Vec<super::structs::HostDhcpServiceConfig>) -> ValueElements {
    ValueElements::ArrayOfHostDhcpServiceConfig(value)
}
fn wrap_array_of_host_dhcp_service_spec(value: Vec<super::structs::HostDhcpServiceSpec>) -> ValueElements {
    ValueElements::ArrayOfHostDhcpServiceSpec(value)
}
fn wrap_array_of_host_diagnostic_partition(value: Vec<super::structs::HostDiagnosticPartition>) -> ValueElements {
    ValueElements::ArrayOfHostDiagnosticPartition(value)
}
fn wrap_array_of_host_diagnostic_partition_create_description(value: Vec<super::structs::HostDiagnosticPartitionCreateDescription>) -> ValueElements {
    ValueElements::ArrayOfHostDiagnosticPartitionCreateDescription(value)
}
fn wrap_array_of_host_diagnostic_partition_create_option(value: Vec<super::structs::HostDiagnosticPartitionCreateOption>) -> ValueElements {
    ValueElements::ArrayOfHostDiagnosticPartitionCreateOption(value)
}
fn wrap_array_of_host_diagnostic_partition_create_spec(value: Vec<super::structs::HostDiagnosticPartitionCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfHostDiagnosticPartitionCreateSpec(value)
}
fn wrap_array_of_host_disk_configuration_result(value: Vec<super::structs::HostDiskConfigurationResult>) -> ValueElements {
    ValueElements::ArrayOfHostDiskConfigurationResult(value)
}
fn wrap_array_of_host_disk_dimensions(value: Vec<super::structs::HostDiskDimensions>) -> ValueElements {
    ValueElements::ArrayOfHostDiskDimensions(value)
}
fn wrap_array_of_host_disk_dimensions_chs(value: Vec<super::structs::HostDiskDimensionsChs>) -> ValueElements {
    ValueElements::ArrayOfHostDiskDimensionsChs(value)
}
fn wrap_array_of_host_disk_dimensions_lba(value: Vec<super::structs::HostDiskDimensionsLba>) -> ValueElements {
    ValueElements::ArrayOfHostDiskDimensionsLba(value)
}
fn wrap_array_of_host_disk_partition_info(value: Vec<super::structs::HostDiskPartitionInfo>) -> ValueElements {
    ValueElements::ArrayOfHostDiskPartitionInfo(value)
}
fn wrap_array_of_host_disk_partition_block_range(value: Vec<super::structs::HostDiskPartitionBlockRange>) -> ValueElements {
    ValueElements::ArrayOfHostDiskPartitionBlockRange(value)
}
fn wrap_array_of_host_disk_partition_layout(value: Vec<super::structs::HostDiskPartitionLayout>) -> ValueElements {
    ValueElements::ArrayOfHostDiskPartitionLayout(value)
}
fn wrap_array_of_host_disk_partition_attributes(value: Vec<super::structs::HostDiskPartitionAttributes>) -> ValueElements {
    ValueElements::ArrayOfHostDiskPartitionAttributes(value)
}
fn wrap_array_of_host_disk_partition_spec(value: Vec<super::structs::HostDiskPartitionSpec>) -> ValueElements {
    ValueElements::ArrayOfHostDiskPartitionSpec(value)
}
fn wrap_array_of_host_dns_config_spec(value: Vec<super::structs::HostDnsConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfHostDnsConfigSpec(value)
}
fn wrap_array_of_host_dvx_class(value: Vec<super::structs::HostDvxClass>) -> ValueElements {
    ValueElements::ArrayOfHostDvxClass(value)
}
fn wrap_array_of_host_enter_maintenance_result(value: Vec<super::structs::HostEnterMaintenanceResult>) -> ValueElements {
    ValueElements::ArrayOfHostEnterMaintenanceResult(value)
}
fn wrap_array_of_host_esx_agent_host_manager_config_info(value: Vec<super::structs::HostEsxAgentHostManagerConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfHostEsxAgentHostManagerConfigInfo(value)
}
fn wrap_array_of_host_fault_tolerance_manager_component_health_info(value: Vec<super::structs::HostFaultToleranceManagerComponentHealthInfo>) -> ValueElements {
    ValueElements::ArrayOfHostFaultToleranceManagerComponentHealthInfo(value)
}
fn wrap_array_of_fcoe_config(value: Vec<super::structs::FcoeConfig>) -> ValueElements {
    ValueElements::ArrayOfFcoeConfig(value)
}
fn wrap_array_of_fcoe_config_fcoe_capabilities(value: Vec<super::structs::FcoeConfigFcoeCapabilities>) -> ValueElements {
    ValueElements::ArrayOfFcoeConfigFcoeCapabilities(value)
}
fn wrap_array_of_fcoe_config_fcoe_specification(value: Vec<super::structs::FcoeConfigFcoeSpecification>) -> ValueElements {
    ValueElements::ArrayOfFcoeConfigFcoeSpecification(value)
}
fn wrap_array_of_fcoe_config_vlan_range(value: Vec<super::structs::FcoeConfigVlanRange>) -> ValueElements {
    ValueElements::ArrayOfFcoeConfigVlanRange(value)
}
fn wrap_array_of_host_feature_capability(value: Vec<super::structs::HostFeatureCapability>) -> ValueElements {
    ValueElements::ArrayOfHostFeatureCapability(value)
}
fn wrap_array_of_host_feature_mask(value: Vec<super::structs::HostFeatureMask>) -> ValueElements {
    ValueElements::ArrayOfHostFeatureMask(value)
}
fn wrap_array_of_host_feature_version_info(value: Vec<super::structs::HostFeatureVersionInfo>) -> ValueElements {
    ValueElements::ArrayOfHostFeatureVersionInfo(value)
}
fn wrap_array_of_host_fibre_channel_over_ethernet_hba(value: Vec<super::structs::HostFibreChannelOverEthernetHba>) -> ValueElements {
    ValueElements::ArrayOfHostFibreChannelOverEthernetHba(value)
}
fn wrap_array_of_host_fibre_channel_over_ethernet_hba_link_info(value: Vec<super::structs::HostFibreChannelOverEthernetHbaLinkInfo>) -> ValueElements {
    ValueElements::ArrayOfHostFibreChannelOverEthernetHbaLinkInfo(value)
}
fn wrap_array_of_host_fibre_channel_over_ethernet_target_transport(value: Vec<super::structs::HostFibreChannelOverEthernetTargetTransport>) -> ValueElements {
    ValueElements::ArrayOfHostFibreChannelOverEthernetTargetTransport(value)
}
fn wrap_array_of_host_file_access(value: Vec<super::structs::HostFileAccess>) -> ValueElements {
    ValueElements::ArrayOfHostFileAccess(value)
}
fn wrap_array_of_mode_info(value: Vec<super::structs::ModeInfo>) -> ValueElements {
    ValueElements::ArrayOfModeInfo(value)
}
fn wrap_array_of_host_file_system_mount_info(value: Vec<super::structs::HostFileSystemMountInfo>) -> ValueElements {
    ValueElements::ArrayOfHostFileSystemMountInfo(value)
}
fn wrap_array_of_host_file_system_volume_info(value: Vec<super::structs::HostFileSystemVolumeInfo>) -> ValueElements {
    ValueElements::ArrayOfHostFileSystemVolumeInfo(value)
}
fn wrap_array_of_host_firewall_config(value: Vec<super::structs::HostFirewallConfig>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallConfig(value)
}
fn wrap_array_of_host_firewall_config_rule_set_config(value: Vec<super::structs::HostFirewallConfigRuleSetConfig>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallConfigRuleSetConfig(value)
}
fn wrap_array_of_host_firewall_info(value: Vec<super::structs::HostFirewallInfo>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallInfo(value)
}
fn wrap_array_of_host_firewall_default_policy(value: Vec<super::structs::HostFirewallDefaultPolicy>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallDefaultPolicy(value)
}
fn wrap_array_of_host_flag_info(value: Vec<super::structs::HostFlagInfo>) -> ValueElements {
    ValueElements::ArrayOfHostFlagInfo(value)
}
fn wrap_array_of_host_force_mounted_info(value: Vec<super::structs::HostForceMountedInfo>) -> ValueElements {
    ValueElements::ArrayOfHostForceMountedInfo(value)
}
fn wrap_array_of_host_fru(value: Vec<super::structs::HostFru>) -> ValueElements {
    ValueElements::ArrayOfHostFru(value)
}
fn wrap_array_of_host_gateway_spec(value: Vec<super::structs::HostGatewaySpec>) -> ValueElements {
    ValueElements::ArrayOfHostGatewaySpec(value)
}
fn wrap_array_of_host_graphics_config(value: Vec<super::structs::HostGraphicsConfig>) -> ValueElements {
    ValueElements::ArrayOfHostGraphicsConfig(value)
}
fn wrap_array_of_host_graphics_config_device_type(value: Vec<super::structs::HostGraphicsConfigDeviceType>) -> ValueElements {
    ValueElements::ArrayOfHostGraphicsConfigDeviceType(value)
}
fn wrap_array_of_host_graphics_info(value: Vec<super::structs::HostGraphicsInfo>) -> ValueElements {
    ValueElements::ArrayOfHostGraphicsInfo(value)
}
fn wrap_array_of_host_hardware_info(value: Vec<super::structs::HostHardwareInfo>) -> ValueElements {
    ValueElements::ArrayOfHostHardwareInfo(value)
}
fn wrap_array_of_host_hardware_status_info(value: Vec<super::structs::HostHardwareStatusInfo>) -> ValueElements {
    ValueElements::ArrayOfHostHardwareStatusInfo(value)
}
fn wrap_array_of_dpu_status_info(value: Vec<super::structs::DpuStatusInfo>) -> ValueElements {
    ValueElements::ArrayOfDpuStatusInfo(value)
}
fn wrap_array_of_dpu_status_info_operational_info(value: Vec<super::structs::DpuStatusInfoOperationalInfo>) -> ValueElements {
    ValueElements::ArrayOfDpuStatusInfoOperationalInfo(value)
}
fn wrap_array_of_host_storage_element_info(value: Vec<super::structs::HostStorageElementInfo>) -> ValueElements {
    ValueElements::ArrayOfHostStorageElementInfo(value)
}
fn wrap_array_of_host_storage_operational_info(value: Vec<super::structs::HostStorageOperationalInfo>) -> ValueElements {
    ValueElements::ArrayOfHostStorageOperationalInfo(value)
}
fn wrap_array_of_health_system_runtime(value: Vec<super::structs::HealthSystemRuntime>) -> ValueElements {
    ValueElements::ArrayOfHealthSystemRuntime(value)
}
fn wrap_array_of_host_access_control_entry(value: Vec<super::structs::HostAccessControlEntry>) -> ValueElements {
    ValueElements::ArrayOfHostAccessControlEntry(value)
}
fn wrap_array_of_host_proxy_switch(value: Vec<super::structs::HostProxySwitch>) -> ValueElements {
    ValueElements::ArrayOfHostProxySwitch(value)
}
fn wrap_array_of_host_proxy_switch_config(value: Vec<super::structs::HostProxySwitchConfig>) -> ValueElements {
    ValueElements::ArrayOfHostProxySwitchConfig(value)
}
fn wrap_array_of_host_proxy_switch_ens_info(value: Vec<super::structs::HostProxySwitchEnsInfo>) -> ValueElements {
    ValueElements::ArrayOfHostProxySwitchEnsInfo(value)
}
fn wrap_array_of_host_proxy_switch_host_lag_config(value: Vec<super::structs::HostProxySwitchHostLagConfig>) -> ValueElements {
    ValueElements::ArrayOfHostProxySwitchHostLagConfig(value)
}
fn wrap_array_of_host_proxy_switch_spec(value: Vec<super::structs::HostProxySwitchSpec>) -> ValueElements {
    ValueElements::ArrayOfHostProxySwitchSpec(value)
}
fn wrap_array_of_host_spbm_datastore_info(value: Vec<super::structs::HostSpbmDatastoreInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSpbmDatastoreInfo(value)
}
fn wrap_array_of_host_spbm_hash_info(value: Vec<super::structs::HostSpbmHashInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSpbmHashInfo(value)
}
fn wrap_array_of_host_spbm_policy_blob_info(value: Vec<super::structs::HostSpbmPolicyBlobInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSpbmPolicyBlobInfo(value)
}
fn wrap_array_of_host_spbm_policy_info(value: Vec<super::structs::HostSpbmPolicyInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSpbmPolicyInfo(value)
}
fn wrap_array_of_host_image_profile_summary(value: Vec<super::structs::HostImageProfileSummary>) -> ValueElements {
    ValueElements::ArrayOfHostImageProfileSummary(value)
}
fn wrap_array_of_host_internet_scsi_hba(value: Vec<super::structs::HostInternetScsiHba>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHba(value)
}
fn wrap_array_of_host_internet_scsi_hba_authentication_capabilities(value: Vec<super::structs::HostInternetScsiHbaAuthenticationCapabilities>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaAuthenticationCapabilities(value)
}
fn wrap_array_of_host_internet_scsi_hba_authentication_properties(value: Vec<super::structs::HostInternetScsiHbaAuthenticationProperties>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaAuthenticationProperties(value)
}
fn wrap_array_of_host_internet_scsi_hba_digest_capabilities(value: Vec<super::structs::HostInternetScsiHbaDigestCapabilities>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaDigestCapabilities(value)
}
fn wrap_array_of_host_internet_scsi_hba_digest_properties(value: Vec<super::structs::HostInternetScsiHbaDigestProperties>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaDigestProperties(value)
}
fn wrap_array_of_host_internet_scsi_hba_discovery_capabilities(value: Vec<super::structs::HostInternetScsiHbaDiscoveryCapabilities>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaDiscoveryCapabilities(value)
}
fn wrap_array_of_host_internet_scsi_hba_discovery_properties(value: Vec<super::structs::HostInternetScsiHbaDiscoveryProperties>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaDiscoveryProperties(value)
}
fn wrap_array_of_host_internet_scsi_hba_ip_capabilities(value: Vec<super::structs::HostInternetScsiHbaIpCapabilities>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaIpCapabilities(value)
}
fn wrap_array_of_host_internet_scsi_hba_ip_properties(value: Vec<super::structs::HostInternetScsiHbaIpProperties>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaIpProperties(value)
}
fn wrap_array_of_host_internet_scsi_hba_i_pv_6_properties(value: Vec<super::structs::HostInternetScsiHbaIPv6Properties>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaIPv6Properties(value)
}
fn wrap_array_of_host_internet_scsi_hba_iscsi_ipv_6_address(value: Vec<super::structs::HostInternetScsiHbaIscsiIpv6Address>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaIscsiIpv6Address(value)
}
fn wrap_array_of_host_internet_scsi_hba_param_value(value: Vec<super::structs::HostInternetScsiHbaParamValue>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaParamValue(value)
}
fn wrap_array_of_host_internet_scsi_hba_send_target(value: Vec<super::structs::HostInternetScsiHbaSendTarget>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaSendTarget(value)
}
fn wrap_array_of_host_internet_scsi_hba_static_target(value: Vec<super::structs::HostInternetScsiHbaStaticTarget>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaStaticTarget(value)
}
fn wrap_array_of_host_internet_scsi_hba_target_set(value: Vec<super::structs::HostInternetScsiHbaTargetSet>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaTargetSet(value)
}
fn wrap_array_of_host_internet_scsi_target_transport(value: Vec<super::structs::HostInternetScsiTargetTransport>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiTargetTransport(value)
}
fn wrap_array_of_host_ip_config_ip_v_6_address(value: Vec<super::structs::HostIpConfigIpV6Address>) -> ValueElements {
    ValueElements::ArrayOfHostIpConfigIpV6Address(value)
}
fn wrap_array_of_host_ip_config_ip_v_6_address_configuration(value: Vec<super::structs::HostIpConfigIpV6AddressConfiguration>) -> ValueElements {
    ValueElements::ArrayOfHostIpConfigIpV6AddressConfiguration(value)
}
fn wrap_array_of_host_ip_route_config_spec(value: Vec<super::structs::HostIpRouteConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfHostIpRouteConfigSpec(value)
}
fn wrap_array_of_host_ip_route_entry(value: Vec<super::structs::HostIpRouteEntry>) -> ValueElements {
    ValueElements::ArrayOfHostIpRouteEntry(value)
}
fn wrap_array_of_host_ip_route_op(value: Vec<super::structs::HostIpRouteOp>) -> ValueElements {
    ValueElements::ArrayOfHostIpRouteOp(value)
}
fn wrap_array_of_host_ip_route_table_config(value: Vec<super::structs::HostIpRouteTableConfig>) -> ValueElements {
    ValueElements::ArrayOfHostIpRouteTableConfig(value)
}
fn wrap_array_of_host_ip_route_table_info(value: Vec<super::structs::HostIpRouteTableInfo>) -> ValueElements {
    ValueElements::ArrayOfHostIpRouteTableInfo(value)
}
fn wrap_array_of_host_ipmi_info(value: Vec<super::structs::HostIpmiInfo>) -> ValueElements {
    ValueElements::ArrayOfHostIpmiInfo(value)
}
fn wrap_array_of_iscsi_dependency_entity(value: Vec<super::structs::IscsiDependencyEntity>) -> ValueElements {
    ValueElements::ArrayOfIscsiDependencyEntity(value)
}
fn wrap_array_of_iscsi_migration_dependency(value: Vec<super::structs::IscsiMigrationDependency>) -> ValueElements {
    ValueElements::ArrayOfIscsiMigrationDependency(value)
}
fn wrap_array_of_iscsi_port_info(value: Vec<super::structs::IscsiPortInfo>) -> ValueElements {
    ValueElements::ArrayOfIscsiPortInfo(value)
}
fn wrap_array_of_iscsi_status(value: Vec<super::structs::IscsiStatus>) -> ValueElements {
    ValueElements::ArrayOfIscsiStatus(value)
}
fn wrap_array_of_kernel_module_info(value: Vec<super::structs::KernelModuleInfo>) -> ValueElements {
    ValueElements::ArrayOfKernelModuleInfo(value)
}
fn wrap_array_of_kernel_module_section_info(value: Vec<super::structs::KernelModuleSectionInfo>) -> ValueElements {
    ValueElements::ArrayOfKernelModuleSectionInfo(value)
}
fn wrap_array_of_lacp_info(value: Vec<super::structs::LacpInfo>) -> ValueElements {
    ValueElements::ArrayOfLacpInfo(value)
}
fn wrap_array_of_lag_info(value: Vec<super::structs::LagInfo>) -> ValueElements {
    ValueElements::ArrayOfLagInfo(value)
}
fn wrap_array_of_lag_uplink_info(value: Vec<super::structs::LagUplinkInfo>) -> ValueElements {
    ValueElements::ArrayOfLagUplinkInfo(value)
}
fn wrap_array_of_host_license_spec(value: Vec<super::structs::HostLicenseSpec>) -> ValueElements {
    ValueElements::ArrayOfHostLicenseSpec(value)
}
fn wrap_array_of_link_discovery_protocol_config(value: Vec<super::structs::LinkDiscoveryProtocolConfig>) -> ValueElements {
    ValueElements::ArrayOfLinkDiscoveryProtocolConfig(value)
}
fn wrap_array_of_host_posix_account_spec(value: Vec<super::structs::HostPosixAccountSpec>) -> ValueElements {
    ValueElements::ArrayOfHostPosixAccountSpec(value)
}
fn wrap_array_of_host_local_authentication_info(value: Vec<super::structs::HostLocalAuthenticationInfo>) -> ValueElements {
    ValueElements::ArrayOfHostLocalAuthenticationInfo(value)
}
fn wrap_array_of_local_datastore_info(value: Vec<super::structs::LocalDatastoreInfo>) -> ValueElements {
    ValueElements::ArrayOfLocalDatastoreInfo(value)
}
fn wrap_array_of_host_local_file_system_volume(value: Vec<super::structs::HostLocalFileSystemVolume>) -> ValueElements {
    ValueElements::ArrayOfHostLocalFileSystemVolume(value)
}
fn wrap_array_of_host_local_file_system_volume_spec(value: Vec<super::structs::HostLocalFileSystemVolumeSpec>) -> ValueElements {
    ValueElements::ArrayOfHostLocalFileSystemVolumeSpec(value)
}
fn wrap_array_of_host_low_level_provisioning_manager_disk_layout_spec(value: Vec<super::structs::HostLowLevelProvisioningManagerDiskLayoutSpec>) -> ValueElements {
    ValueElements::ArrayOfHostLowLevelProvisioningManagerDiskLayoutSpec(value)
}
fn wrap_array_of_host_low_level_provisioning_manager_file_delete_result(value: Vec<super::structs::HostLowLevelProvisioningManagerFileDeleteResult>) -> ValueElements {
    ValueElements::ArrayOfHostLowLevelProvisioningManagerFileDeleteResult(value)
}
fn wrap_array_of_host_low_level_provisioning_manager_file_delete_spec(value: Vec<super::structs::HostLowLevelProvisioningManagerFileDeleteSpec>) -> ValueElements {
    ValueElements::ArrayOfHostLowLevelProvisioningManagerFileDeleteSpec(value)
}
fn wrap_array_of_host_low_level_provisioning_manager_file_reserve_result(value: Vec<super::structs::HostLowLevelProvisioningManagerFileReserveResult>) -> ValueElements {
    ValueElements::ArrayOfHostLowLevelProvisioningManagerFileReserveResult(value)
}
fn wrap_array_of_host_low_level_provisioning_manager_file_reserve_spec(value: Vec<super::structs::HostLowLevelProvisioningManagerFileReserveSpec>) -> ValueElements {
    ValueElements::ArrayOfHostLowLevelProvisioningManagerFileReserveSpec(value)
}
fn wrap_array_of_host_low_level_provisioning_manager_snapshot_layout_spec(value: Vec<super::structs::HostLowLevelProvisioningManagerSnapshotLayoutSpec>) -> ValueElements {
    ValueElements::ArrayOfHostLowLevelProvisioningManagerSnapshotLayoutSpec(value)
}
fn wrap_array_of_host_low_level_provisioning_manager_vm_migration_status(value: Vec<super::structs::HostLowLevelProvisioningManagerVmMigrationStatus>) -> ValueElements {
    ValueElements::ArrayOfHostLowLevelProvisioningManagerVmMigrationStatus(value)
}
fn wrap_array_of_host_low_level_provisioning_manager_vm_recovery_info(value: Vec<super::structs::HostLowLevelProvisioningManagerVmRecoveryInfo>) -> ValueElements {
    ValueElements::ArrayOfHostLowLevelProvisioningManagerVmRecoveryInfo(value)
}
fn wrap_array_of_host_maintenance_spec(value: Vec<super::structs::HostMaintenanceSpec>) -> ValueElements {
    ValueElements::ArrayOfHostMaintenanceSpec(value)
}
fn wrap_array_of_service_console_reservation_info(value: Vec<super::structs::ServiceConsoleReservationInfo>) -> ValueElements {
    ValueElements::ArrayOfServiceConsoleReservationInfo(value)
}
fn wrap_array_of_virtual_machine_memory_reservation_info(value: Vec<super::structs::VirtualMachineMemoryReservationInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMemoryReservationInfo(value)
}
fn wrap_array_of_virtual_machine_memory_reservation_spec(value: Vec<super::structs::VirtualMachineMemoryReservationSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMemoryReservationSpec(value)
}
fn wrap_array_of_host_memory_spec(value: Vec<super::structs::HostMemorySpec>) -> ValueElements {
    ValueElements::ArrayOfHostMemorySpec(value)
}
fn wrap_array_of_host_memory_tier_info(value: Vec<super::structs::HostMemoryTierInfo>) -> ValueElements {
    ValueElements::ArrayOfHostMemoryTierInfo(value)
}
fn wrap_array_of_host_mount_info(value: Vec<super::structs::HostMountInfo>) -> ValueElements {
    ValueElements::ArrayOfHostMountInfo(value)
}
fn wrap_array_of_host_multipath_info(value: Vec<super::structs::HostMultipathInfo>) -> ValueElements {
    ValueElements::ArrayOfHostMultipathInfo(value)
}
fn wrap_array_of_host_multipath_info_fixed_logical_unit_policy(value: Vec<super::structs::HostMultipathInfoFixedLogicalUnitPolicy>) -> ValueElements {
    ValueElements::ArrayOfHostMultipathInfoFixedLogicalUnitPolicy(value)
}
fn wrap_array_of_host_multipath_info_hpp_logical_unit_policy(value: Vec<super::structs::HostMultipathInfoHppLogicalUnitPolicy>) -> ValueElements {
    ValueElements::ArrayOfHostMultipathInfoHppLogicalUnitPolicy(value)
}
fn wrap_array_of_host_multipath_info_logical_unit(value: Vec<super::structs::HostMultipathInfoLogicalUnit>) -> ValueElements {
    ValueElements::ArrayOfHostMultipathInfoLogicalUnit(value)
}
fn wrap_array_of_host_multipath_info_logical_unit_storage_array_type_policy(value: Vec<super::structs::HostMultipathInfoLogicalUnitStorageArrayTypePolicy>) -> ValueElements {
    ValueElements::ArrayOfHostMultipathInfoLogicalUnitStorageArrayTypePolicy(value)
}
fn wrap_array_of_host_multipath_info_path(value: Vec<super::structs::HostMultipathInfoPath>) -> ValueElements {
    ValueElements::ArrayOfHostMultipathInfoPath(value)
}
fn wrap_array_of_host_multipath_state_info(value: Vec<super::structs::HostMultipathStateInfo>) -> ValueElements {
    ValueElements::ArrayOfHostMultipathStateInfo(value)
}
fn wrap_array_of_host_multipath_state_info_path(value: Vec<super::structs::HostMultipathStateInfoPath>) -> ValueElements {
    ValueElements::ArrayOfHostMultipathStateInfoPath(value)
}
fn wrap_array_of_nas_datastore_info(value: Vec<super::structs::NasDatastoreInfo>) -> ValueElements {
    ValueElements::ArrayOfNasDatastoreInfo(value)
}
fn wrap_array_of_host_nas_volume(value: Vec<super::structs::HostNasVolume>) -> ValueElements {
    ValueElements::ArrayOfHostNasVolume(value)
}
fn wrap_array_of_host_nas_volume_config(value: Vec<super::structs::HostNasVolumeConfig>) -> ValueElements {
    ValueElements::ArrayOfHostNasVolumeConfig(value)
}
fn wrap_array_of_host_nas_volume_spec(value: Vec<super::structs::HostNasVolumeSpec>) -> ValueElements {
    ValueElements::ArrayOfHostNasVolumeSpec(value)
}
fn wrap_array_of_host_nas_volume_user_info(value: Vec<super::structs::HostNasVolumeUserInfo>) -> ValueElements {
    ValueElements::ArrayOfHostNasVolumeUserInfo(value)
}
fn wrap_array_of_host_nat_service(value: Vec<super::structs::HostNatService>) -> ValueElements {
    ValueElements::ArrayOfHostNatService(value)
}
fn wrap_array_of_host_nat_service_config(value: Vec<super::structs::HostNatServiceConfig>) -> ValueElements {
    ValueElements::ArrayOfHostNatServiceConfig(value)
}
fn wrap_array_of_host_nat_service_name_service_spec(value: Vec<super::structs::HostNatServiceNameServiceSpec>) -> ValueElements {
    ValueElements::ArrayOfHostNatServiceNameServiceSpec(value)
}
fn wrap_array_of_host_nat_service_port_forward_spec(value: Vec<super::structs::HostNatServicePortForwardSpec>) -> ValueElements {
    ValueElements::ArrayOfHostNatServicePortForwardSpec(value)
}
fn wrap_array_of_host_nat_service_spec(value: Vec<super::structs::HostNatServiceSpec>) -> ValueElements {
    ValueElements::ArrayOfHostNatServiceSpec(value)
}
fn wrap_array_of_host_net_capabilities(value: Vec<super::structs::HostNetCapabilities>) -> ValueElements {
    ValueElements::ArrayOfHostNetCapabilities(value)
}
fn wrap_array_of_host_net_offload_capabilities(value: Vec<super::structs::HostNetOffloadCapabilities>) -> ValueElements {
    ValueElements::ArrayOfHostNetOffloadCapabilities(value)
}
fn wrap_array_of_host_net_stack_instance(value: Vec<super::structs::HostNetStackInstance>) -> ValueElements {
    ValueElements::ArrayOfHostNetStackInstance(value)
}
fn wrap_array_of_host_network_config(value: Vec<super::structs::HostNetworkConfig>) -> ValueElements {
    ValueElements::ArrayOfHostNetworkConfig(value)
}
fn wrap_array_of_host_network_config_net_stack_spec(value: Vec<super::structs::HostNetworkConfigNetStackSpec>) -> ValueElements {
    ValueElements::ArrayOfHostNetworkConfigNetStackSpec(value)
}
fn wrap_array_of_host_network_config_result(value: Vec<super::structs::HostNetworkConfigResult>) -> ValueElements {
    ValueElements::ArrayOfHostNetworkConfigResult(value)
}
fn wrap_array_of_host_network_info(value: Vec<super::structs::HostNetworkInfo>) -> ValueElements {
    ValueElements::ArrayOfHostNetworkInfo(value)
}
fn wrap_array_of_host_network_policy(value: Vec<super::structs::HostNetworkPolicy>) -> ValueElements {
    ValueElements::ArrayOfHostNetworkPolicy(value)
}
fn wrap_array_of_host_nic_failure_criteria(value: Vec<super::structs::HostNicFailureCriteria>) -> ValueElements {
    ValueElements::ArrayOfHostNicFailureCriteria(value)
}
fn wrap_array_of_host_nic_order_policy(value: Vec<super::structs::HostNicOrderPolicy>) -> ValueElements {
    ValueElements::ArrayOfHostNicOrderPolicy(value)
}
fn wrap_array_of_host_nic_teaming_policy(value: Vec<super::structs::HostNicTeamingPolicy>) -> ValueElements {
    ValueElements::ArrayOfHostNicTeamingPolicy(value)
}
fn wrap_array_of_host_network_security_policy(value: Vec<super::structs::HostNetworkSecurityPolicy>) -> ValueElements {
    ValueElements::ArrayOfHostNetworkSecurityPolicy(value)
}
fn wrap_array_of_host_network_traffic_shaping_policy(value: Vec<super::structs::HostNetworkTrafficShapingPolicy>) -> ValueElements {
    ValueElements::ArrayOfHostNetworkTrafficShapingPolicy(value)
}
fn wrap_array_of_host_nfc_connection_info(value: Vec<super::structs::HostNfcConnectionInfo>) -> ValueElements {
    ValueElements::ArrayOfHostNfcConnectionInfo(value)
}
fn wrap_array_of_host_ntp_config(value: Vec<super::structs::HostNtpConfig>) -> ValueElements {
    ValueElements::ArrayOfHostNtpConfig(value)
}
fn wrap_array_of_host_numa_info(value: Vec<super::structs::HostNumaInfo>) -> ValueElements {
    ValueElements::ArrayOfHostNumaInfo(value)
}
fn wrap_array_of_host_numa_node(value: Vec<super::structs::HostNumaNode>) -> ValueElements {
    ValueElements::ArrayOfHostNumaNode(value)
}
fn wrap_array_of_host_numeric_sensor_info(value: Vec<super::structs::HostNumericSensorInfo>) -> ValueElements {
    ValueElements::ArrayOfHostNumericSensorInfo(value)
}
fn wrap_array_of_nvdimm_dimm_info(value: Vec<super::structs::NvdimmDimmInfo>) -> ValueElements {
    ValueElements::ArrayOfNvdimmDimmInfo(value)
}
fn wrap_array_of_nvdimm_guid(value: Vec<super::structs::NvdimmGuid>) -> ValueElements {
    ValueElements::ArrayOfNvdimmGuid(value)
}
fn wrap_array_of_nvdimm_health_info(value: Vec<super::structs::NvdimmHealthInfo>) -> ValueElements {
    ValueElements::ArrayOfNvdimmHealthInfo(value)
}
fn wrap_array_of_nvdimm_interleave_set_info(value: Vec<super::structs::NvdimmInterleaveSetInfo>) -> ValueElements {
    ValueElements::ArrayOfNvdimmInterleaveSetInfo(value)
}
fn wrap_array_of_nvdimm_namespace_create_spec(value: Vec<super::structs::NvdimmNamespaceCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfNvdimmNamespaceCreateSpec(value)
}
fn wrap_array_of_nvdimm_namespace_delete_spec(value: Vec<super::structs::NvdimmNamespaceDeleteSpec>) -> ValueElements {
    ValueElements::ArrayOfNvdimmNamespaceDeleteSpec(value)
}
fn wrap_array_of_nvdimm_namespace_details(value: Vec<super::structs::NvdimmNamespaceDetails>) -> ValueElements {
    ValueElements::ArrayOfNvdimmNamespaceDetails(value)
}
fn wrap_array_of_nvdimm_namespace_info(value: Vec<super::structs::NvdimmNamespaceInfo>) -> ValueElements {
    ValueElements::ArrayOfNvdimmNamespaceInfo(value)
}
fn wrap_array_of_nvdimm_system_info(value: Vec<super::structs::NvdimmSystemInfo>) -> ValueElements {
    ValueElements::ArrayOfNvdimmSystemInfo(value)
}
fn wrap_array_of_nvdimm_p_mem_namespace_create_spec(value: Vec<super::structs::NvdimmPMemNamespaceCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfNvdimmPMemNamespaceCreateSpec(value)
}
fn wrap_array_of_nvdimm_region_info(value: Vec<super::structs::NvdimmRegionInfo>) -> ValueElements {
    ValueElements::ArrayOfNvdimmRegionInfo(value)
}
fn wrap_array_of_nvdimm_summary(value: Vec<super::structs::NvdimmSummary>) -> ValueElements {
    ValueElements::ArrayOfNvdimmSummary(value)
}
fn wrap_array_of_host_nvme_connect_spec(value: Vec<super::structs::HostNvmeConnectSpec>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeConnectSpec(value)
}
fn wrap_array_of_host_nvme_controller(value: Vec<super::structs::HostNvmeController>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeController(value)
}
fn wrap_array_of_host_nvme_disconnect_spec(value: Vec<super::structs::HostNvmeDisconnectSpec>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeDisconnectSpec(value)
}
fn wrap_array_of_host_nvme_discover_spec(value: Vec<super::structs::HostNvmeDiscoverSpec>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeDiscoverSpec(value)
}
fn wrap_array_of_host_nvme_discovery_log(value: Vec<super::structs::HostNvmeDiscoveryLog>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeDiscoveryLog(value)
}
fn wrap_array_of_host_nvme_discovery_log_entry(value: Vec<super::structs::HostNvmeDiscoveryLogEntry>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeDiscoveryLogEntry(value)
}
fn wrap_array_of_host_nvme_namespace(value: Vec<super::structs::HostNvmeNamespace>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeNamespace(value)
}
fn wrap_array_of_host_nvme_opaque_transport_parameters(value: Vec<super::structs::HostNvmeOpaqueTransportParameters>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeOpaqueTransportParameters(value)
}
fn wrap_array_of_host_nvme_over_fibre_channel_parameters(value: Vec<super::structs::HostNvmeOverFibreChannelParameters>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeOverFibreChannelParameters(value)
}
fn wrap_array_of_host_nvme_over_rdma_parameters(value: Vec<super::structs::HostNvmeOverRdmaParameters>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeOverRdmaParameters(value)
}
fn wrap_array_of_host_nvme_over_tcp_parameters(value: Vec<super::structs::HostNvmeOverTcpParameters>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeOverTcpParameters(value)
}
fn wrap_array_of_host_nvme_topology(value: Vec<super::structs::HostNvmeTopology>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeTopology(value)
}
fn wrap_array_of_host_nvme_topology_interface(value: Vec<super::structs::HostNvmeTopologyInterface>) -> ValueElements {
    ValueElements::ArrayOfHostNvmeTopologyInterface(value)
}
fn wrap_array_of_host_opaque_network_info(value: Vec<super::structs::HostOpaqueNetworkInfo>) -> ValueElements {
    ValueElements::ArrayOfHostOpaqueNetworkInfo(value)
}
fn wrap_array_of_host_opaque_switch(value: Vec<super::structs::HostOpaqueSwitch>) -> ValueElements {
    ValueElements::ArrayOfHostOpaqueSwitch(value)
}
fn wrap_array_of_host_opaque_switch_physical_nic_zone(value: Vec<super::structs::HostOpaqueSwitchPhysicalNicZone>) -> ValueElements {
    ValueElements::ArrayOfHostOpaqueSwitchPhysicalNicZone(value)
}
fn wrap_array_of_p_mem_datastore_info(value: Vec<super::structs::PMemDatastoreInfo>) -> ValueElements {
    ValueElements::ArrayOfPMemDatastoreInfo(value)
}
fn wrap_array_of_host_p_mem_volume(value: Vec<super::structs::HostPMemVolume>) -> ValueElements {
    ValueElements::ArrayOfHostPMemVolume(value)
}
fn wrap_array_of_host_parallel_scsi_hba(value: Vec<super::structs::HostParallelScsiHba>) -> ValueElements {
    ValueElements::ArrayOfHostParallelScsiHba(value)
}
fn wrap_array_of_host_parallel_scsi_target_transport(value: Vec<super::structs::HostParallelScsiTargetTransport>) -> ValueElements {
    ValueElements::ArrayOfHostParallelScsiTargetTransport(value)
}
fn wrap_array_of_host_partial_maintenance_mode_runtime_info(value: Vec<super::structs::HostPartialMaintenanceModeRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfHostPartialMaintenanceModeRuntimeInfo(value)
}
fn wrap_array_of_host_patch_manager_locator(value: Vec<super::structs::HostPatchManagerLocator>) -> ValueElements {
    ValueElements::ArrayOfHostPatchManagerLocator(value)
}
fn wrap_array_of_host_patch_manager_patch_manager_operation_spec(value: Vec<super::structs::HostPatchManagerPatchManagerOperationSpec>) -> ValueElements {
    ValueElements::ArrayOfHostPatchManagerPatchManagerOperationSpec(value)
}
fn wrap_array_of_host_patch_manager_result(value: Vec<super::structs::HostPatchManagerResult>) -> ValueElements {
    ValueElements::ArrayOfHostPatchManagerResult(value)
}
fn wrap_array_of_host_patch_manager_status(value: Vec<super::structs::HostPatchManagerStatus>) -> ValueElements {
    ValueElements::ArrayOfHostPatchManagerStatus(value)
}
fn wrap_array_of_host_patch_manager_status_prerequisite_patch(value: Vec<super::structs::HostPatchManagerStatusPrerequisitePatch>) -> ValueElements {
    ValueElements::ArrayOfHostPatchManagerStatusPrerequisitePatch(value)
}
fn wrap_array_of_host_path_selection_policy_option(value: Vec<super::structs::HostPathSelectionPolicyOption>) -> ValueElements {
    ValueElements::ArrayOfHostPathSelectionPolicyOption(value)
}
fn wrap_array_of_host_pci_device(value: Vec<super::structs::HostPciDevice>) -> ValueElements {
    ValueElements::ArrayOfHostPciDevice(value)
}
fn wrap_array_of_host_pcie_hba(value: Vec<super::structs::HostPcieHba>) -> ValueElements {
    ValueElements::ArrayOfHostPcieHba(value)
}
fn wrap_array_of_host_pcie_target_transport(value: Vec<super::structs::HostPcieTargetTransport>) -> ValueElements {
    ValueElements::ArrayOfHostPcieTargetTransport(value)
}
fn wrap_array_of_host_persistent_memory_info(value: Vec<super::structs::HostPersistentMemoryInfo>) -> ValueElements {
    ValueElements::ArrayOfHostPersistentMemoryInfo(value)
}
fn wrap_array_of_physical_nic(value: Vec<super::structs::PhysicalNic>) -> ValueElements {
    ValueElements::ArrayOfPhysicalNic(value)
}
fn wrap_array_of_physical_nic_cdp_device_capability(value: Vec<super::structs::PhysicalNicCdpDeviceCapability>) -> ValueElements {
    ValueElements::ArrayOfPhysicalNicCdpDeviceCapability(value)
}
fn wrap_array_of_physical_nic_cdp_info(value: Vec<super::structs::PhysicalNicCdpInfo>) -> ValueElements {
    ValueElements::ArrayOfPhysicalNicCdpInfo(value)
}
fn wrap_array_of_physical_nic_config(value: Vec<super::structs::PhysicalNicConfig>) -> ValueElements {
    ValueElements::ArrayOfPhysicalNicConfig(value)
}
fn wrap_array_of_physical_nic_link_info(value: Vec<super::structs::PhysicalNicLinkInfo>) -> ValueElements {
    ValueElements::ArrayOfPhysicalNicLinkInfo(value)
}
fn wrap_array_of_link_layer_discovery_protocol_info(value: Vec<super::structs::LinkLayerDiscoveryProtocolInfo>) -> ValueElements {
    ValueElements::ArrayOfLinkLayerDiscoveryProtocolInfo(value)
}
fn wrap_array_of_physical_nic_hint_info(value: Vec<super::structs::PhysicalNicHintInfo>) -> ValueElements {
    ValueElements::ArrayOfPhysicalNicHintInfo(value)
}
fn wrap_array_of_physical_nic_ip_hint(value: Vec<super::structs::PhysicalNicIpHint>) -> ValueElements {
    ValueElements::ArrayOfPhysicalNicIpHint(value)
}
fn wrap_array_of_physical_nic_name_hint(value: Vec<super::structs::PhysicalNicNameHint>) -> ValueElements {
    ValueElements::ArrayOfPhysicalNicNameHint(value)
}
fn wrap_array_of_physical_nic_spec(value: Vec<super::structs::PhysicalNicSpec>) -> ValueElements {
    ValueElements::ArrayOfPhysicalNicSpec(value)
}
fn wrap_array_of_host_plug_store_topology(value: Vec<super::structs::HostPlugStoreTopology>) -> ValueElements {
    ValueElements::ArrayOfHostPlugStoreTopology(value)
}
fn wrap_array_of_host_plug_store_topology_adapter(value: Vec<super::structs::HostPlugStoreTopologyAdapter>) -> ValueElements {
    ValueElements::ArrayOfHostPlugStoreTopologyAdapter(value)
}
fn wrap_array_of_host_plug_store_topology_device(value: Vec<super::structs::HostPlugStoreTopologyDevice>) -> ValueElements {
    ValueElements::ArrayOfHostPlugStoreTopologyDevice(value)
}
fn wrap_array_of_host_plug_store_topology_path(value: Vec<super::structs::HostPlugStoreTopologyPath>) -> ValueElements {
    ValueElements::ArrayOfHostPlugStoreTopologyPath(value)
}
fn wrap_array_of_host_plug_store_topology_plugin(value: Vec<super::structs::HostPlugStoreTopologyPlugin>) -> ValueElements {
    ValueElements::ArrayOfHostPlugStoreTopologyPlugin(value)
}
fn wrap_array_of_host_plug_store_topology_target(value: Vec<super::structs::HostPlugStoreTopologyTarget>) -> ValueElements {
    ValueElements::ArrayOfHostPlugStoreTopologyTarget(value)
}
fn wrap_array_of_pnic_tso_info(value: Vec<super::structs::PnicTsoInfo>) -> ValueElements {
    ValueElements::ArrayOfPnicTsoInfo(value)
}
fn wrap_array_of_host_port_group(value: Vec<super::structs::HostPortGroup>) -> ValueElements {
    ValueElements::ArrayOfHostPortGroup(value)
}
fn wrap_array_of_host_port_group_config(value: Vec<super::structs::HostPortGroupConfig>) -> ValueElements {
    ValueElements::ArrayOfHostPortGroupConfig(value)
}
fn wrap_array_of_host_port_group_port(value: Vec<super::structs::HostPortGroupPort>) -> ValueElements {
    ValueElements::ArrayOfHostPortGroupPort(value)
}
fn wrap_array_of_host_port_group_spec(value: Vec<super::structs::HostPortGroupSpec>) -> ValueElements {
    ValueElements::ArrayOfHostPortGroupSpec(value)
}
fn wrap_array_of_power_system_capability(value: Vec<super::structs::PowerSystemCapability>) -> ValueElements {
    ValueElements::ArrayOfPowerSystemCapability(value)
}
fn wrap_array_of_power_system_info(value: Vec<super::structs::PowerSystemInfo>) -> ValueElements {
    ValueElements::ArrayOfPowerSystemInfo(value)
}
fn wrap_array_of_host_power_policy(value: Vec<super::structs::HostPowerPolicy>) -> ValueElements {
    ValueElements::ArrayOfHostPowerPolicy(value)
}
fn wrap_array_of_host_protocol_endpoint(value: Vec<super::structs::HostProtocolEndpoint>) -> ValueElements {
    ValueElements::ArrayOfHostProtocolEndpoint(value)
}
fn wrap_array_of_host_ptp_config(value: Vec<super::structs::HostPtpConfig>) -> ValueElements {
    ValueElements::ArrayOfHostPtpConfig(value)
}
fn wrap_array_of_host_ptp_config_ptp_port(value: Vec<super::structs::HostPtpConfigPtpPort>) -> ValueElements {
    ValueElements::ArrayOfHostPtpConfigPtpPort(value)
}
fn wrap_array_of_host_qualified_name(value: Vec<super::structs::HostQualifiedName>) -> ValueElements {
    ValueElements::ArrayOfHostQualifiedName(value)
}
fn wrap_array_of_host_rdma_device(value: Vec<super::structs::HostRdmaDevice>) -> ValueElements {
    ValueElements::ArrayOfHostRdmaDevice(value)
}
fn wrap_array_of_host_rdma_device_capability(value: Vec<super::structs::HostRdmaDeviceCapability>) -> ValueElements {
    ValueElements::ArrayOfHostRdmaDeviceCapability(value)
}
fn wrap_array_of_host_rdma_device_connection_info(value: Vec<super::structs::HostRdmaDeviceConnectionInfo>) -> ValueElements {
    ValueElements::ArrayOfHostRdmaDeviceConnectionInfo(value)
}
fn wrap_array_of_host_rdma_device_pnic_backing(value: Vec<super::structs::HostRdmaDevicePnicBacking>) -> ValueElements {
    ValueElements::ArrayOfHostRdmaDevicePnicBacking(value)
}
fn wrap_array_of_host_rdma_hba(value: Vec<super::structs::HostRdmaHba>) -> ValueElements {
    ValueElements::ArrayOfHostRdmaHba(value)
}
fn wrap_array_of_host_rdma_target_transport(value: Vec<super::structs::HostRdmaTargetTransport>) -> ValueElements {
    ValueElements::ArrayOfHostRdmaTargetTransport(value)
}
fn wrap_array_of_host_reliable_memory_info(value: Vec<super::structs::HostReliableMemoryInfo>) -> ValueElements {
    ValueElements::ArrayOfHostReliableMemoryInfo(value)
}
fn wrap_array_of_host_resignature_rescan_result(value: Vec<super::structs::HostResignatureRescanResult>) -> ValueElements {
    ValueElements::ArrayOfHostResignatureRescanResult(value)
}
fn wrap_array_of_host_firewall_ruleset(value: Vec<super::structs::HostFirewallRuleset>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallRuleset(value)
}
fn wrap_array_of_host_firewall_ruleset_ip_list(value: Vec<super::structs::HostFirewallRulesetIpList>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallRulesetIpList(value)
}
fn wrap_array_of_host_firewall_ruleset_ip_network(value: Vec<super::structs::HostFirewallRulesetIpNetwork>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallRulesetIpNetwork(value)
}
fn wrap_array_of_host_firewall_rule(value: Vec<super::structs::HostFirewallRule>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallRule(value)
}
fn wrap_array_of_host_firewall_ruleset_ruleset_spec(value: Vec<super::structs::HostFirewallRulesetRulesetSpec>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallRulesetRulesetSpec(value)
}
fn wrap_array_of_host_runtime_info(value: Vec<super::structs::HostRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfHostRuntimeInfo(value)
}
fn wrap_array_of_host_runtime_info_net_stack_instance_runtime_info(value: Vec<super::structs::HostRuntimeInfoNetStackInstanceRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfHostRuntimeInfoNetStackInstanceRuntimeInfo(value)
}
fn wrap_array_of_host_network_resource_runtime(value: Vec<super::structs::HostNetworkResourceRuntime>) -> ValueElements {
    ValueElements::ArrayOfHostNetworkResourceRuntime(value)
}
fn wrap_array_of_host_runtime_info_network_runtime_info(value: Vec<super::structs::HostRuntimeInfoNetworkRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfHostRuntimeInfoNetworkRuntimeInfo(value)
}
fn wrap_array_of_host_placed_virtual_nic_identifier(value: Vec<super::structs::HostPlacedVirtualNicIdentifier>) -> ValueElements {
    ValueElements::ArrayOfHostPlacedVirtualNicIdentifier(value)
}
fn wrap_array_of_host_pnic_network_resource_info(value: Vec<super::structs::HostPnicNetworkResourceInfo>) -> ValueElements {
    ValueElements::ArrayOfHostPnicNetworkResourceInfo(value)
}
fn wrap_array_of_host_runtime_info_state_encryption_info(value: Vec<super::structs::HostRuntimeInfoStateEncryptionInfo>) -> ValueElements {
    ValueElements::ArrayOfHostRuntimeInfoStateEncryptionInfo(value)
}
fn wrap_array_of_host_scsi_disk(value: Vec<super::structs::HostScsiDisk>) -> ValueElements {
    ValueElements::ArrayOfHostScsiDisk(value)
}
fn wrap_array_of_host_scsi_disk_partition(value: Vec<super::structs::HostScsiDiskPartition>) -> ValueElements {
    ValueElements::ArrayOfHostScsiDiskPartition(value)
}
fn wrap_array_of_scsi_lun_capabilities(value: Vec<super::structs::ScsiLunCapabilities>) -> ValueElements {
    ValueElements::ArrayOfScsiLunCapabilities(value)
}
fn wrap_array_of_scsi_lun_descriptor(value: Vec<super::structs::ScsiLunDescriptor>) -> ValueElements {
    ValueElements::ArrayOfScsiLunDescriptor(value)
}
fn wrap_array_of_scsi_lun_durable_name(value: Vec<super::structs::ScsiLunDurableName>) -> ValueElements {
    ValueElements::ArrayOfScsiLunDurableName(value)
}
fn wrap_array_of_host_scsi_topology(value: Vec<super::structs::HostScsiTopology>) -> ValueElements {
    ValueElements::ArrayOfHostScsiTopology(value)
}
fn wrap_array_of_host_scsi_topology_interface(value: Vec<super::structs::HostScsiTopologyInterface>) -> ValueElements {
    ValueElements::ArrayOfHostScsiTopologyInterface(value)
}
fn wrap_array_of_host_scsi_topology_lun(value: Vec<super::structs::HostScsiTopologyLun>) -> ValueElements {
    ValueElements::ArrayOfHostScsiTopologyLun(value)
}
fn wrap_array_of_host_scsi_topology_target(value: Vec<super::structs::HostScsiTopologyTarget>) -> ValueElements {
    ValueElements::ArrayOfHostScsiTopologyTarget(value)
}
fn wrap_array_of_host_security_spec(value: Vec<super::structs::HostSecuritySpec>) -> ValueElements {
    ValueElements::ArrayOfHostSecuritySpec(value)
}
fn wrap_array_of_host_serial_attached_hba(value: Vec<super::structs::HostSerialAttachedHba>) -> ValueElements {
    ValueElements::ArrayOfHostSerialAttachedHba(value)
}
fn wrap_array_of_host_serial_attached_target_transport(value: Vec<super::structs::HostSerialAttachedTargetTransport>) -> ValueElements {
    ValueElements::ArrayOfHostSerialAttachedTargetTransport(value)
}
fn wrap_array_of_host_service(value: Vec<super::structs::HostService>) -> ValueElements {
    ValueElements::ArrayOfHostService(value)
}
fn wrap_array_of_host_service_source_package(value: Vec<super::structs::HostServiceSourcePackage>) -> ValueElements {
    ValueElements::ArrayOfHostServiceSourcePackage(value)
}
fn wrap_array_of_host_service_config(value: Vec<super::structs::HostServiceConfig>) -> ValueElements {
    ValueElements::ArrayOfHostServiceConfig(value)
}
fn wrap_array_of_host_service_info(value: Vec<super::structs::HostServiceInfo>) -> ValueElements {
    ValueElements::ArrayOfHostServiceInfo(value)
}
fn wrap_array_of_host_sev_info(value: Vec<super::structs::HostSevInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSevInfo(value)
}
fn wrap_array_of_host_sgx_info(value: Vec<super::structs::HostSgxInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSgxInfo(value)
}
fn wrap_array_of_host_sgx_registration_info(value: Vec<super::structs::HostSgxRegistrationInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSgxRegistrationInfo(value)
}
fn wrap_array_of_host_shared_gpu_capabilities(value: Vec<super::structs::HostSharedGpuCapabilities>) -> ValueElements {
    ValueElements::ArrayOfHostSharedGpuCapabilities(value)
}
fn wrap_array_of_host_snmp_system_agent_limits(value: Vec<super::structs::HostSnmpSystemAgentLimits>) -> ValueElements {
    ValueElements::ArrayOfHostSnmpSystemAgentLimits(value)
}
fn wrap_array_of_host_snmp_config_spec(value: Vec<super::structs::HostSnmpConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfHostSnmpConfigSpec(value)
}
fn wrap_array_of_host_snmp_destination(value: Vec<super::structs::HostSnmpDestination>) -> ValueElements {
    ValueElements::ArrayOfHostSnmpDestination(value)
}
fn wrap_array_of_software_package(value: Vec<super::structs::SoftwarePackage>) -> ValueElements {
    ValueElements::ArrayOfSoftwarePackage(value)
}
fn wrap_array_of_software_package_capability(value: Vec<super::structs::SoftwarePackageCapability>) -> ValueElements {
    ValueElements::ArrayOfSoftwarePackageCapability(value)
}
fn wrap_array_of_relation(value: Vec<super::structs::Relation>) -> ValueElements {
    ValueElements::ArrayOfRelation(value)
}
fn wrap_array_of_host_sriov_config(value: Vec<super::structs::HostSriovConfig>) -> ValueElements {
    ValueElements::ArrayOfHostSriovConfig(value)
}
fn wrap_array_of_host_sriov_info(value: Vec<super::structs::HostSriovInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSriovInfo(value)
}
fn wrap_array_of_host_sriov_network_device_pool_info(value: Vec<super::structs::HostSriovNetworkDevicePoolInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSriovNetworkDevicePoolInfo(value)
}
fn wrap_array_of_host_ssl_thumbprint_info(value: Vec<super::structs::HostSslThumbprintInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSslThumbprintInfo(value)
}
fn wrap_array_of_host_storage_array_type_policy_option(value: Vec<super::structs::HostStorageArrayTypePolicyOption>) -> ValueElements {
    ValueElements::ArrayOfHostStorageArrayTypePolicyOption(value)
}
fn wrap_array_of_host_storage_device_info(value: Vec<super::structs::HostStorageDeviceInfo>) -> ValueElements {
    ValueElements::ArrayOfHostStorageDeviceInfo(value)
}
fn wrap_array_of_host_storage_system_disk_locator_led_result(value: Vec<super::structs::HostStorageSystemDiskLocatorLedResult>) -> ValueElements {
    ValueElements::ArrayOfHostStorageSystemDiskLocatorLedResult(value)
}
fn wrap_array_of_host_storage_system_scsi_lun_result(value: Vec<super::structs::HostStorageSystemScsiLunResult>) -> ValueElements {
    ValueElements::ArrayOfHostStorageSystemScsiLunResult(value)
}
fn wrap_array_of_host_storage_system_vmfs_volume_result(value: Vec<super::structs::HostStorageSystemVmfsVolumeResult>) -> ValueElements {
    ValueElements::ArrayOfHostStorageSystemVmfsVolumeResult(value)
}
fn wrap_array_of_host_list_summary(value: Vec<super::structs::HostListSummary>) -> ValueElements {
    ValueElements::ArrayOfHostListSummary(value)
}
fn wrap_array_of_host_config_summary(value: Vec<super::structs::HostConfigSummary>) -> ValueElements {
    ValueElements::ArrayOfHostConfigSummary(value)
}
fn wrap_array_of_host_list_summary_gateway_summary(value: Vec<super::structs::HostListSummaryGatewaySummary>) -> ValueElements {
    ValueElements::ArrayOfHostListSummaryGatewaySummary(value)
}
fn wrap_array_of_host_hardware_summary(value: Vec<super::structs::HostHardwareSummary>) -> ValueElements {
    ValueElements::ArrayOfHostHardwareSummary(value)
}
fn wrap_array_of_host_list_summary_quick_stats(value: Vec<super::structs::HostListSummaryQuickStats>) -> ValueElements {
    ValueElements::ArrayOfHostListSummaryQuickStats(value)
}
fn wrap_array_of_system_event_info(value: Vec<super::structs::SystemEventInfo>) -> ValueElements {
    ValueElements::ArrayOfSystemEventInfo(value)
}
fn wrap_array_of_host_system_health_info(value: Vec<super::structs::HostSystemHealthInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSystemHealthInfo(value)
}
fn wrap_array_of_host_system_identification_info(value: Vec<super::structs::HostSystemIdentificationInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSystemIdentificationInfo(value)
}
fn wrap_array_of_host_system_info(value: Vec<super::structs::HostSystemInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSystemInfo(value)
}
fn wrap_array_of_host_system_resource_info(value: Vec<super::structs::HostSystemResourceInfo>) -> ValueElements {
    ValueElements::ArrayOfHostSystemResourceInfo(value)
}
fn wrap_array_of_host_system_swap_configuration(value: Vec<super::structs::HostSystemSwapConfiguration>) -> ValueElements {
    ValueElements::ArrayOfHostSystemSwapConfiguration(value)
}
fn wrap_array_of_host_system_swap_configuration_datastore_option(value: Vec<super::structs::HostSystemSwapConfigurationDatastoreOption>) -> ValueElements {
    ValueElements::ArrayOfHostSystemSwapConfigurationDatastoreOption(value)
}
fn wrap_array_of_host_system_swap_configuration_disabled_option(value: Vec<super::structs::HostSystemSwapConfigurationDisabledOption>) -> ValueElements {
    ValueElements::ArrayOfHostSystemSwapConfigurationDisabledOption(value)
}
fn wrap_array_of_host_system_swap_configuration_host_cache_option(value: Vec<super::structs::HostSystemSwapConfigurationHostCacheOption>) -> ValueElements {
    ValueElements::ArrayOfHostSystemSwapConfigurationHostCacheOption(value)
}
fn wrap_array_of_host_system_swap_configuration_host_local_swap_option(value: Vec<super::structs::HostSystemSwapConfigurationHostLocalSwapOption>) -> ValueElements {
    ValueElements::ArrayOfHostSystemSwapConfigurationHostLocalSwapOption(value)
}
fn wrap_array_of_host_tcp_hba(value: Vec<super::structs::HostTcpHba>) -> ValueElements {
    ValueElements::ArrayOfHostTcpHba(value)
}
fn wrap_array_of_host_tcp_hba_create_spec(value: Vec<super::structs::HostTcpHbaCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfHostTcpHbaCreateSpec(value)
}
fn wrap_array_of_host_tcp_target_transport(value: Vec<super::structs::HostTcpTargetTransport>) -> ValueElements {
    ValueElements::ArrayOfHostTcpTargetTransport(value)
}
fn wrap_array_of_host_tdx_info(value: Vec<super::structs::HostTdxInfo>) -> ValueElements {
    ValueElements::ArrayOfHostTdxInfo(value)
}
fn wrap_array_of_host_tpm_attestation_info(value: Vec<super::structs::HostTpmAttestationInfo>) -> ValueElements {
    ValueElements::ArrayOfHostTpmAttestationInfo(value)
}
fn wrap_array_of_host_tpm_attestation_report(value: Vec<super::structs::HostTpmAttestationReport>) -> ValueElements {
    ValueElements::ArrayOfHostTpmAttestationReport(value)
}
fn wrap_array_of_host_tpm_boot_complete_event_details(value: Vec<super::structs::HostTpmBootCompleteEventDetails>) -> ValueElements {
    ValueElements::ArrayOfHostTpmBootCompleteEventDetails(value)
}
fn wrap_array_of_host_tpm_command_event_details(value: Vec<super::structs::HostTpmCommandEventDetails>) -> ValueElements {
    ValueElements::ArrayOfHostTpmCommandEventDetails(value)
}
fn wrap_array_of_host_tpm_digest_info(value: Vec<super::structs::HostTpmDigestInfo>) -> ValueElements {
    ValueElements::ArrayOfHostTpmDigestInfo(value)
}
fn wrap_array_of_host_tpm_event_log_entry(value: Vec<super::structs::HostTpmEventLogEntry>) -> ValueElements {
    ValueElements::ArrayOfHostTpmEventLogEntry(value)
}
fn wrap_array_of_host_tpm_nv_tag_event_details(value: Vec<super::structs::HostTpmNvTagEventDetails>) -> ValueElements {
    ValueElements::ArrayOfHostTpmNvTagEventDetails(value)
}
fn wrap_array_of_host_tpm_option_event_details(value: Vec<super::structs::HostTpmOptionEventDetails>) -> ValueElements {
    ValueElements::ArrayOfHostTpmOptionEventDetails(value)
}
fn wrap_array_of_host_tpm_signer_event_details(value: Vec<super::structs::HostTpmSignerEventDetails>) -> ValueElements {
    ValueElements::ArrayOfHostTpmSignerEventDetails(value)
}
fn wrap_array_of_host_tpm_software_component_event_details(value: Vec<super::structs::HostTpmSoftwareComponentEventDetails>) -> ValueElements {
    ValueElements::ArrayOfHostTpmSoftwareComponentEventDetails(value)
}
fn wrap_array_of_host_tpm_version_event_details(value: Vec<super::structs::HostTpmVersionEventDetails>) -> ValueElements {
    ValueElements::ArrayOfHostTpmVersionEventDetails(value)
}
fn wrap_array_of_host_trust_authority_attestation_info(value: Vec<super::structs::HostTrustAuthorityAttestationInfo>) -> ValueElements {
    ValueElements::ArrayOfHostTrustAuthorityAttestationInfo(value)
}
fn wrap_array_of_host_unresolved_vmfs_extent(value: Vec<super::structs::HostUnresolvedVmfsExtent>) -> ValueElements {
    ValueElements::ArrayOfHostUnresolvedVmfsExtent(value)
}
fn wrap_array_of_host_unresolved_vmfs_resignature_spec(value: Vec<super::structs::HostUnresolvedVmfsResignatureSpec>) -> ValueElements {
    ValueElements::ArrayOfHostUnresolvedVmfsResignatureSpec(value)
}
fn wrap_array_of_host_unresolved_vmfs_resolution_result(value: Vec<super::structs::HostUnresolvedVmfsResolutionResult>) -> ValueElements {
    ValueElements::ArrayOfHostUnresolvedVmfsResolutionResult(value)
}
fn wrap_array_of_host_unresolved_vmfs_resolution_spec(value: Vec<super::structs::HostUnresolvedVmfsResolutionSpec>) -> ValueElements {
    ValueElements::ArrayOfHostUnresolvedVmfsResolutionSpec(value)
}
fn wrap_array_of_host_unresolved_vmfs_volume(value: Vec<super::structs::HostUnresolvedVmfsVolume>) -> ValueElements {
    ValueElements::ArrayOfHostUnresolvedVmfsVolume(value)
}
fn wrap_array_of_host_unresolved_vmfs_volume_resolve_status(value: Vec<super::structs::HostUnresolvedVmfsVolumeResolveStatus>) -> ValueElements {
    ValueElements::ArrayOfHostUnresolvedVmfsVolumeResolveStatus(value)
}
fn wrap_array_of_host_v_flash_manager_v_flash_cache_config_info(value: Vec<super::structs::HostVFlashManagerVFlashCacheConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfHostVFlashManagerVFlashCacheConfigInfo(value)
}
fn wrap_array_of_host_v_flash_manager_v_flash_cache_config_info_v_flash_module_config_option(value: Vec<super::structs::HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption>) -> ValueElements {
    ValueElements::ArrayOfHostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption(value)
}
fn wrap_array_of_host_v_flash_manager_v_flash_cache_config_spec(value: Vec<super::structs::HostVFlashManagerVFlashCacheConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfHostVFlashManagerVFlashCacheConfigSpec(value)
}
fn wrap_array_of_host_v_flash_manager_v_flash_config_info(value: Vec<super::structs::HostVFlashManagerVFlashConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfHostVFlashManagerVFlashConfigInfo(value)
}
fn wrap_array_of_host_v_flash_manager_v_flash_resource_config_info(value: Vec<super::structs::HostVFlashManagerVFlashResourceConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfHostVFlashManagerVFlashResourceConfigInfo(value)
}
fn wrap_array_of_host_v_flash_manager_v_flash_resource_config_spec(value: Vec<super::structs::HostVFlashManagerVFlashResourceConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfHostVFlashManagerVFlashResourceConfigSpec(value)
}
fn wrap_array_of_host_v_flash_manager_v_flash_resource_run_time_info(value: Vec<super::structs::HostVFlashManagerVFlashResourceRunTimeInfo>) -> ValueElements {
    ValueElements::ArrayOfHostVFlashManagerVFlashResourceRunTimeInfo(value)
}
fn wrap_array_of_host_v_flash_resource_configuration_result(value: Vec<super::structs::HostVFlashResourceConfigurationResult>) -> ValueElements {
    ValueElements::ArrayOfHostVFlashResourceConfigurationResult(value)
}
fn wrap_array_of_host_v_motion_config(value: Vec<super::structs::HostVMotionConfig>) -> ValueElements {
    ValueElements::ArrayOfHostVMotionConfig(value)
}
fn wrap_array_of_host_v_motion_info(value: Vec<super::structs::HostVMotionInfo>) -> ValueElements {
    ValueElements::ArrayOfHostVMotionInfo(value)
}
fn wrap_array_of_host_v_motion_manager_dst_instant_clone_result(value: Vec<super::structs::HostVMotionManagerDstInstantCloneResult>) -> ValueElements {
    ValueElements::ArrayOfHostVMotionManagerDstInstantCloneResult(value)
}
fn wrap_array_of_host_v_motion_manager_src_instant_clone_result(value: Vec<super::structs::HostVMotionManagerSrcInstantCloneResult>) -> ValueElements {
    ValueElements::ArrayOfHostVMotionManagerSrcInstantCloneResult(value)
}
fn wrap_array_of_host_v_motion_net_config(value: Vec<super::structs::HostVMotionNetConfig>) -> ValueElements {
    ValueElements::ArrayOfHostVMotionNetConfig(value)
}
fn wrap_array_of_vim_host_vsan_stretched_cluster_host_capability(value: Vec<super::structs::VimHostVsanStretchedClusterHostCapability>) -> ValueElements {
    ValueElements::ArrayOfVimHostVsanStretchedClusterHostCapability(value)
}
fn wrap_array_of_host_vfat_volume(value: Vec<super::structs::HostVfatVolume>) -> ValueElements {
    ValueElements::ArrayOfHostVfatVolume(value)
}
fn wrap_array_of_host_vffs_volume(value: Vec<super::structs::HostVffsVolume>) -> ValueElements {
    ValueElements::ArrayOfHostVffsVolume(value)
}
fn wrap_array_of_host_vffs_spec(value: Vec<super::structs::HostVffsSpec>) -> ValueElements {
    ValueElements::ArrayOfHostVffsSpec(value)
}
fn wrap_array_of_host_virtual_nic(value: Vec<super::structs::HostVirtualNic>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualNic(value)
}
fn wrap_array_of_host_virtual_nic_config(value: Vec<super::structs::HostVirtualNicConfig>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualNicConfig(value)
}
fn wrap_array_of_host_virtual_nic_ip_route_spec(value: Vec<super::structs::HostVirtualNicIpRouteSpec>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualNicIpRouteSpec(value)
}
fn wrap_array_of_host_virtual_nic_opaque_network_spec(value: Vec<super::structs::HostVirtualNicOpaqueNetworkSpec>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualNicOpaqueNetworkSpec(value)
}
fn wrap_array_of_host_virtual_nic_spec(value: Vec<super::structs::HostVirtualNicSpec>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualNicSpec(value)
}
fn wrap_array_of_host_virtual_nic_connection(value: Vec<super::structs::HostVirtualNicConnection>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualNicConnection(value)
}
fn wrap_array_of_virtual_nic_manager_net_config(value: Vec<super::structs::VirtualNicManagerNetConfig>) -> ValueElements {
    ValueElements::ArrayOfVirtualNicManagerNetConfig(value)
}
fn wrap_array_of_host_virtual_nic_manager_nic_type_selection(value: Vec<super::structs::HostVirtualNicManagerNicTypeSelection>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualNicManagerNicTypeSelection(value)
}
fn wrap_array_of_host_virtual_nic_manager_info(value: Vec<super::structs::HostVirtualNicManagerInfo>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualNicManagerInfo(value)
}
fn wrap_array_of_host_virtual_switch(value: Vec<super::structs::HostVirtualSwitch>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualSwitch(value)
}
fn wrap_array_of_host_virtual_switch_auto_bridge(value: Vec<super::structs::HostVirtualSwitchAutoBridge>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualSwitchAutoBridge(value)
}
fn wrap_array_of_host_virtual_switch_beacon_config(value: Vec<super::structs::HostVirtualSwitchBeaconConfig>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualSwitchBeaconConfig(value)
}
fn wrap_array_of_host_virtual_switch_bond_bridge(value: Vec<super::structs::HostVirtualSwitchBondBridge>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualSwitchBondBridge(value)
}
fn wrap_array_of_host_virtual_switch_config(value: Vec<super::structs::HostVirtualSwitchConfig>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualSwitchConfig(value)
}
fn wrap_array_of_host_virtual_switch_simple_bridge(value: Vec<super::structs::HostVirtualSwitchSimpleBridge>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualSwitchSimpleBridge(value)
}
fn wrap_array_of_host_virtual_switch_spec(value: Vec<super::structs::HostVirtualSwitchSpec>) -> ValueElements {
    ValueElements::ArrayOfHostVirtualSwitchSpec(value)
}
fn wrap_array_of_host_vmci_access_manager_access_spec(value: Vec<super::structs::HostVmciAccessManagerAccessSpec>) -> ValueElements {
    ValueElements::ArrayOfHostVmciAccessManagerAccessSpec(value)
}
fn wrap_array_of_vmfs_datastore_create_spec(value: Vec<super::structs::VmfsDatastoreCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfVmfsDatastoreCreateSpec(value)
}
fn wrap_array_of_vmfs_datastore_expand_spec(value: Vec<super::structs::VmfsDatastoreExpandSpec>) -> ValueElements {
    ValueElements::ArrayOfVmfsDatastoreExpandSpec(value)
}
fn wrap_array_of_vmfs_datastore_extend_spec(value: Vec<super::structs::VmfsDatastoreExtendSpec>) -> ValueElements {
    ValueElements::ArrayOfVmfsDatastoreExtendSpec(value)
}
fn wrap_array_of_vmfs_datastore_info(value: Vec<super::structs::VmfsDatastoreInfo>) -> ValueElements {
    ValueElements::ArrayOfVmfsDatastoreInfo(value)
}
fn wrap_array_of_vmfs_datastore_option(value: Vec<super::structs::VmfsDatastoreOption>) -> ValueElements {
    ValueElements::ArrayOfVmfsDatastoreOption(value)
}
fn wrap_array_of_vmfs_datastore_all_extent_option(value: Vec<super::structs::VmfsDatastoreAllExtentOption>) -> ValueElements {
    ValueElements::ArrayOfVmfsDatastoreAllExtentOption(value)
}
fn wrap_array_of_vmfs_datastore_multiple_extent_option(value: Vec<super::structs::VmfsDatastoreMultipleExtentOption>) -> ValueElements {
    ValueElements::ArrayOfVmfsDatastoreMultipleExtentOption(value)
}
fn wrap_array_of_host_vmfs_rescan_result(value: Vec<super::structs::HostVmfsRescanResult>) -> ValueElements {
    ValueElements::ArrayOfHostVmfsRescanResult(value)
}
fn wrap_array_of_host_vmfs_volume(value: Vec<super::structs::HostVmfsVolume>) -> ValueElements {
    ValueElements::ArrayOfHostVmfsVolume(value)
}
fn wrap_array_of_vmfs_config_option(value: Vec<super::structs::VmfsConfigOption>) -> ValueElements {
    ValueElements::ArrayOfVmfsConfigOption(value)
}
fn wrap_array_of_host_vmfs_spec(value: Vec<super::structs::HostVmfsSpec>) -> ValueElements {
    ValueElements::ArrayOfHostVmfsSpec(value)
}
fn wrap_array_of_vmfs_unmap_bandwidth_spec(value: Vec<super::structs::VmfsUnmapBandwidthSpec>) -> ValueElements {
    ValueElements::ArrayOfVmfsUnmapBandwidthSpec(value)
}
fn wrap_array_of_vsan_basic_device_info(value: Vec<super::structs::VsanBasicDeviceInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanBasicDeviceInfo(value)
}
fn wrap_array_of_vsan_cluster_membership_info(value: Vec<super::structs::VsanClusterMembershipInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterMembershipInfo(value)
}
fn wrap_array_of_vsan_daemon_health(value: Vec<super::structs::VsanDaemonHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanDaemonHealth(value)
}
fn wrap_array_of_vsan_datastore_info(value: Vec<super::structs::VsanDatastoreInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanDatastoreInfo(value)
}
fn wrap_array_of_vsan_disk_encryption_health(value: Vec<super::structs::VsanDiskEncryptionHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanDiskEncryptionHealth(value)
}
fn wrap_array_of_vsan_disk_rebalance_result(value: Vec<super::structs::VsanDiskRebalanceResult>) -> ValueElements {
    ValueElements::ArrayOfVsanDiskRebalanceResult(value)
}
fn wrap_array_of_vsan_dit_encryption_health_summary(value: Vec<super::structs::VsanDitEncryptionHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanDitEncryptionHealthSummary(value)
}
fn wrap_array_of_vsan_encryption_health_summary(value: Vec<super::structs::VsanEncryptionHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanEncryptionHealthSummary(value)
}
fn wrap_array_of_vsan_failed_repair_object_result(value: Vec<super::structs::VsanFailedRepairObjectResult>) -> ValueElements {
    ValueElements::ArrayOfVsanFailedRepairObjectResult(value)
}
fn wrap_array_of_vsan_file_server_health_summary(value: Vec<super::structs::VsanFileServerHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServerHealthSummary(value)
}
fn wrap_array_of_vsan_file_service_balance_health(value: Vec<super::structs::VsanFileServiceBalanceHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServiceBalanceHealth(value)
}
fn wrap_array_of_vsan_file_service_health_summary(value: Vec<super::structs::VsanFileServiceHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServiceHealthSummary(value)
}
fn wrap_array_of_vsan_file_service_root_fs_health(value: Vec<super::structs::VsanFileServiceRootFsHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServiceRootFsHealth(value)
}
fn wrap_array_of_vsan_file_service_share_health_summary(value: Vec<super::structs::VsanFileServiceShareHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServiceShareHealthSummary(value)
}
fn wrap_array_of_vsan_hcl_compute_resource(value: Vec<super::structs::VsanHclComputeResource>) -> ValueElements {
    ValueElements::ArrayOfVsanHclComputeResource(value)
}
fn wrap_array_of_vsan_hcl_controller_info(value: Vec<super::structs::VsanHclControllerInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHclControllerInfo(value)
}
fn wrap_array_of_vsan_hcl_disk_info(value: Vec<super::structs::VsanHclDiskInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHclDiskInfo(value)
}
fn wrap_array_of_vsan_hcl_firmware_file(value: Vec<super::structs::VsanHclFirmwareFile>) -> ValueElements {
    ValueElements::ArrayOfVsanHclFirmwareFile(value)
}
fn wrap_array_of_vsan_hcl_firmware_update_spec(value: Vec<super::structs::VsanHclFirmwareUpdateSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanHclFirmwareUpdateSpec(value)
}
fn wrap_array_of_vsan_hcl_mem_info(value: Vec<super::structs::VsanHclMemInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHclMemInfo(value)
}
fn wrap_array_of_vsan_hcl_nic_info(value: Vec<super::structs::VsanHclNicInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHclNicInfo(value)
}
fn wrap_array_of_vsan_health_query_spec(value: Vec<super::structs::VsanHealthQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthQuerySpec(value)
}
fn wrap_array_of_vsan_host_cim_provider_info(value: Vec<super::structs::VsanHostCimProviderInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostCimProviderInfo(value)
}
fn wrap_array_of_vsan_host_emm_summary(value: Vec<super::structs::VsanHostEmmSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanHostEmmSummary(value)
}
fn wrap_array_of_vsan_host_fw_component(value: Vec<super::structs::VsanHostFwComponent>) -> ValueElements {
    ValueElements::ArrayOfVsanHostFwComponent(value)
}
fn wrap_array_of_vsan_host_global_dedup_config_health_summary(value: Vec<super::structs::VsanHostGlobalDedupConfigHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanHostGlobalDedupConfigHealthSummary(value)
}
fn wrap_array_of_vsan_host_hcl_info(value: Vec<super::structs::VsanHostHclInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostHclInfo(value)
}
fn wrap_array_of_vsan_host_health_system_status_result(value: Vec<super::structs::VsanHostHealthSystemStatusResult>) -> ValueElements {
    ValueElements::ArrayOfVsanHostHealthSystemStatusResult(value)
}
fn wrap_array_of_vsan_host_hw_device_id(value: Vec<super::structs::VsanHostHwDeviceId>) -> ValueElements {
    ValueElements::ArrayOfVsanHostHwDeviceId(value)
}
fn wrap_array_of_vsan_host_io_insight_info(value: Vec<super::structs::VsanHostIoInsightInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostIoInsightInfo(value)
}
fn wrap_array_of_vsan_host_query_check_limits_spec(value: Vec<super::structs::VsanHostQueryCheckLimitsSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanHostQueryCheckLimitsSpec(value)
}
fn wrap_array_of_vsan_host_reference(value: Vec<super::structs::VsanHostReference>) -> ValueElements {
    ValueElements::ArrayOfVsanHostReference(value)
}
fn wrap_array_of_vsan_host_virtual_appliance_info(value: Vec<super::structs::VsanHostVirtualApplianceInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostVirtualApplianceInfo(value)
}
fn wrap_array_of_vsan_host_vmdk_load_test_result(value: Vec<super::structs::VsanHostVmdkLoadTestResult>) -> ValueElements {
    ValueElements::ArrayOfVsanHostVmdkLoadTestResult(value)
}
fn wrap_array_of_vsan_hw_to_vcg_info_mapping(value: Vec<super::structs::VsanHwToVcgInfoMapping>) -> ValueElements {
    ValueElements::ArrayOfVsanHwToVcgInfoMapping(value)
}
fn wrap_array_of_host_vsan_internal_system_cmmds_query(value: Vec<super::structs::HostVsanInternalSystemCmmdsQuery>) -> ValueElements {
    ValueElements::ArrayOfHostVsanInternalSystemCmmdsQuery(value)
}
fn wrap_array_of_host_vsan_internal_system_delete_vsan_objects_result(value: Vec<super::structs::HostVsanInternalSystemDeleteVsanObjectsResult>) -> ValueElements {
    ValueElements::ArrayOfHostVsanInternalSystemDeleteVsanObjectsResult(value)
}
fn wrap_array_of_vsan_new_policy_batch(value: Vec<super::structs::VsanNewPolicyBatch>) -> ValueElements {
    ValueElements::ArrayOfVsanNewPolicyBatch(value)
}
fn wrap_array_of_vsan_policy_change_batch(value: Vec<super::structs::VsanPolicyChangeBatch>) -> ValueElements {
    ValueElements::ArrayOfVsanPolicyChangeBatch(value)
}
fn wrap_array_of_vsan_policy_cost(value: Vec<super::structs::VsanPolicyCost>) -> ValueElements {
    ValueElements::ArrayOfVsanPolicyCost(value)
}
fn wrap_array_of_vsan_policy_satisfiability(value: Vec<super::structs::VsanPolicySatisfiability>) -> ValueElements {
    ValueElements::ArrayOfVsanPolicySatisfiability(value)
}
fn wrap_array_of_host_vsan_internal_system_vsan_object_operation_result(value: Vec<super::structs::HostVsanInternalSystemVsanObjectOperationResult>) -> ValueElements {
    ValueElements::ArrayOfHostVsanInternalSystemVsanObjectOperationResult(value)
}
fn wrap_array_of_host_vsan_internal_system_vsan_physical_disk_diagnostics_result(value: Vec<super::structs::HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult>) -> ValueElements {
    ValueElements::ArrayOfHostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult(value)
}
fn wrap_array_of_vsan_io_insight_info(value: Vec<super::structs::VsanIoInsightInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanIoInsightInfo(value)
}
fn wrap_array_of_vsan_iperf_client_spec(value: Vec<super::structs::VsanIperfClientSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanIperfClientSpec(value)
}
fn wrap_array_of_vsan_kms_health(value: Vec<super::structs::VsanKmsHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanKmsHealth(value)
}
fn wrap_array_of_vsan_limit_health_result(value: Vec<super::structs::VsanLimitHealthResult>) -> ValueElements {
    ValueElements::ArrayOfVsanLimitHealthResult(value)
}
fn wrap_array_of_vsan_network_diagnostics_health_info(value: Vec<super::structs::VsanNetworkDiagnosticsHealthInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkDiagnosticsHealthInfo(value)
}
fn wrap_array_of_vsan_network_health_result(value: Vec<super::structs::VsanNetworkHealthResult>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkHealthResult(value)
}
fn wrap_array_of_vsan_network_load_test_result(value: Vec<super::structs::VsanNetworkLoadTestResult>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkLoadTestResult(value)
}
fn wrap_array_of_vsan_network_peer_health_result(value: Vec<super::structs::VsanNetworkPeerHealthResult>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkPeerHealthResult(value)
}
fn wrap_array_of_vsan_nic_rdma_info(value: Vec<super::structs::VsanNicRdmaInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanNicRdmaInfo(value)
}
fn wrap_array_of_vsan_object_health(value: Vec<super::structs::VsanObjectHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectHealth(value)
}
fn wrap_array_of_vsan_object_overall_health(value: Vec<super::structs::VsanObjectOverallHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectOverallHealth(value)
}
fn wrap_array_of_vsan_physical_disk_health(value: Vec<super::structs::VsanPhysicalDiskHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanPhysicalDiskHealth(value)
}
fn wrap_array_of_vsan_physical_disk_health_summary(value: Vec<super::structs::VsanPhysicalDiskHealthSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanPhysicalDiskHealthSummary(value)
}
fn wrap_array_of_vsan_proactive_rebalance_info_ex(value: Vec<super::structs::VsanProactiveRebalanceInfoEx>) -> ValueElements {
    ValueElements::ArrayOfVsanProactiveRebalanceInfoEx(value)
}
fn wrap_array_of_vsan_query_result_host_info(value: Vec<super::structs::VsanQueryResultHostInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanQueryResultHostInfo(value)
}
fn wrap_array_of_vsan_repair_objects_result(value: Vec<super::structs::VsanRepairObjectsResult>) -> ValueElements {
    ValueElements::ArrayOfVsanRepairObjectsResult(value)
}
fn wrap_array_of_vsan_resource_health(value: Vec<super::structs::VsanResourceHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanResourceHealth(value)
}
fn wrap_array_of_vsan_server_cluster_info(value: Vec<super::structs::VsanServerClusterInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanServerClusterInfo(value)
}
fn wrap_array_of_vsan_smart_disk_stats(value: Vec<super::structs::VsanSmartDiskStats>) -> ValueElements {
    ValueElements::ArrayOfVsanSmartDiskStats(value)
}
fn wrap_array_of_vsan_smart_parameter(value: Vec<super::structs::VsanSmartParameter>) -> ValueElements {
    ValueElements::ArrayOfVsanSmartParameter(value)
}
fn wrap_array_of_vsan_smart_stats_host_summary(value: Vec<super::structs::VsanSmartStatsHostSummary>) -> ValueElements {
    ValueElements::ArrayOfVsanSmartStatsHostSummary(value)
}
fn wrap_array_of_vsan_vcg_device_info(value: Vec<super::structs::VsanVcgDeviceInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanVcgDeviceInfo(value)
}
fn wrap_array_of_vsan_vmdk_io_load_spec(value: Vec<super::structs::VsanVmdkIoLoadSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanVmdkIoLoadSpec(value)
}
fn wrap_array_of_vsan_vmdk_load_test_result(value: Vec<super::structs::VsanVmdkLoadTestResult>) -> ValueElements {
    ValueElements::ArrayOfVsanVmdkLoadTestResult(value)
}
fn wrap_array_of_vsan_vmdk_load_test_spec(value: Vec<super::structs::VsanVmdkLoadTestSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanVmdkLoadTestSpec(value)
}
fn wrap_array_of_vsan_vsan_pcap_result(value: Vec<super::structs::VsanVsanPcapResult>) -> ValueElements {
    ValueElements::ArrayOfVsanVsanPcapResult(value)
}
fn wrap_array_of_vvol_datastore_info(value: Vec<super::structs::VvolDatastoreInfo>) -> ValueElements {
    ValueElements::ArrayOfVvolDatastoreInfo(value)
}
fn wrap_array_of_host_vvol_nqn(value: Vec<super::structs::HostVvolNqn>) -> ValueElements {
    ValueElements::ArrayOfHostVvolNqn(value)
}
fn wrap_array_of_host_vvol_volume(value: Vec<super::structs::HostVvolVolume>) -> ValueElements {
    ValueElements::ArrayOfHostVvolVolume(value)
}
fn wrap_array_of_v_vol_host_pe(value: Vec<super::structs::VVolHostPe>) -> ValueElements {
    ValueElements::ArrayOfVVolHostPe(value)
}
fn wrap_array_of_host_vvol_volume_host_vvol_nqn(value: Vec<super::structs::HostVvolVolumeHostVvolNqn>) -> ValueElements {
    ValueElements::ArrayOfHostVvolVolumeHostVvolNqn(value)
}
fn wrap_array_of_host_vvol_volume_specification(value: Vec<super::structs::HostVvolVolumeSpecification>) -> ValueElements {
    ValueElements::ArrayOfHostVvolVolumeSpecification(value)
}
fn wrap_array_of_net_dhcp_config_info(value: Vec<super::structs::NetDhcpConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfNetDhcpConfigInfo(value)
}
fn wrap_array_of_net_dhcp_config_info_dhcp_options(value: Vec<super::structs::NetDhcpConfigInfoDhcpOptions>) -> ValueElements {
    ValueElements::ArrayOfNetDhcpConfigInfoDhcpOptions(value)
}
fn wrap_array_of_net_dhcp_config_spec(value: Vec<super::structs::NetDhcpConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfNetDhcpConfigSpec(value)
}
fn wrap_array_of_net_dhcp_config_spec_dhcp_options_spec(value: Vec<super::structs::NetDhcpConfigSpecDhcpOptionsSpec>) -> ValueElements {
    ValueElements::ArrayOfNetDhcpConfigSpecDhcpOptionsSpec(value)
}
fn wrap_array_of_net_dns_config_info(value: Vec<super::structs::NetDnsConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfNetDnsConfigInfo(value)
}
fn wrap_array_of_net_dns_config_spec(value: Vec<super::structs::NetDnsConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfNetDnsConfigSpec(value)
}
fn wrap_array_of_net_ip_config_info(value: Vec<super::structs::NetIpConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfNetIpConfigInfo(value)
}
fn wrap_array_of_net_ip_config_info_ip_address(value: Vec<super::structs::NetIpConfigInfoIpAddress>) -> ValueElements {
    ValueElements::ArrayOfNetIpConfigInfoIpAddress(value)
}
fn wrap_array_of_net_ip_config_spec(value: Vec<super::structs::NetIpConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfNetIpConfigSpec(value)
}
fn wrap_array_of_net_ip_config_spec_ip_address_spec(value: Vec<super::structs::NetIpConfigSpecIpAddressSpec>) -> ValueElements {
    ValueElements::ArrayOfNetIpConfigSpecIpAddressSpec(value)
}
fn wrap_array_of_net_ip_route_config_info(value: Vec<super::structs::NetIpRouteConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfNetIpRouteConfigInfo(value)
}
fn wrap_array_of_net_ip_route_config_info_gateway(value: Vec<super::structs::NetIpRouteConfigInfoGateway>) -> ValueElements {
    ValueElements::ArrayOfNetIpRouteConfigInfoGateway(value)
}
fn wrap_array_of_net_ip_route_config_info_ip_route(value: Vec<super::structs::NetIpRouteConfigInfoIpRoute>) -> ValueElements {
    ValueElements::ArrayOfNetIpRouteConfigInfoIpRoute(value)
}
fn wrap_array_of_net_ip_route_config_spec(value: Vec<super::structs::NetIpRouteConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfNetIpRouteConfigSpec(value)
}
fn wrap_array_of_net_ip_route_config_spec_gateway_spec(value: Vec<super::structs::NetIpRouteConfigSpecGatewaySpec>) -> ValueElements {
    ValueElements::ArrayOfNetIpRouteConfigSpecGatewaySpec(value)
}
fn wrap_array_of_net_ip_route_config_spec_ip_route_spec(value: Vec<super::structs::NetIpRouteConfigSpecIpRouteSpec>) -> ValueElements {
    ValueElements::ArrayOfNetIpRouteConfigSpecIpRouteSpec(value)
}
fn wrap_array_of_net_ip_stack_info(value: Vec<super::structs::NetIpStackInfo>) -> ValueElements {
    ValueElements::ArrayOfNetIpStackInfo(value)
}
fn wrap_array_of_net_ip_stack_info_default_router(value: Vec<super::structs::NetIpStackInfoDefaultRouter>) -> ValueElements {
    ValueElements::ArrayOfNetIpStackInfoDefaultRouter(value)
}
fn wrap_array_of_net_ip_stack_info_net_to_media(value: Vec<super::structs::NetIpStackInfoNetToMedia>) -> ValueElements {
    ValueElements::ArrayOfNetIpStackInfoNetToMedia(value)
}
fn wrap_array_of_win_net_bios_config_info(value: Vec<super::structs::WinNetBiosConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfWinNetBiosConfigInfo(value)
}
fn wrap_array_of_bool_option(value: Vec<super::structs::BoolOption>) -> ValueElements {
    ValueElements::ArrayOfBoolOption(value)
}
fn wrap_array_of_choice_option(value: Vec<super::structs::ChoiceOption>) -> ValueElements {
    ValueElements::ArrayOfChoiceOption(value)
}
fn wrap_array_of_float_option(value: Vec<super::structs::FloatOption>) -> ValueElements {
    ValueElements::ArrayOfFloatOption(value)
}
fn wrap_array_of_int_option(value: Vec<super::structs::IntOption>) -> ValueElements {
    ValueElements::ArrayOfIntOption(value)
}
fn wrap_array_of_long_option(value: Vec<super::structs::LongOption>) -> ValueElements {
    ValueElements::ArrayOfLongOption(value)
}
fn wrap_array_of_option_def(value: Vec<super::structs::OptionDef>) -> ValueElements {
    ValueElements::ArrayOfOptionDef(value)
}
fn wrap_array_of_string_option(value: Vec<super::structs::StringOption>) -> ValueElements {
    ValueElements::ArrayOfStringOption(value)
}
fn wrap_array_of_profile_apply_profile_element(value: Vec<super::structs::ProfileApplyProfileElement>) -> ValueElements {
    ValueElements::ArrayOfProfileApplyProfileElement(value)
}
fn wrap_array_of_profile_apply_profile_property(value: Vec<super::structs::ProfileApplyProfileProperty>) -> ValueElements {
    ValueElements::ArrayOfProfileApplyProfileProperty(value)
}
fn wrap_array_of_compliance_locator(value: Vec<super::structs::ComplianceLocator>) -> ValueElements {
    ValueElements::ArrayOfComplianceLocator(value)
}
fn wrap_array_of_compliance_profile(value: Vec<super::structs::ComplianceProfile>) -> ValueElements {
    ValueElements::ArrayOfComplianceProfile(value)
}
fn wrap_array_of_compliance_result(value: Vec<super::structs::ComplianceResult>) -> ValueElements {
    ValueElements::ArrayOfComplianceResult(value)
}
fn wrap_array_of_compliance_failure(value: Vec<super::structs::ComplianceFailure>) -> ValueElements {
    ValueElements::ArrayOfComplianceFailure(value)
}
fn wrap_array_of_compliance_failure_compliance_failure_values(value: Vec<super::structs::ComplianceFailureComplianceFailureValues>) -> ValueElements {
    ValueElements::ArrayOfComplianceFailureComplianceFailureValues(value)
}
fn wrap_array_of_profile_composite_expression(value: Vec<super::structs::ProfileCompositeExpression>) -> ValueElements {
    ValueElements::ArrayOfProfileCompositeExpression(value)
}
fn wrap_array_of_composite_policy_option(value: Vec<super::structs::CompositePolicyOption>) -> ValueElements {
    ValueElements::ArrayOfCompositePolicyOption(value)
}
fn wrap_array_of_profile_composite_policy_option_metadata(value: Vec<super::structs::ProfileCompositePolicyOptionMetadata>) -> ValueElements {
    ValueElements::ArrayOfProfileCompositePolicyOptionMetadata(value)
}
fn wrap_array_of_profile_deferred_policy_option_parameter(value: Vec<super::structs::ProfileDeferredPolicyOptionParameter>) -> ValueElements {
    ValueElements::ArrayOfProfileDeferredPolicyOptionParameter(value)
}
fn wrap_array_of_profile_expression_metadata(value: Vec<super::structs::ProfileExpressionMetadata>) -> ValueElements {
    ValueElements::ArrayOfProfileExpressionMetadata(value)
}
fn wrap_array_of_profile_parameter_metadata(value: Vec<super::structs::ProfileParameterMetadata>) -> ValueElements {
    ValueElements::ArrayOfProfileParameterMetadata(value)
}
fn wrap_array_of_profile_parameter_metadata_parameter_relation_metadata(value: Vec<super::structs::ProfileParameterMetadataParameterRelationMetadata>) -> ValueElements {
    ValueElements::ArrayOfProfileParameterMetadataParameterRelationMetadata(value)
}
fn wrap_array_of_profile_policy(value: Vec<super::structs::ProfilePolicy>) -> ValueElements {
    ValueElements::ArrayOfProfilePolicy(value)
}
fn wrap_array_of_profile_policy_metadata(value: Vec<super::structs::ProfilePolicyMetadata>) -> ValueElements {
    ValueElements::ArrayOfProfilePolicyMetadata(value)
}
fn wrap_array_of_profile_description(value: Vec<super::structs::ProfileDescription>) -> ValueElements {
    ValueElements::ArrayOfProfileDescription(value)
}
fn wrap_array_of_profile_description_section(value: Vec<super::structs::ProfileDescriptionSection>) -> ValueElements {
    ValueElements::ArrayOfProfileDescriptionSection(value)
}
fn wrap_array_of_profile_metadata(value: Vec<super::structs::ProfileMetadata>) -> ValueElements {
    ValueElements::ArrayOfProfileMetadata(value)
}
fn wrap_array_of_profile_metadata_profile_operation_message(value: Vec<super::structs::ProfileMetadataProfileOperationMessage>) -> ValueElements {
    ValueElements::ArrayOfProfileMetadataProfileOperationMessage(value)
}
fn wrap_array_of_profile_metadata_profile_sort_spec(value: Vec<super::structs::ProfileMetadataProfileSortSpec>) -> ValueElements {
    ValueElements::ArrayOfProfileMetadataProfileSortSpec(value)
}
fn wrap_array_of_profile_property_path(value: Vec<super::structs::ProfilePropertyPath>) -> ValueElements {
    ValueElements::ArrayOfProfilePropertyPath(value)
}
fn wrap_array_of_profile_profile_structure(value: Vec<super::structs::ProfileProfileStructure>) -> ValueElements {
    ValueElements::ArrayOfProfileProfileStructure(value)
}
fn wrap_array_of_profile_profile_structure_property(value: Vec<super::structs::ProfileProfileStructureProperty>) -> ValueElements {
    ValueElements::ArrayOfProfileProfileStructureProperty(value)
}
fn wrap_array_of_profile_simple_expression(value: Vec<super::structs::ProfileSimpleExpression>) -> ValueElements {
    ValueElements::ArrayOfProfileSimpleExpression(value)
}
fn wrap_array_of_user_input_required_parameter_metadata(value: Vec<super::structs::UserInputRequiredParameterMetadata>) -> ValueElements {
    ValueElements::ArrayOfUserInputRequiredParameterMetadata(value)
}
fn wrap_array_of_cluster_profile_complete_config_spec(value: Vec<super::structs::ClusterProfileCompleteConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterProfileCompleteConfigSpec(value)
}
fn wrap_array_of_cluster_profile_config_info(value: Vec<super::structs::ClusterProfileConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterProfileConfigInfo(value)
}
fn wrap_array_of_cluster_profile_config_service_create_spec(value: Vec<super::structs::ClusterProfileConfigServiceCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterProfileConfigServiceCreateSpec(value)
}
fn wrap_array_of_active_directory_profile(value: Vec<super::structs::ActiveDirectoryProfile>) -> ValueElements {
    ValueElements::ArrayOfActiveDirectoryProfile(value)
}
fn wrap_array_of_answer_file(value: Vec<super::structs::AnswerFile>) -> ValueElements {
    ValueElements::ArrayOfAnswerFile(value)
}
fn wrap_array_of_answer_file_status_result(value: Vec<super::structs::AnswerFileStatusResult>) -> ValueElements {
    ValueElements::ArrayOfAnswerFileStatusResult(value)
}
fn wrap_array_of_answer_file_status_error(value: Vec<super::structs::AnswerFileStatusError>) -> ValueElements {
    ValueElements::ArrayOfAnswerFileStatusError(value)
}
fn wrap_array_of_authentication_profile(value: Vec<super::structs::AuthenticationProfile>) -> ValueElements {
    ValueElements::ArrayOfAuthenticationProfile(value)
}
fn wrap_array_of_date_time_profile(value: Vec<super::structs::DateTimeProfile>) -> ValueElements {
    ValueElements::ArrayOfDateTimeProfile(value)
}
fn wrap_array_of_dvs_host_v_nic_profile(value: Vec<super::structs::DvsHostVNicProfile>) -> ValueElements {
    ValueElements::ArrayOfDvsHostVNicProfile(value)
}
fn wrap_array_of_dvs_profile(value: Vec<super::structs::DvsProfile>) -> ValueElements {
    ValueElements::ArrayOfDvsProfile(value)
}
fn wrap_array_of_dvs_service_console_v_nic_profile(value: Vec<super::structs::DvsServiceConsoleVNicProfile>) -> ValueElements {
    ValueElements::ArrayOfDvsServiceConsoleVNicProfile(value)
}
fn wrap_array_of_profile_execute_error(value: Vec<super::structs::ProfileExecuteError>) -> ValueElements {
    ValueElements::ArrayOfProfileExecuteError(value)
}
fn wrap_array_of_firewall_profile(value: Vec<super::structs::FirewallProfile>) -> ValueElements {
    ValueElements::ArrayOfFirewallProfile(value)
}
fn wrap_array_of_firewall_profile_ruleset_profile(value: Vec<super::structs::FirewallProfileRulesetProfile>) -> ValueElements {
    ValueElements::ArrayOfFirewallProfileRulesetProfile(value)
}
fn wrap_array_of_host_apply_profile(value: Vec<super::structs::HostApplyProfile>) -> ValueElements {
    ValueElements::ArrayOfHostApplyProfile(value)
}
fn wrap_array_of_host_memory_profile(value: Vec<super::structs::HostMemoryProfile>) -> ValueElements {
    ValueElements::ArrayOfHostMemoryProfile(value)
}
fn wrap_array_of_host_port_group_profile(value: Vec<super::structs::HostPortGroupProfile>) -> ValueElements {
    ValueElements::ArrayOfHostPortGroupProfile(value)
}
fn wrap_array_of_host_profile_complete_config_spec(value: Vec<super::structs::HostProfileCompleteConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfHostProfileCompleteConfigSpec(value)
}
fn wrap_array_of_host_profile_config_info(value: Vec<super::structs::HostProfileConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfHostProfileConfigInfo(value)
}
fn wrap_array_of_host_profile_host_based_config_spec(value: Vec<super::structs::HostProfileHostBasedConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfHostProfileHostBasedConfigSpec(value)
}
fn wrap_array_of_host_profile_serialized_host_profile_spec(value: Vec<super::structs::HostProfileSerializedHostProfileSpec>) -> ValueElements {
    ValueElements::ArrayOfHostProfileSerializedHostProfileSpec(value)
}
fn wrap_array_of_host_profile_validation_failure_info(value: Vec<super::structs::HostProfileValidationFailureInfo>) -> ValueElements {
    ValueElements::ArrayOfHostProfileValidationFailureInfo(value)
}
fn wrap_array_of_host_specification(value: Vec<super::structs::HostSpecification>) -> ValueElements {
    ValueElements::ArrayOfHostSpecification(value)
}
fn wrap_array_of_host_sub_specification(value: Vec<super::structs::HostSubSpecification>) -> ValueElements {
    ValueElements::ArrayOfHostSubSpecification(value)
}
fn wrap_array_of_ip_address_profile(value: Vec<super::structs::IpAddressProfile>) -> ValueElements {
    ValueElements::ArrayOfIpAddressProfile(value)
}
fn wrap_array_of_ip_route_profile(value: Vec<super::structs::IpRouteProfile>) -> ValueElements {
    ValueElements::ArrayOfIpRouteProfile(value)
}
fn wrap_array_of_nas_storage_profile(value: Vec<super::structs::NasStorageProfile>) -> ValueElements {
    ValueElements::ArrayOfNasStorageProfile(value)
}
fn wrap_array_of_net_stack_instance_profile(value: Vec<super::structs::NetStackInstanceProfile>) -> ValueElements {
    ValueElements::ArrayOfNetStackInstanceProfile(value)
}
fn wrap_array_of_network_policy_profile(value: Vec<super::structs::NetworkPolicyProfile>) -> ValueElements {
    ValueElements::ArrayOfNetworkPolicyProfile(value)
}
fn wrap_array_of_network_profile(value: Vec<super::structs::NetworkProfile>) -> ValueElements {
    ValueElements::ArrayOfNetworkProfile(value)
}
fn wrap_array_of_network_profile_dns_config_profile(value: Vec<super::structs::NetworkProfileDnsConfigProfile>) -> ValueElements {
    ValueElements::ArrayOfNetworkProfileDnsConfigProfile(value)
}
fn wrap_array_of_nsx_host_v_nic_profile(value: Vec<super::structs::NsxHostVNicProfile>) -> ValueElements {
    ValueElements::ArrayOfNsxHostVNicProfile(value)
}
fn wrap_array_of_opaque_switch_profile(value: Vec<super::structs::OpaqueSwitchProfile>) -> ValueElements {
    ValueElements::ArrayOfOpaqueSwitchProfile(value)
}
fn wrap_array_of_option_profile(value: Vec<super::structs::OptionProfile>) -> ValueElements {
    ValueElements::ArrayOfOptionProfile(value)
}
fn wrap_array_of_permission_profile(value: Vec<super::structs::PermissionProfile>) -> ValueElements {
    ValueElements::ArrayOfPermissionProfile(value)
}
fn wrap_array_of_physical_nic_profile(value: Vec<super::structs::PhysicalNicProfile>) -> ValueElements {
    ValueElements::ArrayOfPhysicalNicProfile(value)
}
fn wrap_array_of_pnic_uplink_profile(value: Vec<super::structs::PnicUplinkProfile>) -> ValueElements {
    ValueElements::ArrayOfPnicUplinkProfile(value)
}
fn wrap_array_of_virtual_switch_selection_profile(value: Vec<super::structs::VirtualSwitchSelectionProfile>) -> ValueElements {
    ValueElements::ArrayOfVirtualSwitchSelectionProfile(value)
}
fn wrap_array_of_vlan_profile(value: Vec<super::structs::VlanProfile>) -> ValueElements {
    ValueElements::ArrayOfVlanProfile(value)
}
fn wrap_array_of_answer_file_options_create_spec(value: Vec<super::structs::AnswerFileOptionsCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfAnswerFileOptionsCreateSpec(value)
}
fn wrap_array_of_answer_file_serialized_create_spec(value: Vec<super::structs::AnswerFileSerializedCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfAnswerFileSerializedCreateSpec(value)
}
fn wrap_array_of_apply_host_profile_configuration_result(value: Vec<super::structs::ApplyHostProfileConfigurationResult>) -> ValueElements {
    ValueElements::ArrayOfApplyHostProfileConfigurationResult(value)
}
fn wrap_array_of_apply_host_profile_configuration_spec(value: Vec<super::structs::ApplyHostProfileConfigurationSpec>) -> ValueElements {
    ValueElements::ArrayOfApplyHostProfileConfigurationSpec(value)
}
fn wrap_array_of_host_profile_manager_composition_result(value: Vec<super::structs::HostProfileManagerCompositionResult>) -> ValueElements {
    ValueElements::ArrayOfHostProfileManagerCompositionResult(value)
}
fn wrap_array_of_host_profile_manager_composition_result_result_element(value: Vec<super::structs::HostProfileManagerCompositionResultResultElement>) -> ValueElements {
    ValueElements::ArrayOfHostProfileManagerCompositionResultResultElement(value)
}
fn wrap_array_of_host_profile_manager_composition_validation_result(value: Vec<super::structs::HostProfileManagerCompositionValidationResult>) -> ValueElements {
    ValueElements::ArrayOfHostProfileManagerCompositionValidationResult(value)
}
fn wrap_array_of_host_profile_manager_composition_validation_result_result_element(value: Vec<super::structs::HostProfileManagerCompositionValidationResultResultElement>) -> ValueElements {
    ValueElements::ArrayOfHostProfileManagerCompositionValidationResultResultElement(value)
}
fn wrap_array_of_host_profile_manager_config_task_list(value: Vec<super::structs::HostProfileManagerConfigTaskList>) -> ValueElements {
    ValueElements::ArrayOfHostProfileManagerConfigTaskList(value)
}
fn wrap_array_of_host_profile_manager_host_to_config_spec_map(value: Vec<super::structs::HostProfileManagerHostToConfigSpecMap>) -> ValueElements {
    ValueElements::ArrayOfHostProfileManagerHostToConfigSpecMap(value)
}
fn wrap_array_of_structured_customizations(value: Vec<super::structs::StructuredCustomizations>) -> ValueElements {
    ValueElements::ArrayOfStructuredCustomizations(value)
}
fn wrap_array_of_security_profile(value: Vec<super::structs::SecurityProfile>) -> ValueElements {
    ValueElements::ArrayOfSecurityProfile(value)
}
fn wrap_array_of_service_console_port_group_profile(value: Vec<super::structs::ServiceConsolePortGroupProfile>) -> ValueElements {
    ValueElements::ArrayOfServiceConsolePortGroupProfile(value)
}
fn wrap_array_of_service_profile(value: Vec<super::structs::ServiceProfile>) -> ValueElements {
    ValueElements::ArrayOfServiceProfile(value)
}
fn wrap_array_of_static_route_profile(value: Vec<super::structs::StaticRouteProfile>) -> ValueElements {
    ValueElements::ArrayOfStaticRouteProfile(value)
}
fn wrap_array_of_storage_profile(value: Vec<super::structs::StorageProfile>) -> ValueElements {
    ValueElements::ArrayOfStorageProfile(value)
}
fn wrap_array_of_user_group_profile(value: Vec<super::structs::UserGroupProfile>) -> ValueElements {
    ValueElements::ArrayOfUserGroupProfile(value)
}
fn wrap_array_of_user_profile(value: Vec<super::structs::UserProfile>) -> ValueElements {
    ValueElements::ArrayOfUserProfile(value)
}
fn wrap_array_of_virtual_switch_profile(value: Vec<super::structs::VirtualSwitchProfile>) -> ValueElements {
    ValueElements::ArrayOfVirtualSwitchProfile(value)
}
fn wrap_array_of_link_profile(value: Vec<super::structs::LinkProfile>) -> ValueElements {
    ValueElements::ArrayOfLinkProfile(value)
}
fn wrap_array_of_num_ports_profile(value: Vec<super::structs::NumPortsProfile>) -> ValueElements {
    ValueElements::ArrayOfNumPortsProfile(value)
}
fn wrap_array_of_vm_port_group_profile(value: Vec<super::structs::VmPortGroupProfile>) -> ValueElements {
    ValueElements::ArrayOfVmPortGroupProfile(value)
}
fn wrap_array_of_after_startup_task_scheduler(value: Vec<super::structs::AfterStartupTaskScheduler>) -> ValueElements {
    ValueElements::ArrayOfAfterStartupTaskScheduler(value)
}
fn wrap_array_of_monthly_by_day_task_scheduler(value: Vec<super::structs::MonthlyByDayTaskScheduler>) -> ValueElements {
    ValueElements::ArrayOfMonthlyByDayTaskScheduler(value)
}
fn wrap_array_of_monthly_by_weekday_task_scheduler(value: Vec<super::structs::MonthlyByWeekdayTaskScheduler>) -> ValueElements {
    ValueElements::ArrayOfMonthlyByWeekdayTaskScheduler(value)
}
fn wrap_array_of_once_task_scheduler(value: Vec<super::structs::OnceTaskScheduler>) -> ValueElements {
    ValueElements::ArrayOfOnceTaskScheduler(value)
}
fn wrap_array_of_scheduled_task_description(value: Vec<super::structs::ScheduledTaskDescription>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskDescription(value)
}
fn wrap_array_of_scheduled_task_detail(value: Vec<super::structs::ScheduledTaskDetail>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskDetail(value)
}
fn wrap_array_of_scheduled_task_info(value: Vec<super::structs::ScheduledTaskInfo>) -> ValueElements {
    ValueElements::ArrayOfScheduledTaskInfo(value)
}
fn wrap_array_of_weekly_task_scheduler(value: Vec<super::structs::WeeklyTaskScheduler>) -> ValueElements {
    ValueElements::ArrayOfWeeklyTaskScheduler(value)
}
fn wrap_array_of_apply_storage_recommendation_result(value: Vec<super::structs::ApplyStorageRecommendationResult>) -> ValueElements {
    ValueElements::ArrayOfApplyStorageRecommendationResult(value)
}
fn wrap_array_of_storage_drs_automation_config(value: Vec<super::structs::StorageDrsAutomationConfig>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsAutomationConfig(value)
}
fn wrap_array_of_storage_drs_config_info(value: Vec<super::structs::StorageDrsConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsConfigInfo(value)
}
fn wrap_array_of_storage_drs_config_spec(value: Vec<super::structs::StorageDrsConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsConfigSpec(value)
}
fn wrap_array_of_hbr_disk_migration_action(value: Vec<super::structs::HbrDiskMigrationAction>) -> ValueElements {
    ValueElements::ArrayOfHbrDiskMigrationAction(value)
}
fn wrap_array_of_storage_drs_io_load_balance_config(value: Vec<super::structs::StorageDrsIoLoadBalanceConfig>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsIoLoadBalanceConfig(value)
}
fn wrap_array_of_storage_drs_option_spec(value: Vec<super::structs::StorageDrsOptionSpec>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsOptionSpec(value)
}
fn wrap_array_of_placement_affinity_rule(value: Vec<super::structs::PlacementAffinityRule>) -> ValueElements {
    ValueElements::ArrayOfPlacementAffinityRule(value)
}
fn wrap_array_of_placement_rank_result(value: Vec<super::structs::PlacementRankResult>) -> ValueElements {
    ValueElements::ArrayOfPlacementRankResult(value)
}
fn wrap_array_of_placement_rank_spec(value: Vec<super::structs::PlacementRankSpec>) -> ValueElements {
    ValueElements::ArrayOfPlacementRankSpec(value)
}
fn wrap_array_of_storage_drs_placement_rank_vm_spec(value: Vec<super::structs::StorageDrsPlacementRankVmSpec>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsPlacementRankVmSpec(value)
}
fn wrap_array_of_storage_drs_pod_config_info(value: Vec<super::structs::StorageDrsPodConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsPodConfigInfo(value)
}
fn wrap_array_of_storage_drs_pod_config_spec(value: Vec<super::structs::StorageDrsPodConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsPodConfigSpec(value)
}
fn wrap_array_of_storage_drs_pod_selection_spec(value: Vec<super::structs::StorageDrsPodSelectionSpec>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsPodSelectionSpec(value)
}
fn wrap_array_of_pod_disk_locator(value: Vec<super::structs::PodDiskLocator>) -> ValueElements {
    ValueElements::ArrayOfPodDiskLocator(value)
}
fn wrap_array_of_vm_pod_config_for_placement(value: Vec<super::structs::VmPodConfigForPlacement>) -> ValueElements {
    ValueElements::ArrayOfVmPodConfigForPlacement(value)
}
fn wrap_array_of_storage_drs_space_load_balance_config(value: Vec<super::structs::StorageDrsSpaceLoadBalanceConfig>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsSpaceLoadBalanceConfig(value)
}
fn wrap_array_of_storage_migration_action(value: Vec<super::structs::StorageMigrationAction>) -> ValueElements {
    ValueElements::ArrayOfStorageMigrationAction(value)
}
fn wrap_array_of_storage_placement_action(value: Vec<super::structs::StoragePlacementAction>) -> ValueElements {
    ValueElements::ArrayOfStoragePlacementAction(value)
}
fn wrap_array_of_storage_placement_result(value: Vec<super::structs::StoragePlacementResult>) -> ValueElements {
    ValueElements::ArrayOfStoragePlacementResult(value)
}
fn wrap_array_of_storage_placement_spec(value: Vec<super::structs::StoragePlacementSpec>) -> ValueElements {
    ValueElements::ArrayOfStoragePlacementSpec(value)
}
fn wrap_array_of_virtual_disk_anti_affinity_rule_spec(value: Vec<super::structs::VirtualDiskAntiAffinityRuleSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskAntiAffinityRuleSpec(value)
}
fn wrap_array_of_virtual_disk_rule_spec(value: Vec<super::structs::VirtualDiskRuleSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskRuleSpec(value)
}
fn wrap_array_of_storage_drs_vm_config_info(value: Vec<super::structs::StorageDrsVmConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsVmConfigInfo(value)
}
fn wrap_array_of_storage_drs_vm_config_spec(value: Vec<super::structs::StorageDrsVmConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfStorageDrsVmConfigSpec(value)
}
fn wrap_array_of_v_app_clone_spec(value: Vec<super::structs::VAppCloneSpec>) -> ValueElements {
    ValueElements::ArrayOfVAppCloneSpec(value)
}
fn wrap_array_of_v_app_clone_spec_network_mapping_pair(value: Vec<super::structs::VAppCloneSpecNetworkMappingPair>) -> ValueElements {
    ValueElements::ArrayOfVAppCloneSpecNetworkMappingPair(value)
}
fn wrap_array_of_v_app_clone_spec_resource_map(value: Vec<super::structs::VAppCloneSpecResourceMap>) -> ValueElements {
    ValueElements::ArrayOfVAppCloneSpecResourceMap(value)
}
fn wrap_array_of_v_app_entity_config_info(value: Vec<super::structs::VAppEntityConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfVAppEntityConfigInfo(value)
}
fn wrap_array_of_v_app_ip_assignment_info(value: Vec<super::structs::VAppIpAssignmentInfo>) -> ValueElements {
    ValueElements::ArrayOfVAppIpAssignmentInfo(value)
}
fn wrap_array_of_ip_pool(value: Vec<super::structs::IpPool>) -> ValueElements {
    ValueElements::ArrayOfIpPool(value)
}
fn wrap_array_of_ip_pool_association(value: Vec<super::structs::IpPoolAssociation>) -> ValueElements {
    ValueElements::ArrayOfIpPoolAssociation(value)
}
fn wrap_array_of_ip_pool_ip_pool_config_info(value: Vec<super::structs::IpPoolIpPoolConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfIpPoolIpPoolConfigInfo(value)
}
fn wrap_array_of_v_app_ovf_section_info(value: Vec<super::structs::VAppOvfSectionInfo>) -> ValueElements {
    ValueElements::ArrayOfVAppOvfSectionInfo(value)
}
fn wrap_array_of_v_app_ovf_section_spec(value: Vec<super::structs::VAppOvfSectionSpec>) -> ValueElements {
    ValueElements::ArrayOfVAppOvfSectionSpec(value)
}
fn wrap_array_of_v_app_product_info(value: Vec<super::structs::VAppProductInfo>) -> ValueElements {
    ValueElements::ArrayOfVAppProductInfo(value)
}
fn wrap_array_of_v_app_product_spec(value: Vec<super::structs::VAppProductSpec>) -> ValueElements {
    ValueElements::ArrayOfVAppProductSpec(value)
}
fn wrap_array_of_v_app_property_info(value: Vec<super::structs::VAppPropertyInfo>) -> ValueElements {
    ValueElements::ArrayOfVAppPropertyInfo(value)
}
fn wrap_array_of_v_app_property_spec(value: Vec<super::structs::VAppPropertySpec>) -> ValueElements {
    ValueElements::ArrayOfVAppPropertySpec(value)
}
fn wrap_array_of_v_app_config_info(value: Vec<super::structs::VAppConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfVAppConfigInfo(value)
}
fn wrap_array_of_v_app_config_spec(value: Vec<super::structs::VAppConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVAppConfigSpec(value)
}
fn wrap_array_of_virtual_app_import_spec(value: Vec<super::structs::VirtualAppImportSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualAppImportSpec(value)
}
fn wrap_array_of_cluster_network_config_spec(value: Vec<super::structs::ClusterNetworkConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfClusterNetworkConfigSpec(value)
}
fn wrap_array_of_failover_node_info(value: Vec<super::structs::FailoverNodeInfo>) -> ValueElements {
    ValueElements::ArrayOfFailoverNodeInfo(value)
}
fn wrap_array_of_passive_node_deployment_spec(value: Vec<super::structs::PassiveNodeDeploymentSpec>) -> ValueElements {
    ValueElements::ArrayOfPassiveNodeDeploymentSpec(value)
}
fn wrap_array_of_passive_node_network_spec(value: Vec<super::structs::PassiveNodeNetworkSpec>) -> ValueElements {
    ValueElements::ArrayOfPassiveNodeNetworkSpec(value)
}
fn wrap_array_of_source_node_spec(value: Vec<super::structs::SourceNodeSpec>) -> ValueElements {
    ValueElements::ArrayOfSourceNodeSpec(value)
}
fn wrap_array_of_vcha_cluster_config_info(value: Vec<super::structs::VchaClusterConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfVchaClusterConfigInfo(value)
}
fn wrap_array_of_vcha_cluster_config_spec(value: Vec<super::structs::VchaClusterConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVchaClusterConfigSpec(value)
}
fn wrap_array_of_vcha_cluster_deployment_spec(value: Vec<super::structs::VchaClusterDeploymentSpec>) -> ValueElements {
    ValueElements::ArrayOfVchaClusterDeploymentSpec(value)
}
fn wrap_array_of_vcha_cluster_network_spec(value: Vec<super::structs::VchaClusterNetworkSpec>) -> ValueElements {
    ValueElements::ArrayOfVchaClusterNetworkSpec(value)
}
fn wrap_array_of_witness_node_info(value: Vec<super::structs::WitnessNodeInfo>) -> ValueElements {
    ValueElements::ArrayOfWitnessNodeInfo(value)
}
fn wrap_array_of_vcha_cluster_health(value: Vec<super::structs::VchaClusterHealth>) -> ValueElements {
    ValueElements::ArrayOfVchaClusterHealth(value)
}
fn wrap_array_of_vcha_cluster_runtime_info(value: Vec<super::structs::VchaClusterRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfVchaClusterRuntimeInfo(value)
}
fn wrap_array_of_vcha_node_runtime_info(value: Vec<super::structs::VchaNodeRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfVchaNodeRuntimeInfo(value)
}
fn wrap_array_of_virtual_machine_affinity_info(value: Vec<super::structs::VirtualMachineAffinityInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineAffinityInfo(value)
}
fn wrap_array_of_virtual_machine_boot_options(value: Vec<super::structs::VirtualMachineBootOptions>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineBootOptions(value)
}
fn wrap_array_of_virtual_machine_boot_options_bootable_cdrom_device(value: Vec<super::structs::VirtualMachineBootOptionsBootableCdromDevice>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineBootOptionsBootableCdromDevice(value)
}
fn wrap_array_of_virtual_machine_boot_options_bootable_disk_device(value: Vec<super::structs::VirtualMachineBootOptionsBootableDiskDevice>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineBootOptionsBootableDiskDevice(value)
}
fn wrap_array_of_virtual_machine_boot_options_bootable_ethernet_device(value: Vec<super::structs::VirtualMachineBootOptionsBootableEthernetDevice>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineBootOptionsBootableEthernetDevice(value)
}
fn wrap_array_of_virtual_machine_boot_options_bootable_floppy_device(value: Vec<super::structs::VirtualMachineBootOptionsBootableFloppyDevice>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineBootOptionsBootableFloppyDevice(value)
}
fn wrap_array_of_virtual_machine_capability(value: Vec<super::structs::VirtualMachineCapability>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineCapability(value)
}
fn wrap_array_of_virtual_machine_cdrom_info(value: Vec<super::structs::VirtualMachineCdromInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineCdromInfo(value)
}
fn wrap_array_of_virtual_machine_cert_thumbprint(value: Vec<super::structs::VirtualMachineCertThumbprint>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineCertThumbprint(value)
}
fn wrap_array_of_virtual_machine_clone_spec(value: Vec<super::structs::VirtualMachineCloneSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineCloneSpec(value)
}
fn wrap_array_of_virtual_machine_config_info(value: Vec<super::structs::VirtualMachineConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineConfigInfo(value)
}
fn wrap_array_of_virtual_machine_config_info_datastore_url_pair(value: Vec<super::structs::VirtualMachineConfigInfoDatastoreUrlPair>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineConfigInfoDatastoreUrlPair(value)
}
fn wrap_array_of_virtual_machine_config_info_overhead_info(value: Vec<super::structs::VirtualMachineConfigInfoOverheadInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineConfigInfoOverheadInfo(value)
}
fn wrap_array_of_virtual_machine_config_option(value: Vec<super::structs::VirtualMachineConfigOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineConfigOption(value)
}
fn wrap_array_of_virtual_machine_config_option_descriptor(value: Vec<super::structs::VirtualMachineConfigOptionDescriptor>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineConfigOptionDescriptor(value)
}
fn wrap_array_of_virtual_machine_config_spec(value: Vec<super::structs::VirtualMachineConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineConfigSpec(value)
}
fn wrap_array_of_virtual_machine_cpu_id_info_spec(value: Vec<super::structs::VirtualMachineCpuIdInfoSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineCpuIdInfoSpec(value)
}
fn wrap_array_of_config_target(value: Vec<super::structs::ConfigTarget>) -> ValueElements {
    ValueElements::ArrayOfConfigTarget(value)
}
fn wrap_array_of_virtual_machine_console_preferences(value: Vec<super::structs::VirtualMachineConsolePreferences>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineConsolePreferences(value)
}
fn wrap_array_of_virtual_machine_content_library_item_info(value: Vec<super::structs::VirtualMachineContentLibraryItemInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineContentLibraryItemInfo(value)
}
fn wrap_array_of_virtual_machine_datastore_info(value: Vec<super::structs::VirtualMachineDatastoreInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineDatastoreInfo(value)
}
fn wrap_array_of_datastore_option(value: Vec<super::structs::DatastoreOption>) -> ValueElements {
    ValueElements::ArrayOfDatastoreOption(value)
}
fn wrap_array_of_virtual_machine_datastore_volume_option(value: Vec<super::structs::VirtualMachineDatastoreVolumeOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineDatastoreVolumeOption(value)
}
fn wrap_array_of_virtual_machine_default_power_op_info(value: Vec<super::structs::VirtualMachineDefaultPowerOpInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineDefaultPowerOpInfo(value)
}
fn wrap_array_of_virtual_machine_default_profile_spec(value: Vec<super::structs::VirtualMachineDefaultProfileSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineDefaultProfileSpec(value)
}
fn wrap_array_of_virtual_machine_defined_profile_spec(value: Vec<super::structs::VirtualMachineDefinedProfileSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineDefinedProfileSpec(value)
}
fn wrap_array_of_virtual_machine_device_runtime_info(value: Vec<super::structs::VirtualMachineDeviceRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineDeviceRuntimeInfo(value)
}
fn wrap_array_of_virtual_machine_device_runtime_info_virtual_ethernet_card_runtime_state(value: Vec<super::structs::VirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeState>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeState(value)
}
fn wrap_array_of_virtual_machine_dvx_class_info(value: Vec<super::structs::VirtualMachineDvxClassInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineDvxClassInfo(value)
}
fn wrap_array_of_virtual_machine_dynamic_passthrough_info(value: Vec<super::structs::VirtualMachineDynamicPassthroughInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineDynamicPassthroughInfo(value)
}
fn wrap_array_of_virtual_machine_empty_independent_filter_spec(value: Vec<super::structs::VirtualMachineEmptyIndependentFilterSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineEmptyIndependentFilterSpec(value)
}
fn wrap_array_of_virtual_machine_empty_profile_spec(value: Vec<super::structs::VirtualMachineEmptyProfileSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineEmptyProfileSpec(value)
}
fn wrap_array_of_fault_tolerance_config_spec(value: Vec<super::structs::FaultToleranceConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceConfigSpec(value)
}
fn wrap_array_of_fault_tolerance_meta_spec(value: Vec<super::structs::FaultToleranceMetaSpec>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceMetaSpec(value)
}
fn wrap_array_of_fault_tolerance_primary_config_info(value: Vec<super::structs::FaultTolerancePrimaryConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfFaultTolerancePrimaryConfigInfo(value)
}
fn wrap_array_of_fault_tolerance_secondary_config_info(value: Vec<super::structs::FaultToleranceSecondaryConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceSecondaryConfigInfo(value)
}
fn wrap_array_of_fault_tolerance_secondary_op_result(value: Vec<super::structs::FaultToleranceSecondaryOpResult>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceSecondaryOpResult(value)
}
fn wrap_array_of_fault_tolerance_vm_config_spec(value: Vec<super::structs::FaultToleranceVmConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceVmConfigSpec(value)
}
fn wrap_array_of_fault_tolerance_disk_spec(value: Vec<super::structs::FaultToleranceDiskSpec>) -> ValueElements {
    ValueElements::ArrayOfFaultToleranceDiskSpec(value)
}
fn wrap_array_of_virtual_machine_feature_requirement(value: Vec<super::structs::VirtualMachineFeatureRequirement>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFeatureRequirement(value)
}
fn wrap_array_of_virtual_machine_file_info(value: Vec<super::structs::VirtualMachineFileInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFileInfo(value)
}
fn wrap_array_of_virtual_machine_file_layout(value: Vec<super::structs::VirtualMachineFileLayout>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFileLayout(value)
}
fn wrap_array_of_virtual_machine_file_layout_disk_layout(value: Vec<super::structs::VirtualMachineFileLayoutDiskLayout>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFileLayoutDiskLayout(value)
}
fn wrap_array_of_virtual_machine_file_layout_snapshot_layout(value: Vec<super::structs::VirtualMachineFileLayoutSnapshotLayout>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFileLayoutSnapshotLayout(value)
}
fn wrap_array_of_virtual_machine_file_layout_ex(value: Vec<super::structs::VirtualMachineFileLayoutEx>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFileLayoutEx(value)
}
fn wrap_array_of_virtual_machine_file_layout_ex_disk_layout(value: Vec<super::structs::VirtualMachineFileLayoutExDiskLayout>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFileLayoutExDiskLayout(value)
}
fn wrap_array_of_virtual_machine_file_layout_ex_disk_unit(value: Vec<super::structs::VirtualMachineFileLayoutExDiskUnit>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFileLayoutExDiskUnit(value)
}
fn wrap_array_of_virtual_machine_file_layout_ex_file_info(value: Vec<super::structs::VirtualMachineFileLayoutExFileInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFileLayoutExFileInfo(value)
}
fn wrap_array_of_virtual_machine_file_layout_ex_snapshot_layout(value: Vec<super::structs::VirtualMachineFileLayoutExSnapshotLayout>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFileLayoutExSnapshotLayout(value)
}
fn wrap_array_of_virtual_machine_flag_info(value: Vec<super::structs::VirtualMachineFlagInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFlagInfo(value)
}
fn wrap_array_of_virtual_machine_floppy_info(value: Vec<super::structs::VirtualMachineFloppyInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFloppyInfo(value)
}
fn wrap_array_of_virtual_machine_fork_config_info(value: Vec<super::structs::VirtualMachineForkConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineForkConfigInfo(value)
}
fn wrap_array_of_guest_info(value: Vec<super::structs::GuestInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestInfo(value)
}
fn wrap_array_of_guest_info_customization_info(value: Vec<super::structs::GuestInfoCustomizationInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestInfoCustomizationInfo(value)
}
fn wrap_array_of_guest_disk_info(value: Vec<super::structs::GuestDiskInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestDiskInfo(value)
}
fn wrap_array_of_guest_info_namespace_generation_info(value: Vec<super::structs::GuestInfoNamespaceGenerationInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestInfoNamespaceGenerationInfo(value)
}
fn wrap_array_of_guest_nic_info(value: Vec<super::structs::GuestNicInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestNicInfo(value)
}
fn wrap_array_of_guest_screen_info(value: Vec<super::structs::GuestScreenInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestScreenInfo(value)
}
fn wrap_array_of_guest_stack_info(value: Vec<super::structs::GuestStackInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestStackInfo(value)
}
fn wrap_array_of_guest_info_virtual_disk_mapping(value: Vec<super::structs::GuestInfoVirtualDiskMapping>) -> ValueElements {
    ValueElements::ArrayOfGuestInfoVirtualDiskMapping(value)
}
fn wrap_array_of_virtual_machine_guest_integrity_info(value: Vec<super::structs::VirtualMachineGuestIntegrityInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineGuestIntegrityInfo(value)
}
fn wrap_array_of_virtual_machine_guest_monitoring_mode_info(value: Vec<super::structs::VirtualMachineGuestMonitoringModeInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineGuestMonitoringModeInfo(value)
}
fn wrap_array_of_guest_os_descriptor(value: Vec<super::structs::GuestOsDescriptor>) -> ValueElements {
    ValueElements::ArrayOfGuestOsDescriptor(value)
}
fn wrap_array_of_virtual_machine_ide_disk_device_info(value: Vec<super::structs::VirtualMachineIdeDiskDeviceInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineIdeDiskDeviceInfo(value)
}
fn wrap_array_of_virtual_machine_ide_disk_device_partition_info(value: Vec<super::structs::VirtualMachineIdeDiskDevicePartitionInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineIdeDiskDevicePartitionInfo(value)
}
fn wrap_array_of_virtual_machine_independent_filter_spec(value: Vec<super::structs::VirtualMachineIndependentFilterSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineIndependentFilterSpec(value)
}
fn wrap_array_of_virtual_machine_instant_clone_spec(value: Vec<super::structs::VirtualMachineInstantCloneSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineInstantCloneSpec(value)
}
fn wrap_array_of_virtual_machine_legacy_network_switch_info(value: Vec<super::structs::VirtualMachineLegacyNetworkSwitchInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineLegacyNetworkSwitchInfo(value)
}
fn wrap_array_of_virtual_machine_message(value: Vec<super::structs::VirtualMachineMessage>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMessage(value)
}
fn wrap_array_of_virtual_machine_metadata_manager_vm_metadata(value: Vec<super::structs::VirtualMachineMetadataManagerVmMetadata>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMetadataManagerVmMetadata(value)
}
fn wrap_array_of_virtual_machine_metadata_manager_vm_metadata_input(value: Vec<super::structs::VirtualMachineMetadataManagerVmMetadataInput>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMetadataManagerVmMetadataInput(value)
}
fn wrap_array_of_virtual_machine_metadata_manager_vm_metadata_owner(value: Vec<super::structs::VirtualMachineMetadataManagerVmMetadataOwner>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMetadataManagerVmMetadataOwner(value)
}
fn wrap_array_of_virtual_machine_metadata_manager_vm_metadata_result(value: Vec<super::structs::VirtualMachineMetadataManagerVmMetadataResult>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMetadataManagerVmMetadataResult(value)
}
fn wrap_array_of_virtual_machine_network_info(value: Vec<super::structs::VirtualMachineNetworkInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineNetworkInfo(value)
}
fn wrap_array_of_virtual_machine_network_shaper_info(value: Vec<super::structs::VirtualMachineNetworkShaperInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineNetworkShaperInfo(value)
}
fn wrap_array_of_opaque_network_target_info(value: Vec<super::structs::OpaqueNetworkTargetInfo>) -> ValueElements {
    ValueElements::ArrayOfOpaqueNetworkTargetInfo(value)
}
fn wrap_array_of_virtual_machine_parallel_info(value: Vec<super::structs::VirtualMachineParallelInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineParallelInfo(value)
}
fn wrap_array_of_virtual_machine_pci_shared_gpu_passthrough_info(value: Vec<super::structs::VirtualMachinePciSharedGpuPassthroughInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachinePciSharedGpuPassthroughInfo(value)
}
fn wrap_array_of_virtual_machine_precision_clock_info(value: Vec<super::structs::VirtualMachinePrecisionClockInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachinePrecisionClockInfo(value)
}
fn wrap_array_of_virtual_machine_profile_details(value: Vec<super::structs::VirtualMachineProfileDetails>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineProfileDetails(value)
}
fn wrap_array_of_virtual_machine_profile_details_disk_profile_details(value: Vec<super::structs::VirtualMachineProfileDetailsDiskProfileDetails>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineProfileDetailsDiskProfileDetails(value)
}
fn wrap_array_of_virtual_machine_profile_raw_data(value: Vec<super::structs::VirtualMachineProfileRawData>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineProfileRawData(value)
}
fn wrap_array_of_virtual_machine_property_relation(value: Vec<super::structs::VirtualMachinePropertyRelation>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachinePropertyRelation(value)
}
fn wrap_array_of_virtual_machine_question_info(value: Vec<super::structs::VirtualMachineQuestionInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineQuestionInfo(value)
}
fn wrap_array_of_virtual_machine_relocate_spec(value: Vec<super::structs::VirtualMachineRelocateSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineRelocateSpec(value)
}
fn wrap_array_of_virtual_machine_relocate_spec_disk_locator(value: Vec<super::structs::VirtualMachineRelocateSpecDiskLocator>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineRelocateSpecDiskLocator(value)
}
fn wrap_array_of_virtual_machine_relocate_spec_disk_locator_backing_spec(value: Vec<super::structs::VirtualMachineRelocateSpecDiskLocatorBackingSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineRelocateSpecDiskLocatorBackingSpec(value)
}
fn wrap_array_of_replication_config_spec(value: Vec<super::structs::ReplicationConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfReplicationConfigSpec(value)
}
fn wrap_array_of_replication_info_disk_settings(value: Vec<super::structs::ReplicationInfoDiskSettings>) -> ValueElements {
    ValueElements::ArrayOfReplicationInfoDiskSettings(value)
}
fn wrap_array_of_virtual_machine_runtime_info(value: Vec<super::structs::VirtualMachineRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineRuntimeInfo(value)
}
fn wrap_array_of_virtual_machine_runtime_info_das_protection_state(value: Vec<super::structs::VirtualMachineRuntimeInfoDasProtectionState>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineRuntimeInfoDasProtectionState(value)
}
fn wrap_array_of_scheduled_hardware_upgrade_info(value: Vec<super::structs::ScheduledHardwareUpgradeInfo>) -> ValueElements {
    ValueElements::ArrayOfScheduledHardwareUpgradeInfo(value)
}
fn wrap_array_of_virtual_machine_scsi_disk_device_info(value: Vec<super::structs::VirtualMachineScsiDiskDeviceInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineScsiDiskDeviceInfo(value)
}
fn wrap_array_of_virtual_machine_scsi_passthrough_info(value: Vec<super::structs::VirtualMachineScsiPassthroughInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineScsiPassthroughInfo(value)
}
fn wrap_array_of_virtual_machine_serial_info(value: Vec<super::structs::VirtualMachineSerialInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineSerialInfo(value)
}
fn wrap_array_of_virtual_machine_sgx_info(value: Vec<super::structs::VirtualMachineSgxInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineSgxInfo(value)
}
fn wrap_array_of_virtual_machine_sgx_target_info(value: Vec<super::structs::VirtualMachineSgxTargetInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineSgxTargetInfo(value)
}
fn wrap_array_of_virtual_machine_snapshot_info(value: Vec<super::structs::VirtualMachineSnapshotInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineSnapshotInfo(value)
}
fn wrap_array_of_snapshot_selection_spec(value: Vec<super::structs::SnapshotSelectionSpec>) -> ValueElements {
    ValueElements::ArrayOfSnapshotSelectionSpec(value)
}
fn wrap_array_of_virtual_machine_snapshot_tree(value: Vec<super::structs::VirtualMachineSnapshotTree>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineSnapshotTree(value)
}
fn wrap_array_of_virtual_machine_sound_info(value: Vec<super::structs::VirtualMachineSoundInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineSoundInfo(value)
}
fn wrap_array_of_virtual_machine_sriov_info(value: Vec<super::structs::VirtualMachineSriovInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineSriovInfo(value)
}
fn wrap_array_of_virtual_machine_sriov_network_device_pool_info(value: Vec<super::structs::VirtualMachineSriovNetworkDevicePoolInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineSriovNetworkDevicePoolInfo(value)
}
fn wrap_array_of_virtual_machine_storage_info(value: Vec<super::structs::VirtualMachineStorageInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineStorageInfo(value)
}
fn wrap_array_of_virtual_machine_usage_on_datastore(value: Vec<super::structs::VirtualMachineUsageOnDatastore>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineUsageOnDatastore(value)
}
fn wrap_array_of_subnet_info(value: Vec<super::structs::SubnetInfo>) -> ValueElements {
    ValueElements::ArrayOfSubnetInfo(value)
}
fn wrap_array_of_subnet_info_folder_info(value: Vec<super::structs::SubnetInfoFolderInfo>) -> ValueElements {
    ValueElements::ArrayOfSubnetInfoFolderInfo(value)
}
fn wrap_array_of_virtual_machine_summary(value: Vec<super::structs::VirtualMachineSummary>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineSummary(value)
}
fn wrap_array_of_virtual_machine_config_summary(value: Vec<super::structs::VirtualMachineConfigSummary>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineConfigSummary(value)
}
fn wrap_array_of_virtual_machine_guest_summary(value: Vec<super::structs::VirtualMachineGuestSummary>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineGuestSummary(value)
}
fn wrap_array_of_virtual_machine_quick_stats(value: Vec<super::structs::VirtualMachineQuickStats>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineQuickStats(value)
}
fn wrap_array_of_virtual_machine_quick_stats_memory_tier_stats(value: Vec<super::structs::VirtualMachineQuickStatsMemoryTierStats>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineQuickStatsMemoryTierStats(value)
}
fn wrap_array_of_virtual_machine_storage_summary(value: Vec<super::structs::VirtualMachineStorageSummary>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineStorageSummary(value)
}
fn wrap_array_of_tools_config_info(value: Vec<super::structs::ToolsConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfToolsConfigInfo(value)
}
fn wrap_array_of_tools_config_info_tools_last_install_info(value: Vec<super::structs::ToolsConfigInfoToolsLastInstallInfo>) -> ValueElements {
    ValueElements::ArrayOfToolsConfigInfoToolsLastInstallInfo(value)
}
fn wrap_array_of_virtual_machine_usb_info(value: Vec<super::structs::VirtualMachineUsbInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineUsbInfo(value)
}
fn wrap_array_of_usb_scan_code_spec(value: Vec<super::structs::UsbScanCodeSpec>) -> ValueElements {
    ValueElements::ArrayOfUsbScanCodeSpec(value)
}
fn wrap_array_of_usb_scan_code_spec_key_event(value: Vec<super::structs::UsbScanCodeSpecKeyEvent>) -> ValueElements {
    ValueElements::ArrayOfUsbScanCodeSpecKeyEvent(value)
}
fn wrap_array_of_usb_scan_code_spec_modifier_type(value: Vec<super::structs::UsbScanCodeSpecModifierType>) -> ValueElements {
    ValueElements::ArrayOfUsbScanCodeSpecModifierType(value)
}
fn wrap_array_of_virtual_machine_v_flash_module_info(value: Vec<super::structs::VirtualMachineVFlashModuleInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVFlashModuleInfo(value)
}
fn wrap_array_of_virtual_machine_v_motion_stun_time_info(value: Vec<super::structs::VirtualMachineVMotionStunTimeInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVMotionStunTimeInfo(value)
}
fn wrap_array_of_virtual_machine_vcpu_config(value: Vec<super::structs::VirtualMachineVcpuConfig>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVcpuConfig(value)
}
fn wrap_array_of_virtual_machine_vendor_device_group_info(value: Vec<super::structs::VirtualMachineVendorDeviceGroupInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVendorDeviceGroupInfo(value)
}
fn wrap_array_of_virtual_machine_vendor_device_group_info_component_device_info(value: Vec<super::structs::VirtualMachineVendorDeviceGroupInfoComponentDeviceInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVendorDeviceGroupInfoComponentDeviceInfo(value)
}
fn wrap_array_of_virtual_machine_vgpu_device_info(value: Vec<super::structs::VirtualMachineVgpuDeviceInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVgpuDeviceInfo(value)
}
fn wrap_array_of_virtual_machine_vgpu_profile_info(value: Vec<super::structs::VirtualMachineVgpuProfileInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVgpuProfileInfo(value)
}
fn wrap_array_of_virtual_machine_virtual_device_groups(value: Vec<super::structs::VirtualMachineVirtualDeviceGroups>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVirtualDeviceGroups(value)
}
fn wrap_array_of_virtual_machine_virtual_device_groups_vendor_device_group(value: Vec<super::structs::VirtualMachineVirtualDeviceGroupsVendorDeviceGroup>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVirtualDeviceGroupsVendorDeviceGroup(value)
}
fn wrap_array_of_virtual_machine_virtual_device_swap(value: Vec<super::structs::VirtualMachineVirtualDeviceSwap>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVirtualDeviceSwap(value)
}
fn wrap_array_of_virtual_machine_virtual_device_swap_device_swap_info(value: Vec<super::structs::VirtualMachineVirtualDeviceSwapDeviceSwapInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVirtualDeviceSwapDeviceSwapInfo(value)
}
fn wrap_array_of_virtual_hardware(value: Vec<super::structs::VirtualHardware>) -> ValueElements {
    ValueElements::ArrayOfVirtualHardware(value)
}
fn wrap_array_of_virtual_hardware_option(value: Vec<super::structs::VirtualHardwareOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualHardwareOption(value)
}
fn wrap_array_of_virtual_machine_virtual_numa(value: Vec<super::structs::VirtualMachineVirtualNuma>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVirtualNuma(value)
}
fn wrap_array_of_virtual_machine_virtual_numa_info(value: Vec<super::structs::VirtualMachineVirtualNumaInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVirtualNumaInfo(value)
}
fn wrap_array_of_virtual_machine_virtual_p_mem(value: Vec<super::structs::VirtualMachineVirtualPMem>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVirtualPMem(value)
}
fn wrap_array_of_virtual_machine_import_spec(value: Vec<super::structs::VirtualMachineImportSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineImportSpec(value)
}
fn wrap_array_of_virtual_machine_windows_quiesce_spec(value: Vec<super::structs::VirtualMachineWindowsQuiesceSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineWindowsQuiesceSpec(value)
}
fn wrap_array_of_check_result(value: Vec<super::structs::CheckResult>) -> ValueElements {
    ValueElements::ArrayOfCheckResult(value)
}
fn wrap_array_of_customization_adapter_mapping(value: Vec<super::structs::CustomizationAdapterMapping>) -> ValueElements {
    ValueElements::ArrayOfCustomizationAdapterMapping(value)
}
fn wrap_array_of_customization_auto_ip_v_6_generator(value: Vec<super::structs::CustomizationAutoIpV6Generator>) -> ValueElements {
    ValueElements::ArrayOfCustomizationAutoIpV6Generator(value)
}
fn wrap_array_of_customization_cloudinit_prep(value: Vec<super::structs::CustomizationCloudinitPrep>) -> ValueElements {
    ValueElements::ArrayOfCustomizationCloudinitPrep(value)
}
fn wrap_array_of_customization_custom_ip_generator(value: Vec<super::structs::CustomizationCustomIpGenerator>) -> ValueElements {
    ValueElements::ArrayOfCustomizationCustomIpGenerator(value)
}
fn wrap_array_of_customization_custom_ip_v_6_generator(value: Vec<super::structs::CustomizationCustomIpV6Generator>) -> ValueElements {
    ValueElements::ArrayOfCustomizationCustomIpV6Generator(value)
}
fn wrap_array_of_customization_custom_name(value: Vec<super::structs::CustomizationCustomName>) -> ValueElements {
    ValueElements::ArrayOfCustomizationCustomName(value)
}
fn wrap_array_of_customization_dhcp_ip_generator(value: Vec<super::structs::CustomizationDhcpIpGenerator>) -> ValueElements {
    ValueElements::ArrayOfCustomizationDhcpIpGenerator(value)
}
fn wrap_array_of_customization_dhcp_ip_v_6_generator(value: Vec<super::structs::CustomizationDhcpIpV6Generator>) -> ValueElements {
    ValueElements::ArrayOfCustomizationDhcpIpV6Generator(value)
}
fn wrap_array_of_customization_fixed_ip(value: Vec<super::structs::CustomizationFixedIp>) -> ValueElements {
    ValueElements::ArrayOfCustomizationFixedIp(value)
}
fn wrap_array_of_customization_fixed_ip_v_6(value: Vec<super::structs::CustomizationFixedIpV6>) -> ValueElements {
    ValueElements::ArrayOfCustomizationFixedIpV6(value)
}
fn wrap_array_of_customization_fixed_name(value: Vec<super::structs::CustomizationFixedName>) -> ValueElements {
    ValueElements::ArrayOfCustomizationFixedName(value)
}
fn wrap_array_of_customization_global_ip_settings(value: Vec<super::structs::CustomizationGlobalIpSettings>) -> ValueElements {
    ValueElements::ArrayOfCustomizationGlobalIpSettings(value)
}
fn wrap_array_of_customization_gui_run_once(value: Vec<super::structs::CustomizationGuiRunOnce>) -> ValueElements {
    ValueElements::ArrayOfCustomizationGuiRunOnce(value)
}
fn wrap_array_of_customization_gui_unattended(value: Vec<super::structs::CustomizationGuiUnattended>) -> ValueElements {
    ValueElements::ArrayOfCustomizationGuiUnattended(value)
}
fn wrap_array_of_customization_ip_settings(value: Vec<super::structs::CustomizationIpSettings>) -> ValueElements {
    ValueElements::ArrayOfCustomizationIpSettings(value)
}
fn wrap_array_of_customization_ip_settings_ip_v_6_address_spec(value: Vec<super::structs::CustomizationIpSettingsIpV6AddressSpec>) -> ValueElements {
    ValueElements::ArrayOfCustomizationIpSettingsIpV6AddressSpec(value)
}
fn wrap_array_of_customization_identification(value: Vec<super::structs::CustomizationIdentification>) -> ValueElements {
    ValueElements::ArrayOfCustomizationIdentification(value)
}
fn wrap_array_of_customization_license_file_print_data(value: Vec<super::structs::CustomizationLicenseFilePrintData>) -> ValueElements {
    ValueElements::ArrayOfCustomizationLicenseFilePrintData(value)
}
fn wrap_array_of_customization_linux_options(value: Vec<super::structs::CustomizationLinuxOptions>) -> ValueElements {
    ValueElements::ArrayOfCustomizationLinuxOptions(value)
}
fn wrap_array_of_customization_linux_prep(value: Vec<super::structs::CustomizationLinuxPrep>) -> ValueElements {
    ValueElements::ArrayOfCustomizationLinuxPrep(value)
}
fn wrap_array_of_customization_password(value: Vec<super::structs::CustomizationPassword>) -> ValueElements {
    ValueElements::ArrayOfCustomizationPassword(value)
}
fn wrap_array_of_customization_prefix_name(value: Vec<super::structs::CustomizationPrefixName>) -> ValueElements {
    ValueElements::ArrayOfCustomizationPrefixName(value)
}
fn wrap_array_of_customization_spec(value: Vec<super::structs::CustomizationSpec>) -> ValueElements {
    ValueElements::ArrayOfCustomizationSpec(value)
}
fn wrap_array_of_customization_stateless_ip_v_6_generator(value: Vec<super::structs::CustomizationStatelessIpV6Generator>) -> ValueElements {
    ValueElements::ArrayOfCustomizationStatelessIpV6Generator(value)
}
fn wrap_array_of_customization_sysprep(value: Vec<super::structs::CustomizationSysprep>) -> ValueElements {
    ValueElements::ArrayOfCustomizationSysprep(value)
}
fn wrap_array_of_customization_sysprep_text(value: Vec<super::structs::CustomizationSysprepText>) -> ValueElements {
    ValueElements::ArrayOfCustomizationSysprepText(value)
}
fn wrap_array_of_customization_unknown_ip_generator(value: Vec<super::structs::CustomizationUnknownIpGenerator>) -> ValueElements {
    ValueElements::ArrayOfCustomizationUnknownIpGenerator(value)
}
fn wrap_array_of_customization_unknown_ip_v_6_generator(value: Vec<super::structs::CustomizationUnknownIpV6Generator>) -> ValueElements {
    ValueElements::ArrayOfCustomizationUnknownIpV6Generator(value)
}
fn wrap_array_of_customization_unknown_name(value: Vec<super::structs::CustomizationUnknownName>) -> ValueElements {
    ValueElements::ArrayOfCustomizationUnknownName(value)
}
fn wrap_array_of_customization_user_data(value: Vec<super::structs::CustomizationUserData>) -> ValueElements {
    ValueElements::ArrayOfCustomizationUserData(value)
}
fn wrap_array_of_customization_virtual_machine_name(value: Vec<super::structs::CustomizationVirtualMachineName>) -> ValueElements {
    ValueElements::ArrayOfCustomizationVirtualMachineName(value)
}
fn wrap_array_of_customization_win_options(value: Vec<super::structs::CustomizationWinOptions>) -> ValueElements {
    ValueElements::ArrayOfCustomizationWinOptions(value)
}
fn wrap_array_of_host_disk_mapping_info(value: Vec<super::structs::HostDiskMappingInfo>) -> ValueElements {
    ValueElements::ArrayOfHostDiskMappingInfo(value)
}
fn wrap_array_of_host_disk_mapping_partition_info(value: Vec<super::structs::HostDiskMappingPartitionInfo>) -> ValueElements {
    ValueElements::ArrayOfHostDiskMappingPartitionInfo(value)
}
fn wrap_array_of_host_disk_mapping_option(value: Vec<super::structs::HostDiskMappingOption>) -> ValueElements {
    ValueElements::ArrayOfHostDiskMappingOption(value)
}
fn wrap_array_of_host_disk_mapping_partition_option(value: Vec<super::structs::HostDiskMappingPartitionOption>) -> ValueElements {
    ValueElements::ArrayOfHostDiskMappingPartitionOption(value)
}
fn wrap_array_of_para_virtual_scsi_controller(value: Vec<super::structs::ParaVirtualScsiController>) -> ValueElements {
    ValueElements::ArrayOfParaVirtualScsiController(value)
}
fn wrap_array_of_para_virtual_scsi_controller_option(value: Vec<super::structs::ParaVirtualScsiControllerOption>) -> ValueElements {
    ValueElements::ArrayOfParaVirtualScsiControllerOption(value)
}
fn wrap_array_of_virtual_ahci_controller(value: Vec<super::structs::VirtualAhciController>) -> ValueElements {
    ValueElements::ArrayOfVirtualAhciController(value)
}
fn wrap_array_of_virtual_ahci_controller_option(value: Vec<super::structs::VirtualAhciControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualAhciControllerOption(value)
}
fn wrap_array_of_virtual_bus_logic_controller(value: Vec<super::structs::VirtualBusLogicController>) -> ValueElements {
    ValueElements::ArrayOfVirtualBusLogicController(value)
}
fn wrap_array_of_virtual_bus_logic_controller_option(value: Vec<super::structs::VirtualBusLogicControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualBusLogicControllerOption(value)
}
fn wrap_array_of_virtual_cdrom(value: Vec<super::structs::VirtualCdrom>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdrom(value)
}
fn wrap_array_of_virtual_cdrom_atapi_backing_info(value: Vec<super::structs::VirtualCdromAtapiBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromAtapiBackingInfo(value)
}
fn wrap_array_of_virtual_cdrom_iso_backing_info(value: Vec<super::structs::VirtualCdromIsoBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromIsoBackingInfo(value)
}
fn wrap_array_of_virtual_cdrom_passthrough_backing_info(value: Vec<super::structs::VirtualCdromPassthroughBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromPassthroughBackingInfo(value)
}
fn wrap_array_of_virtual_cdrom_remote_atapi_backing_info(value: Vec<super::structs::VirtualCdromRemoteAtapiBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromRemoteAtapiBackingInfo(value)
}
fn wrap_array_of_virtual_cdrom_remote_passthrough_backing_info(value: Vec<super::structs::VirtualCdromRemotePassthroughBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromRemotePassthroughBackingInfo(value)
}
fn wrap_array_of_virtual_cdrom_option(value: Vec<super::structs::VirtualCdromOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromOption(value)
}
fn wrap_array_of_virtual_cdrom_atapi_backing_option(value: Vec<super::structs::VirtualCdromAtapiBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromAtapiBackingOption(value)
}
fn wrap_array_of_virtual_cdrom_iso_backing_option(value: Vec<super::structs::VirtualCdromIsoBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromIsoBackingOption(value)
}
fn wrap_array_of_virtual_cdrom_passthrough_backing_option(value: Vec<super::structs::VirtualCdromPassthroughBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromPassthroughBackingOption(value)
}
fn wrap_array_of_virtual_cdrom_remote_atapi_backing_option(value: Vec<super::structs::VirtualCdromRemoteAtapiBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromRemoteAtapiBackingOption(value)
}
fn wrap_array_of_virtual_cdrom_remote_passthrough_backing_option(value: Vec<super::structs::VirtualCdromRemotePassthroughBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualCdromRemotePassthroughBackingOption(value)
}
fn wrap_array_of_virtual_device_connect_info(value: Vec<super::structs::VirtualDeviceConnectInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDeviceConnectInfo(value)
}
fn wrap_array_of_virtual_device_device_group_info(value: Vec<super::structs::VirtualDeviceDeviceGroupInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDeviceDeviceGroupInfo(value)
}
fn wrap_array_of_virtual_device_bus_slot_option(value: Vec<super::structs::VirtualDeviceBusSlotOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDeviceBusSlotOption(value)
}
fn wrap_array_of_virtual_device_connect_option(value: Vec<super::structs::VirtualDeviceConnectOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDeviceConnectOption(value)
}
fn wrap_array_of_virtual_device_config_spec_backing_spec(value: Vec<super::structs::VirtualDeviceConfigSpecBackingSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualDeviceConfigSpecBackingSpec(value)
}
fn wrap_array_of_virtual_disk(value: Vec<super::structs::VirtualDisk>) -> ValueElements {
    ValueElements::ArrayOfVirtualDisk(value)
}
fn wrap_array_of_virtual_disk_flat_ver_1_backing_info(value: Vec<super::structs::VirtualDiskFlatVer1BackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskFlatVer1BackingInfo(value)
}
fn wrap_array_of_virtual_disk_flat_ver_2_backing_info(value: Vec<super::structs::VirtualDiskFlatVer2BackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskFlatVer2BackingInfo(value)
}
fn wrap_array_of_virtual_disk_local_p_mem_backing_info(value: Vec<super::structs::VirtualDiskLocalPMemBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskLocalPMemBackingInfo(value)
}
fn wrap_array_of_virtual_disk_partitioned_raw_disk_ver_2_backing_info(value: Vec<super::structs::VirtualDiskPartitionedRawDiskVer2BackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskPartitionedRawDiskVer2BackingInfo(value)
}
fn wrap_array_of_virtual_disk_raw_disk_mapping_ver_1_backing_info(value: Vec<super::structs::VirtualDiskRawDiskMappingVer1BackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskRawDiskMappingVer1BackingInfo(value)
}
fn wrap_array_of_virtual_disk_se_sparse_backing_info(value: Vec<super::structs::VirtualDiskSeSparseBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskSeSparseBackingInfo(value)
}
fn wrap_array_of_virtual_disk_sparse_ver_1_backing_info(value: Vec<super::structs::VirtualDiskSparseVer1BackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskSparseVer1BackingInfo(value)
}
fn wrap_array_of_virtual_disk_sparse_ver_2_backing_info(value: Vec<super::structs::VirtualDiskSparseVer2BackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskSparseVer2BackingInfo(value)
}
fn wrap_array_of_virtual_disk_v_flash_cache_config_info(value: Vec<super::structs::VirtualDiskVFlashCacheConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskVFlashCacheConfigInfo(value)
}
fn wrap_array_of_virtual_disk_id(value: Vec<super::structs::VirtualDiskId>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskId(value)
}
fn wrap_array_of_virtual_disk_option(value: Vec<super::structs::VirtualDiskOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskOption(value)
}
fn wrap_array_of_virtual_disk_delta_disk_formats_supported(value: Vec<super::structs::VirtualDiskDeltaDiskFormatsSupported>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskDeltaDiskFormatsSupported(value)
}
fn wrap_array_of_virtual_disk_flat_ver_1_backing_option(value: Vec<super::structs::VirtualDiskFlatVer1BackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskFlatVer1BackingOption(value)
}
fn wrap_array_of_virtual_disk_flat_ver_2_backing_option(value: Vec<super::structs::VirtualDiskFlatVer2BackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskFlatVer2BackingOption(value)
}
fn wrap_array_of_virtual_disk_local_p_mem_backing_option(value: Vec<super::structs::VirtualDiskLocalPMemBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskLocalPMemBackingOption(value)
}
fn wrap_array_of_virtual_disk_partitioned_raw_disk_ver_2_backing_option(value: Vec<super::structs::VirtualDiskPartitionedRawDiskVer2BackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskPartitionedRawDiskVer2BackingOption(value)
}
fn wrap_array_of_virtual_disk_raw_disk_mapping_ver_1_backing_option(value: Vec<super::structs::VirtualDiskRawDiskMappingVer1BackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskRawDiskMappingVer1BackingOption(value)
}
fn wrap_array_of_virtual_disk_se_sparse_backing_option(value: Vec<super::structs::VirtualDiskSeSparseBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskSeSparseBackingOption(value)
}
fn wrap_array_of_virtual_disk_sparse_ver_1_backing_option(value: Vec<super::structs::VirtualDiskSparseVer1BackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskSparseVer1BackingOption(value)
}
fn wrap_array_of_virtual_disk_sparse_ver_2_backing_option(value: Vec<super::structs::VirtualDiskSparseVer2BackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskSparseVer2BackingOption(value)
}
fn wrap_array_of_virtual_disk_option_v_flash_cache_config_option(value: Vec<super::structs::VirtualDiskOptionVFlashCacheConfigOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskOptionVFlashCacheConfigOption(value)
}
fn wrap_array_of_virtual_disk_config_spec(value: Vec<super::structs::VirtualDiskConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualDiskConfigSpec(value)
}
fn wrap_array_of_virtual_e_1000(value: Vec<super::structs::VirtualE1000>) -> ValueElements {
    ValueElements::ArrayOfVirtualE1000(value)
}
fn wrap_array_of_virtual_e_1000_option(value: Vec<super::structs::VirtualE1000Option>) -> ValueElements {
    ValueElements::ArrayOfVirtualE1000Option(value)
}
fn wrap_array_of_virtual_e_1000_e(value: Vec<super::structs::VirtualE1000E>) -> ValueElements {
    ValueElements::ArrayOfVirtualE1000E(value)
}
fn wrap_array_of_virtual_e_1000_e_option(value: Vec<super::structs::VirtualE1000EOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualE1000EOption(value)
}
fn wrap_array_of_virtual_ensoniq_1371(value: Vec<super::structs::VirtualEnsoniq1371>) -> ValueElements {
    ValueElements::ArrayOfVirtualEnsoniq1371(value)
}
fn wrap_array_of_virtual_ensoniq_1371_option(value: Vec<super::structs::VirtualEnsoniq1371Option>) -> ValueElements {
    ValueElements::ArrayOfVirtualEnsoniq1371Option(value)
}
fn wrap_array_of_virtual_ethernet_card_distributed_virtual_port_backing_info(value: Vec<super::structs::VirtualEthernetCardDistributedVirtualPortBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualEthernetCardDistributedVirtualPortBackingInfo(value)
}
fn wrap_array_of_virtual_ethernet_card_legacy_network_backing_info(value: Vec<super::structs::VirtualEthernetCardLegacyNetworkBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualEthernetCardLegacyNetworkBackingInfo(value)
}
fn wrap_array_of_virtual_ethernet_card_network_backing_info(value: Vec<super::structs::VirtualEthernetCardNetworkBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualEthernetCardNetworkBackingInfo(value)
}
fn wrap_array_of_virtual_ethernet_card_opaque_network_backing_info(value: Vec<super::structs::VirtualEthernetCardOpaqueNetworkBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualEthernetCardOpaqueNetworkBackingInfo(value)
}
fn wrap_array_of_virtual_ethernet_card_resource_allocation(value: Vec<super::structs::VirtualEthernetCardResourceAllocation>) -> ValueElements {
    ValueElements::ArrayOfVirtualEthernetCardResourceAllocation(value)
}
fn wrap_array_of_virtual_ethernet_card_dv_port_backing_option(value: Vec<super::structs::VirtualEthernetCardDvPortBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualEthernetCardDvPortBackingOption(value)
}
fn wrap_array_of_virtual_ethernet_card_legacy_network_backing_option(value: Vec<super::structs::VirtualEthernetCardLegacyNetworkBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualEthernetCardLegacyNetworkBackingOption(value)
}
fn wrap_array_of_virtual_ethernet_card_network_backing_option(value: Vec<super::structs::VirtualEthernetCardNetworkBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualEthernetCardNetworkBackingOption(value)
}
fn wrap_array_of_virtual_ethernet_card_opaque_network_backing_option(value: Vec<super::structs::VirtualEthernetCardOpaqueNetworkBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualEthernetCardOpaqueNetworkBackingOption(value)
}
fn wrap_array_of_virtual_floppy(value: Vec<super::structs::VirtualFloppy>) -> ValueElements {
    ValueElements::ArrayOfVirtualFloppy(value)
}
fn wrap_array_of_virtual_floppy_device_backing_info(value: Vec<super::structs::VirtualFloppyDeviceBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualFloppyDeviceBackingInfo(value)
}
fn wrap_array_of_virtual_floppy_image_backing_info(value: Vec<super::structs::VirtualFloppyImageBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualFloppyImageBackingInfo(value)
}
fn wrap_array_of_virtual_floppy_remote_device_backing_info(value: Vec<super::structs::VirtualFloppyRemoteDeviceBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualFloppyRemoteDeviceBackingInfo(value)
}
fn wrap_array_of_virtual_floppy_option(value: Vec<super::structs::VirtualFloppyOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualFloppyOption(value)
}
fn wrap_array_of_virtual_floppy_device_backing_option(value: Vec<super::structs::VirtualFloppyDeviceBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualFloppyDeviceBackingOption(value)
}
fn wrap_array_of_virtual_floppy_image_backing_option(value: Vec<super::structs::VirtualFloppyImageBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualFloppyImageBackingOption(value)
}
fn wrap_array_of_virtual_floppy_remote_device_backing_option(value: Vec<super::structs::VirtualFloppyRemoteDeviceBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualFloppyRemoteDeviceBackingOption(value)
}
fn wrap_array_of_virtual_hd_audio_card(value: Vec<super::structs::VirtualHdAudioCard>) -> ValueElements {
    ValueElements::ArrayOfVirtualHdAudioCard(value)
}
fn wrap_array_of_virtual_hd_audio_card_option(value: Vec<super::structs::VirtualHdAudioCardOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualHdAudioCardOption(value)
}
fn wrap_array_of_virtual_ide_controller(value: Vec<super::structs::VirtualIdeController>) -> ValueElements {
    ValueElements::ArrayOfVirtualIdeController(value)
}
fn wrap_array_of_virtual_ide_controller_option(value: Vec<super::structs::VirtualIdeControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualIdeControllerOption(value)
}
fn wrap_array_of_virtual_keyboard(value: Vec<super::structs::VirtualKeyboard>) -> ValueElements {
    ValueElements::ArrayOfVirtualKeyboard(value)
}
fn wrap_array_of_virtual_keyboard_option(value: Vec<super::structs::VirtualKeyboardOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualKeyboardOption(value)
}
fn wrap_array_of_virtual_lsi_logic_controller(value: Vec<super::structs::VirtualLsiLogicController>) -> ValueElements {
    ValueElements::ArrayOfVirtualLsiLogicController(value)
}
fn wrap_array_of_virtual_lsi_logic_controller_option(value: Vec<super::structs::VirtualLsiLogicControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualLsiLogicControllerOption(value)
}
fn wrap_array_of_virtual_lsi_logic_sas_controller(value: Vec<super::structs::VirtualLsiLogicSasController>) -> ValueElements {
    ValueElements::ArrayOfVirtualLsiLogicSasController(value)
}
fn wrap_array_of_virtual_lsi_logic_sas_controller_option(value: Vec<super::structs::VirtualLsiLogicSasControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualLsiLogicSasControllerOption(value)
}
fn wrap_array_of_virtual_nvdimm(value: Vec<super::structs::VirtualNvdimm>) -> ValueElements {
    ValueElements::ArrayOfVirtualNvdimm(value)
}
fn wrap_array_of_virtual_nvdimm_backing_info(value: Vec<super::structs::VirtualNvdimmBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualNvdimmBackingInfo(value)
}
fn wrap_array_of_virtual_nvdimm_controller(value: Vec<super::structs::VirtualNvdimmController>) -> ValueElements {
    ValueElements::ArrayOfVirtualNvdimmController(value)
}
fn wrap_array_of_virtual_nvdimm_controller_option(value: Vec<super::structs::VirtualNvdimmControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualNvdimmControllerOption(value)
}
fn wrap_array_of_virtual_nvdimm_option(value: Vec<super::structs::VirtualNvdimmOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualNvdimmOption(value)
}
fn wrap_array_of_virtual_nvme_controller(value: Vec<super::structs::VirtualNvmeController>) -> ValueElements {
    ValueElements::ArrayOfVirtualNvmeController(value)
}
fn wrap_array_of_virtual_nvme_controller_option(value: Vec<super::structs::VirtualNvmeControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualNvmeControllerOption(value)
}
fn wrap_array_of_virtual_pci_controller(value: Vec<super::structs::VirtualPciController>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciController(value)
}
fn wrap_array_of_virtual_pci_controller_option(value: Vec<super::structs::VirtualPciControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciControllerOption(value)
}
fn wrap_array_of_virtual_pci_passthrough(value: Vec<super::structs::VirtualPciPassthrough>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthrough(value)
}
fn wrap_array_of_virtual_pci_passthrough_allowed_device(value: Vec<super::structs::VirtualPciPassthroughAllowedDevice>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthroughAllowedDevice(value)
}
fn wrap_array_of_virtual_pci_passthrough_device_backing_info(value: Vec<super::structs::VirtualPciPassthroughDeviceBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthroughDeviceBackingInfo(value)
}
fn wrap_array_of_virtual_pci_passthrough_dvx_backing_info(value: Vec<super::structs::VirtualPciPassthroughDvxBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthroughDvxBackingInfo(value)
}
fn wrap_array_of_virtual_pci_passthrough_dynamic_backing_info(value: Vec<super::structs::VirtualPciPassthroughDynamicBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthroughDynamicBackingInfo(value)
}
fn wrap_array_of_virtual_pci_passthrough_vmiop_backing_info(value: Vec<super::structs::VirtualPciPassthroughVmiopBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthroughVmiopBackingInfo(value)
}
fn wrap_array_of_virtual_pci_passthrough_option(value: Vec<super::structs::VirtualPciPassthroughOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthroughOption(value)
}
fn wrap_array_of_virtual_pci_passthrough_device_backing_option(value: Vec<super::structs::VirtualPciPassthroughDeviceBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthroughDeviceBackingOption(value)
}
fn wrap_array_of_virtual_pci_passthrough_dvx_backing_option(value: Vec<super::structs::VirtualPciPassthroughDvxBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthroughDvxBackingOption(value)
}
fn wrap_array_of_virtual_pci_passthrough_dynamic_backing_option(value: Vec<super::structs::VirtualPciPassthroughDynamicBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthroughDynamicBackingOption(value)
}
fn wrap_array_of_virtual_pci_passthrough_vmiop_backing_option(value: Vec<super::structs::VirtualPciPassthroughVmiopBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPciPassthroughVmiopBackingOption(value)
}
fn wrap_array_of_virtual_pc_net_32(value: Vec<super::structs::VirtualPcNet32>) -> ValueElements {
    ValueElements::ArrayOfVirtualPcNet32(value)
}
fn wrap_array_of_virtual_pc_net_32_option(value: Vec<super::structs::VirtualPcNet32Option>) -> ValueElements {
    ValueElements::ArrayOfVirtualPcNet32Option(value)
}
fn wrap_array_of_virtual_ps_2_controller(value: Vec<super::structs::VirtualPs2Controller>) -> ValueElements {
    ValueElements::ArrayOfVirtualPs2Controller(value)
}
fn wrap_array_of_virtual_ps_2_controller_option(value: Vec<super::structs::VirtualPs2ControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPs2ControllerOption(value)
}
fn wrap_array_of_virtual_parallel_port(value: Vec<super::structs::VirtualParallelPort>) -> ValueElements {
    ValueElements::ArrayOfVirtualParallelPort(value)
}
fn wrap_array_of_virtual_parallel_port_device_backing_info(value: Vec<super::structs::VirtualParallelPortDeviceBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualParallelPortDeviceBackingInfo(value)
}
fn wrap_array_of_virtual_parallel_port_file_backing_info(value: Vec<super::structs::VirtualParallelPortFileBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualParallelPortFileBackingInfo(value)
}
fn wrap_array_of_virtual_parallel_port_option(value: Vec<super::structs::VirtualParallelPortOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualParallelPortOption(value)
}
fn wrap_array_of_virtual_parallel_port_device_backing_option(value: Vec<super::structs::VirtualParallelPortDeviceBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualParallelPortDeviceBackingOption(value)
}
fn wrap_array_of_virtual_parallel_port_file_backing_option(value: Vec<super::structs::VirtualParallelPortFileBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualParallelPortFileBackingOption(value)
}
fn wrap_array_of_virtual_pointing_device(value: Vec<super::structs::VirtualPointingDevice>) -> ValueElements {
    ValueElements::ArrayOfVirtualPointingDevice(value)
}
fn wrap_array_of_virtual_pointing_device_device_backing_info(value: Vec<super::structs::VirtualPointingDeviceDeviceBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualPointingDeviceDeviceBackingInfo(value)
}
fn wrap_array_of_virtual_pointing_device_option(value: Vec<super::structs::VirtualPointingDeviceOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPointingDeviceOption(value)
}
fn wrap_array_of_virtual_pointing_device_backing_option(value: Vec<super::structs::VirtualPointingDeviceBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPointingDeviceBackingOption(value)
}
fn wrap_array_of_virtual_precision_clock(value: Vec<super::structs::VirtualPrecisionClock>) -> ValueElements {
    ValueElements::ArrayOfVirtualPrecisionClock(value)
}
fn wrap_array_of_virtual_precision_clock_system_clock_backing_info(value: Vec<super::structs::VirtualPrecisionClockSystemClockBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualPrecisionClockSystemClockBackingInfo(value)
}
fn wrap_array_of_virtual_precision_clock_option(value: Vec<super::structs::VirtualPrecisionClockOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPrecisionClockOption(value)
}
fn wrap_array_of_virtual_precision_clock_system_clock_backing_option(value: Vec<super::structs::VirtualPrecisionClockSystemClockBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualPrecisionClockSystemClockBackingOption(value)
}
fn wrap_array_of_virtual_scsi_passthrough(value: Vec<super::structs::VirtualScsiPassthrough>) -> ValueElements {
    ValueElements::ArrayOfVirtualScsiPassthrough(value)
}
fn wrap_array_of_virtual_scsi_passthrough_device_backing_info(value: Vec<super::structs::VirtualScsiPassthroughDeviceBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualScsiPassthroughDeviceBackingInfo(value)
}
fn wrap_array_of_virtual_scsi_passthrough_option(value: Vec<super::structs::VirtualScsiPassthroughOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualScsiPassthroughOption(value)
}
fn wrap_array_of_virtual_scsi_passthrough_device_backing_option(value: Vec<super::structs::VirtualScsiPassthroughDeviceBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualScsiPassthroughDeviceBackingOption(value)
}
fn wrap_array_of_virtual_sio_controller(value: Vec<super::structs::VirtualSioController>) -> ValueElements {
    ValueElements::ArrayOfVirtualSioController(value)
}
fn wrap_array_of_virtual_sio_controller_option(value: Vec<super::structs::VirtualSioControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualSioControllerOption(value)
}
fn wrap_array_of_virtual_serial_port(value: Vec<super::structs::VirtualSerialPort>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPort(value)
}
fn wrap_array_of_virtual_serial_port_device_backing_info(value: Vec<super::structs::VirtualSerialPortDeviceBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortDeviceBackingInfo(value)
}
fn wrap_array_of_virtual_serial_port_file_backing_info(value: Vec<super::structs::VirtualSerialPortFileBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortFileBackingInfo(value)
}
fn wrap_array_of_virtual_serial_port_pipe_backing_info(value: Vec<super::structs::VirtualSerialPortPipeBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortPipeBackingInfo(value)
}
fn wrap_array_of_virtual_serial_port_thin_print_backing_info(value: Vec<super::structs::VirtualSerialPortThinPrintBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortThinPrintBackingInfo(value)
}
fn wrap_array_of_virtual_serial_port_uri_backing_info(value: Vec<super::structs::VirtualSerialPortUriBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortUriBackingInfo(value)
}
fn wrap_array_of_virtual_serial_port_option(value: Vec<super::structs::VirtualSerialPortOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortOption(value)
}
fn wrap_array_of_virtual_serial_port_device_backing_option(value: Vec<super::structs::VirtualSerialPortDeviceBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortDeviceBackingOption(value)
}
fn wrap_array_of_virtual_serial_port_file_backing_option(value: Vec<super::structs::VirtualSerialPortFileBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortFileBackingOption(value)
}
fn wrap_array_of_virtual_serial_port_pipe_backing_option(value: Vec<super::structs::VirtualSerialPortPipeBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortPipeBackingOption(value)
}
fn wrap_array_of_virtual_serial_port_thin_print_backing_option(value: Vec<super::structs::VirtualSerialPortThinPrintBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortThinPrintBackingOption(value)
}
fn wrap_array_of_virtual_serial_port_uri_backing_option(value: Vec<super::structs::VirtualSerialPortUriBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualSerialPortUriBackingOption(value)
}
fn wrap_array_of_virtual_sound_blaster_16(value: Vec<super::structs::VirtualSoundBlaster16>) -> ValueElements {
    ValueElements::ArrayOfVirtualSoundBlaster16(value)
}
fn wrap_array_of_virtual_sound_blaster_16_option(value: Vec<super::structs::VirtualSoundBlaster16Option>) -> ValueElements {
    ValueElements::ArrayOfVirtualSoundBlaster16Option(value)
}
fn wrap_array_of_virtual_sound_card_device_backing_info(value: Vec<super::structs::VirtualSoundCardDeviceBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualSoundCardDeviceBackingInfo(value)
}
fn wrap_array_of_virtual_sound_card_device_backing_option(value: Vec<super::structs::VirtualSoundCardDeviceBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualSoundCardDeviceBackingOption(value)
}
fn wrap_array_of_virtual_sriov_ethernet_card(value: Vec<super::structs::VirtualSriovEthernetCard>) -> ValueElements {
    ValueElements::ArrayOfVirtualSriovEthernetCard(value)
}
fn wrap_array_of_virtual_sriov_ethernet_card_sriov_backing_info(value: Vec<super::structs::VirtualSriovEthernetCardSriovBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualSriovEthernetCardSriovBackingInfo(value)
}
fn wrap_array_of_virtual_sriov_ethernet_card_option(value: Vec<super::structs::VirtualSriovEthernetCardOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualSriovEthernetCardOption(value)
}
fn wrap_array_of_virtual_sriov_ethernet_card_sriov_backing_option(value: Vec<super::structs::VirtualSriovEthernetCardSriovBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualSriovEthernetCardSriovBackingOption(value)
}
fn wrap_array_of_virtual_tpm(value: Vec<super::structs::VirtualTpm>) -> ValueElements {
    ValueElements::ArrayOfVirtualTpm(value)
}
fn wrap_array_of_virtual_tpm_option(value: Vec<super::structs::VirtualTpmOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualTpmOption(value)
}
fn wrap_array_of_virtual_usb(value: Vec<super::structs::VirtualUsb>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsb(value)
}
fn wrap_array_of_virtual_usb_remote_client_backing_info(value: Vec<super::structs::VirtualUsbRemoteClientBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbRemoteClientBackingInfo(value)
}
fn wrap_array_of_virtual_usb_remote_host_backing_info(value: Vec<super::structs::VirtualUsbRemoteHostBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbRemoteHostBackingInfo(value)
}
fn wrap_array_of_virtual_usbusb_backing_info(value: Vec<super::structs::VirtualUsbusbBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbusbBackingInfo(value)
}
fn wrap_array_of_virtual_usb_controller(value: Vec<super::structs::VirtualUsbController>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbController(value)
}
fn wrap_array_of_virtual_usb_controller_pci_bus_slot_info(value: Vec<super::structs::VirtualUsbControllerPciBusSlotInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbControllerPciBusSlotInfo(value)
}
fn wrap_array_of_virtual_usb_controller_option(value: Vec<super::structs::VirtualUsbControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbControllerOption(value)
}
fn wrap_array_of_virtual_usb_option(value: Vec<super::structs::VirtualUsbOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbOption(value)
}
fn wrap_array_of_virtual_usb_remote_client_backing_option(value: Vec<super::structs::VirtualUsbRemoteClientBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbRemoteClientBackingOption(value)
}
fn wrap_array_of_virtual_usb_remote_host_backing_option(value: Vec<super::structs::VirtualUsbRemoteHostBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbRemoteHostBackingOption(value)
}
fn wrap_array_of_virtual_usbusb_backing_option(value: Vec<super::structs::VirtualUsbusbBackingOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbusbBackingOption(value)
}
fn wrap_array_of_virtual_usbxhci_controller(value: Vec<super::structs::VirtualUsbxhciController>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbxhciController(value)
}
fn wrap_array_of_virtual_usbxhci_controller_option(value: Vec<super::structs::VirtualUsbxhciControllerOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualUsbxhciControllerOption(value)
}
fn wrap_array_of_virtual_machine_vmci_device(value: Vec<super::structs::VirtualMachineVmciDevice>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVmciDevice(value)
}
fn wrap_array_of_virtual_machine_vmci_device_filter_info(value: Vec<super::structs::VirtualMachineVmciDeviceFilterInfo>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVmciDeviceFilterInfo(value)
}
fn wrap_array_of_virtual_machine_vmci_device_filter_spec(value: Vec<super::structs::VirtualMachineVmciDeviceFilterSpec>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVmciDeviceFilterSpec(value)
}
fn wrap_array_of_virtual_machine_vmci_device_option(value: Vec<super::structs::VirtualMachineVmciDeviceOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVmciDeviceOption(value)
}
fn wrap_array_of_virtual_machine_vmci_device_option_filter_spec_option(value: Vec<super::structs::VirtualMachineVmciDeviceOptionFilterSpecOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVmciDeviceOptionFilterSpecOption(value)
}
fn wrap_array_of_virtual_machine_vmirom(value: Vec<super::structs::VirtualMachineVmirom>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVmirom(value)
}
fn wrap_array_of_virtual_vmirom_option(value: Vec<super::structs::VirtualVmiromOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualVmiromOption(value)
}
fn wrap_array_of_virtual_machine_video_card(value: Vec<super::structs::VirtualMachineVideoCard>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineVideoCard(value)
}
fn wrap_array_of_virtual_video_card_option(value: Vec<super::structs::VirtualVideoCardOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualVideoCardOption(value)
}
fn wrap_array_of_virtual_vmxnet_2(value: Vec<super::structs::VirtualVmxnet2>) -> ValueElements {
    ValueElements::ArrayOfVirtualVmxnet2(value)
}
fn wrap_array_of_virtual_vmxnet_2_option(value: Vec<super::structs::VirtualVmxnet2Option>) -> ValueElements {
    ValueElements::ArrayOfVirtualVmxnet2Option(value)
}
fn wrap_array_of_virtual_vmxnet_3_strict_latency_config(value: Vec<super::structs::VirtualVmxnet3StrictLatencyConfig>) -> ValueElements {
    ValueElements::ArrayOfVirtualVmxnet3StrictLatencyConfig(value)
}
fn wrap_array_of_virtual_vmxnet_3_option_strict_latency_config_option(value: Vec<super::structs::VirtualVmxnet3OptionStrictLatencyConfigOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualVmxnet3OptionStrictLatencyConfigOption(value)
}
fn wrap_array_of_virtual_vmxnet_3_vrdma(value: Vec<super::structs::VirtualVmxnet3Vrdma>) -> ValueElements {
    ValueElements::ArrayOfVirtualVmxnet3Vrdma(value)
}
fn wrap_array_of_virtual_vmxnet_3_vrdma_option(value: Vec<super::structs::VirtualVmxnet3VrdmaOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualVmxnet3VrdmaOption(value)
}
fn wrap_array_of_virtual_wdt(value: Vec<super::structs::VirtualWdt>) -> ValueElements {
    ValueElements::ArrayOfVirtualWdt(value)
}
fn wrap_array_of_virtual_wdt_option(value: Vec<super::structs::VirtualWdtOption>) -> ValueElements {
    ValueElements::ArrayOfVirtualWdtOption(value)
}
fn wrap_array_of_guest_aliases(value: Vec<super::structs::GuestAliases>) -> ValueElements {
    ValueElements::ArrayOfGuestAliases(value)
}
fn wrap_array_of_guest_auth_alias_info(value: Vec<super::structs::GuestAuthAliasInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestAuthAliasInfo(value)
}
fn wrap_array_of_guest_auth_any_subject(value: Vec<super::structs::GuestAuthAnySubject>) -> ValueElements {
    ValueElements::ArrayOfGuestAuthAnySubject(value)
}
fn wrap_array_of_guest_auth_named_subject(value: Vec<super::structs::GuestAuthNamedSubject>) -> ValueElements {
    ValueElements::ArrayOfGuestAuthNamedSubject(value)
}
fn wrap_array_of_guest_mapped_aliases(value: Vec<super::structs::GuestMappedAliases>) -> ValueElements {
    ValueElements::ArrayOfGuestMappedAliases(value)
}
fn wrap_array_of_guest_file_info(value: Vec<super::structs::GuestFileInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestFileInfo(value)
}
fn wrap_array_of_file_transfer_information(value: Vec<super::structs::FileTransferInformation>) -> ValueElements {
    ValueElements::ArrayOfFileTransferInformation(value)
}
fn wrap_array_of_guest_list_file_info(value: Vec<super::structs::GuestListFileInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestListFileInfo(value)
}
fn wrap_array_of_guest_posix_file_attributes(value: Vec<super::structs::GuestPosixFileAttributes>) -> ValueElements {
    ValueElements::ArrayOfGuestPosixFileAttributes(value)
}
fn wrap_array_of_guest_windows_file_attributes(value: Vec<super::structs::GuestWindowsFileAttributes>) -> ValueElements {
    ValueElements::ArrayOfGuestWindowsFileAttributes(value)
}
fn wrap_array_of_name_password_authentication(value: Vec<super::structs::NamePasswordAuthentication>) -> ValueElements {
    ValueElements::ArrayOfNamePasswordAuthentication(value)
}
fn wrap_array_of_guest_process_info(value: Vec<super::structs::GuestProcessInfo>) -> ValueElements {
    ValueElements::ArrayOfGuestProcessInfo(value)
}
fn wrap_array_of_guest_windows_program_spec(value: Vec<super::structs::GuestWindowsProgramSpec>) -> ValueElements {
    ValueElements::ArrayOfGuestWindowsProgramSpec(value)
}
fn wrap_array_of_saml_token_authentication(value: Vec<super::structs::SamlTokenAuthentication>) -> ValueElements {
    ValueElements::ArrayOfSamlTokenAuthentication(value)
}
fn wrap_array_of_sspi_authentication(value: Vec<super::structs::SspiAuthentication>) -> ValueElements {
    ValueElements::ArrayOfSspiAuthentication(value)
}
fn wrap_array_of_ticketed_session_authentication(value: Vec<super::structs::TicketedSessionAuthentication>) -> ValueElements {
    ValueElements::ArrayOfTicketedSessionAuthentication(value)
}
fn wrap_array_of_guest_reg_key_spec(value: Vec<super::structs::GuestRegKeySpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegKeySpec(value)
}
fn wrap_array_of_guest_reg_key_name_spec(value: Vec<super::structs::GuestRegKeyNameSpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegKeyNameSpec(value)
}
fn wrap_array_of_guest_reg_key_record_spec(value: Vec<super::structs::GuestRegKeyRecordSpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegKeyRecordSpec(value)
}
fn wrap_array_of_guest_reg_value_spec(value: Vec<super::structs::GuestRegValueSpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegValueSpec(value)
}
fn wrap_array_of_guest_reg_value_binary_spec(value: Vec<super::structs::GuestRegValueBinarySpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegValueBinarySpec(value)
}
fn wrap_array_of_guest_reg_value_dword_spec(value: Vec<super::structs::GuestRegValueDwordSpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegValueDwordSpec(value)
}
fn wrap_array_of_guest_reg_value_expand_string_spec(value: Vec<super::structs::GuestRegValueExpandStringSpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegValueExpandStringSpec(value)
}
fn wrap_array_of_guest_reg_value_multi_string_spec(value: Vec<super::structs::GuestRegValueMultiStringSpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegValueMultiStringSpec(value)
}
fn wrap_array_of_guest_reg_value_name_spec(value: Vec<super::structs::GuestRegValueNameSpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegValueNameSpec(value)
}
fn wrap_array_of_guest_reg_value_qword_spec(value: Vec<super::structs::GuestRegValueQwordSpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegValueQwordSpec(value)
}
fn wrap_array_of_guest_reg_value_string_spec(value: Vec<super::structs::GuestRegValueStringSpec>) -> ValueElements {
    ValueElements::ArrayOfGuestRegValueStringSpec(value)
}
fn wrap_array_of_device_group_id(value: Vec<super::structs::DeviceGroupId>) -> ValueElements {
    ValueElements::ArrayOfDeviceGroupId(value)
}
fn wrap_array_of_replication_group_id(value: Vec<super::structs::ReplicationGroupId>) -> ValueElements {
    ValueElements::ArrayOfReplicationGroupId(value)
}
fn wrap_array_of_replication_spec(value: Vec<super::structs::ReplicationSpec>) -> ValueElements {
    ValueElements::ArrayOfReplicationSpec(value)
}
fn wrap_array_of_active_vsan_directory_server_config(value: Vec<super::structs::ActiveVsanDirectoryServerConfig>) -> ValueElements {
    ValueElements::ArrayOfActiveVsanDirectoryServerConfig(value)
}
fn wrap_array_of_vsan_advanced_datastore_config(value: Vec<super::structs::VsanAdvancedDatastoreConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanAdvancedDatastoreConfig(value)
}
fn wrap_array_of_vsan_capacity_reservation_info(value: Vec<super::structs::VsanCapacityReservationInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanCapacityReservationInfo(value)
}
fn wrap_array_of_vsan_client_datastore_config(value: Vec<super::structs::VsanClientDatastoreConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanClientDatastoreConfig(value)
}
fn wrap_array_of_vsan_cluster_config_precheck_item(value: Vec<super::structs::VsanClusterConfigPrecheckItem>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterConfigPrecheckItem(value)
}
fn wrap_array_of_cluster_runtime_info(value: Vec<super::structs::ClusterRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfClusterRuntimeInfo(value)
}
fn wrap_array_of_vsan_compatibility_check_result(value: Vec<super::structs::VsanCompatibilityCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanCompatibilityCheckResult(value)
}
fn wrap_array_of_vsan_config_info_ex(value: Vec<super::structs::VsanConfigInfoEx>) -> ValueElements {
    ValueElements::ArrayOfVsanConfigInfoEx(value)
}
fn wrap_array_of_vim_vsan_data_efficiency_capacity_state(value: Vec<super::structs::VimVsanDataEfficiencyCapacityState>) -> ValueElements {
    ValueElements::ArrayOfVimVsanDataEfficiencyCapacityState(value)
}
fn wrap_array_of_vsan_data_efficiency_config_ex(value: Vec<super::structs::VsanDataEfficiencyConfigEx>) -> ValueElements {
    ValueElements::ArrayOfVsanDataEfficiencyConfigEx(value)
}
fn wrap_array_of_vsan_data_encryption_config(value: Vec<super::structs::VsanDataEncryptionConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanDataEncryptionConfig(value)
}
fn wrap_array_of_vsan_data_in_transit_encryption_config(value: Vec<super::structs::VsanDataInTransitEncryptionConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanDataInTransitEncryptionConfig(value)
}
fn wrap_array_of_vsan_datastore_source_precheck_item(value: Vec<super::structs::VsanDatastoreSourcePrecheckItem>) -> ValueElements {
    ValueElements::ArrayOfVsanDatastoreSourcePrecheckItem(value)
}
fn wrap_array_of_vsan_datastore_source_precheck_result(value: Vec<super::structs::VsanDatastoreSourcePrecheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanDatastoreSourcePrecheckResult(value)
}
fn wrap_array_of_default_datastore_policy_selection_info(value: Vec<super::structs::DefaultDatastorePolicySelectionInfo>) -> ValueElements {
    ValueElements::ArrayOfDefaultDatastorePolicySelectionInfo(value)
}
fn wrap_array_of_disk_claim_configuration(value: Vec<super::structs::DiskClaimConfiguration>) -> ValueElements {
    ValueElements::ArrayOfDiskClaimConfiguration(value)
}
fn wrap_array_of_vsan_disk_data_evacuation_resource_check_task_details(value: Vec<super::structs::VsanDiskDataEvacuationResourceCheckTaskDetails>) -> ValueElements {
    ValueElements::ArrayOfVsanDiskDataEvacuationResourceCheckTaskDetails(value)
}
fn wrap_array_of_vsan_disk_group_resource_check_result(value: Vec<super::structs::VsanDiskGroupResourceCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanDiskGroupResourceCheckResult(value)
}
fn wrap_array_of_vsan_entity_compatibility_result(value: Vec<super::structs::VsanEntityCompatibilityResult>) -> ValueElements {
    ValueElements::ArrayOfVsanEntityCompatibilityResult(value)
}
fn wrap_array_of_vsan_fault_domain_resource_check_result(value: Vec<super::structs::VsanFaultDomainResourceCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanFaultDomainResourceCheckResult(value)
}
fn wrap_array_of_vsan_file_service_config(value: Vec<super::structs::VsanFileServiceConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServiceConfig(value)
}
fn wrap_array_of_vsan_file_service_domain(value: Vec<super::structs::VsanFileServiceDomain>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServiceDomain(value)
}
fn wrap_array_of_vsan_file_service_domain_config(value: Vec<super::structs::VsanFileServiceDomainConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServiceDomainConfig(value)
}
fn wrap_array_of_vsan_file_service_domain_query_spec(value: Vec<super::structs::VsanFileServiceDomainQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServiceDomainQuerySpec(value)
}
fn wrap_array_of_vsan_file_service_ip_config(value: Vec<super::structs::VsanFileServiceIpConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServiceIpConfig(value)
}
fn wrap_array_of_vsan_file_share(value: Vec<super::structs::VsanFileShare>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShare(value)
}
fn wrap_array_of_vsan_file_share_config(value: Vec<super::structs::VsanFileShareConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShareConfig(value)
}
fn wrap_array_of_vsan_file_share_net_permission(value: Vec<super::structs::VsanFileShareNetPermission>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShareNetPermission(value)
}
fn wrap_array_of_vsan_file_share_query_properties(value: Vec<super::structs::VsanFileShareQueryProperties>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShareQueryProperties(value)
}
fn wrap_array_of_file_share_query_result(value: Vec<super::structs::FileShareQueryResult>) -> ValueElements {
    ValueElements::ArrayOfFileShareQueryResult(value)
}
fn wrap_array_of_vsan_file_share_query_spec(value: Vec<super::structs::VsanFileShareQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShareQuerySpec(value)
}
fn wrap_array_of_vsan_file_share_runtime_info(value: Vec<super::structs::VsanFileShareRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShareRuntimeInfo(value)
}
fn wrap_array_of_vsan_file_share_smb_options(value: Vec<super::structs::VsanFileShareSmbOptions>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShareSmbOptions(value)
}
fn wrap_array_of_vsan_file_share_snapshot(value: Vec<super::structs::VsanFileShareSnapshot>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShareSnapshot(value)
}
fn wrap_array_of_vsan_file_share_snapshot_config(value: Vec<super::structs::VsanFileShareSnapshotConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShareSnapshotConfig(value)
}
fn wrap_array_of_vsan_file_share_snapshot_query_result(value: Vec<super::structs::VsanFileShareSnapshotQueryResult>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShareSnapshotQueryResult(value)
}
fn wrap_array_of_vsan_file_share_snapshot_query_spec(value: Vec<super::structs::VsanFileShareSnapshotQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanFileShareSnapshotQuerySpec(value)
}
fn wrap_array_of_vsan_hci_mesh_datastore_source(value: Vec<super::structs::VsanHciMeshDatastoreSource>) -> ValueElements {
    ValueElements::ArrayOfVsanHciMeshDatastoreSource(value)
}
fn wrap_array_of_vsan_host_resource_check_result(value: Vec<super::structs::VsanHostResourceCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanHostResourceCheckResult(value)
}
fn wrap_array_of_vsan_io_diagnostics_failed_check(value: Vec<super::structs::VsanIoDiagnosticsFailedCheck>) -> ValueElements {
    ValueElements::ArrayOfVsanIoDiagnosticsFailedCheck(value)
}
fn wrap_array_of_vsan_io_diagnostics_instance(value: Vec<super::structs::VsanIoDiagnosticsInstance>) -> ValueElements {
    ValueElements::ArrayOfVsanIoDiagnosticsInstance(value)
}
fn wrap_array_of_vsan_io_diagnostics_instance_event(value: Vec<super::structs::VsanIoDiagnosticsInstanceEvent>) -> ValueElements {
    ValueElements::ArrayOfVsanIoDiagnosticsInstanceEvent(value)
}
fn wrap_array_of_vsan_io_diagnostics_instance_query_spec(value: Vec<super::structs::VsanIoDiagnosticsInstanceQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanIoDiagnosticsInstanceQuerySpec(value)
}
fn wrap_array_of_vsan_io_diagnostics_object_layout(value: Vec<super::structs::VsanIoDiagnosticsObjectLayout>) -> ValueElements {
    ValueElements::ArrayOfVsanIoDiagnosticsObjectLayout(value)
}
fn wrap_array_of_vsan_io_diagnostics_precheck_result(value: Vec<super::structs::VsanIoDiagnosticsPrecheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanIoDiagnosticsPrecheckResult(value)
}
fn wrap_array_of_vsan_io_diagnostics_stats(value: Vec<super::structs::VsanIoDiagnosticsStats>) -> ValueElements {
    ValueElements::ArrayOfVsanIoDiagnosticsStats(value)
}
fn wrap_array_of_vsan_io_diagnostics_target(value: Vec<super::structs::VsanIoDiagnosticsTarget>) -> ValueElements {
    ValueElements::ArrayOfVsanIoDiagnosticsTarget(value)
}
fn wrap_array_of_vsan_io_diagnostics_target_stats(value: Vec<super::structs::VsanIoDiagnosticsTargetStats>) -> ValueElements {
    ValueElements::ArrayOfVsanIoDiagnosticsTargetStats(value)
}
fn wrap_array_of_vsan_io_latency(value: Vec<super::structs::VsanIoLatency>) -> ValueElements {
    ValueElements::ArrayOfVsanIoLatency(value)
}
fn wrap_array_of_vsan_io_latency_metrics(value: Vec<super::structs::VsanIoLatencyMetrics>) -> ValueElements {
    ValueElements::ArrayOfVsanIoLatencyMetrics(value)
}
fn wrap_array_of_lifecycle_config_details(value: Vec<super::structs::LifecycleConfigDetails>) -> ValueElements {
    ValueElements::ArrayOfLifecycleConfigDetails(value)
}
fn wrap_array_of_lifecycle_fault_domain_details(value: Vec<super::structs::LifecycleFaultDomainDetails>) -> ValueElements {
    ValueElements::ArrayOfLifecycleFaultDomainDetails(value)
}
fn wrap_array_of_lifecycle_pre_check_result(value: Vec<super::structs::LifecyclePreCheckResult>) -> ValueElements {
    ValueElements::ArrayOfLifecyclePreCheckResult(value)
}
fn wrap_array_of_lifecycle_witness_details(value: Vec<super::structs::LifecycleWitnessDetails>) -> ValueElements {
    ValueElements::ArrayOfLifecycleWitnessDetails(value)
}
fn wrap_array_of_vsan_metric_profile(value: Vec<super::structs::VsanMetricProfile>) -> ValueElements {
    ValueElements::ArrayOfVsanMetricProfile(value)
}
fn wrap_array_of_vsan_metrics_config(value: Vec<super::structs::VsanMetricsConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanMetricsConfig(value)
}
fn wrap_array_of_vsan_mount_precheck_network_connectivity(value: Vec<super::structs::VsanMountPrecheckNetworkConnectivity>) -> ValueElements {
    ValueElements::ArrayOfVsanMountPrecheckNetworkConnectivity(value)
}
fn wrap_array_of_vsan_mount_precheck_network_connectivity_detail(value: Vec<super::structs::VsanMountPrecheckNetworkConnectivityDetail>) -> ValueElements {
    ValueElements::ArrayOfVsanMountPrecheckNetworkConnectivityDetail(value)
}
fn wrap_array_of_vsan_mount_precheck_network_connectivity_result(value: Vec<super::structs::VsanMountPrecheckNetworkConnectivityResult>) -> ValueElements {
    ValueElements::ArrayOfVsanMountPrecheckNetworkConnectivityResult(value)
}
fn wrap_array_of_vsan_mount_precheck_network_latency(value: Vec<super::structs::VsanMountPrecheckNetworkLatency>) -> ValueElements {
    ValueElements::ArrayOfVsanMountPrecheckNetworkLatency(value)
}
fn wrap_array_of_vsan_mount_precheck_network_latency_detail(value: Vec<super::structs::VsanMountPrecheckNetworkLatencyDetail>) -> ValueElements {
    ValueElements::ArrayOfVsanMountPrecheckNetworkLatencyDetail(value)
}
fn wrap_array_of_vsan_mount_precheck_network_latency_result(value: Vec<super::structs::VsanMountPrecheckNetworkLatencyResult>) -> ValueElements {
    ValueElements::ArrayOfVsanMountPrecheckNetworkLatencyResult(value)
}
fn wrap_array_of_vsan_object_health_telemetry_summary(value: Vec<super::structs::VsanObjectHealthTelemetrySummary>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectHealthTelemetrySummary(value)
}
fn wrap_array_of_vsan_object_io_stats(value: Vec<super::structs::VsanObjectIoStats>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectIoStats(value)
}
fn wrap_array_of_vsan_proactive_rebalance_info(value: Vec<super::structs::VsanProactiveRebalanceInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanProactiveRebalanceInfo(value)
}
fn wrap_array_of_vsan_rdma_config(value: Vec<super::structs::VsanRdmaConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanRdmaConfig(value)
}
fn wrap_array_of_vim_vsan_reconfig_spec(value: Vec<super::structs::VimVsanReconfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVimVsanReconfigSpec(value)
}
fn wrap_array_of_vsan_remote_vc_info_standalone(value: Vec<super::structs::VsanRemoteVcInfoStandalone>) -> ValueElements {
    ValueElements::ArrayOfVsanRemoteVcInfoStandalone(value)
}
fn wrap_array_of_remote_vsan_site(value: Vec<super::structs::RemoteVsanSite>) -> ValueElements {
    ValueElements::ArrayOfRemoteVsanSite(value)
}
fn wrap_array_of_remote_vsan_site_affinity(value: Vec<super::structs::RemoteVsanSiteAffinity>) -> ValueElements {
    ValueElements::ArrayOfRemoteVsanSiteAffinity(value)
}
fn wrap_array_of_repair_timer_info(value: Vec<super::structs::RepairTimerInfo>) -> ValueElements {
    ValueElements::ArrayOfRepairTimerInfo(value)
}
fn wrap_array_of_vsan_resource_check_data_persistence_result(value: Vec<super::structs::VsanResourceCheckDataPersistenceResult>) -> ValueElements {
    ValueElements::ArrayOfVsanResourceCheckDataPersistenceResult(value)
}
fn wrap_array_of_vsan_resource_check_spec(value: Vec<super::structs::VsanResourceCheckSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanResourceCheckSpec(value)
}
fn wrap_array_of_vsan_resource_check_status(value: Vec<super::structs::VsanResourceCheckStatus>) -> ValueElements {
    ValueElements::ArrayOfVsanResourceCheckStatus(value)
}
fn wrap_array_of_vsan_resource_check_vsan_result(value: Vec<super::structs::VsanResourceCheckVsanResult>) -> ValueElements {
    ValueElements::ArrayOfVsanResourceCheckVsanResult(value)
}
fn wrap_array_of_resync_iops_info(value: Vec<super::structs::ResyncIopsInfo>) -> ValueElements {
    ValueElements::ArrayOfResyncIopsInfo(value)
}
fn wrap_array_of_vsan_runtime_stats_host_map(value: Vec<super::structs::VsanRuntimeStatsHostMap>) -> ValueElements {
    ValueElements::ArrayOfVsanRuntimeStatsHostMap(value)
}
fn wrap_array_of_ssd_endurance_threshold_spec(value: Vec<super::structs::SsdEnduranceThresholdSpec>) -> ValueElements {
    ValueElements::ArrayOfSsdEnduranceThresholdSpec(value)
}
fn wrap_array_of_vsan_server_host_unicast_info(value: Vec<super::structs::VsanServerHostUnicastInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanServerHostUnicastInfo(value)
}
fn wrap_array_of_vsan_shared_witness_compatibility_result(value: Vec<super::structs::VsanSharedWitnessCompatibilityResult>) -> ValueElements {
    ValueElements::ArrayOfVsanSharedWitnessCompatibilityResult(value)
}
fn wrap_array_of_vsan_snap_service_config(value: Vec<super::structs::VsanSnapServiceConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanSnapServiceConfig(value)
}
fn wrap_array_of_vsan_storage_pool_disk_resource_check_result(value: Vec<super::structs::VsanStoragePoolDiskResourceCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanStoragePoolDiskResourceCheckResult(value)
}
fn wrap_array_of_vsan_storage_pool_resource_check_result(value: Vec<super::structs::VsanStoragePoolResourceCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanStoragePoolResourceCheckResult(value)
}
fn wrap_array_of_vc_remote_vsan_server_cluster_config(value: Vec<super::structs::VcRemoteVsanServerClusterConfig>) -> ValueElements {
    ValueElements::ArrayOfVcRemoteVsanServerClusterConfig(value)
}
fn wrap_array_of_vc_remote_vsan_server_cluster_info(value: Vec<super::structs::VcRemoteVsanServerClusterInfo>) -> ValueElements {
    ValueElements::ArrayOfVcRemoteVsanServerClusterInfo(value)
}
fn wrap_array_of_vsan_iscsi_vip_config(value: Vec<super::structs::VsanIscsiVipConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiVipConfig(value)
}
fn wrap_array_of_vsan_iscsi_vip_d_vswitch_config(value: Vec<super::structs::VsanIscsiVipDVswitchConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiVipDVswitchConfig(value)
}
fn wrap_array_of_vsan_vip_network_config(value: Vec<super::structs::VsanVipNetworkConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanVipNetworkConfig(value)
}
fn wrap_array_of_vsan_iscsi_vip_vswitch_config(value: Vec<super::structs::VsanIscsiVipVswitchConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanIscsiVipVswitchConfig(value)
}
fn wrap_array_of_vsan_burn_in_test(value: Vec<super::structs::VsanBurnInTest>) -> ValueElements {
    ValueElements::ArrayOfVsanBurnInTest(value)
}
fn wrap_array_of_vsan_burn_in_test_check_result(value: Vec<super::structs::VsanBurnInTestCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanBurnInTestCheckResult(value)
}
fn wrap_array_of_vsan_cloud_health_status(value: Vec<super::structs::VsanCloudHealthStatus>) -> ValueElements {
    ValueElements::ArrayOfVsanCloudHealthStatus(value)
}
fn wrap_array_of_vsan_cluster_burn_in_test_result_list(value: Vec<super::structs::VsanClusterBurnInTestResultList>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterBurnInTestResultList(value)
}
fn wrap_array_of_vsan_compliant_driver(value: Vec<super::structs::VsanCompliantDriver>) -> ValueElements {
    ValueElements::ArrayOfVsanCompliantDriver(value)
}
fn wrap_array_of_vsan_compliant_firmware(value: Vec<super::structs::VsanCompliantFirmware>) -> ValueElements {
    ValueElements::ArrayOfVsanCompliantFirmware(value)
}
fn wrap_array_of_vsan_config_check_result(value: Vec<super::structs::VsanConfigCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanConfigCheckResult(value)
}
fn wrap_array_of_vsan_config_not_all_disks_claimed_issue(value: Vec<super::structs::VsanConfigNotAllDisksClaimedIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanConfigNotAllDisksClaimedIssue(value)
}
fn wrap_array_of_vsan_datastore_default_policy_selection_config(value: Vec<super::structs::VsanDatastoreDefaultPolicySelectionConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanDatastoreDefaultPolicySelectionConfig(value)
}
fn wrap_array_of_vsan_deconverged_net_config(value: Vec<super::structs::VsanDeconvergedNetConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanDeconvergedNetConfig(value)
}
fn wrap_array_of_vsan_disk_model_info(value: Vec<super::structs::VsanDiskModelInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanDiskModelInfo(value)
}
fn wrap_array_of_vsan_download_item(value: Vec<super::structs::VsanDownloadItem>) -> ValueElements {
    ValueElements::ArrayOfVsanDownloadItem(value)
}
fn wrap_array_of_vsan_esa_config(value: Vec<super::structs::VsanEsaConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanEsaConfig(value)
}
fn wrap_array_of_vsan_esa_config_info(value: Vec<super::structs::VsanEsaConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanEsaConfigInfo(value)
}
fn wrap_array_of_vsan_esa_disk_configuration(value: Vec<super::structs::VsanEsaDiskConfiguration>) -> ValueElements {
    ValueElements::ArrayOfVsanEsaDiskConfiguration(value)
}
fn wrap_array_of_vsan_extended_config(value: Vec<super::structs::VsanExtendedConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanExtendedConfig(value)
}
fn wrap_array_of_vsan_file_service_ovf_spec(value: Vec<super::structs::VsanFileServiceOvfSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServiceOvfSpec(value)
}
fn wrap_array_of_vsan_file_service_preflight_check_result(value: Vec<super::structs::VsanFileServicePreflightCheckResult>) -> ValueElements {
    ValueElements::ArrayOfVsanFileServicePreflightCheckResult(value)
}
fn wrap_array_of_vsan_generic_cluster_base_issue(value: Vec<super::structs::VsanGenericClusterBaseIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanGenericClusterBaseIssue(value)
}
fn wrap_array_of_vsan_generic_cluster_best_practice_health(value: Vec<super::structs::VsanGenericClusterBestPracticeHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanGenericClusterBestPracticeHealth(value)
}
fn wrap_array_of_vsan_hcl_device_constraint(value: Vec<super::structs::VsanHclDeviceConstraint>) -> ValueElements {
    ValueElements::ArrayOfVsanHclDeviceConstraint(value)
}
fn wrap_array_of_vsan_hcl_disk_constraint(value: Vec<super::structs::VsanHclDiskConstraint>) -> ValueElements {
    ValueElements::ArrayOfVsanHclDiskConstraint(value)
}
fn wrap_array_of_vsan_hcl_driver_info(value: Vec<super::structs::VsanHclDriverInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHclDriverInfo(value)
}
fn wrap_array_of_vsan_hcl_min_fw_constraint(value: Vec<super::structs::VsanHclMinFwConstraint>) -> ValueElements {
    ValueElements::ArrayOfVsanHclMinFwConstraint(value)
}
fn wrap_array_of_vsan_hcl_query_spec(value: Vec<super::structs::VsanHclQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanHclQuerySpec(value)
}
fn wrap_array_of_vsan_hcl_release_constraint(value: Vec<super::structs::VsanHclReleaseConstraint>) -> ValueElements {
    ValueElements::ArrayOfVsanHclReleaseConstraint(value)
}
fn wrap_array_of_vsan_health_config_spec(value: Vec<super::structs::VsanHealthConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthConfigSpec(value)
}
fn wrap_array_of_vsan_health_customization_spec(value: Vec<super::structs::VsanHealthCustomizationSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthCustomizationSpec(value)
}
fn wrap_array_of_vsan_health_threshold(value: Vec<super::structs::VsanHealthThreshold>) -> ValueElements {
    ValueElements::ArrayOfVsanHealthThreshold(value)
}
fn wrap_array_of_vsan_historical_health_config(value: Vec<super::structs::VsanHistoricalHealthConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanHistoricalHealthConfig(value)
}
fn wrap_array_of_vsan_host_device_info(value: Vec<super::structs::VsanHostDeviceInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostDeviceInfo(value)
}
fn wrap_array_of_vsan_hw_to_vcg_info_mapping_spec(value: Vec<super::structs::VsanHwToVcgInfoMappingSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanHwToVcgInfoMappingSpec(value)
}
fn wrap_array_of_vsan_io_trip_analyzer_config(value: Vec<super::structs::VsanIoTripAnalyzerConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanIoTripAnalyzerConfig(value)
}
fn wrap_array_of_vsan_io_trip_analyzer_recurrence(value: Vec<super::structs::VsanIoTripAnalyzerRecurrence>) -> ValueElements {
    ValueElements::ArrayOfVsanIoTripAnalyzerRecurrence(value)
}
fn wrap_array_of_vsan_internal_extended_config(value: Vec<super::structs::VsanInternalExtendedConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanInternalExtendedConfig(value)
}
fn wrap_array_of_vsan_network_config_best_practice_health(value: Vec<super::structs::VsanNetworkConfigBestPracticeHealth>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkConfigBestPracticeHealth(value)
}
fn wrap_array_of_vsan_network_config_pnic_speed_inconsistency_issue(value: Vec<super::structs::VsanNetworkConfigPnicSpeedInconsistencyIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkConfigPnicSpeedInconsistencyIssue(value)
}
fn wrap_array_of_vsan_network_config_portgroup_with_no_redundancy_issue(value: Vec<super::structs::VsanNetworkConfigPortgroupWithNoRedundancyIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkConfigPortgroupWithNoRedundancyIssue(value)
}
fn wrap_array_of_vsan_network_config_vds_scope_issue(value: Vec<super::structs::VsanNetworkConfigVdsScopeIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkConfigVdsScopeIssue(value)
}
fn wrap_array_of_vsan_network_config_vsan_not_on_vds_issue(value: Vec<super::structs::VsanNetworkConfigVsanNotOnVdsIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkConfigVsanNotOnVdsIssue(value)
}
fn wrap_array_of_vsan_network_config_vswitch_with_no_redundancy_issue(value: Vec<super::structs::VsanNetworkConfigVswitchWithNoRedundancyIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkConfigVswitchWithNoRedundancyIssue(value)
}
fn wrap_array_of_vsan_network_v_motion_vmknic_not_fount_issue(value: Vec<super::structs::VsanNetworkVMotionVmknicNotFountIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanNetworkVMotionVmknicNotFountIssue(value)
}
fn wrap_array_of_vsan_obj_snap_params(value: Vec<super::structs::VsanObjSnapParams>) -> ValueElements {
    ValueElements::ArrayOfVsanObjSnapParams(value)
}
fn wrap_array_of_vsan_object_detail(value: Vec<super::structs::VsanObjectDetail>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectDetail(value)
}
fn wrap_array_of_vsan_object_snapshot_id(value: Vec<super::structs::VsanObjectSnapshotId>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectSnapshotId(value)
}
fn wrap_array_of_vim_vsan_vsan_p_mem_config(value: Vec<super::structs::VimVsanVsanPMemConfig>) -> ValueElements {
    ValueElements::ArrayOfVimVsanVsanPMemConfig(value)
}
fn wrap_array_of_vsan_perfsvc_health_result(value: Vec<super::structs::VsanPerfsvcHealthResult>) -> ValueElements {
    ValueElements::ArrayOfVsanPerfsvcHealthResult(value)
}
fn wrap_array_of_vsan_prepare_vsan_for_vcsa_spec(value: Vec<super::structs::VsanPrepareVsanForVcsaSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanPrepareVsanForVcsaSpec(value)
}
fn wrap_array_of_vsan_snapshot_detail(value: Vec<super::structs::VsanSnapshotDetail>) -> ValueElements {
    ValueElements::ArrayOfVsanSnapshotDetail(value)
}
fn wrap_array_of_vsan_snapshot_query_result(value: Vec<super::structs::VsanSnapshotQueryResult>) -> ValueElements {
    ValueElements::ArrayOfVsanSnapshotQueryResult(value)
}
fn wrap_array_of_vsan_snapshot_query_spec(value: Vec<super::structs::VsanSnapshotQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanSnapshotQuerySpec(value)
}
fn wrap_array_of_vsan_space_efficiency_metadata_size(value: Vec<super::structs::VsanSpaceEfficiencyMetadataSize>) -> ValueElements {
    ValueElements::ArrayOfVsanSpaceEfficiencyMetadataSize(value)
}
fn wrap_array_of_vsan_space_efficiency_ratio(value: Vec<super::structs::VsanSpaceEfficiencyRatio>) -> ValueElements {
    ValueElements::ArrayOfVsanSpaceEfficiencyRatio(value)
}
fn wrap_array_of_vsan_unmap_config(value: Vec<super::structs::VsanUnmapConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanUnmapConfig(value)
}
fn wrap_array_of_vsan_update_item(value: Vec<super::structs::VsanUpdateItem>) -> ValueElements {
    ValueElements::ArrayOfVsanUpdateItem(value)
}
fn wrap_array_of_vsan_vc_post_deploy_config_spec(value: Vec<super::structs::VsanVcPostDeployConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanVcPostDeployConfigSpec(value)
}
fn wrap_array_of_vsan_vc_stretched_cluster_config_spec(value: Vec<super::structs::VsanVcStretchedClusterConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanVcStretchedClusterConfigSpec(value)
}
fn wrap_array_of_vsan_vcsa_deployment_progress(value: Vec<super::structs::VsanVcsaDeploymentProgress>) -> ValueElements {
    ValueElements::ArrayOfVsanVcsaDeploymentProgress(value)
}
fn wrap_array_of_vsan_vds_migration_plan(value: Vec<super::structs::VsanVdsMigrationPlan>) -> ValueElements {
    ValueElements::ArrayOfVsanVdsMigrationPlan(value)
}
fn wrap_array_of_vsan_vds_pg_migration_host_info(value: Vec<super::structs::VsanVdsPgMigrationHostInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanVdsPgMigrationHostInfo(value)
}
fn wrap_array_of_vsan_vds_pg_migration_spec(value: Vec<super::structs::VsanVdsPgMigrationSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanVdsPgMigrationSpec(value)
}
fn wrap_array_of_vsan_vds_pg_migration_vm_info(value: Vec<super::structs::VsanVdsPgMigrationVmInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanVdsPgMigrationVmInfo(value)
}
fn wrap_array_of_vsan_vib_install_preflight_status(value: Vec<super::structs::VsanVibInstallPreflightStatus>) -> ValueElements {
    ValueElements::ArrayOfVsanVibInstallPreflightStatus(value)
}
fn wrap_array_of_vsan_vib_scan_result(value: Vec<super::structs::VsanVibScanResult>) -> ValueElements {
    ValueElements::ArrayOfVsanVibScanResult(value)
}
fn wrap_array_of_vsan_vib_spec(value: Vec<super::structs::VsanVibSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanVibSpec(value)
}
fn wrap_array_of_vsan_vm_vds_migration_spec(value: Vec<super::structs::VsanVmVdsMigrationSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanVmVdsMigrationSpec(value)
}
fn wrap_array_of_vsan_vnic_vds_migration_spec(value: Vec<super::structs::VsanVnicVdsMigrationSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanVnicVdsMigrationSpec(value)
}
fn wrap_array_of_vsan_vum_config(value: Vec<super::structs::VsanVumConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanVumConfig(value)
}
fn wrap_array_of_vsan_witness_host_config(value: Vec<super::structs::VsanWitnessHostConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanWitnessHostConfig(value)
}
fn wrap_array_of_vsan_xvc_client_info(value: Vec<super::structs::VsanXvcClientInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcClientInfo(value)
}
fn wrap_array_of_vsan_xvc_datastore_config(value: Vec<super::structs::VsanXvcDatastoreConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcDatastoreConfig(value)
}
fn wrap_array_of_vsan_xvc_datastore_info(value: Vec<super::structs::VsanXvcDatastoreInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcDatastoreInfo(value)
}
fn wrap_array_of_vsan_xvc_client_config(value: Vec<super::structs::VsanXvcClientConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcClientConfig(value)
}
fn wrap_array_of_vsan_xvc_client_info_spec(value: Vec<super::structs::VsanXvcClientInfoSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcClientInfoSpec(value)
}
fn wrap_array_of_vsan_xvc_query_criteria(value: Vec<super::structs::VsanXvcQueryCriteria>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcQueryCriteria(value)
}
fn wrap_array_of_vsan_xvc_query_filter(value: Vec<super::structs::VsanXvcQueryFilter>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcQueryFilter(value)
}
fn wrap_array_of_vsan_xvc_query_property_value(value: Vec<super::structs::VsanXvcQueryPropertyValue>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcQueryPropertyValue(value)
}
fn wrap_array_of_vsan_xvc_query_result_set(value: Vec<super::structs::VsanXvcQueryResultSet>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcQueryResultSet(value)
}
fn wrap_array_of_vsan_xvc_query_spec(value: Vec<super::structs::VsanXvcQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcQuerySpec(value)
}
fn wrap_array_of_vsan_xvc_result_item(value: Vec<super::structs::VsanXvcResultItem>) -> ValueElements {
    ValueElements::ArrayOfVsanXvcResultItem(value)
}
fn wrap_array_of_vsan_cluster_config_info_host_default_info(value: Vec<super::structs::VsanClusterConfigInfoHostDefaultInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterConfigInfoHostDefaultInfo(value)
}
fn wrap_array_of_vsan_cluster_core_config(value: Vec<super::structs::VsanClusterCoreConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterCoreConfig(value)
}
fn wrap_array_of_vsan_cluster_core_config_spec(value: Vec<super::structs::VsanClusterCoreConfigSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanClusterCoreConfigSpec(value)
}
fn wrap_array_of_vsan_host_abort_wipe_disk_status(value: Vec<super::structs::VsanHostAbortWipeDiskStatus>) -> ValueElements {
    ValueElements::ArrayOfVsanHostAbortWipeDiskStatus(value)
}
fn wrap_array_of_vsan_host_about_info_ex(value: Vec<super::structs::VsanHostAboutInfoEx>) -> ValueElements {
    ValueElements::ArrayOfVsanHostAboutInfoEx(value)
}
fn wrap_array_of_vsan_add_storage_pool_disk_spec(value: Vec<super::structs::VsanAddStoragePoolDiskSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanAddStoragePoolDiskSpec(value)
}
fn wrap_array_of_vsan_host_cluster_status(value: Vec<super::structs::VsanHostClusterStatus>) -> ValueElements {
    ValueElements::ArrayOfVsanHostClusterStatus(value)
}
fn wrap_array_of_vsan_host_cluster_status_state(value: Vec<super::structs::VsanHostClusterStatusState>) -> ValueElements {
    ValueElements::ArrayOfVsanHostClusterStatusState(value)
}
fn wrap_array_of_vsan_host_cluster_status_state_completion_estimate(value: Vec<super::structs::VsanHostClusterStatusStateCompletionEstimate>) -> ValueElements {
    ValueElements::ArrayOfVsanHostClusterStatusStateCompletionEstimate(value)
}
fn wrap_array_of_vsan_compliance_detail(value: Vec<super::structs::VsanComplianceDetail>) -> ValueElements {
    ValueElements::ArrayOfVsanComplianceDetail(value)
}
fn wrap_array_of_vsan_compliance_result(value: Vec<super::structs::VsanComplianceResult>) -> ValueElements {
    ValueElements::ArrayOfVsanComplianceResult(value)
}
fn wrap_array_of_vsan_host_config_info_cluster_info(value: Vec<super::structs::VsanHostConfigInfoClusterInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostConfigInfoClusterInfo(value)
}
fn wrap_array_of_vsan_host_fault_domain_info(value: Vec<super::structs::VsanHostFaultDomainInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostFaultDomainInfo(value)
}
fn wrap_array_of_vsan_host_config_info_network_info(value: Vec<super::structs::VsanHostConfigInfoNetworkInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostConfigInfoNetworkInfo(value)
}
fn wrap_array_of_vsan_host_config_info_storage_info(value: Vec<super::structs::VsanHostConfigInfoStorageInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostConfigInfoStorageInfo(value)
}
fn wrap_array_of_vsan_host_config_info_ex(value: Vec<super::structs::VsanHostConfigInfoEx>) -> ValueElements {
    ValueElements::ArrayOfVsanHostConfigInfoEx(value)
}
fn wrap_array_of_vsan_host_create_native_key_provider_spec(value: Vec<super::structs::VsanHostCreateNativeKeyProviderSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanHostCreateNativeKeyProviderSpec(value)
}
fn wrap_array_of_vsan_in_transit_encryption_info(value: Vec<super::structs::VsanInTransitEncryptionInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanInTransitEncryptionInfo(value)
}
fn wrap_array_of_vsan_host_decommission_mode(value: Vec<super::structs::VsanHostDecommissionMode>) -> ValueElements {
    ValueElements::ArrayOfVsanHostDecommissionMode(value)
}
fn wrap_array_of_vsan_delete_storage_pool_disk_spec(value: Vec<super::structs::VsanDeleteStoragePoolDiskSpec>) -> ValueElements {
    ValueElements::ArrayOfVsanDeleteStoragePoolDiskSpec(value)
}
fn wrap_array_of_vsan_host_disk_map_info(value: Vec<super::structs::VsanHostDiskMapInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostDiskMapInfo(value)
}
fn wrap_array_of_vim_vsan_host_disk_map_info_ex(value: Vec<super::structs::VimVsanHostDiskMapInfoEx>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostDiskMapInfoEx(value)
}
fn wrap_array_of_vsan_host_disk_map_result(value: Vec<super::structs::VsanHostDiskMapResult>) -> ValueElements {
    ValueElements::ArrayOfVsanHostDiskMapResult(value)
}
fn wrap_array_of_vsan_host_disk_mapping(value: Vec<super::structs::VsanHostDiskMapping>) -> ValueElements {
    ValueElements::ArrayOfVsanHostDiskMapping(value)
}
fn wrap_array_of_vim_vsan_host_disk_mapping_creation_spec(value: Vec<super::structs::VimVsanHostDiskMappingCreationSpec>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostDiskMappingCreationSpec(value)
}
fn wrap_array_of_vim_vsan_host_disk_result_ex(value: Vec<super::structs::VimVsanHostDiskResultEx>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostDiskResultEx(value)
}
fn wrap_array_of_vsan_host_drs_stats(value: Vec<super::structs::VsanHostDrsStats>) -> ValueElements {
    ValueElements::ArrayOfVsanHostDrsStats(value)
}
fn wrap_array_of_vsan_host_encryption_info(value: Vec<super::structs::VsanHostEncryptionInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostEncryptionInfo(value)
}
fn wrap_array_of_vsan_host_ip_config_ex(value: Vec<super::structs::VsanHostIpConfigEx>) -> ValueElements {
    ValueElements::ArrayOfVsanHostIpConfigEx(value)
}
fn wrap_array_of_vsan_host_membership_info(value: Vec<super::structs::VsanHostMembershipInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostMembershipInfo(value)
}
fn wrap_array_of_vsan_policy_status(value: Vec<super::structs::VsanPolicyStatus>) -> ValueElements {
    ValueElements::ArrayOfVsanPolicyStatus(value)
}
fn wrap_array_of_vsan_host_port_config_ex(value: Vec<super::structs::VsanHostPortConfigEx>) -> ValueElements {
    ValueElements::ArrayOfVsanHostPortConfigEx(value)
}
fn wrap_array_of_vim_vsan_host_query_vsan_disks_spec(value: Vec<super::structs::VimVsanHostQueryVsanDisksSpec>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostQueryVsanDisksSpec(value)
}
fn wrap_array_of_remote_vsan_server_cluster_config(value: Vec<super::structs::RemoteVsanServerClusterConfig>) -> ValueElements {
    ValueElements::ArrayOfRemoteVsanServerClusterConfig(value)
}
fn wrap_array_of_vsan_host_runtime_stats(value: Vec<super::structs::VsanHostRuntimeStats>) -> ValueElements {
    ValueElements::ArrayOfVsanHostRuntimeStats(value)
}
fn wrap_array_of_vsan_host_server_cluster_unicast_config(value: Vec<super::structs::VsanHostServerClusterUnicastConfig>) -> ValueElements {
    ValueElements::ArrayOfVsanHostServerClusterUnicastConfig(value)
}
fn wrap_array_of_vsan_host_server_cluster_unicast_info(value: Vec<super::structs::VsanHostServerClusterUnicastInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostServerClusterUnicastInfo(value)
}
fn wrap_array_of_site_affinity_info(value: Vec<super::structs::SiteAffinityInfo>) -> ValueElements {
    ValueElements::ArrayOfSiteAffinityInfo(value)
}
fn wrap_array_of_vsan_storage_pool_disk(value: Vec<super::structs::VsanStoragePoolDisk>) -> ValueElements {
    ValueElements::ArrayOfVsanStoragePoolDisk(value)
}
fn wrap_array_of_vim_vsan_host_storage_pool_disk_info(value: Vec<super::structs::VimVsanHostStoragePoolDiskInfo>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostStoragePoolDiskInfo(value)
}
fn wrap_array_of_vim_vsan_host_storage_pool_info(value: Vec<super::structs::VimVsanHostStoragePoolInfo>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostStoragePoolInfo(value)
}
fn wrap_array_of_vim_vsan_host_trim_disk_entry(value: Vec<super::structs::VimVsanHostTrimDiskEntry>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostTrimDiskEntry(value)
}
fn wrap_array_of_vim_vsan_host_trim_disk_spec(value: Vec<super::structs::VimVsanHostTrimDiskSpec>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostTrimDiskSpec(value)
}
fn wrap_array_of_vim_vsan_host_update_storage_pool_disk_spec(value: Vec<super::structs::VimVsanHostUpdateStoragePoolDiskSpec>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostUpdateStoragePoolDiskSpec(value)
}
fn wrap_array_of_vsan_host_associated_objects(value: Vec<super::structs::VsanHostAssociatedObjects>) -> ValueElements {
    ValueElements::ArrayOfVsanHostAssociatedObjects(value)
}
fn wrap_array_of_vsan_host_associated_objects_result(value: Vec<super::structs::VsanHostAssociatedObjectsResult>) -> ValueElements {
    ValueElements::ArrayOfVsanHostAssociatedObjectsResult(value)
}
fn wrap_array_of_vsan_compliance_query_spec(value: Vec<super::structs::VsanComplianceQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVsanComplianceQuerySpec(value)
}
fn wrap_array_of_vsan_host_component_sync_state(value: Vec<super::structs::VsanHostComponentSyncState>) -> ValueElements {
    ValueElements::ArrayOfVsanHostComponentSyncState(value)
}
fn wrap_array_of_vim_vsan_host_vsan_direct_storage(value: Vec<super::structs::VimVsanHostVsanDirectStorage>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostVsanDirectStorage(value)
}
fn wrap_array_of_vsan_host_vsan_disk_info(value: Vec<super::structs::VsanHostVsanDiskInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostVsanDiskInfo(value)
}
fn wrap_array_of_vim_vsan_host_vsan_disk_management_system_capability(value: Vec<super::structs::VimVsanHostVsanDiskManagementSystemCapability>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostVsanDiskManagementSystemCapability(value)
}
fn wrap_array_of_vim_vsan_host_vsan_host_capability(value: Vec<super::structs::VimVsanHostVsanHostCapability>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostVsanHostCapability(value)
}
fn wrap_array_of_vim_vsan_host_vsan_managed_disks_info(value: Vec<super::structs::VimVsanHostVsanManagedDisksInfo>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostVsanManagedDisksInfo(value)
}
fn wrap_array_of_vim_vsan_host_vsan_managed_p_mem_info(value: Vec<super::structs::VimVsanHostVsanManagedPMemInfo>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostVsanManagedPMemInfo(value)
}
fn wrap_array_of_vsan_object_profile_info(value: Vec<super::structs::VsanObjectProfileInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectProfileInfo(value)
}
fn wrap_array_of_vsan_host_vsan_object_sync_state(value: Vec<super::structs::VsanHostVsanObjectSyncState>) -> ValueElements {
    ValueElements::ArrayOfVsanHostVsanObjectSyncState(value)
}
fn wrap_array_of_vsan_host_runtime_info(value: Vec<super::structs::VsanHostRuntimeInfo>) -> ValueElements {
    ValueElements::ArrayOfVsanHostRuntimeInfo(value)
}
fn wrap_array_of_vsan_host_runtime_info_disk_issue(value: Vec<super::structs::VsanHostRuntimeInfoDiskIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanHostRuntimeInfoDiskIssue(value)
}
fn wrap_array_of_vim_vsan_host_vsan_scsi_disk(value: Vec<super::structs::VimVsanHostVsanScsiDisk>) -> ValueElements {
    ValueElements::ArrayOfVimVsanHostVsanScsiDisk(value)
}
fn wrap_array_of_vsan_host_vsan_object_sync_query_result(value: Vec<super::structs::VsanHostVsanObjectSyncQueryResult>) -> ValueElements {
    ValueElements::ArrayOfVsanHostVsanObjectSyncQueryResult(value)
}
fn wrap_array_of_vsan_syncing_object_recovery_details(value: Vec<super::structs::VsanSyncingObjectRecoveryDetails>) -> ValueElements {
    ValueElements::ArrayOfVsanSyncingObjectRecoveryDetails(value)
}
fn wrap_array_of_vsan_what_if_evac_detail(value: Vec<super::structs::VsanWhatIfEvacDetail>) -> ValueElements {
    ValueElements::ArrayOfVsanWhatIfEvacDetail(value)
}
fn wrap_array_of_vsan_what_if_evac_result(value: Vec<super::structs::VsanWhatIfEvacResult>) -> ValueElements {
    ValueElements::ArrayOfVsanWhatIfEvacResult(value)
}
fn wrap_array_of_vsan_host_wipe_disk_status(value: Vec<super::structs::VsanHostWipeDiskStatus>) -> ValueElements {
    ValueElements::ArrayOfVsanHostWipeDiskStatus(value)
}
fn wrap_array_of_vsan_broken_disk_chain_issue(value: Vec<super::structs::VsanBrokenDiskChainIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanBrokenDiskChainIssue(value)
}
fn wrap_array_of_vsan_disallow_data_movement_issue(value: Vec<super::structs::VsanDisallowDataMovementIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanDisallowDataMovementIssue(value)
}
fn wrap_array_of_vsan_disallow_evacuate_data_issue(value: Vec<super::structs::VsanDisallowEvacuateDataIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanDisallowEvacuateDataIssue(value)
}
fn wrap_array_of_vsan_disk_unhealth_issue(value: Vec<super::structs::VsanDiskUnhealthIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanDiskUnhealthIssue(value)
}
fn wrap_array_of_vsan_higher_objects_present_during_downgrade_issue(value: Vec<super::structs::VsanHigherObjectsPresentDuringDowngradeIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanHigherObjectsPresentDuringDowngradeIssue(value)
}
fn wrap_array_of_vsan_host_property_retrieve_issue(value: Vec<super::structs::VsanHostPropertyRetrieveIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanHostPropertyRetrieveIssue(value)
}
fn wrap_array_of_vsan_host_with_hybrid_diskgroup_issue(value: Vec<super::structs::VsanHostWithHybridDiskgroupIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanHostWithHybridDiskgroupIssue(value)
}
fn wrap_array_of_vsan_hosts_compression_only_not_supported(value: Vec<super::structs::VsanHostsCompressionOnlyNotSupported>) -> ValueElements {
    ValueElements::ArrayOfVsanHostsCompressionOnlyNotSupported(value)
}
fn wrap_array_of_vsan_mixed_esx_version_in_client_issue(value: Vec<super::structs::VsanMixedEsxVersionInClientIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanMixedEsxVersionInClientIssue(value)
}
fn wrap_array_of_vsan_mixed_esx_version_issue(value: Vec<super::structs::VsanMixedEsxVersionIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanMixedEsxVersionIssue(value)
}
fn wrap_array_of_vsan_object_inaccessible_issue(value: Vec<super::structs::VsanObjectInaccessibleIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectInaccessibleIssue(value)
}
fn wrap_array_of_vsan_object_policy_issue(value: Vec<super::structs::VsanObjectPolicyIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanObjectPolicyIssue(value)
}
fn wrap_array_of_vsan_remote_cluster_not_compatible(value: Vec<super::structs::VsanRemoteClusterNotCompatible>) -> ValueElements {
    ValueElements::ArrayOfVsanRemoteClusterNotCompatible(value)
}
fn wrap_array_of_vsan_unknown_scan_issue(value: Vec<super::structs::VsanUnknownScanIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUnknownScanIssue(value)
}
fn wrap_array_of_vsan_unsupported_high_disk_version_issue(value: Vec<super::structs::VsanUnsupportedHighDiskVersionIssue>) -> ValueElements {
    ValueElements::ArrayOfVsanUnsupportedHighDiskVersionIssue(value)
}
fn wrap_array_of_base_config_info_disk_file_backing_info(value: Vec<super::structs::BaseConfigInfoDiskFileBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfBaseConfigInfoDiskFileBackingInfo(value)
}
fn wrap_array_of_base_config_info_raw_disk_mapping_backing_info(value: Vec<super::structs::BaseConfigInfoRawDiskMappingBackingInfo>) -> ValueElements {
    ValueElements::ArrayOfBaseConfigInfoRawDiskMappingBackingInfo(value)
}
fn wrap_array_of_vslm_clone_spec(value: Vec<super::structs::VslmCloneSpec>) -> ValueElements {
    ValueElements::ArrayOfVslmCloneSpec(value)
}
fn wrap_array_of_vslm_create_spec(value: Vec<super::structs::VslmCreateSpec>) -> ValueElements {
    ValueElements::ArrayOfVslmCreateSpec(value)
}
fn wrap_array_of_vslm_create_spec_disk_file_backing_spec(value: Vec<super::structs::VslmCreateSpecDiskFileBackingSpec>) -> ValueElements {
    ValueElements::ArrayOfVslmCreateSpecDiskFileBackingSpec(value)
}
fn wrap_array_of_vslm_create_spec_raw_disk_mapping_backing_spec(value: Vec<super::structs::VslmCreateSpecRawDiskMappingBackingSpec>) -> ValueElements {
    ValueElements::ArrayOfVslmCreateSpecRawDiskMappingBackingSpec(value)
}
fn wrap_array_of_disk_crypto_spec(value: Vec<super::structs::DiskCryptoSpec>) -> ValueElements {
    ValueElements::ArrayOfDiskCryptoSpec(value)
}
fn wrap_array_of_id(value: Vec<super::structs::Id>) -> ValueElements {
    ValueElements::ArrayOfId(value)
}
fn wrap_array_ofvslm_infrastructure_object_policy(value: Vec<super::structs::VslmInfrastructureObjectPolicy>) -> ValueElements {
    ValueElements::ArrayOfvslmInfrastructureObjectPolicy(value)
}
fn wrap_array_ofvslm_infrastructure_object_policy_spec(value: Vec<super::structs::VslmInfrastructureObjectPolicySpec>) -> ValueElements {
    ValueElements::ArrayOfvslmInfrastructureObjectPolicySpec(value)
}
fn wrap_array_of_v_storage_object_reconcile_result(value: Vec<super::structs::VStorageObjectReconcileResult>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectReconcileResult(value)
}
fn wrap_array_of_v_storage_object_reconcile_result_invalid_disk_path(value: Vec<super::structs::VStorageObjectReconcileResultInvalidDiskPath>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectReconcileResultInvalidDiskPath(value)
}
fn wrap_array_of_v_storage_object_reconcile_result_reconcile_detail(value: Vec<super::structs::VStorageObjectReconcileResultReconcileDetail>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectReconcileResultReconcileDetail(value)
}
fn wrap_array_of_v_storage_object_reconcile_spec(value: Vec<super::structs::VStorageObjectReconcileSpec>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectReconcileSpec(value)
}
fn wrap_array_of_vslm_relocate_spec(value: Vec<super::structs::VslmRelocateSpec>) -> ValueElements {
    ValueElements::ArrayOfVslmRelocateSpec(value)
}
fn wrap_array_of_v_storage_object_state_info(value: Vec<super::structs::VStorageObjectStateInfo>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectStateInfo(value)
}
fn wrap_array_of_vslm_tag_entry(value: Vec<super::structs::VslmTagEntry>) -> ValueElements {
    ValueElements::ArrayOfVslmTagEntry(value)
}
fn wrap_array_ofvslm_v_clock_info(value: Vec<super::structs::VslmVClockInfo>) -> ValueElements {
    ValueElements::ArrayOfvslmVClockInfo(value)
}
fn wrap_array_of_v_storage_object(value: Vec<super::structs::VStorageObject>) -> ValueElements {
    ValueElements::ArrayOfVStorageObject(value)
}
fn wrap_array_of_v_storage_object_config_info(value: Vec<super::structs::VStorageObjectConfigInfo>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectConfigInfo(value)
}
fn wrap_array_of_v_storage_object_snapshot(value: Vec<super::structs::VStorageObjectSnapshot>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectSnapshot(value)
}
fn wrap_array_of_v_storage_object_snapshot_details(value: Vec<super::structs::VStorageObjectSnapshotDetails>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectSnapshotDetails(value)
}
fn wrap_array_of_v_storage_object_snapshot_info(value: Vec<super::structs::VStorageObjectSnapshotInfo>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectSnapshotInfo(value)
}
fn wrap_array_of_v_storage_object_snapshot_info_v_storage_object_snapshot(value: Vec<super::structs::VStorageObjectSnapshotInfoVStorageObjectSnapshot>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectSnapshotInfoVStorageObjectSnapshot(value)
}
fn wrap_array_of_retrieve_v_storage_obj_spec(value: Vec<super::structs::RetrieveVStorageObjSpec>) -> ValueElements {
    ValueElements::ArrayOfRetrieveVStorageObjSpec(value)
}
fn wrap_array_of_v_storage_object_associations(value: Vec<super::structs::VStorageObjectAssociations>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectAssociations(value)
}
fn wrap_array_of_v_storage_object_associations_vm_disk_associations(value: Vec<super::structs::VStorageObjectAssociationsVmDiskAssociations>) -> ValueElements {
    ValueElements::ArrayOfVStorageObjectAssociationsVmDiskAssociations(value)
}
fn wrap_array_of_dynamic_array(value: Vec<super::structs::DynamicArray>) -> ValueElements {
    ValueElements::ArrayOfDynamicArray(value)
}
fn wrap_array_of_dynamic_property(value: Vec<super::structs::DynamicProperty>) -> ValueElements {
    ValueElements::ArrayOfDynamicProperty(value)
}
fn wrap_array_of_key_any_value(value: Vec<super::structs::KeyAnyValue>) -> ValueElements {
    ValueElements::ArrayOfKeyAnyValue(value)
}
fn wrap_array_of_localizable_message(value: Vec<super::structs::LocalizableMessage>) -> ValueElements {
    ValueElements::ArrayOfLocalizableMessage(value)
}
fn wrap_array_of_localized_method_fault(value: Vec<super::structs::LocalizedMethodFault>) -> ValueElements {
    ValueElements::ArrayOfLocalizedMethodFault(value)
}
fn wrap_array_of_method_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMethodFault(value)
}
fn wrap_array_of_runtime_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRuntimeFault(value)
}
fn wrap_array_of_host_communication(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostCommunication(value)
}
fn wrap_array_of_host_not_connected(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostNotConnected(value)
}
fn wrap_array_of_host_not_reachable(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfHostNotReachable(value)
}
fn wrap_array_of_invalid_argument(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidArgument(value)
}
fn wrap_array_of_invalid_request(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidRequest(value)
}
fn wrap_array_of_invalid_type(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidType(value)
}
fn wrap_array_of_managed_object_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfManagedObjectNotFound(value)
}
fn wrap_array_of_method_not_found(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfMethodNotFound(value)
}
fn wrap_array_of_not_enough_licenses(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotEnoughLicenses(value)
}
fn wrap_array_of_not_implemented(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotImplemented(value)
}
fn wrap_array_of_not_supported(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfNotSupported(value)
}
fn wrap_array_of_request_canceled(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfRequestCanceled(value)
}
fn wrap_array_of_security_error(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSecurityError(value)
}
fn wrap_array_of_system_error(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfSystemError(value)
}
fn wrap_array_of_unexpected_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfUnexpectedFault(value)
}
fn wrap_array_of_invalid_collector_version(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidCollectorVersion(value)
}
fn wrap_array_of_invalid_property(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfInvalidProperty(value)
}
fn wrap_array_of_property_change(value: Vec<super::structs::PropertyChange>) -> ValueElements {
    ValueElements::ArrayOfPropertyChange(value)
}
fn wrap_array_of_property_filter_spec(value: Vec<super::structs::PropertyFilterSpec>) -> ValueElements {
    ValueElements::ArrayOfPropertyFilterSpec(value)
}
fn wrap_array_of_property_filter_update(value: Vec<super::structs::PropertyFilterUpdate>) -> ValueElements {
    ValueElements::ArrayOfPropertyFilterUpdate(value)
}
fn wrap_array_of_missing_object(value: Vec<super::structs::MissingObject>) -> ValueElements {
    ValueElements::ArrayOfMissingObject(value)
}
fn wrap_array_of_missing_property(value: Vec<super::structs::MissingProperty>) -> ValueElements {
    ValueElements::ArrayOfMissingProperty(value)
}
fn wrap_array_of_object_content(value: Vec<super::structs::ObjectContent>) -> ValueElements {
    ValueElements::ArrayOfObjectContent(value)
}
fn wrap_array_of_object_spec(value: Vec<super::structs::ObjectSpec>) -> ValueElements {
    ValueElements::ArrayOfObjectSpec(value)
}
fn wrap_array_of_object_update(value: Vec<super::structs::ObjectUpdate>) -> ValueElements {
    ValueElements::ArrayOfObjectUpdate(value)
}
fn wrap_array_of_property_spec(value: Vec<super::structs::PropertySpec>) -> ValueElements {
    ValueElements::ArrayOfPropertySpec(value)
}
fn wrap_array_of_retrieve_options(value: Vec<super::structs::RetrieveOptions>) -> ValueElements {
    ValueElements::ArrayOfRetrieveOptions(value)
}
fn wrap_array_of_retrieve_result(value: Vec<super::structs::RetrieveResult>) -> ValueElements {
    ValueElements::ArrayOfRetrieveResult(value)
}
fn wrap_array_of_traversal_spec(value: Vec<super::structs::TraversalSpec>) -> ValueElements {
    ValueElements::ArrayOfTraversalSpec(value)
}
fn wrap_array_of_update_set(value: Vec<super::structs::UpdateSet>) -> ValueElements {
    ValueElements::ArrayOfUpdateSet(value)
}
fn wrap_array_of_wait_options(value: Vec<super::structs::WaitOptions>) -> ValueElements {
    ValueElements::ArrayOfWaitOptions(value)
}
fn wrap_array_of_vslm_about_info(value: Vec<super::structs::VslmAboutInfo>) -> ValueElements {
    ValueElements::ArrayOfVslmAboutInfo(value)
}
fn wrap_array_of_vslm_query_datastore_info_result(value: Vec<super::structs::VslmQueryDatastoreInfoResult>) -> ValueElements {
    ValueElements::ArrayOfVslmQueryDatastoreInfoResult(value)
}
fn wrap_array_of_vslm_service_instance_content(value: Vec<super::structs::VslmServiceInstanceContent>) -> ValueElements {
    ValueElements::ArrayOfVslmServiceInstanceContent(value)
}
fn wrap_array_of_vslm_task_info(value: Vec<super::structs::VslmTaskInfo>) -> ValueElements {
    ValueElements::ArrayOfVslmTaskInfo(value)
}
fn wrap_array_of_vslm_task_reason_alarm(value: Vec<super::structs::VslmTaskReasonAlarm>) -> ValueElements {
    ValueElements::ArrayOfVslmTaskReasonAlarm(value)
}
fn wrap_array_of_vslm_task_reason_schedule(value: Vec<super::structs::VslmTaskReasonSchedule>) -> ValueElements {
    ValueElements::ArrayOfVslmTaskReasonSchedule(value)
}
fn wrap_array_of_vslm_task_reason_system(value: Vec<super::structs::VslmTaskReasonSystem>) -> ValueElements {
    ValueElements::ArrayOfVslmTaskReasonSystem(value)
}
fn wrap_array_of_vslm_task_reason_user(value: Vec<super::structs::VslmTaskReasonUser>) -> ValueElements {
    ValueElements::ArrayOfVslmTaskReasonUser(value)
}
fn wrap_array_of_vslm_sync_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVslmSyncFault(value)
}
fn wrap_array_of_vslm_fault(value: Vec<super::structs::MethodFault>) -> ValueElements {
    ValueElements::ArrayOfVslmFault(value)
}
fn wrap_array_of_vslm_datastore_sync_status(value: Vec<super::structs::VslmDatastoreSyncStatus>) -> ValueElements {
    ValueElements::ArrayOfVslmDatastoreSyncStatus(value)
}
fn wrap_array_of_vslm_vso_v_storage_object_associations(value: Vec<super::structs::VslmVsoVStorageObjectAssociations>) -> ValueElements {
    ValueElements::ArrayOfVslmVsoVStorageObjectAssociations(value)
}
fn wrap_array_of_vslm_vso_v_storage_object_associations_vm_disk_association(value: Vec<super::structs::VslmVsoVStorageObjectAssociationsVmDiskAssociation>) -> ValueElements {
    ValueElements::ArrayOfVslmVsoVStorageObjectAssociationsVmDiskAssociation(value)
}
fn wrap_array_of_vslm_vso_v_storage_object_query_result(value: Vec<super::structs::VslmVsoVStorageObjectQueryResult>) -> ValueElements {
    ValueElements::ArrayOfVslmVsoVStorageObjectQueryResult(value)
}
fn wrap_array_of_vslm_vso_v_storage_object_query_spec(value: Vec<super::structs::VslmVsoVStorageObjectQuerySpec>) -> ValueElements {
    ValueElements::ArrayOfVslmVsoVStorageObjectQuerySpec(value)
}
fn wrap_array_of_vslm_vso_v_storage_object_result(value: Vec<super::structs::VslmVsoVStorageObjectResult>) -> ValueElements {
    ValueElements::ArrayOfVslmVsoVStorageObjectResult(value)
}
fn wrap_array_of_vslm_vso_v_storage_object_snapshot_result(value: Vec<super::structs::VslmVsoVStorageObjectSnapshotResult>) -> ValueElements {
    ValueElements::ArrayOfVslmVsoVStorageObjectSnapshotResult(value)
}
fn wrap_entity_reference_entity_type(value: super::enums::EntityReferenceEntityTypeEnum) -> ValueElements {
    ValueElements::EntityReferenceEntityType(value)
}
fn wrap_array_of_entity_reference_entity_type(value: Vec<super::enums::EntityReferenceEntityTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfEntityReferenceEntityType(value)
}
fn wrap_compute_resource_host_spbm_license_info_host_spbm_license_state(value: super::enums::ComputeResourceHostSpbmLicenseInfoHostSpbmLicenseStateEnum) -> ValueElements {
    ValueElements::ComputeResourceHostSpbmLicenseInfoHostSpbmLicenseState(value)
}
fn wrap_array_of_compute_resource_host_spbm_license_info_host_spbm_license_state(value: Vec<super::enums::ComputeResourceHostSpbmLicenseInfoHostSpbmLicenseStateEnum>) -> ValueElements {
    ValueElements::ArrayOfComputeResourceHostSpbmLicenseInfoHostSpbmLicenseState(value)
}
fn wrap_datastore_accessible(value: super::enums::DatastoreAccessibleEnum) -> ValueElements {
    ValueElements::DatastoreAccessible(value)
}
fn wrap_array_of_datastore_accessible(value: Vec<super::enums::DatastoreAccessibleEnum>) -> ValueElements {
    ValueElements::ArrayOfDatastoreAccessible(value)
}
fn wrap_drs_injector_workload_correlation_state(value: super::enums::DrsInjectorWorkloadCorrelationStateEnum) -> ValueElements {
    ValueElements::DrsInjectorWorkloadCorrelationState(value)
}
fn wrap_array_of_drs_injector_workload_correlation_state(value: Vec<super::enums::DrsInjectorWorkloadCorrelationStateEnum>) -> ValueElements {
    ValueElements::ArrayOfDrsInjectorWorkloadCorrelationState(value)
}
fn wrap_host_system_connection_state(value: super::enums::HostSystemConnectionStateEnum) -> ValueElements {
    ValueElements::HostSystemConnectionState(value)
}
fn wrap_array_of_host_system_connection_state(value: Vec<super::enums::HostSystemConnectionStateEnum>) -> ValueElements {
    ValueElements::ArrayOfHostSystemConnectionState(value)
}
fn wrap_host_system_power_state(value: super::enums::HostSystemPowerStateEnum) -> ValueElements {
    ValueElements::HostSystemPowerState(value)
}
fn wrap_array_of_host_system_power_state(value: Vec<super::enums::HostSystemPowerStateEnum>) -> ValueElements {
    ValueElements::ArrayOfHostSystemPowerState(value)
}
fn wrap_http_nfc_lease_state(value: super::enums::HttpNfcLeaseStateEnum) -> ValueElements {
    ValueElements::HttpNfcLeaseState(value)
}
fn wrap_array_of_http_nfc_lease_state(value: Vec<super::enums::HttpNfcLeaseStateEnum>) -> ValueElements {
    ValueElements::ArrayOfHttpNfcLeaseState(value)
}
fn wrap_latency_sensitivity_sensitivity_level(value: super::enums::LatencySensitivitySensitivityLevelEnum) -> ValueElements {
    ValueElements::LatencySensitivitySensitivityLevel(value)
}
fn wrap_array_of_latency_sensitivity_sensitivity_level(value: Vec<super::enums::LatencySensitivitySensitivityLevelEnum>) -> ValueElements {
    ValueElements::ArrayOfLatencySensitivitySensitivityLevel(value)
}
fn wrap_license_feature_info_state(value: super::enums::LicenseFeatureInfoStateEnum) -> ValueElements {
    ValueElements::LicenseFeatureInfoState(value)
}
fn wrap_array_of_license_feature_info_state(value: Vec<super::enums::LicenseFeatureInfoStateEnum>) -> ValueElements {
    ValueElements::ArrayOfLicenseFeatureInfoState(value)
}
fn wrap_host_licensable_resource_key(value: super::enums::HostLicensableResourceKeyEnum) -> ValueElements {
    ValueElements::HostLicensableResourceKey(value)
}
fn wrap_array_of_host_licensable_resource_key(value: Vec<super::enums::HostLicensableResourceKeyEnum>) -> ValueElements {
    ValueElements::ArrayOfHostLicensableResourceKey(value)
}
fn wrap_license_manager_state(value: super::enums::LicenseManagerStateEnum) -> ValueElements {
    ValueElements::LicenseManagerState(value)
}
fn wrap_array_of_license_manager_state(value: Vec<super::enums::LicenseManagerStateEnum>) -> ValueElements {
    ValueElements::ArrayOfLicenseManagerState(value)
}
fn wrap_license_reservation_info_state(value: super::enums::LicenseReservationInfoStateEnum) -> ValueElements {
    ValueElements::LicenseReservationInfoState(value)
}
fn wrap_array_of_license_reservation_info_state(value: Vec<super::enums::LicenseReservationInfoStateEnum>) -> ValueElements {
    ValueElements::ArrayOfLicenseReservationInfoState(value)
}
fn wrap_managed_entity_status(value: super::enums::ManagedEntityStatusEnum) -> ValueElements {
    ValueElements::ManagedEntityStatus(value)
}
fn wrap_array_of_managed_entity_status(value: Vec<super::enums::ManagedEntityStatusEnum>) -> ValueElements {
    ValueElements::ArrayOfManagedEntityStatus(value)
}
fn wrap_perf_summary_type(value: super::enums::PerfSummaryTypeEnum) -> ValueElements {
    ValueElements::PerfSummaryType(value)
}
fn wrap_array_of_perf_summary_type(value: Vec<super::enums::PerfSummaryTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfPerfSummaryType(value)
}
fn wrap_perf_stats_type(value: super::enums::PerfStatsTypeEnum) -> ValueElements {
    ValueElements::PerfStatsType(value)
}
fn wrap_array_of_perf_stats_type(value: Vec<super::enums::PerfStatsTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfPerfStatsType(value)
}
fn wrap_shares_level(value: super::enums::SharesLevelEnum) -> ValueElements {
    ValueElements::SharesLevel(value)
}
fn wrap_array_of_shares_level(value: Vec<super::enums::SharesLevelEnum>) -> ValueElements {
    ValueElements::ArrayOfSharesLevel(value)
}
fn wrap_simple_command_encoding(value: super::enums::SimpleCommandEncodingEnum) -> ValueElements {
    ValueElements::SimpleCommandEncoding(value)
}
fn wrap_array_of_simple_command_encoding(value: Vec<super::enums::SimpleCommandEncodingEnum>) -> ValueElements {
    ValueElements::ArrayOfSimpleCommandEncoding(value)
}
fn wrap_task_filter_spec_recursion_option(value: super::enums::TaskFilterSpecRecursionOptionEnum) -> ValueElements {
    ValueElements::TaskFilterSpecRecursionOption(value)
}
fn wrap_array_of_task_filter_spec_recursion_option(value: Vec<super::enums::TaskFilterSpecRecursionOptionEnum>) -> ValueElements {
    ValueElements::ArrayOfTaskFilterSpecRecursionOption(value)
}
fn wrap_task_filter_spec_time_option(value: super::enums::TaskFilterSpecTimeOptionEnum) -> ValueElements {
    ValueElements::TaskFilterSpecTimeOption(value)
}
fn wrap_array_of_task_filter_spec_time_option(value: Vec<super::enums::TaskFilterSpecTimeOptionEnum>) -> ValueElements {
    ValueElements::ArrayOfTaskFilterSpecTimeOption(value)
}
fn wrap_task_info_state(value: super::enums::TaskInfoStateEnum) -> ValueElements {
    ValueElements::TaskInfoState(value)
}
fn wrap_array_of_task_info_state(value: Vec<super::enums::TaskInfoStateEnum>) -> ValueElements {
    ValueElements::ArrayOfTaskInfoState(value)
}
fn wrap_virtual_app_v_app_state(value: super::enums::VirtualAppVAppStateEnum) -> ValueElements {
    ValueElements::VirtualAppVAppState(value)
}
fn wrap_array_of_virtual_app_v_app_state(value: Vec<super::enums::VirtualAppVAppStateEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualAppVAppState(value)
}
fn wrap_virtual_machine_connection_state(value: super::enums::VirtualMachineConnectionStateEnum) -> ValueElements {
    ValueElements::VirtualMachineConnectionState(value)
}
fn wrap_array_of_virtual_machine_connection_state(value: Vec<super::enums::VirtualMachineConnectionStateEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineConnectionState(value)
}
fn wrap_virtual_machine_fault_tolerance_state(value: super::enums::VirtualMachineFaultToleranceStateEnum) -> ValueElements {
    ValueElements::VirtualMachineFaultToleranceState(value)
}
fn wrap_array_of_virtual_machine_fault_tolerance_state(value: Vec<super::enums::VirtualMachineFaultToleranceStateEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineFaultToleranceState(value)
}
fn wrap_virtual_machine_move_priority(value: super::enums::VirtualMachineMovePriorityEnum) -> ValueElements {
    ValueElements::VirtualMachineMovePriority(value)
}
fn wrap_array_of_virtual_machine_move_priority(value: Vec<super::enums::VirtualMachineMovePriorityEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMovePriority(value)
}
fn wrap_virtual_machine_power_state(value: super::enums::VirtualMachinePowerStateEnum) -> ValueElements {
    ValueElements::VirtualMachinePowerState(value)
}
fn wrap_array_of_virtual_machine_power_state(value: Vec<super::enums::VirtualMachinePowerStateEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachinePowerState(value)
}
fn wrap_virtual_machine_record_replay_state(value: super::enums::VirtualMachineRecordReplayStateEnum) -> ValueElements {
    ValueElements::VirtualMachineRecordReplayState(value)
}
fn wrap_array_of_virtual_machine_record_replay_state(value: Vec<super::enums::VirtualMachineRecordReplayStateEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineRecordReplayState(value)
}
fn wrap_vsan_upgrade_system_upgrade_history_disk_group_op_type(value: super::enums::VsanUpgradeSystemUpgradeHistoryDiskGroupOpTypeEnum) -> ValueElements {
    ValueElements::VsanUpgradeSystemUpgradeHistoryDiskGroupOpType(value)
}
fn wrap_array_of_vsan_upgrade_system_upgrade_history_disk_group_op_type(value: Vec<super::enums::VsanUpgradeSystemUpgradeHistoryDiskGroupOpTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfVsanUpgradeSystemUpgradeHistoryDiskGroupOpType(value)
}
fn wrap_metric_alarm_operator(value: super::enums::MetricAlarmOperatorEnum) -> ValueElements {
    ValueElements::MetricAlarmOperator(value)
}
fn wrap_array_of_metric_alarm_operator(value: Vec<super::enums::MetricAlarmOperatorEnum>) -> ValueElements {
    ValueElements::ArrayOfMetricAlarmOperator(value)
}
fn wrap_state_alarm_operator(value: super::enums::StateAlarmOperatorEnum) -> ValueElements {
    ValueElements::StateAlarmOperator(value)
}
fn wrap_array_of_state_alarm_operator(value: Vec<super::enums::StateAlarmOperatorEnum>) -> ValueElements {
    ValueElements::ArrayOfStateAlarmOperator(value)
}
fn wrap_das_vm_priority(value: super::enums::DasVmPriorityEnum) -> ValueElements {
    ValueElements::DasVmPriority(value)
}
fn wrap_array_of_das_vm_priority(value: Vec<super::enums::DasVmPriorityEnum>) -> ValueElements {
    ValueElements::ArrayOfDasVmPriority(value)
}
fn wrap_dpm_behavior(value: super::enums::DpmBehaviorEnum) -> ValueElements {
    ValueElements::DpmBehavior(value)
}
fn wrap_array_of_dpm_behavior(value: Vec<super::enums::DpmBehaviorEnum>) -> ValueElements {
    ValueElements::ArrayOfDpmBehavior(value)
}
fn wrap_drs_behavior(value: super::enums::DrsBehaviorEnum) -> ValueElements {
    ValueElements::DrsBehavior(value)
}
fn wrap_array_of_drs_behavior(value: Vec<super::enums::DrsBehaviorEnum>) -> ValueElements {
    ValueElements::ArrayOfDrsBehavior(value)
}
fn wrap_host_power_operation_type(value: super::enums::HostPowerOperationTypeEnum) -> ValueElements {
    ValueElements::HostPowerOperationType(value)
}
fn wrap_array_of_host_power_operation_type(value: Vec<super::enums::HostPowerOperationTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfHostPowerOperationType(value)
}
fn wrap_event_filter_spec_recursion_option(value: super::enums::EventFilterSpecRecursionOptionEnum) -> ValueElements {
    ValueElements::EventFilterSpecRecursionOption(value)
}
fn wrap_array_of_event_filter_spec_recursion_option(value: Vec<super::enums::EventFilterSpecRecursionOptionEnum>) -> ValueElements {
    ValueElements::ArrayOfEventFilterSpecRecursionOption(value)
}
fn wrap_ft_issues_on_host_host_selection_type(value: super::enums::FtIssuesOnHostHostSelectionTypeEnum) -> ValueElements {
    ValueElements::FtIssuesOnHostHostSelectionType(value)
}
fn wrap_array_of_ft_issues_on_host_host_selection_type(value: Vec<super::enums::FtIssuesOnHostHostSelectionTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfFtIssuesOnHostHostSelectionType(value)
}
fn wrap_auto_start_wait_heartbeat_setting(value: super::enums::AutoStartWaitHeartbeatSettingEnum) -> ValueElements {
    ValueElements::AutoStartWaitHeartbeatSetting(value)
}
fn wrap_array_of_auto_start_wait_heartbeat_setting(value: Vec<super::enums::AutoStartWaitHeartbeatSettingEnum>) -> ValueElements {
    ValueElements::ArrayOfAutoStartWaitHeartbeatSetting(value)
}
fn wrap_fibre_channel_port_type(value: super::enums::FibreChannelPortTypeEnum) -> ValueElements {
    ValueElements::FibreChannelPortType(value)
}
fn wrap_array_of_fibre_channel_port_type(value: Vec<super::enums::FibreChannelPortTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfFibreChannelPortType(value)
}
fn wrap_host_access_mode(value: super::enums::HostAccessModeEnum) -> ValueElements {
    ValueElements::HostAccessMode(value)
}
fn wrap_array_of_host_access_mode(value: Vec<super::enums::HostAccessModeEnum>) -> ValueElements {
    ValueElements::ArrayOfHostAccessMode(value)
}
fn wrap_host_lockdown_mode(value: super::enums::HostLockdownModeEnum) -> ValueElements {
    ValueElements::HostLockdownMode(value)
}
fn wrap_array_of_host_lockdown_mode(value: Vec<super::enums::HostLockdownModeEnum>) -> ValueElements {
    ValueElements::ArrayOfHostLockdownMode(value)
}
fn wrap_host_internet_scsi_hba_iscsi_ipv_6_address_address_configuration_type(value: super::enums::HostInternetScsiHbaIscsiIpv6AddressAddressConfigurationTypeEnum) -> ValueElements {
    ValueElements::HostInternetScsiHbaIscsiIpv6AddressAddressConfigurationType(value)
}
fn wrap_array_of_host_internet_scsi_hba_iscsi_ipv_6_address_address_configuration_type(value: Vec<super::enums::HostInternetScsiHbaIscsiIpv6AddressAddressConfigurationTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaIscsiIpv6AddressAddressConfigurationType(value)
}
fn wrap_host_internet_scsi_hba_iscsi_ipv_6_address_i_pv_6_address_operation(value: super::enums::HostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperationEnum) -> ValueElements {
    ValueElements::HostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperation(value)
}
fn wrap_array_of_host_internet_scsi_hba_iscsi_ipv_6_address_i_pv_6_address_operation(value: Vec<super::enums::HostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperationEnum>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperation(value)
}
fn wrap_host_internet_scsi_hba_network_binding_support_type(value: super::enums::HostInternetScsiHbaNetworkBindingSupportTypeEnum) -> ValueElements {
    ValueElements::HostInternetScsiHbaNetworkBindingSupportType(value)
}
fn wrap_array_of_host_internet_scsi_hba_network_binding_support_type(value: Vec<super::enums::HostInternetScsiHbaNetworkBindingSupportTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfHostInternetScsiHbaNetworkBindingSupportType(value)
}
fn wrap_host_firewall_rule_direction(value: super::enums::HostFirewallRuleDirectionEnum) -> ValueElements {
    ValueElements::HostFirewallRuleDirection(value)
}
fn wrap_array_of_host_firewall_rule_direction(value: Vec<super::enums::HostFirewallRuleDirectionEnum>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallRuleDirection(value)
}
fn wrap_host_firewall_rule_port_type(value: super::enums::HostFirewallRulePortTypeEnum) -> ValueElements {
    ValueElements::HostFirewallRulePortType(value)
}
fn wrap_array_of_host_firewall_rule_port_type(value: Vec<super::enums::HostFirewallRulePortTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfHostFirewallRulePortType(value)
}
fn wrap_host_snmp_agent_capability(value: super::enums::HostSnmpAgentCapabilityEnum) -> ValueElements {
    ValueElements::HostSnmpAgentCapability(value)
}
fn wrap_array_of_host_snmp_agent_capability(value: Vec<super::enums::HostSnmpAgentCapabilityEnum>) -> ValueElements {
    ValueElements::ArrayOfHostSnmpAgentCapability(value)
}
fn wrap_host_tpm_attestation_info_acceptance_status(value: super::enums::HostTpmAttestationInfoAcceptanceStatusEnum) -> ValueElements {
    ValueElements::HostTpmAttestationInfoAcceptanceStatus(value)
}
fn wrap_array_of_host_tpm_attestation_info_acceptance_status(value: Vec<super::enums::HostTpmAttestationInfoAcceptanceStatusEnum>) -> ValueElements {
    ValueElements::ArrayOfHostTpmAttestationInfoAcceptanceStatus(value)
}
fn wrap_array_update_operation(value: super::enums::ArrayUpdateOperationEnum) -> ValueElements {
    ValueElements::ArrayUpdateOperation(value)
}
fn wrap_array_of_array_update_operation(value: Vec<super::enums::ArrayUpdateOperationEnum>) -> ValueElements {
    ValueElements::ArrayOfArrayUpdateOperation(value)
}
fn wrap_profile_numeric_comparator(value: super::enums::ProfileNumericComparatorEnum) -> ValueElements {
    ValueElements::ProfileNumericComparator(value)
}
fn wrap_array_of_profile_numeric_comparator(value: Vec<super::enums::ProfileNumericComparatorEnum>) -> ValueElements {
    ValueElements::ArrayOfProfileNumericComparator(value)
}
fn wrap_day_of_week(value: super::enums::DayOfWeekEnum) -> ValueElements {
    ValueElements::DayOfWeek(value)
}
fn wrap_array_of_day_of_week(value: Vec<super::enums::DayOfWeekEnum>) -> ValueElements {
    ValueElements::ArrayOfDayOfWeek(value)
}
fn wrap_week_of_month(value: super::enums::WeekOfMonthEnum) -> ValueElements {
    ValueElements::WeekOfMonth(value)
}
fn wrap_array_of_week_of_month(value: Vec<super::enums::WeekOfMonthEnum>) -> ValueElements {
    ValueElements::ArrayOfWeekOfMonth(value)
}
fn wrap_virtual_machine_clone_spec_tpm_provision_policy(value: super::enums::VirtualMachineCloneSpecTpmProvisionPolicyEnum) -> ValueElements {
    ValueElements::VirtualMachineCloneSpecTpmProvisionPolicy(value)
}
fn wrap_array_of_virtual_machine_clone_spec_tpm_provision_policy(value: Vec<super::enums::VirtualMachineCloneSpecTpmProvisionPolicyEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineCloneSpecTpmProvisionPolicy(value)
}
fn wrap_virtual_machine_config_info_npiv_wwn_type(value: super::enums::VirtualMachineConfigInfoNpivWwnTypeEnum) -> ValueElements {
    ValueElements::VirtualMachineConfigInfoNpivWwnType(value)
}
fn wrap_array_of_virtual_machine_config_info_npiv_wwn_type(value: Vec<super::enums::VirtualMachineConfigInfoNpivWwnTypeEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineConfigInfoNpivWwnType(value)
}
fn wrap_virtual_machine_tools_status(value: super::enums::VirtualMachineToolsStatusEnum) -> ValueElements {
    ValueElements::VirtualMachineToolsStatus(value)
}
fn wrap_array_of_virtual_machine_tools_status(value: Vec<super::enums::VirtualMachineToolsStatusEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineToolsStatus(value)
}
fn wrap_guest_quiesce_end_guest_quiesce_error(value: super::enums::GuestQuiesceEndGuestQuiesceErrorEnum) -> ValueElements {
    ValueElements::GuestQuiesceEndGuestQuiesceError(value)
}
fn wrap_array_of_guest_quiesce_end_guest_quiesce_error(value: Vec<super::enums::GuestQuiesceEndGuestQuiesceErrorEnum>) -> ValueElements {
    ValueElements::ArrayOfGuestQuiesceEndGuestQuiesceError(value)
}
fn wrap_virtual_machine_metadata_manager_vm_metadata_op(value: super::enums::VirtualMachineMetadataManagerVmMetadataOpEnum) -> ValueElements {
    ValueElements::VirtualMachineMetadataManagerVmMetadataOp(value)
}
fn wrap_array_of_virtual_machine_metadata_manager_vm_metadata_op(value: Vec<super::enums::VirtualMachineMetadataManagerVmMetadataOpEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineMetadataManagerVmMetadataOp(value)
}
fn wrap_virtual_machine_relocate_transformation(value: super::enums::VirtualMachineRelocateTransformationEnum) -> ValueElements {
    ValueElements::VirtualMachineRelocateTransformation(value)
}
fn wrap_array_of_virtual_machine_relocate_transformation(value: Vec<super::enums::VirtualMachineRelocateTransformationEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualMachineRelocateTransformation(value)
}
fn wrap_customization_net_bios_mode(value: super::enums::CustomizationNetBiosModeEnum) -> ValueElements {
    ValueElements::CustomizationNetBiosMode(value)
}
fn wrap_array_of_customization_net_bios_mode(value: Vec<super::enums::CustomizationNetBiosModeEnum>) -> ValueElements {
    ValueElements::ArrayOfCustomizationNetBiosMode(value)
}
fn wrap_customization_license_data_mode(value: super::enums::CustomizationLicenseDataModeEnum) -> ValueElements {
    ValueElements::CustomizationLicenseDataMode(value)
}
fn wrap_array_of_customization_license_data_mode(value: Vec<super::enums::CustomizationLicenseDataModeEnum>) -> ValueElements {
    ValueElements::ArrayOfCustomizationLicenseDataMode(value)
}
fn wrap_customization_sysprep_reboot_option(value: super::enums::CustomizationSysprepRebootOptionEnum) -> ValueElements {
    ValueElements::CustomizationSysprepRebootOption(value)
}
fn wrap_array_of_customization_sysprep_reboot_option(value: Vec<super::enums::CustomizationSysprepRebootOptionEnum>) -> ValueElements {
    ValueElements::ArrayOfCustomizationSysprepRebootOption(value)
}
fn wrap_virtual_device_config_spec_file_operation(value: super::enums::VirtualDeviceConfigSpecFileOperationEnum) -> ValueElements {
    ValueElements::VirtualDeviceConfigSpecFileOperation(value)
}
fn wrap_array_of_virtual_device_config_spec_file_operation(value: Vec<super::enums::VirtualDeviceConfigSpecFileOperationEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualDeviceConfigSpecFileOperation(value)
}
fn wrap_virtual_device_config_spec_operation(value: super::enums::VirtualDeviceConfigSpecOperationEnum) -> ValueElements {
    ValueElements::VirtualDeviceConfigSpecOperation(value)
}
fn wrap_array_of_virtual_device_config_spec_operation(value: Vec<super::enums::VirtualDeviceConfigSpecOperationEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualDeviceConfigSpecOperation(value)
}
fn wrap_virtual_scsi_sharing(value: super::enums::VirtualScsiSharingEnum) -> ValueElements {
    ValueElements::VirtualScsiSharing(value)
}
fn wrap_array_of_virtual_scsi_sharing(value: Vec<super::enums::VirtualScsiSharingEnum>) -> ValueElements {
    ValueElements::ArrayOfVirtualScsiSharing(value)
}
fn wrap_vsan_host_disk_result_state(value: super::enums::VsanHostDiskResultStateEnum) -> ValueElements {
    ValueElements::VsanHostDiskResultState(value)
}
fn wrap_array_of_vsan_host_disk_result_state(value: Vec<super::enums::VsanHostDiskResultStateEnum>) -> ValueElements {
    ValueElements::ArrayOfVsanHostDiskResultState(value)
}
fn wrap_vsan_host_health_state(value: super::enums::VsanHostHealthStateEnum) -> ValueElements {
    ValueElements::VsanHostHealthState(value)
}
fn wrap_array_of_vsan_host_health_state(value: Vec<super::enums::VsanHostHealthStateEnum>) -> ValueElements {
    ValueElements::ArrayOfVsanHostHealthState(value)
}
fn wrap_vsan_host_node_state(value: super::enums::VsanHostNodeStateEnum) -> ValueElements {
    ValueElements::VsanHostNodeState(value)
}
fn wrap_array_of_vsan_host_node_state(value: Vec<super::enums::VsanHostNodeStateEnum>) -> ValueElements {
    ValueElements::ArrayOfVsanHostNodeState(value)
}
fn wrap_property_change_op(value: super::enums::PropertyChangeOpEnum) -> ValueElements {
    ValueElements::PropertyChangeOp(value)
}
fn wrap_array_of_property_change_op(value: Vec<super::enums::PropertyChangeOpEnum>) -> ValueElements {
    ValueElements::ArrayOfPropertyChangeOp(value)
}
fn wrap_object_update_kind(value: super::enums::ObjectUpdateKindEnum) -> ValueElements {
    ValueElements::ObjectUpdateKind(value)
}
fn wrap_array_of_object_update_kind(value: Vec<super::enums::ObjectUpdateKindEnum>) -> ValueElements {
    ValueElements::ArrayOfObjectUpdateKind(value)
}
fn wrap_vslm_task_info_state(value: super::enums::VslmTaskInfoStateEnum) -> ValueElements {
    ValueElements::VslmTaskInfoState(value)
}
fn wrap_array_of_vslm_task_info_state(value: Vec<super::enums::VslmTaskInfoStateEnum>) -> ValueElements {
    ValueElements::ArrayOfVslmTaskInfoState(value)
}
fn wrap_vslm_event_vslm_event_info_state(value: super::enums::VslmEventVslmEventInfoStateEnum) -> ValueElements {
    ValueElements::VslmEventVslmEventInfoState(value)
}
fn wrap_array_of_vslm_event_vslm_event_info_state(value: Vec<super::enums::VslmEventVslmEventInfoStateEnum>) -> ValueElements {
    ValueElements::ArrayOfVslmEventVslmEventInfoState(value)
}

// Polymorphic array cast functions
fn cast_to_agency_scope_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::AgencyScopeTrait>(h, ValueElements::ArrayOfAgencyScope)
}
fn cast_to_agent_ssl_trust_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::AgentSslTrustTrait>(h, ValueElements::ArrayOfAgentSslTrust)
}
fn cast_to_agent_storage_policy_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::AgentStoragePolicyTrait>(h, ValueElements::ArrayOfAgentStoragePolicy)
}
fn cast_to_eam_object_runtime_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::EamObjectRuntimeInfoTrait>(h, ValueElements::ArrayOfEamObjectRuntimeInfo)
}
fn cast_to_agency_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::AgencyIssueTrait>(h, ValueElements::ArrayOfAgencyIssue)
}
fn cast_to_agent_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::AgentIssueTrait>(h, ValueElements::ArrayOfAgentIssue)
}
fn cast_to_host_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostIssueTrait>(h, ValueElements::ArrayOfHostIssue)
}
fn cast_to_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::IssueTrait>(h, ValueElements::ArrayOfIssue)
}
fn cast_to_no_agent_vm_datastore_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::NoAgentVmDatastoreTrait>(h, ValueElements::ArrayOfNoAgentVmDatastore)
}
fn cast_to_no_agent_vm_network_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::NoAgentVmNetworkTrait>(h, ValueElements::ArrayOfNoAgentVmNetwork)
}
fn cast_to_vib_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VibIssueTrait>(h, ValueElements::ArrayOfVibIssue)
}
fn cast_to_vib_not_installed_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VibNotInstalledTrait>(h, ValueElements::ArrayOfVibNotInstalled)
}
fn cast_to_vm_deployed_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmDeployedTrait>(h, ValueElements::ArrayOfVmDeployed)
}
fn cast_to_vm_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmIssueTrait>(h, ValueElements::ArrayOfVmIssue)
}
fn cast_to_vm_not_deployed_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmNotDeployedTrait>(h, ValueElements::ArrayOfVmNotDeployed)
}
fn cast_to_vm_powered_off_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmPoweredOffTrait>(h, ValueElements::ArrayOfVmPoweredOff)
}
fn cast_to_cluster_agent_agent_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterAgentAgentIssueTrait>(h, ValueElements::ArrayOfClusterAgentAgentIssue)
}
fn cast_to_cluster_agent_vm_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterAgentVmIssueTrait>(h, ValueElements::ArrayOfClusterAgentVmIssue)
}
fn cast_to_cluster_agent_vm_not_deployed_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterAgentVmNotDeployedTrait>(h, ValueElements::ArrayOfClusterAgentVmNotDeployed)
}
fn cast_to_cluster_agent_vm_powered_off_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterAgentVmPoweredOffTrait>(h, ValueElements::ArrayOfClusterAgentVmPoweredOff)
}
fn cast_to_integrity_agency_vum_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::IntegrityAgencyVumIssueTrait>(h, ValueElements::ArrayOfIntegrityAgencyVumIssue)
}
fn cast_to_personality_agency_depot_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PersonalityAgencyDepotIssueTrait>(h, ValueElements::ArrayOfPersonalityAgencyDepotIssue)
}
fn cast_to_personality_agency_pm_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PersonalityAgencyPmIssueTrait>(h, ValueElements::ArrayOfPersonalityAgencyPmIssue)
}
fn cast_to_personality_agent_pm_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PersonalityAgentPmIssueTrait>(h, ValueElements::ArrayOfPersonalityAgentPmIssue)
}
fn cast_to_solutions_hook_acknowledge_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::SolutionsHookAcknowledgeConfigTrait>(h, ValueElements::ArrayOfSolutionsHookAcknowledgeConfig)
}
fn cast_to_solutions_storage_policy_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::SolutionsStoragePolicyTrait>(h, ValueElements::ArrayOfSolutionsStoragePolicy)
}
fn cast_to_solutions_type_specific_solution_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::SolutionsTypeSpecificSolutionConfigTrait>(h, ValueElements::ArrayOfSolutionsTypeSpecificSolutionConfig)
}
fn cast_to_solutions_vm_source_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::SolutionsVmSourceTrait>(h, ValueElements::ArrayOfSolutionsVmSource)
}
fn cast_to_vib_vib_services_ssl_trust_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VibVibServicesSslTrustTrait>(h, ValueElements::ArrayOfVibVibServicesSslTrust)
}
fn cast_to_pbm_capability_type_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PbmCapabilityTypeInfoTrait>(h, ValueElements::ArrayOfPbmCapabilityTypeInfo)
}
fn cast_to_pbm_line_of_service_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PbmLineOfServiceInfoTrait>(h, ValueElements::ArrayOfPbmLineOfServiceInfo)
}
fn cast_to_pbm_placement_matching_resources_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PbmPlacementMatchingResourcesTrait>(h, ValueElements::ArrayOfPbmPlacementMatchingResources)
}
fn cast_to_pbm_placement_requirement_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PbmPlacementRequirementTrait>(h, ValueElements::ArrayOfPbmPlacementRequirement)
}
fn cast_to_pbm_capability_profile_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PbmCapabilityProfileTrait>(h, ValueElements::ArrayOfPbmCapabilityProfile)
}
fn cast_to_pbm_capability_constraints_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PbmCapabilityConstraintsTrait>(h, ValueElements::ArrayOfPbmCapabilityConstraints)
}
fn cast_to_pbm_profile_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PbmProfileTrait>(h, ValueElements::ArrayOfPbmProfile)
}
fn cast_to_sms_provider_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::SmsProviderInfoTrait>(h, ValueElements::ArrayOfSmsProviderInfo)
}
fn cast_to_sms_provider_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::SmsProviderSpecTrait>(h, ValueElements::ArrayOfSmsProviderSpec)
}
fn cast_to_storage_port_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::StoragePortTrait>(h, ValueElements::ArrayOfStoragePort)
}
fn cast_to_device_id_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DeviceIdTrait>(h, ValueElements::ArrayOfDeviceId)
}
fn cast_to_failover_param_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::FailoverParamTrait>(h, ValueElements::ArrayOfFailoverParam)
}
fn cast_to_group_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::GroupInfoTrait>(h, ValueElements::ArrayOfGroupInfo)
}
fn cast_to_group_operation_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::GroupOperationResultTrait>(h, ValueElements::ArrayOfGroupOperationResult)
}
fn cast_to_target_group_member_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::TargetGroupMemberInfoTrait>(h, ValueElements::ArrayOfTargetGroupMemberInfo)
}
fn cast_to_virtual_machine_id_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineIdTrait>(h, ValueElements::ArrayOfVirtualMachineId)
}
fn cast_to_cluster_compute_resource_validation_result_base_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterComputeResourceValidationResultBaseTrait>(h, ValueElements::ArrayOfClusterComputeResourceValidationResultBase)
}
fn cast_to_compute_resource_config_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ComputeResourceConfigInfoTrait>(h, ValueElements::ArrayOfComputeResourceConfigInfo)
}
fn cast_to_compute_resource_config_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ComputeResourceConfigSpecTrait>(h, ValueElements::ArrayOfComputeResourceConfigSpec)
}
fn cast_to_compute_resource_summary_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ComputeResourceSummaryTrait>(h, ValueElements::ArrayOfComputeResourceSummary)
}
fn cast_to_custom_field_value_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CustomFieldValueTrait>(h, ValueElements::ArrayOfCustomFieldValue)
}
fn cast_to_datastore_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DatastoreInfoTrait>(h, ValueElements::ArrayOfDatastoreInfo)
}
fn cast_to_description_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DescriptionTrait>(h, ValueElements::ArrayOfDescription)
}
fn cast_to_direct_path_profile_manager_capacity_query_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DirectPathProfileManagerCapacityQuerySpecTrait>(h, ValueElements::ArrayOfDirectPathProfileManagerCapacityQuerySpec)
}
fn cast_to_direct_path_profile_manager_capacity_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DirectPathProfileManagerCapacityResultTrait>(h, ValueElements::ArrayOfDirectPathProfileManagerCapacityResult)
}
fn cast_to_direct_path_profile_manager_direct_path_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DirectPathProfileManagerDirectPathConfigTrait>(h, ValueElements::ArrayOfDirectPathProfileManagerDirectPathConfig)
}
fn cast_to_direct_path_profile_manager_target_entity_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DirectPathProfileManagerTargetEntityTrait>(h, ValueElements::ArrayOfDirectPathProfileManagerTargetEntity)
}
fn cast_to_dvs_config_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsConfigInfoTrait>(h, ValueElements::ArrayOfDvsConfigInfo)
}
fn cast_to_dvs_config_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsConfigSpecTrait>(h, ValueElements::ArrayOfDvsConfigSpec)
}
fn cast_to_dvs_feature_capability_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsFeatureCapabilityTrait>(h, ValueElements::ArrayOfDvsFeatureCapability)
}
fn cast_to_dvs_health_check_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsHealthCheckConfigTrait>(h, ValueElements::ArrayOfDvsHealthCheckConfig)
}
fn cast_to_dvs_health_check_capability_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsHealthCheckCapabilityTrait>(h, ValueElements::ArrayOfDvsHealthCheckCapability)
}
fn cast_to_dvs_uplink_port_policy_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsUplinkPortPolicyTrait>(h, ValueElements::ArrayOfDvsUplinkPortPolicy)
}
fn cast_to_element_description_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ElementDescriptionTrait>(h, ValueElements::ArrayOfElementDescription)
}
fn cast_to_hbr_replication_target_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HbrReplicationTargetSpecTrait>(h, ValueElements::ArrayOfHbrReplicationTargetSpec)
}
fn cast_to_import_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ImportSpecTrait>(h, ValueElements::ArrayOfImportSpec)
}
fn cast_to_inheritable_policy_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::InheritablePolicyTrait>(h, ValueElements::ArrayOfInheritablePolicy)
}
fn cast_to_io_filter_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::IoFilterInfoTrait>(h, ValueElements::ArrayOfIoFilterInfo)
}
fn cast_to_io_filter_manager_ssl_trust_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::IoFilterManagerSslTrustTrait>(h, ValueElements::ArrayOfIoFilterManagerSslTrust)
}
fn cast_to_ip_address_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::IpAddressTrait>(h, ValueElements::ArrayOfIpAddress)
}
fn cast_to_license_source_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::LicenseSourceTrait>(h, ValueElements::ArrayOfLicenseSource)
}
fn cast_to_mac_address_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::MacAddressTrait>(h, ValueElements::ArrayOfMacAddress)
}
fn cast_to_negatable_expression_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::NegatableExpressionTrait>(h, ValueElements::ArrayOfNegatableExpression)
}
fn cast_to_network_summary_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::NetworkSummaryTrait>(h, ValueElements::ArrayOfNetworkSummary)
}
fn cast_to_ovf_manager_common_params_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::OvfManagerCommonParamsTrait>(h, ValueElements::ArrayOfOvfManagerCommonParams)
}
fn cast_to_ovf_create_import_spec_params_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::OvfCreateImportSpecParamsTrait>(h, ValueElements::ArrayOfOvfCreateImportSpecParams)
}
fn cast_to_perf_entity_metric_base_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PerfEntityMetricBaseTrait>(h, ValueElements::ArrayOfPerfEntityMetricBase)
}
fn cast_to_perf_metric_series_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PerfMetricSeriesTrait>(h, ValueElements::ArrayOfPerfMetricSeries)
}
fn cast_to_resource_pool_summary_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ResourcePoolSummaryTrait>(h, ValueElements::ArrayOfResourcePoolSummary)
}
fn cast_to_sddc_base_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::SddcBaseTrait>(h, ValueElements::ArrayOfSddcBase)
}
fn cast_to_selection_set_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::SelectionSetTrait>(h, ValueElements::ArrayOfSelectionSet)
}
fn cast_to_service_locator_credential_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ServiceLocatorCredentialTrait>(h, ValueElements::ArrayOfServiceLocatorCredential)
}
fn cast_to_session_manager_service_request_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::SessionManagerServiceRequestSpecTrait>(h, ValueElements::ArrayOfSessionManagerServiceRequestSpec)
}
fn cast_to_task_manager_task_view_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::TaskManagerTaskViewSpecTrait>(h, ValueElements::ArrayOfTaskManagerTaskViewSpec)
}
fn cast_to_task_reason_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::TaskReasonTrait>(h, ValueElements::ArrayOfTaskReason)
}
fn cast_to_type_description_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::TypeDescriptionTrait>(h, ValueElements::ArrayOfTypeDescription)
}
fn cast_to_user_search_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::UserSearchResultTrait>(h, ValueElements::ArrayOfUserSearchResult)
}
fn cast_to_file_backed_virtual_disk_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::FileBackedVirtualDiskSpecTrait>(h, ValueElements::ArrayOfFileBackedVirtualDiskSpec)
}
fn cast_to_virtual_disk_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDiskSpecTrait>(h, ValueElements::ArrayOfVirtualDiskSpec)
}
fn cast_to_virtual_machine_connection_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineConnectionTrait>(h, ValueElements::ArrayOfVirtualMachineConnection)
}
fn cast_to_vsan_comparator_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanComparatorTrait>(h, ValueElements::ArrayOfVsanComparator)
}
fn cast_to_vsan_resource_constraint_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanResourceConstraintTrait>(h, ValueElements::ArrayOfVsanResourceConstraint)
}
fn cast_to_vsan_upgrade_system_preflight_check_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanUpgradeSystemPreflightCheckIssueTrait>(h, ValueElements::ArrayOfVsanUpgradeSystemPreflightCheckIssue)
}
fn cast_to_vsan_upgrade_system_preflight_check_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanUpgradeSystemPreflightCheckResultTrait>(h, ValueElements::ArrayOfVsanUpgradeSystemPreflightCheckResult)
}
fn cast_to_vsan_upgrade_system_upgrade_history_item_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanUpgradeSystemUpgradeHistoryItemTrait>(h, ValueElements::ArrayOfVsanUpgradeSystemUpgradeHistoryItem)
}
fn cast_to_vsan_upgrade_system_upgrade_status_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanUpgradeSystemUpgradeStatusTrait>(h, ValueElements::ArrayOfVsanUpgradeSystemUpgradeStatus)
}
fn cast_to_action_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ActionTrait>(h, ValueElements::ArrayOfAction)
}
fn cast_to_alarm_action_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::AlarmActionTrait>(h, ValueElements::ArrayOfAlarmAction)
}
fn cast_to_alarm_expression_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::AlarmExpressionTrait>(h, ValueElements::ArrayOfAlarmExpression)
}
fn cast_to_alarm_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::AlarmSpecTrait>(h, ValueElements::ArrayOfAlarmSpec)
}
fn cast_to_cluster_action_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterActionTrait>(h, ValueElements::ArrayOfClusterAction)
}
fn cast_to_cluster_das_admission_control_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterDasAdmissionControlInfoTrait>(h, ValueElements::ArrayOfClusterDasAdmissionControlInfo)
}
fn cast_to_cluster_das_admission_control_policy_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterDasAdmissionControlPolicyTrait>(h, ValueElements::ArrayOfClusterDasAdmissionControlPolicy)
}
fn cast_to_cluster_das_advanced_runtime_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterDasAdvancedRuntimeInfoTrait>(h, ValueElements::ArrayOfClusterDasAdvancedRuntimeInfo)
}
fn cast_to_cluster_das_data_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterDasDataTrait>(h, ValueElements::ArrayOfClusterDasData)
}
fn cast_to_cluster_das_host_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterDasHostInfoTrait>(h, ValueElements::ArrayOfClusterDasHostInfo)
}
fn cast_to_cluster_drs_faults_faults_by_vm_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterDrsFaultsFaultsByVmTrait>(h, ValueElements::ArrayOfClusterDrsFaultsFaultsByVm)
}
fn cast_to_cluster_group_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterGroupInfoTrait>(h, ValueElements::ArrayOfClusterGroupInfo)
}
fn cast_to_cluster_rule_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterRuleInfoTrait>(h, ValueElements::ArrayOfClusterRuleInfo)
}
fn cast_to_cluster_slot_policy_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterSlotPolicyTrait>(h, ValueElements::ArrayOfClusterSlotPolicy)
}
fn cast_to_vsan_cluster_health_link_base_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanClusterHealthLinkBaseTrait>(h, ValueElements::ArrayOfVsanClusterHealthLinkBase)
}
fn cast_to_vsan_cluster_health_result_base_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanClusterHealthResultBaseTrait>(h, ValueElements::ArrayOfVsanClusterHealthResultBase)
}
fn cast_to_vim_cluster_vsan_fault_domain_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VimClusterVsanFaultDomainSpecTrait>(h, ValueElements::ArrayOfVimClusterVsanFaultDomainSpec)
}
fn cast_to_vsan_health_action_base_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanHealthActionBaseTrait>(h, ValueElements::ArrayOfVsanHealthActionBase)
}
fn cast_to_vsan_iscsi_lun_common_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanIscsiLunCommonInfoTrait>(h, ValueElements::ArrayOfVsanIscsiLunCommonInfo)
}
fn cast_to_vsan_iscsi_target_basic_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanIscsiTargetBasicInfoTrait>(h, ValueElements::ArrayOfVsanIscsiTargetBasicInfo)
}
fn cast_to_vsan_iscsi_target_common_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanIscsiTargetCommonInfoTrait>(h, ValueElements::ArrayOfVsanIscsiTargetCommonInfo)
}
fn cast_to_vsan_iscsi_target_service_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanIscsiTargetServiceConfigTrait>(h, ValueElements::ArrayOfVsanIscsiTargetServiceConfig)
}
fn cast_to_cns_access_control_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CnsAccessControlSpecTrait>(h, ValueElements::ArrayOfCnsAccessControlSpec)
}
fn cast_to_cns_backing_object_details_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CnsBackingObjectDetailsTrait>(h, ValueElements::ArrayOfCnsBackingObjectDetails)
}
fn cast_to_cns_base_create_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CnsBaseCreateSpecTrait>(h, ValueElements::ArrayOfCnsBaseCreateSpec)
}
fn cast_to_cns_entity_metadata_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CnsEntityMetadataTrait>(h, ValueElements::ArrayOfCnsEntityMetadata)
}
fn cast_to_cns_file_backing_details_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CnsFileBackingDetailsTrait>(h, ValueElements::ArrayOfCnsFileBackingDetails)
}
fn cast_to_cns_file_create_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CnsFileCreateSpecTrait>(h, ValueElements::ArrayOfCnsFileCreateSpec)
}
fn cast_to_cns_query_filter_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CnsQueryFilterTrait>(h, ValueElements::ArrayOfCnsQueryFilter)
}
fn cast_to_cns_volume_operation_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CnsVolumeOperationResultTrait>(h, ValueElements::ArrayOfCnsVolumeOperationResult)
}
fn cast_to_cns_volume_relocate_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CnsVolumeRelocateSpecTrait>(h, ValueElements::ArrayOfCnsVolumeRelocateSpec)
}
fn cast_to_cns_volume_source_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CnsVolumeSourceTrait>(h, ValueElements::ArrayOfCnsVolumeSource)
}
fn cast_to_dvs_filter_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsFilterConfigTrait>(h, ValueElements::ArrayOfDvsFilterConfig)
}
fn cast_to_dv_port_setting_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvPortSettingTrait>(h, ValueElements::ArrayOfDvPortSetting)
}
fn cast_to_dvs_traffic_filter_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsTrafficFilterConfigTrait>(h, ValueElements::ArrayOfDvsTrafficFilterConfig)
}
fn cast_to_dv_portgroup_policy_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvPortgroupPolicyTrait>(h, ValueElements::ArrayOfDvPortgroupPolicy)
}
fn cast_to_distributed_virtual_switch_manager_host_dvs_filter_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DistributedVirtualSwitchManagerHostDvsFilterSpecTrait>(h, ValueElements::ArrayOfDistributedVirtualSwitchManagerHostDvsFilterSpec)
}
fn cast_to_dvs_filter_spec_connectee_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsFilterSpecConnecteeSpecTrait>(h, ValueElements::ArrayOfDvsFilterSpecConnecteeSpec)
}
fn cast_to_dvs_filter_spec_vlan_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsFilterSpecVlanSpecTrait>(h, ValueElements::ArrayOfDvsFilterSpecVlanSpec)
}
fn cast_to_distributed_virtual_switch_host_member_backing_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DistributedVirtualSwitchHostMemberBackingTrait>(h, ValueElements::ArrayOfDistributedVirtualSwitchHostMemberBacking)
}
fn cast_to_host_member_health_check_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostMemberHealthCheckResultTrait>(h, ValueElements::ArrayOfHostMemberHealthCheckResult)
}
fn cast_to_host_member_uplink_health_check_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostMemberUplinkHealthCheckResultTrait>(h, ValueElements::ArrayOfHostMemberUplinkHealthCheckResult)
}
fn cast_to_dvs_network_rule_action_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsNetworkRuleActionTrait>(h, ValueElements::ArrayOfDvsNetworkRuleAction)
}
fn cast_to_dvs_ip_port_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsIpPortTrait>(h, ValueElements::ArrayOfDvsIpPort)
}
fn cast_to_dvs_network_rule_qualifier_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsNetworkRuleQualifierTrait>(h, ValueElements::ArrayOfDvsNetworkRuleQualifier)
}
fn cast_to_vmware_distributed_virtual_switch_vlan_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmwareDistributedVirtualSwitchVlanSpecTrait>(h, ValueElements::ArrayOfVmwareDistributedVirtualSwitchVlanSpec)
}
fn cast_to_v_mware_dvs_health_check_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VMwareDvsHealthCheckConfigTrait>(h, ValueElements::ArrayOfVMwareDvsHealthCheckConfig)
}
fn cast_to_crypto_manager_kmip_crypto_key_status_key_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CryptoManagerKmipCryptoKeyStatusKeyInfoTrait>(h, ValueElements::ArrayOfCryptoManagerKmipCryptoKeyStatusKeyInfo)
}
fn cast_to_crypto_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CryptoSpecTrait>(h, ValueElements::ArrayOfCryptoSpec)
}
fn cast_to_crypto_spec_no_op_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CryptoSpecNoOpTrait>(h, ValueElements::ArrayOfCryptoSpecNoOp)
}
fn cast_to_kmip_cluster_info_key_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::KmipClusterInfoKeyInfoTrait>(h, ValueElements::ArrayOfKmipClusterInfoKeyInfo)
}
fn cast_to_kmip_server_spec_key_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::KmipServerSpecKeySpecTrait>(h, ValueElements::ArrayOfKmipServerSpecKeySpec)
}
fn cast_to_entity_event_argument_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::EntityEventArgumentTrait>(h, ValueElements::ArrayOfEntityEventArgument)
}
fn cast_to_event_argument_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::EventArgumentTrait>(h, ValueElements::ArrayOfEventArgument)
}
fn cast_to_event_manager_event_view_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::EventManagerEventViewSpecTrait>(h, ValueElements::ArrayOfEventManagerEventViewSpec)
}
fn cast_to_host_authentication_store_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostAuthenticationStoreInfoTrait>(h, ValueElements::ArrayOfHostAuthenticationStoreInfo)
}
fn cast_to_host_datastore_connect_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostDatastoreConnectInfoTrait>(h, ValueElements::ArrayOfHostDatastoreConnectInfo)
}
fn cast_to_host_connect_info_network_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostConnectInfoNetworkInfoTrait>(h, ValueElements::ArrayOfHostConnectInfoNetworkInfo)
}
fn cast_to_host_data_transport_connection_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostDataTransportConnectionInfoTrait>(h, ValueElements::ArrayOfHostDataTransportConnectionInfo)
}
fn cast_to_file_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::FileInfoTrait>(h, ValueElements::ArrayOfFileInfo)
}
fn cast_to_file_query_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::FileQueryTrait>(h, ValueElements::ArrayOfFileQuery)
}
fn cast_to_vm_config_file_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmConfigFileInfoTrait>(h, ValueElements::ArrayOfVmConfigFileInfo)
}
fn cast_to_vm_config_file_query_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmConfigFileQueryTrait>(h, ValueElements::ArrayOfVmConfigFileQuery)
}
fn cast_to_host_device_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostDeviceTrait>(h, ValueElements::ArrayOfHostDevice)
}
fn cast_to_host_digest_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostDigestInfoTrait>(h, ValueElements::ArrayOfHostDigestInfo)
}
fn cast_to_host_directory_store_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostDirectoryStoreInfoTrait>(h, ValueElements::ArrayOfHostDirectoryStoreInfo)
}
fn cast_to_host_dns_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostDnsConfigTrait>(h, ValueElements::ArrayOfHostDnsConfig)
}
fn cast_to_host_fibre_channel_hba_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostFibreChannelHbaTrait>(h, ValueElements::ArrayOfHostFibreChannelHba)
}
fn cast_to_host_fibre_channel_target_transport_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostFibreChannelTargetTransportTrait>(h, ValueElements::ArrayOfHostFibreChannelTargetTransport)
}
fn cast_to_host_file_system_volume_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostFileSystemVolumeTrait>(h, ValueElements::ArrayOfHostFileSystemVolume)
}
fn cast_to_host_hardware_element_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostHardwareElementInfoTrait>(h, ValueElements::ArrayOfHostHardwareElementInfo)
}
fn cast_to_host_hba_create_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostHbaCreateSpecTrait>(h, ValueElements::ArrayOfHostHbaCreateSpec)
}
fn cast_to_host_host_bus_adapter_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostHostBusAdapterTrait>(h, ValueElements::ArrayOfHostHostBusAdapter)
}
fn cast_to_host_ip_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostIpConfigTrait>(h, ValueElements::ArrayOfHostIpConfig)
}
fn cast_to_host_ip_route_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostIpRouteConfigTrait>(h, ValueElements::ArrayOfHostIpRouteConfig)
}
fn cast_to_host_account_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostAccountSpecTrait>(h, ValueElements::ArrayOfHostAccountSpec)
}
fn cast_to_host_multipath_info_logical_unit_policy_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostMultipathInfoLogicalUnitPolicyTrait>(h, ValueElements::ArrayOfHostMultipathInfoLogicalUnitPolicy)
}
fn cast_to_host_nvme_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostNvmeSpecTrait>(h, ValueElements::ArrayOfHostNvmeSpec)
}
fn cast_to_host_nvme_transport_parameters_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostNvmeTransportParametersTrait>(h, ValueElements::ArrayOfHostNvmeTransportParameters)
}
fn cast_to_host_pci_passthru_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostPciPassthruConfigTrait>(h, ValueElements::ArrayOfHostPciPassthruConfig)
}
fn cast_to_host_pci_passthru_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostPciPassthruInfoTrait>(h, ValueElements::ArrayOfHostPciPassthruInfo)
}
fn cast_to_physical_nic_hint_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PhysicalNicHintTrait>(h, ValueElements::ArrayOfPhysicalNicHint)
}
fn cast_to_host_rdma_device_backing_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostRdmaDeviceBackingTrait>(h, ValueElements::ArrayOfHostRdmaDeviceBacking)
}
fn cast_to_scsi_lun_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ScsiLunTrait>(h, ValueElements::ArrayOfScsiLun)
}
fn cast_to_host_sriov_device_pool_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostSriovDevicePoolInfoTrait>(h, ValueElements::ArrayOfHostSriovDevicePoolInfo)
}
fn cast_to_host_system_swap_configuration_system_swap_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostSystemSwapConfigurationSystemSwapOptionTrait>(h, ValueElements::ArrayOfHostSystemSwapConfigurationSystemSwapOption)
}
fn cast_to_host_target_transport_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostTargetTransportTrait>(h, ValueElements::ArrayOfHostTargetTransport)
}
fn cast_to_host_tpm_boot_security_option_event_details_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostTpmBootSecurityOptionEventDetailsTrait>(h, ValueElements::ArrayOfHostTpmBootSecurityOptionEventDetails)
}
fn cast_to_host_tpm_event_details_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostTpmEventDetailsTrait>(h, ValueElements::ArrayOfHostTpmEventDetails)
}
fn cast_to_host_virtual_switch_bridge_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostVirtualSwitchBridgeTrait>(h, ValueElements::ArrayOfHostVirtualSwitchBridge)
}
fn cast_to_vmfs_datastore_base_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmfsDatastoreBaseOptionTrait>(h, ValueElements::ArrayOfVmfsDatastoreBaseOption)
}
fn cast_to_vmfs_datastore_single_extent_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmfsDatastoreSingleExtentOptionTrait>(h, ValueElements::ArrayOfVmfsDatastoreSingleExtentOption)
}
fn cast_to_vmfs_datastore_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmfsDatastoreSpecTrait>(h, ValueElements::ArrayOfVmfsDatastoreSpec)
}
fn cast_to_vsan_hcl_common_device_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanHclCommonDeviceInfoTrait>(h, ValueElements::ArrayOfVsanHclCommonDeviceInfo)
}
fn cast_to_net_bios_config_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::NetBiosConfigInfoTrait>(h, ValueElements::ArrayOfNetBiosConfigInfo)
}
fn cast_to_array_update_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ArrayUpdateSpecTrait>(h, ValueElements::ArrayOfArrayUpdateSpec)
}
fn cast_to_option_type_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::OptionTypeTrait>(h, ValueElements::ArrayOfOptionType)
}
fn cast_to_option_value_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::OptionValueTrait>(h, ValueElements::ArrayOfOptionValue)
}
fn cast_to_apply_profile_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ApplyProfileTrait>(h, ValueElements::ArrayOfApplyProfile)
}
fn cast_to_profile_expression_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ProfileExpressionTrait>(h, ValueElements::ArrayOfProfileExpression)
}
fn cast_to_policy_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PolicyOptionTrait>(h, ValueElements::ArrayOfPolicyOption)
}
fn cast_to_profile_policy_option_metadata_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ProfilePolicyOptionMetadataTrait>(h, ValueElements::ArrayOfProfilePolicyOptionMetadata)
}
fn cast_to_profile_config_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ProfileConfigInfoTrait>(h, ValueElements::ArrayOfProfileConfigInfo)
}
fn cast_to_profile_create_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ProfileCreateSpecTrait>(h, ValueElements::ArrayOfProfileCreateSpec)
}
fn cast_to_profile_serialized_create_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ProfileSerializedCreateSpecTrait>(h, ValueElements::ArrayOfProfileSerializedCreateSpec)
}
fn cast_to_cluster_profile_config_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterProfileConfigSpecTrait>(h, ValueElements::ArrayOfClusterProfileConfigSpec)
}
fn cast_to_cluster_profile_create_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ClusterProfileCreateSpecTrait>(h, ValueElements::ArrayOfClusterProfileCreateSpec)
}
fn cast_to_dvs_v_nic_profile_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DvsVNicProfileTrait>(h, ValueElements::ArrayOfDvsVNicProfile)
}
fn cast_to_profile_execute_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ProfileExecuteResultTrait>(h, ValueElements::ArrayOfProfileExecuteResult)
}
fn cast_to_host_profile_config_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostProfileConfigSpecTrait>(h, ValueElements::ArrayOfHostProfileConfigSpec)
}
fn cast_to_port_group_profile_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::PortGroupProfileTrait>(h, ValueElements::ArrayOfPortGroupProfile)
}
fn cast_to_answer_file_create_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::AnswerFileCreateSpecTrait>(h, ValueElements::ArrayOfAnswerFileCreateSpec)
}
fn cast_to_host_profiles_entity_customizations_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HostProfilesEntityCustomizationsTrait>(h, ValueElements::ArrayOfHostProfilesEntityCustomizations)
}
fn cast_to_daily_task_scheduler_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DailyTaskSchedulerTrait>(h, ValueElements::ArrayOfDailyTaskScheduler)
}
fn cast_to_hourly_task_scheduler_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::HourlyTaskSchedulerTrait>(h, ValueElements::ArrayOfHourlyTaskScheduler)
}
fn cast_to_monthly_task_scheduler_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::MonthlyTaskSchedulerTrait>(h, ValueElements::ArrayOfMonthlyTaskScheduler)
}
fn cast_to_recurrent_task_scheduler_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::RecurrentTaskSchedulerTrait>(h, ValueElements::ArrayOfRecurrentTaskScheduler)
}
fn cast_to_scheduled_task_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::ScheduledTaskSpecTrait>(h, ValueElements::ArrayOfScheduledTaskSpec)
}
fn cast_to_task_scheduler_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::TaskSchedulerTrait>(h, ValueElements::ArrayOfTaskScheduler)
}
fn cast_to_vm_config_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmConfigInfoTrait>(h, ValueElements::ArrayOfVmConfigInfo)
}
fn cast_to_vm_config_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VmConfigSpecTrait>(h, ValueElements::ArrayOfVmConfigSpec)
}
fn cast_to_node_deployment_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::NodeDeploymentSpecTrait>(h, ValueElements::ArrayOfNodeDeploymentSpec)
}
fn cast_to_node_network_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::NodeNetworkSpecTrait>(h, ValueElements::ArrayOfNodeNetworkSpec)
}
fn cast_to_virtual_machine_base_independent_filter_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineBaseIndependentFilterSpecTrait>(h, ValueElements::ArrayOfVirtualMachineBaseIndependentFilterSpec)
}
fn cast_to_virtual_machine_boot_options_bootable_device_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineBootOptionsBootableDeviceTrait>(h, ValueElements::ArrayOfVirtualMachineBootOptionsBootableDevice)
}
fn cast_to_virtual_machine_device_runtime_info_device_runtime_state_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineDeviceRuntimeInfoDeviceRuntimeStateTrait>(h, ValueElements::ArrayOfVirtualMachineDeviceRuntimeInfoDeviceRuntimeState)
}
fn cast_to_virtual_machine_disk_device_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineDiskDeviceInfoTrait>(h, ValueElements::ArrayOfVirtualMachineDiskDeviceInfo)
}
fn cast_to_fault_tolerance_config_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::FaultToleranceConfigInfoTrait>(h, ValueElements::ArrayOfFaultToleranceConfigInfo)
}
fn cast_to_virtual_machine_guest_quiesce_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineGuestQuiesceSpecTrait>(h, ValueElements::ArrayOfVirtualMachineGuestQuiesceSpec)
}
fn cast_to_virtual_machine_pci_passthrough_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachinePciPassthroughInfoTrait>(h, ValueElements::ArrayOfVirtualMachinePciPassthroughInfo)
}
fn cast_to_virtual_machine_profile_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineProfileSpecTrait>(h, ValueElements::ArrayOfVirtualMachineProfileSpec)
}
fn cast_to_virtual_machine_sriov_device_pool_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineSriovDevicePoolInfoTrait>(h, ValueElements::ArrayOfVirtualMachineSriovDevicePoolInfo)
}
fn cast_to_virtual_machine_target_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineTargetInfoTrait>(h, ValueElements::ArrayOfVirtualMachineTargetInfo)
}
fn cast_to_virtual_machine_virtual_device_groups_device_group_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualMachineVirtualDeviceGroupsDeviceGroupTrait>(h, ValueElements::ArrayOfVirtualMachineVirtualDeviceGroupsDeviceGroup)
}
fn cast_to_customization_identity_settings_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CustomizationIdentitySettingsTrait>(h, ValueElements::ArrayOfCustomizationIdentitySettings)
}
fn cast_to_customization_ip_generator_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CustomizationIpGeneratorTrait>(h, ValueElements::ArrayOfCustomizationIpGenerator)
}
fn cast_to_customization_ip_v_6_generator_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CustomizationIpV6GeneratorTrait>(h, ValueElements::ArrayOfCustomizationIpV6Generator)
}
fn cast_to_customization_name_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CustomizationNameTrait>(h, ValueElements::ArrayOfCustomizationName)
}
fn cast_to_customization_options_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::CustomizationOptionsTrait>(h, ValueElements::ArrayOfCustomizationOptions)
}
fn cast_to_virtual_controller_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualControllerTrait>(h, ValueElements::ArrayOfVirtualController)
}
fn cast_to_virtual_controller_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualControllerOptionTrait>(h, ValueElements::ArrayOfVirtualControllerOption)
}
fn cast_to_virtual_device_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceTrait>(h, ValueElements::ArrayOfVirtualDevice)
}
fn cast_to_virtual_device_backing_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceBackingInfoTrait>(h, ValueElements::ArrayOfVirtualDeviceBackingInfo)
}
fn cast_to_virtual_device_bus_slot_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceBusSlotInfoTrait>(h, ValueElements::ArrayOfVirtualDeviceBusSlotInfo)
}
fn cast_to_virtual_device_device_backing_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceDeviceBackingInfoTrait>(h, ValueElements::ArrayOfVirtualDeviceDeviceBackingInfo)
}
fn cast_to_virtual_device_file_backing_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceFileBackingInfoTrait>(h, ValueElements::ArrayOfVirtualDeviceFileBackingInfo)
}
fn cast_to_virtual_device_pci_bus_slot_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDevicePciBusSlotInfoTrait>(h, ValueElements::ArrayOfVirtualDevicePciBusSlotInfo)
}
fn cast_to_virtual_device_pipe_backing_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDevicePipeBackingInfoTrait>(h, ValueElements::ArrayOfVirtualDevicePipeBackingInfo)
}
fn cast_to_virtual_device_remote_device_backing_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceRemoteDeviceBackingInfoTrait>(h, ValueElements::ArrayOfVirtualDeviceRemoteDeviceBackingInfo)
}
fn cast_to_virtual_device_uri_backing_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceUriBackingInfoTrait>(h, ValueElements::ArrayOfVirtualDeviceUriBackingInfo)
}
fn cast_to_virtual_device_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceOptionTrait>(h, ValueElements::ArrayOfVirtualDeviceOption)
}
fn cast_to_virtual_device_backing_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceBackingOptionTrait>(h, ValueElements::ArrayOfVirtualDeviceBackingOption)
}
fn cast_to_virtual_device_device_backing_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceDeviceBackingOptionTrait>(h, ValueElements::ArrayOfVirtualDeviceDeviceBackingOption)
}
fn cast_to_virtual_device_file_backing_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceFileBackingOptionTrait>(h, ValueElements::ArrayOfVirtualDeviceFileBackingOption)
}
fn cast_to_virtual_device_pipe_backing_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDevicePipeBackingOptionTrait>(h, ValueElements::ArrayOfVirtualDevicePipeBackingOption)
}
fn cast_to_virtual_device_remote_device_backing_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceRemoteDeviceBackingOptionTrait>(h, ValueElements::ArrayOfVirtualDeviceRemoteDeviceBackingOption)
}
fn cast_to_virtual_device_uri_backing_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceUriBackingOptionTrait>(h, ValueElements::ArrayOfVirtualDeviceUriBackingOption)
}
fn cast_to_virtual_device_config_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDeviceConfigSpecTrait>(h, ValueElements::ArrayOfVirtualDeviceConfigSpec)
}
fn cast_to_virtual_disk_raw_disk_ver_2_backing_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDiskRawDiskVer2BackingInfoTrait>(h, ValueElements::ArrayOfVirtualDiskRawDiskVer2BackingInfo)
}
fn cast_to_virtual_disk_raw_disk_ver_2_backing_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualDiskRawDiskVer2BackingOptionTrait>(h, ValueElements::ArrayOfVirtualDiskRawDiskVer2BackingOption)
}
fn cast_to_virtual_ethernet_card_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualEthernetCardTrait>(h, ValueElements::ArrayOfVirtualEthernetCard)
}
fn cast_to_virtual_ethernet_card_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualEthernetCardOptionTrait>(h, ValueElements::ArrayOfVirtualEthernetCardOption)
}
fn cast_to_virtual_pci_passthrough_plugin_backing_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualPciPassthroughPluginBackingInfoTrait>(h, ValueElements::ArrayOfVirtualPciPassthroughPluginBackingInfo)
}
fn cast_to_virtual_pci_passthrough_plugin_backing_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualPciPassthroughPluginBackingOptionTrait>(h, ValueElements::ArrayOfVirtualPciPassthroughPluginBackingOption)
}
fn cast_to_virtual_sata_controller_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualSataControllerTrait>(h, ValueElements::ArrayOfVirtualSataController)
}
fn cast_to_virtual_sata_controller_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualSataControllerOptionTrait>(h, ValueElements::ArrayOfVirtualSataControllerOption)
}
fn cast_to_virtual_scsi_controller_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualScsiControllerTrait>(h, ValueElements::ArrayOfVirtualScsiController)
}
fn cast_to_virtual_scsi_controller_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualScsiControllerOptionTrait>(h, ValueElements::ArrayOfVirtualScsiControllerOption)
}
fn cast_to_virtual_sound_card_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualSoundCardTrait>(h, ValueElements::ArrayOfVirtualSoundCard)
}
fn cast_to_virtual_sound_card_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualSoundCardOptionTrait>(h, ValueElements::ArrayOfVirtualSoundCardOption)
}
fn cast_to_virtual_vmxnet_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualVmxnetTrait>(h, ValueElements::ArrayOfVirtualVmxnet)
}
fn cast_to_virtual_vmxnet_3_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualVmxnet3Trait>(h, ValueElements::ArrayOfVirtualVmxnet3)
}
fn cast_to_virtual_vmxnet_3_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualVmxnet3OptionTrait>(h, ValueElements::ArrayOfVirtualVmxnet3Option)
}
fn cast_to_virtual_vmxnet_option_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VirtualVmxnetOptionTrait>(h, ValueElements::ArrayOfVirtualVmxnetOption)
}
fn cast_to_guest_auth_subject_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::GuestAuthSubjectTrait>(h, ValueElements::ArrayOfGuestAuthSubject)
}
fn cast_to_guest_file_attributes_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::GuestFileAttributesTrait>(h, ValueElements::ArrayOfGuestFileAttributes)
}
fn cast_to_guest_authentication_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::GuestAuthenticationTrait>(h, ValueElements::ArrayOfGuestAuthentication)
}
fn cast_to_guest_program_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::GuestProgramSpecTrait>(h, ValueElements::ArrayOfGuestProgramSpec)
}
fn cast_to_guest_reg_value_data_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::GuestRegValueDataSpecTrait>(h, ValueElements::ArrayOfGuestRegValueDataSpec)
}
fn cast_to_fault_domain_id_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::FaultDomainIdTrait>(h, ValueElements::ArrayOfFaultDomainId)
}
fn cast_to_vsan_data_efficiency_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanDataEfficiencyConfigTrait>(h, ValueElements::ArrayOfVsanDataEfficiencyConfig)
}
fn cast_to_vsan_datastore_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanDatastoreConfigTrait>(h, ValueElements::ArrayOfVsanDatastoreConfig)
}
fn cast_to_vsan_datastore_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanDatastoreSpecTrait>(h, ValueElements::ArrayOfVsanDatastoreSpec)
}
fn cast_to_vsan_directory_server_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanDirectoryServerConfigTrait>(h, ValueElements::ArrayOfVsanDirectoryServerConfig)
}
fn cast_to_vsan_disk_resource_check_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanDiskResourceCheckResultTrait>(h, ValueElements::ArrayOfVsanDiskResourceCheckResult)
}
fn cast_to_entity_resource_check_details_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::EntityResourceCheckDetailsTrait>(h, ValueElements::ArrayOfEntityResourceCheckDetails)
}
fn cast_to_vsan_mount_precheck_item_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanMountPrecheckItemTrait>(h, ValueElements::ArrayOfVsanMountPrecheckItem)
}
fn cast_to_vsan_mount_precheck_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanMountPrecheckResultTrait>(h, ValueElements::ArrayOfVsanMountPrecheckResult)
}
fn cast_to_vsan_remote_vc_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanRemoteVcInfoTrait>(h, ValueElements::ArrayOfVsanRemoteVcInfo)
}
fn cast_to_vsan_resource_check_component_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanResourceCheckComponentResultTrait>(h, ValueElements::ArrayOfVsanResourceCheckComponentResult)
}
fn cast_to_vsan_resource_check_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanResourceCheckResultTrait>(h, ValueElements::ArrayOfVsanResourceCheckResult)
}
fn cast_to_vsan_resource_check_task_details_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanResourceCheckTaskDetailsTrait>(h, ValueElements::ArrayOfVsanResourceCheckTaskDetails)
}
fn cast_to_vsan_iscsi_vip_config_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanIscsiVipConfigSpecTrait>(h, ValueElements::ArrayOfVsanIscsiVipConfigSpec)
}
fn cast_to_vsan_config_base_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanConfigBaseIssueTrait>(h, ValueElements::ArrayOfVsanConfigBaseIssue)
}
fn cast_to_vsan_network_config_base_issue_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanNetworkConfigBaseIssueTrait>(h, ValueElements::ArrayOfVsanNetworkConfigBaseIssue)
}
fn cast_to_vsan_cluster_config_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanClusterConfigInfoTrait>(h, ValueElements::ArrayOfVsanClusterConfigInfo)
}
fn cast_to_vsan_host_config_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanHostConfigInfoTrait>(h, ValueElements::ArrayOfVsanHostConfigInfo)
}
fn cast_to_vsan_host_config_info_network_info_port_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanHostConfigInfoNetworkInfoPortConfigTrait>(h, ValueElements::ArrayOfVsanHostConfigInfoNetworkInfoPortConfig)
}
fn cast_to_vsan_host_disk_result_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanHostDiskResultTrait>(h, ValueElements::ArrayOfVsanHostDiskResult)
}
fn cast_to_vsan_host_ip_config_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VsanHostIpConfigTrait>(h, ValueElements::ArrayOfVsanHostIpConfig)
}
fn cast_to_base_config_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::BaseConfigInfoTrait>(h, ValueElements::ArrayOfBaseConfigInfo)
}
fn cast_to_base_config_info_backing_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::BaseConfigInfoBackingInfoTrait>(h, ValueElements::ArrayOfBaseConfigInfoBackingInfo)
}
fn cast_to_base_config_info_file_backing_info_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::BaseConfigInfoFileBackingInfoTrait>(h, ValueElements::ArrayOfBaseConfigInfoFileBackingInfo)
}
fn cast_to_vslm_create_spec_backing_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VslmCreateSpecBackingSpecTrait>(h, ValueElements::ArrayOfVslmCreateSpecBackingSpec)
}
fn cast_to_vslm_migrate_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VslmMigrateSpecTrait>(h, ValueElements::ArrayOfVslmMigrateSpec)
}
fn cast_to_data_object_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::DataObjectTrait>(h, ValueElements::ArrayOfDataObject)
}
fn cast_to_selection_spec_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::SelectionSpecTrait>(h, ValueElements::ArrayOfSelectionSpec)
}
fn cast_to_vslm_task_reason_array(h: Vec<VimObjectHolder>) -> miniserde::Result<ValueElements> {
    polymorphic_array_cast::<dyn super::traits::VslmTaskReasonTrait>(h, ValueElements::ArrayOfVslmTaskReason)
}

// VimObjectHolder Deserialize/Visitor implementations
impl miniserde::Deserialize for VimObjectHolder {
    fn begin(out: &mut Option<VimObjectHolder>) -> &mut dyn miniserde::de::Visitor {
        Place::new(out)
    }
}

impl miniserde::de::Visitor for Place<VimObjectHolder> {
    fn map(&mut self) -> miniserde::Result<Box<dyn miniserde::de::Map + '_>> {
        Ok(Box::new(VimObjectHolderBuilder::new(&mut self.out)))
    }
}

// PHF Type Registry for O(1) type name lookup
static TYPE_REGISTRY: phf::Map<&'static str, TypeInfo> = ::phf::Map {
    key: 12913932095322966823,
    disps: &[
        (0, 4),
        (0, 1),
        (0, 3),
        (0, 878),
        (0, 24),
        (0, 21),
        (0, 10),
        (0, 41),
        (0, 2),
        (0, 85),
        (0, 1456),
        (0, 0),
        (0, 0),
        (0, 66),
        (0, 316),
        (0, 34),
        (0, 7),
        (0, 167),
        (0, 113),
        (0, 138),
        (0, 9),
        (0, 369),
        (0, 540),
        (0, 23),
        (0, 0),
        (0, 193),
        (0, 267),
        (0, 451),
        (0, 434),
        (0, 18),
        (0, 1459),
        (0, 1669),
        (0, 5),
        (0, 717),
        (0, 434),
        (0, 1886),
        (0, 2),
        (0, 8),
        (0, 9),
        (0, 11),
        (0, 4),
        (0, 6),
        (0, 896),
        (0, 6),
        (0, 21),
        (0, 318),
        (0, 2),
        (0, 291),
        (0, 299),
        (0, 213),
        (0, 13),
        (0, 0),
        (0, 18),
        (0, 0),
        (0, 68),
        (0, 5),
        (0, 75),
        (0, 62),
        (0, 25),
        (0, 32),
        (0, 352),
        (0, 124),
        (0, 56),
        (0, 107),
        (0, 0),
        (0, 0),
        (0, 308),
        (0, 324),
        (0, 23),
        (0, 97),
        (0, 37),
        (0, 0),
        (0, 779),
        (0, 15),
        (0, 17),
        (0, 258),
        (0, 1),
        (0, 340),
        (0, 8),
        (0, 8),
        (0, 0),
        (0, 12),
        (0, 1),
        (0, 461),
        (0, 1),
        (0, 84),
        (0, 32),
        (0, 177),
        (0, 0),
        (0, 2),
        (0, 1),
        (0, 0),
        (0, 36),
        (0, 20),
        (0, 12),
        (0, 223),
        (0, 1),
        (0, 2),
        (0, 167),
        (0, 9),
        (0, 52),
        (0, 13),
        (0, 48),
        (0, 23),
        (0, 4),
        (0, 342),
        (0, 325),
        (0, 3),
        (0, 45),
        (0, 492),
        (0, 0),
        (0, 22),
        (0, 4),
        (0, 152),
        (0, 4),
        (0, 1),
        (0, 7),
        (0, 173),
        (0, 26),
        (0, 20),
        (0, 19),
        (0, 37),
        (0, 17),
        (0, 6),
        (0, 2),
        (0, 2),
        (0, 1),
        (0, 1),
        (0, 1899),
        (0, 123),
        (0, 2),
        (0, 12),
        (0, 0),
        (0, 635),
        (0, 17),
        (0, 452),
        (0, 36),
        (0, 21),
        (0, 0),
        (0, 211),
        (0, 31),
        (0, 1),
        (0, 14),
        (0, 186),
        (0, 115),
        (0, 10),
        (0, 244),
        (0, 87),
        (0, 2),
        (0, 153),
        (0, 739),
        (0, 42),
        (0, 45),
        (0, 780),
        (0, 576),
        (0, 0),
        (0, 1162),
        (0, 11),
        (0, 90),
        (0, 507),
        (0, 108),
        (0, 25),
        (0, 41),
        (0, 311),
        (0, 5),
        (0, 1128),
        (0, 4),
        (0, 1),
        (0, 56),
        (0, 363),
        (0, 275),
        (0, 16),
        (0, 1116),
        (0, 2),
        (0, 20),
        (0, 1011),
        (0, 258),
        (0, 425),
        (0, 179),
        (0, 83),
        (0, 223),
        (0, 68),
        (0, 5),
        (0, 15),
        (0, 85),
        (0, 457),
        (0, 1),
        (0, 56),
        (0, 17),
        (0, 507),
        (0, 528),
        (0, 743),
        (0, 16),
        (0, 64),
        (0, 65),
        (0, 358),
        (0, 1347),
        (0, 271),
        (0, 830),
        (0, 9),
        (0, 817),
        (0, 1),
        (1, 50),
        (0, 98),
        (0, 289),
        (0, 48),
        (0, 5),
        (0, 37),
        (0, 56),
        (0, 6),
        (0, 29),
        (0, 0),
        (0, 1),
        (0, 38),
        (0, 5),
        (0, 5),
        (0, 137),
        (0, 0),
        (0, 0),
        (0, 31),
        (0, 44),
        (0, 0),
        (0, 238),
        (0, 427),
        (0, 0),
        (0, 49),
        (0, 131),
        (0, 4),
        (0, 17),
        (0, 5),
        (0, 11),
        (0, 394),
        (0, 911),
        (0, 187),
        (0, 29),
        (0, 80),
        (0, 66),
        (0, 517),
        (0, 97),
        (0, 8),
        (0, 0),
        (0, 117),
        (0, 29),
        (0, 1),
        (0, 201),
        (0, 190),
        (0, 322),
        (0, 46),
        (0, 39),
        (0, 111),
        (0, 54),
        (0, 14),
        (0, 127),
        (0, 1504),
        (0, 2),
        (0, 3),
        (0, 29),
        (0, 101),
        (0, 20),
        (0, 19),
        (0, 2),
        (0, 18),
        (0, 329),
        (0, 9),
        (0, 2263),
        (0, 13),
        (0, 1),
        (0, 5),
        (0, 324),
        (0, 22),
        (0, 900),
        (0, 854),
        (0, 0),
        (0, 97),
        (0, 7),
        (0, 93),
        (0, 382),
        (0, 1714),
        (0, 55),
        (0, 1),
        (0, 28),
        (0, 95),
        (0, 337),
        (0, 0),
        (0, 26),
        (0, 847),
        (0, 195),
        (0, 25),
        (0, 32),
        (0, 0),
        (0, 437),
        (0, 2008),
        (0, 30),
        (0, 1050),
        (0, 701),
        (0, 378),
        (0, 21),
        (0, 2),
        (0, 20),
        (0, 88),
        (0, 159),
        (0, 1),
        (0, 5),
        (0, 2),
        (0, 0),
        (0, 2105),
        (0, 1),
        (0, 15),
        (0, 1),
        (0, 1),
        (0, 4),
        (0, 16),
        (0, 647),
        (0, 335),
        (0, 40),
        (0, 68),
        (0, 1218),
        (0, 187),
        (0, 6),
        (0, 23),
        (0, 5),
        (0, 0),
        (0, 15),
        (0, 0),
        (0, 489),
        (0, 5),
        (0, 353),
        (0, 7),
        (0, 167),
        (0, 104),
        (0, 41),
        (0, 321),
        (0, 156),
        (0, 294),
        (0, 0),
        (0, 66),
        (0, 191),
        (0, 192),
        (0, 48),
        (0, 14),
        (0, 370),
        (0, 62),
        (0, 32),
        (0, 108),
        (0, 12),
        (0, 1),
        (0, 199),
        (0, 154),
        (0, 40),
        (0, 49),
        (0, 178),
        (0, 14),
        (0, 0),
        (0, 3),
        (0, 243),
        (0, 17),
        (0, 102),
        (0, 192),
        (0, 24),
        (0, 5),
        (0, 1),
        (0, 305),
        (0, 599),
        (0, 10),
        (0, 12),
        (0, 2),
        (0, 0),
        (0, 3),
        (0, 1453),
        (0, 857),
        (0, 9),
        (0, 243),
        (0, 87),
        (0, 74),
        (0, 1445),
        (0, 89),
        (0, 852),
        (0, 0),
        (0, 58),
        (0, 0),
        (0, 427),
        (0, 287),
        (0, 150),
        (0, 35),
        (0, 9),
        (0, 69),
        (0, 0),
        (0, 1516),
        (0, 260),
        (0, 113),
        (0, 458),
        (0, 293),
        (0, 5),
        (0, 4),
        (0, 35),
        (0, 419),
        (0, 57),
        (0, 801),
        (0, 64),
        (0, 5),
        (0, 77),
        (0, 522),
        (0, 328),
        (0, 52),
        (0, 196),
        (0, 0),
        (0, 3),
        (0, 48),
        (0, 35),
        (0, 1912),
        (0, 25),
        (0, 0),
        (0, 1671),
        (0, 765),
        (0, 2),
        (0, 14),
        (0, 72),
        (0, 47),
        (0, 427),
        (0, 283),
        (0, 0),
        (0, 20),
        (0, 458),
        (0, 98),
        (0, 0),
        (0, 2),
        (0, 193),
        (0, 0),
        (0, 16),
        (0, 1),
        (0, 1494),
        (0, 24),
        (0, 164),
        (0, 133),
        (0, 5),
        (0, 97),
        (0, 19),
        (0, 5),
        (0, 254),
        (0, 542),
        (0, 0),
        (0, 0),
        (0, 74),
        (0, 656),
        (0, 358),
        (0, 1),
        (0, 2),
        (0, 703),
        (0, 351),
        (0, 5),
        (0, 0),
        (0, 0),
        (0, 57),
        (0, 1),
        (0, 94),
        (0, 201),
        (0, 5),
        (0, 1020),
        (0, 1351),
        (0, 357),
        (0, 3),
        (0, 101),
        (0, 152),
        (0, 343),
        (0, 41),
        (0, 87),
        (0, 27),
        (0, 151),
        (0, 730),
        (0, 0),
        (0, 218),
        (0, 87),
        (0, 0),
        (0, 0),
        (0, 4),
        (0, 144),
        (0, 1109),
        (0, 50),
        (0, 109),
        (0, 647),
        (0, 13),
        (0, 0),
        (0, 196),
        (0, 48),
        (0, 2),
        (0, 612),
        (0, 2),
        (0, 110),
        (0, 9),
        (0, 968),
        (0, 8),
        (0, 89),
        (0, 0),
        (0, 0),
        (0, 1137),
        (0, 26),
        (0, 155),
        (0, 3979),
        (0, 3),
        (0, 654),
        (0, 1981),
        (0, 954),
        (0, 981),
        (0, 662),
        (0, 160),
        (0, 1),
        (0, 164),
        (0, 1642),
        (0, 500),
        (0, 1),
        (0, 51),
        (0, 313),
        (0, 20),
        (0, 725),
        (0, 54),
        (0, 0),
        (0, 108),
        (0, 264),
        (0, 2),
        (0, 88),
        (0, 153),
        (0, 43),
        (0, 171),
        (0, 358),
        (0, 2),
        (0, 2993),
        (0, 3),
        (0, 123),
        (0, 261),
        (0, 82),
        (0, 5359),
        (0, 18),
        (0, 69),
        (0, 10),
        (0, 2678),
        (0, 144),
        (0, 2551),
        (0, 12),
        (0, 0),
        (0, 6759),
        (0, 590),
        (0, 79),
        (0, 5),
        (0, 35),
        (0, 632),
        (0, 2079),
        (0, 141),
        (0, 7213),
        (0, 1547),
        (0, 40),
        (0, 795),
        (0, 3277),
        (0, 39),
        (0, 169),
        (0, 147),
        (0, 461),
        (0, 6171),
        (0, 2),
        (0, 57),
        (0, 2),
        (0, 82),
        (0, 1),
        (0, 2354),
        (0, 20),
        (0, 1317),
        (0, 75),
        (0, 52),
        (0, 149),
        (0, 359),
        (0, 0),
        (0, 28),
        (0, 24),
        (0, 2456),
        (0, 1499),
        (0, 511),
        (0, 258),
        (0, 1707),
        (0, 103),
        (0, 6),
        (0, 4),
        (0, 22),
        (0, 586),
        (0, 2504),
        (0, 281),
        (0, 88),
        (0, 95),
        (0, 638),
        (0, 169),
        (0, 195),
        (0, 94),
        (0, 148),
        (0, 32),
        (0, 5),
        (0, 436),
        (0, 39),
        (0, 285),
        (0, 140),
        (0, 781),
        (0, 2),
        (0, 29),
        (0, 1514),
        (0, 14),
        (0, 400),
        (0, 375),
        (0, 7),
        (0, 1694),
        (0, 202),
        (0, 2511),
        (0, 238),
        (0, 7),
        (0, 7),
        (0, 15),
        (0, 20),
        (0, 277),
        (0, 9),
        (0, 9),
        (0, 178),
        (0, 364),
        (0, 1),
        (1, 0),
        (0, 1),
        (0, 3),
        (0, 57),
        (0, 113),
        (0, 1),
        (0, 38),
        (0, 0),
        (0, 277),
        (0, 39),
        (0, 0),
        (0, 5),
        (0, 100),
        (0, 158),
        (0, 50),
        (0, 7),
        (0, 34),
        (0, 657),
        (0, 702),
        (0, 0),
        (0, 0),
        (0, 6),
        (0, 507),
        (0, 1003),
        (0, 0),
        (0, 5),
        (0, 1507),
        (0, 6),
        (0, 32),
        (0, 470),
        (0, 445),
        (0, 498),
        (0, 527),
        (0, 3860),
        (0, 64),
        (0, 202),
        (0, 66),
        (0, 855),
        (0, 302),
        (0, 501),
        (0, 1),
        (0, 611),
        (0, 492),
        (0, 381),
        (0, 3),
        (0, 43),
        (0, 0),
        (0, 558),
        (0, 28),
        (0, 0),
        (0, 0),
        (0, 21),
        (0, 14),
        (0, 0),
        (0, 1082),
        (0, 28),
        (0, 605),
        (0, 4),
        (0, 0),
        (0, 2464),
        (0, 0),
        (0, 105),
        (0, 156),
        (0, 2436),
        (0, 58),
        (0, 932),
        (0, 663),
        (0, 1356),
        (0, 261),
        (0, 2),
        (0, 227),
        (0, 26),
        (0, 140),
        (0, 4),
        (0, 30),
        (0, 3581),
        (0, 419),
        (0, 2),
        (0, 134),
        (0, 1),
        (0, 170),
        (0, 0),
        (0, 447),
        (0, 6),
        (0, 124),
        (0, 331),
        (0, 0),
        (0, 52),
        (0, 68),
        (0, 0),
        (0, 31),
        (0, 8),
        (0, 936),
        (0, 1160),
        (0, 717),
        (0, 3103),
        (0, 96),
        (0, 141),
        (0, 31),
        (0, 505),
        (0, 27),
        (0, 22),
        (0, 2557),
        (0, 1169),
        (0, 2244),
        (0, 16),
        (0, 5),
        (0, 348),
        (0, 40),
        (0, 2239),
        (0, 937),
        (0, 0),
        (0, 787),
        (0, 2),
        (0, 179),
        (0, 1),
        (0, 51),
        (0, 1187),
        (0, 16),
        (0, 3),
        (0, 407),
        (0, 95),
        (0, 74),
        (0, 4155),
        (0, 78),
        (0, 594),
        (0, 44),
        (0, 21),
        (0, 201),
        (0, 265),
        (0, 135),
        (0, 5),
        (0, 326),
        (0, 1245),
        (0, 53),
        (0, 122),
        (0, 709),
        (0, 1744),
        (0, 392),
        (0, 439),
        (0, 260),
        (0, 1),
        (0, 954),
        (0, 3),
        (0, 961),
        (0, 74),
        (0, 12),
        (0, 979),
        (0, 28),
        (0, 35),
        (0, 527),
        (0, 6),
        (0, 408),
        (0, 232),
        (0, 1),
        (0, 39),
        (0, 6719),
        (0, 0),
        (0, 0),
        (0, 8),
        (0, 1058),
        (0, 184),
        (0, 19),
        (0, 1057),
        (0, 2),
        (0, 36),
        (0, 68),
        (0, 832),
        (0, 25),
        (0, 0),
        (0, 52),
        (0, 330),
        (0, 172),
        (0, 166),
        (0, 11),
        (0, 67),
        (0, 140),
        (0, 1288),
        (0, 159),
        (0, 22),
        (0, 729),
        (0, 46),
        (0, 979),
        (0, 111),
        (0, 1240),
        (0, 7),
        (0, 2281),
        (0, 0),
        (0, 44),
        (0, 34),
        (0, 19),
        (0, 19),
        (0, 278),
        (0, 83),
        (0, 20),
        (0, 1),
        (0, 8),
        (0, 455),
        (0, 935),
        (0, 0),
        (0, 169),
        (0, 36),
        (0, 357),
        (0, 0),
        (0, 1670),
        (0, 18),
        (0, 697),
        (0, 195),
        (0, 11),
        (0, 170),
        (0, 4091),
        (0, 2140),
        (0, 2941),
        (0, 824),
        (0, 3274),
        (0, 43),
        (0, 178),
        (0, 1320),
        (0, 729),
        (0, 12),
        (0, 0),
        (0, 67),
        (1, 2294),
        (0, 163),
        (0, 0),
        (0, 1493),
        (0, 68),
        (0, 1),
        (0, 15),
        (0, 1),
        (0, 16),
        (0, 876),
        (0, 4),
        (0, 13),
        (0, 499),
        (0, 2),
        (0, 6951),
        (0, 1069),
        (0, 220),
        (0, 155),
        (0, 2246),
        (0, 2),
        (0, 2204),
        (0, 43),
        (0, 38),
        (0, 19),
        (0, 48),
        (0, 156),
        (0, 835),
        (0, 3),
        (0, 857),
        (0, 375),
        (0, 17),
        (0, 17),
        (0, 375),
        (0, 12),
        (0, 28),
        (0, 28),
        (0, 111),
        (0, 151),
        (0, 1519),
        (0, 2),
        (0, 1449),
        (0, 0),
        (0, 39),
        (0, 46),
        (0, 1130),
        (0, 95),
        (0, 80),
        (0, 1276),
        (0, 140),
        (0, 311),
        (0, 121),
        (0, 762),
        (0, 41),
        (0, 42),
        (0, 82),
        (0, 140),
        (0, 1767),
        (0, 78),
        (0, 1),
        (0, 81),
        (0, 201),
        (0, 2),
        (0, 183),
        (0, 221),
        (0, 47),
        (0, 3),
        (0, 20),
        (0, 96),
        (0, 20),
        (0, 3),
        (0, 3788),
        (0, 1),
        (0, 2090),
        (0, 4),
        (0, 3),
        (0, 4),
        (0, 109),
        (0, 159),
        (0, 1126),
        (0, 330),
        (0, 29),
        (0, 0),
        (0, 3929),
        (0, 356),
        (0, 849),
        (0, 361),
        (0, 65),
        (0, 16),
        (0, 140),
        (0, 1457),
        (0, 1450),
        (0, 0),
        (0, 66),
        (0, 33),
        (0, 68),
        (0, 1),
        (0, 1372),
        (0, 5035),
        (0, 2524),
        (0, 27),
        (0, 66),
        (0, 88),
        (1, 32),
        (0, 96),
        (0, 692),
        (0, 3),
        (0, 227),
        (0, 54),
        (0, 34),
        (0, 0),
        (0, 6),
        (0, 2634),
        (0, 727),
        (0, 24),
        (0, 447),
        (0, 104),
        (0, 19),
        (0, 910),
        (0, 2133),
        (0, 1),
        (0, 15),
        (0, 48),
        (0, 285),
        (0, 357),
        (0, 48),
        (0, 23),
        (0, 238),
        (0, 1621),
        (0, 19),
        (0, 23),
        (0, 1865),
        (0, 452),
        (0, 529),
        (0, 1842),
        (0, 277),
        (0, 440),
        (0, 856),
        (0, 0),
        (0, 2723),
        (0, 0),
        (0, 75),
        (0, 0),
        (0, 24),
        (0, 621),
        (0, 2704),
        (0, 10),
        (0, 161),
        (0, 0),
        (0, 36),
        (0, 1271),
        (0, 32),
        (0, 1),
        (0, 788),
        (0, 87),
        (0, 560),
        (0, 2),
        (0, 35),
        (0, 35),
        (0, 2838),
        (0, 2462),
        (0, 2756),
        (0, 1),
        (0, 754),
        (0, 6),
        (0, 238),
        (0, 82),
        (0, 94),
        (0, 6),
        (0, 350),
        (0, 11),
        (0, 724),
        (0, 217),
        (0, 31),
        (0, 1077),
        (0, 59),
        (0, 3047),
        (0, 1314),
        (0, 2591),
        (0, 117),
        (0, 45),
        (0, 5),
        (0, 0),
        (0, 1850),
        (0, 261),
        (0, 0),
        (0, 362),
        (0, 7224),
        (0, 26),
        (0, 126),
        (0, 2966),
        (0, 4762),
        (0, 854),
        (0, 602),
        (0, 355),
        (0, 414),
        (0, 13),
        (0, 130),
        (0, 20),
        (0, 91),
        (0, 335),
        (0, 860),
        (0, 1085),
        (0, 3995),
        (0, 0),
        (0, 313),
        (0, 35),
        (0, 1),
        (0, 1376),
        (0, 3585),
        (0, 42),
        (0, 69),
        (0, 1),
        (0, 238),
        (0, 1796),
        (0, 3098),
        (0, 3410),
        (0, 2760),
        (0, 70),
        (0, 64),
        (0, 6),
        (0, 443),
        (0, 627),
        (0, 91),
        (0, 25),
        (0, 140),
        (0, 16),
        (0, 164),
        (0, 1),
        (0, 678),
        (0, 114),
        (0, 59),
        (0, 3130),
        (0, 132),
        (0, 902),
        (1, 3167),
        (0, 42),
        (0, 1627),
        (0, 168),
        (0, 1129),
        (0, 944),
        (0, 1189),
        (0, 11),
        (0, 3405),
        (0, 546),
        (0, 0),
        (0, 3),
        (0, 15),
        (0, 116),
        (0, 57),
        (0, 1011),
        (0, 24),
        (0, 384),
        (0, 9),
        (0, 129),
        (0, 214),
        (0, 0),
        (1, 2165),
        (0, 1),
        (0, 355),
        (0, 1852),
        (0, 744),
        (0, 2256),
        (0, 66),
        (0, 2748),
        (0, 0),
        (0, 72),
        (0, 128),
        (0, 4),
        (0, 2485),
        (0, 4),
        (0, 168),
        (1, 5057),
        (0, 1472),
        (0, 807),
        (0, 156),
        (0, 24),
        (0, 2949),
        (0, 63),
        (0, 5056),
        (0, 325),
        (0, 5),
        (0, 16),
        (0, 10),
        (0, 121),
        (0, 514),
        (0, 36),
        (0, 15),
        (0, 0),
        (0, 32),
        (0, 29),
        (0, 188),
        (0, 5101),
        (0, 0),
        (0, 3),
        (0, 1431),
        (0, 81),
        (0, 3953),
        (0, 5504),
        (0, 566),
        (0, 2761),
        (0, 0),
        (0, 5562),
        (0, 534),
        (0, 1),
        (0, 3688),
        (0, 63),
        (0, 122),
        (0, 0),
        (0, 867),
        (0, 17),
        (0, 4587),
        (0, 772),
        (0, 2896),
        (0, 1),
        (0, 1001),
        (0, 263),
        (0, 490),
        (0, 212),
        (0, 11),
        (0, 31),
        (0, 604),
        (0, 1220),
        (0, 15),
        (0, 174),
        (0, 1018),
        (0, 8),
        (0, 1),
        (0, 2719),
        (0, 1944),
        (0, 3),
        (0, 4663),
        (0, 2632),
        (0, 981),
        (0, 53),
        (0, 195),
        (0, 4648),
        (0, 338),
        (0, 4953),
        (0, 4),
        (0, 2789),
        (0, 38),
        (0, 246),
        (0, 201),
        (0, 1393),
        (0, 2300),
        (0, 7220),
        (0, 3),
        (0, 62),
        (0, 1400),
        (0, 15),
        (0, 275),
        (0, 4852),
        (0, 206),
        (0, 7432),
        (0, 1580),
        (0, 5140),
        (0, 6451),
        (0, 471),
        (0, 17),
        (0, 476),
        (0, 2),
        (0, 37),
        (0, 929),
        (0, 6),
        (0, 157),
        (0, 3459),
        (0, 3486),
        (0, 1753),
        (0, 882),
        (0, 102),
        (0, 1),
        (0, 7),
        (0, 5),
        (0, 5),
        (0, 2),
        (0, 159),
        (0, 5),
        (0, 48),
        (0, 525),
        (0, 1),
        (0, 2369),
        (0, 57),
        (0, 25),
        (0, 73),
        (0, 2874),
        (0, 1129),
        (0, 4038),
        (0, 4185),
        (0, 85),
        (0, 1567),
        (0, 1262),
        (0, 138),
        (0, 21),
        (0, 25),
        (0, 12),
        (0, 2532),
        (0, 5),
        (0, 927),
        (0, 249),
        (0, 0),
        (0, 1),
        (0, 345),
        (0, 671),
        (0, 373),
        (0, 480),
        (0, 76),
        (0, 1172),
        (0, 210),
        (0, 4578),
        (0, 923),
        (0, 418),
        (0, 372),
        (0, 64),
        (0, 221),
        (0, 77),
        (0, 557),
        (0, 1415),
        (0, 6119),
        (0, 155),
        (0, 32),
        (0, 0),
        (0, 222),
        (0, 130),
        (0, 177),
        (0, 460),
        (0, 51),
        (0, 2351),
        (0, 3),
        (0, 2776),
        (0, 9),
        (0, 34),
        (0, 494),
        (1, 141),
        (0, 4781),
        (0, 108),
        (0, 1899),
        (0, 1472),
        (0, 108),
        (0, 20),
        (0, 1550),
        (0, 33),
        (0, 293),
        (0, 1),
        (0, 39),
        (0, 63),
        (0, 1102),
        (0, 1084),
        (0, 107),
        (0, 18),
        (0, 2583),
        (0, 4925),
        (0, 148),
        (0, 468),
        (0, 24),
        (0, 7868),
        (0, 4016),
        (0, 13),
        (0, 1081),
        (0, 0),
        (0, 10),
        (0, 1299),
        (0, 6),
        (0, 7037),
        (0, 560),
        (0, 7),
        (0, 67),
        (0, 79),
        (0, 0),
        (0, 0),
        (0, 4383),
        (0, 4),
        (0, 3860),
        (0, 6163),
        (1, 2519),
        (1, 1969),
        (1, 5541),
        (0, 523),
        (0, 306),
        (0, 77),
        (0, 2884),
        (0, 4),
        (1, 1083),
        (0, 107),
        (0, 79),
        (0, 0),
        (0, 35),
        (0, 2),
        (0, 189),
        (0, 3818),
        (0, 588),
        (0, 70),
        (0, 1),
        (0, 250),
        (0, 176),
        (0, 56),
        (0, 184),
        (0, 4109),
        (0, 264),
        (0, 1921),
        (0, 105),
        (0, 411),
        (0, 4227),
        (0, 3478),
        (0, 391),
        (0, 3),
        (0, 19),
        (0, 2151),
        (0, 22),
        (0, 1564),
        (0, 5650),
        (0, 2002),
        (0, 3784),
        (0, 127),
        (0, 341),
        (0, 443),
        (0, 1165),
        (0, 18),
        (0, 275),
        (0, 299),
        (0, 281),
        (0, 31),
        (0, 31),
        (0, 0),
        (1, 3724),
        (0, 1405),
        (0, 4943),
        (0, 54),
        (0, 326),
        (0, 304),
        (0, 1759),
        (0, 0),
        (0, 49),
        (0, 7799),
        (0, 744),
        (0, 1977),
        (0, 280),
        (0, 9),
        (0, 432),
        (0, 174),
        (0, 1057),
        (0, 1403),
        (0, 575),
        (0, 1),
        (0, 327),
        (0, 400),
        (0, 29),
        (0, 6),
        (0, 469),
        (0, 2169),
        (0, 0),
        (0, 1),
        (0, 363),
        (0, 2),
        (0, 3351),
        (0, 53),
        (0, 1040),
        (1, 1087),
        (0, 2487),
        (2, 2230),
        (0, 1),
        (0, 4834),
        (0, 1),
        (0, 0),
        (0, 7),
        (0, 1),
        (3, 1440),
        (0, 0),
        (0, 6612),
        (0, 4557),
        (0, 30),
        (0, 288),
        (0, 20),
        (0, 105),
        (0, 71),
        (0, 1357),
        (1, 1968),
        (0, 1773),
        (0, 731),
        (0, 96),
        (0, 599),
        (0, 1180),
        (0, 389),
        (0, 785),
        (0, 302),
        (0, 1),
        (0, 1015),
        (2, 2642),
        (1, 5726),
        (0, 57),
        (0, 965),
        (0, 19),
        (0, 453),
        (0, 19),
        (0, 4581),
        (0, 2794),
        (0, 6),
        (0, 2682),
        (0, 15),
        (0, 44),
        (0, 4),
        (0, 6),
        (0, 1719),
        (0, 69),
        (0, 38),
        (0, 0),
        (1, 3340),
        (0, 229),
        (0, 574),
        (0, 3708),
        (0, 1563),
        (0, 8),
        (0, 12),
        (0, 4101),
        (0, 73),
        (0, 198),
        (0, 2802),
        (3, 7094),
        (0, 9),
        (0, 1441),
        (0, 9),
        (0, 3),
        (0, 2508),
        (0, 965),
        (0, 13),
        (0, 4236),
        (0, 0),
        (0, 2),
        (0, 358),
        (0, 1933),
        (0, 1279),
        (1, 1194),
        (1, 2050),
        (0, 5258),
        (0, 0),
        (0, 616),
        (0, 427),
        (0, 4666),
        (0, 537),
        (0, 106),
        (0, 31),
        (0, 0),
        (0, 252),
        (0, 65),
        (0, 269),
        (0, 1144),
        (0, 4790),
        (2, 2479),
        (0, 74),
        (0, 11),
        (0, 3527),
        (1, 117),
        (0, 68),
        (0, 2513),
        (0, 214),
        (0, 4288),
        (2, 6623),
        (0, 24),
        (0, 68),
        (0, 18),
        (2, 2966),
        (0, 24),
        (0, 1205),
        (1, 2453),
        (1, 3786),
        (0, 118),
        (0, 84),
        (0, 194),
        (0, 121),
        (0, 45),
        (0, 899),
        (2, 3066),
        (0, 444),
        (0, 1161),
        (1, 4332),
        (0, 821),
        (0, 1338),
        (0, 665),
        (0, 5352),
        (0, 4974),
        (2, 1551),
        (0, 987),
        (0, 175),
        (1, 3059),
        (0, 5),
        (0, 1),
        (0, 1),
        (0, 86),
        (0, 56),
        (0, 1272),
        (0, 761),
        (0, 1),
        (0, 485),
        (0, 14),
        (0, 3),
        (0, 4),
        (0, 0),
        (0, 1),
        (0, 545),
        (0, 4869),
        (3, 1179),
        (0, 1394),
        (0, 602),
        (0, 31),
        (0, 13),
        (0, 288),
        (5, 415),
        (1, 1973),
        (0, 294),
        (0, 3715),
        (0, 53),
        (1, 2303),
        (0, 44),
        (0, 8),
        (0, 1139),
        (0, 479),
        (0, 4087),
        (1, 1930),
        (1, 417),
        (2, 7599),
        (0, 14),
        (0, 2067),
        (0, 909),
        (0, 1949),
        (3, 2657),
        (0, 1),
        (0, 3),
        (0, 1175),
        (2, 4299),
        (2, 1244),
        (0, 29),
        (0, 4),
        (0, 6022),
        (0, 6293),
        (0, 187),
        (2, 384),
        (0, 0),
        (0, 26),
        (0, 5293),
        (0, 1680),
        (0, 221),
        (0, 7718),
        (0, 325),
        (0, 1768),
        (1, 3240),
        (0, 2),
        (0, 33),
        (1, 101),
        (0, 3499),
    ],
    entries: &[
        ("ArrayOfDeviceNotFound", TypeInfo::Value { name: "ArrayOfDeviceNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_device_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_device_not_found) }),
        ("VmwareDistributedVirtualSwitchRealTimeConfig", TypeInfo::Object { name: "VmwareDistributedVirtualSwitchRealTimeConfig", builder_fn: || Box::new(VmwareDistributedVirtualSwitchRealTimeConfigFields::new()) }),
        ("ExtensionClientInfo", TypeInfo::Object { name: "ExtensionClientInfo", builder_fn: || Box::new(ExtensionClientInfoFields::new()) }),
        ("ArrayOfDatastoreCapacityIncreasedEvent", TypeInfo::Value { name: "ArrayOfDatastoreCapacityIncreasedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_capacity_increased_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_capacity_increased_event) }),
        ("ArrayOfDirectPathProfileManagerVmiopDirectPathConfig", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerVmiopDirectPathConfig", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerVmiopDirectPathConfig>>(wrap_array_of_direct_path_profile_manager_vmiop_direct_path_config), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerVmiopDirectPathConfig>>(v, wrap_array_of_direct_path_profile_manager_vmiop_direct_path_config) }),
        ("ArrayOfCryptoManagerKmipCustomAttributeSpec", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipCustomAttributeSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerKmipCustomAttributeSpec>>(wrap_array_of_crypto_manager_kmip_custom_attribute_spec), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerKmipCustomAttributeSpec>>(v, wrap_array_of_crypto_manager_kmip_custom_attribute_spec) }),
        ("HostNvmeController", TypeInfo::Object { name: "HostNvmeController", builder_fn: || Box::new(HostNvmeControllerFields::new()) }),
        ("ArrayOfVslmTaskReasonAlarm", TypeInfo::Value { name: "ArrayOfVslmTaskReasonAlarm", make_deserializer: || make_deser_with::<Vec<super::structs::VslmTaskReasonAlarm>>(wrap_array_of_vslm_task_reason_alarm), from_value: |v| from_val_with::<Vec<super::structs::VslmTaskReasonAlarm>>(v, wrap_array_of_vslm_task_reason_alarm) }),
        ("HttpNfcLeaseDatastoreLeaseInfo", TypeInfo::Object { name: "HttpNfcLeaseDatastoreLeaseInfo", builder_fn: || Box::new(HttpNfcLeaseDatastoreLeaseInfoFields::new()) }),
        ("ArrayOfQueryVsanManagedStorageSpaceUsageSpec", TypeInfo::Value { name: "ArrayOfQueryVsanManagedStorageSpaceUsageSpec", make_deserializer: || make_deser_with::<Vec<super::structs::QueryVsanManagedStorageSpaceUsageSpec>>(wrap_array_of_query_vsan_managed_storage_space_usage_spec), from_value: |v| from_val_with::<Vec<super::structs::QueryVsanManagedStorageSpaceUsageSpec>>(v, wrap_array_of_query_vsan_managed_storage_space_usage_spec) }),
        ("ArrayOfHostGraphicsConfigDeviceType", TypeInfo::Value { name: "ArrayOfHostGraphicsConfigDeviceType", make_deserializer: || make_deser_with::<Vec<super::structs::HostGraphicsConfigDeviceType>>(wrap_array_of_host_graphics_config_device_type), from_value: |v| from_val_with::<Vec<super::structs::HostGraphicsConfigDeviceType>>(v, wrap_array_of_host_graphics_config_device_type) }),
        ("NotSupportedHostForVmemFile", TypeInfo::Object { name: "NotSupportedHostForVmemFile", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedHostForVmemFile))) }),
        ("DvsNetworkRuleAction", TypeInfo::Object { name: "DvsNetworkRuleAction", builder_fn: || Box::new(DvsNetworkRuleActionFields::new()) }),
        ("VmDasBeingResetEvent", TypeInfo::Object { name: "VmDasBeingResetEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDasBeingResetEvent))) }),
        ("ArrayOfGuestOperationsFault", TypeInfo::Value { name: "ArrayOfGuestOperationsFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_operations_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_operations_fault) }),
        ("ArrayOfVsanHostPropertyRetrieveIssue", TypeInfo::Value { name: "ArrayOfVsanHostPropertyRetrieveIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostPropertyRetrieveIssue>>(wrap_array_of_vsan_host_property_retrieve_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanHostPropertyRetrieveIssue>>(v, wrap_array_of_vsan_host_property_retrieve_issue) }),
        ("VsanKmsHealth", TypeInfo::Object { name: "VsanKmsHealth", builder_fn: || Box::new(VsanKmsHealthFields::new()) }),
        ("NonHomeRDMVMotionNotSupported", TypeInfo::Object { name: "NonHomeRDMVMotionNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NonHomeRdmvMotionNotSupported))) }),
        ("ArrayOfEVCAdmissionFailedCPUFeaturesForMode", TypeInfo::Value { name: "ArrayOfEVCAdmissionFailedCPUFeaturesForMode", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_admission_failed_cpu_features_for_mode), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_admission_failed_cpu_features_for_mode) }),
        ("ProfileEventArgument", TypeInfo::Object { name: "ProfileEventArgument", builder_fn: || Box::new(ProfileEventArgumentFields::new()) }),
        ("ArrayOfVmGuestShutdownEvent", TypeInfo::Value { name: "ArrayOfVmGuestShutdownEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_guest_shutdown_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_guest_shutdown_event) }),
        ("ArrayOfDatacenterMismatch", TypeInfo::Value { name: "ArrayOfDatacenterMismatch", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_datacenter_mismatch), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_datacenter_mismatch) }),
        ("CnsVolumeExtendSpec", TypeInfo::Object { name: "CnsVolumeExtendSpec", builder_fn: || Box::new(CnsVolumeExtendSpecFields::new()) }),
        ("OrAlarmExpression", TypeInfo::Object { name: "OrAlarmExpression", builder_fn: || Box::new(OrAlarmExpressionFields::new()) }),
        ("VsanVdsPgMigrationVmInfo", TypeInfo::Object { name: "VsanVdsPgMigrationVmInfo", builder_fn: || Box::new(VsanVdsPgMigrationVmInfoFields::new()) }),
        ("TaskInfoState", TypeInfo::Value { name: "TaskInfoState", make_deserializer: || make_deser_with::<super::enums::TaskInfoStateEnum>(wrap_task_info_state), from_value: |v| from_val_with::<super::enums::TaskInfoStateEnum>(v, wrap_task_info_state) }),
        ("ArrayOfPbmExtendedElementDescription", TypeInfo::Value { name: "ArrayOfPbmExtendedElementDescription", make_deserializer: || make_deser_with::<Vec<super::structs::PbmExtendedElementDescription>>(wrap_array_of_pbm_extended_element_description), from_value: |v| from_val_with::<Vec<super::structs::PbmExtendedElementDescription>>(v, wrap_array_of_pbm_extended_element_description) }),
        ("DvsRenamedEvent", TypeInfo::Object { name: "DvsRenamedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsRenamedEvent))) }),
        ("ArrayOfCryptoKeyId", TypeInfo::Value { name: "ArrayOfCryptoKeyId", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoKeyId>>(wrap_array_of_crypto_key_id), from_value: |v| from_val_with::<Vec<super::structs::CryptoKeyId>>(v, wrap_array_of_crypto_key_id) }),
        ("TypeDescription", TypeInfo::Object { name: "TypeDescription", builder_fn: || Box::new(TypeDescriptionFields::new()) }),
        ("VsanHclDiskInfo", TypeInfo::Object { name: "VsanHclDiskInfo", builder_fn: || Box::new(VsanHclDiskInfoFields::new()) }),
        ("ArrayOfHostSystemInfo", TypeInfo::Value { name: "ArrayOfHostSystemInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemInfo>>(wrap_array_of_host_system_info), from_value: |v| from_val_with::<Vec<super::structs::HostSystemInfo>>(v, wrap_array_of_host_system_info) }),
        ("ArrayOfHostIpConfigIpV6AddressConfiguration", TypeInfo::Value { name: "ArrayOfHostIpConfigIpV6AddressConfiguration", make_deserializer: || make_deser_with::<Vec<super::structs::HostIpConfigIpV6AddressConfiguration>>(wrap_array_of_host_ip_config_ip_v_6_address_configuration), from_value: |v| from_val_with::<Vec<super::structs::HostIpConfigIpV6AddressConfiguration>>(v, wrap_array_of_host_ip_config_ip_v_6_address_configuration) }),
        ("ArrayOfHostVMotionCompatibility", TypeInfo::Value { name: "ArrayOfHostVMotionCompatibility", make_deserializer: || make_deser_with::<Vec<super::structs::HostVMotionCompatibility>>(wrap_array_of_host_v_motion_compatibility), from_value: |v| from_val_with::<Vec<super::structs::HostVMotionCompatibility>>(v, wrap_array_of_host_v_motion_compatibility) }),
        ("ArrayOfStorageDrsIolbDisabledInternally", TypeInfo::Value { name: "ArrayOfStorageDrsIolbDisabledInternally", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_iolb_disabled_internally), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_iolb_disabled_internally) }),
        ("ArrayOfAgentVsanStoragePolicy", TypeInfo::Value { name: "ArrayOfAgentVsanStoragePolicy", make_deserializer: || make_deser_with::<Vec<super::structs::AgentVsanStoragePolicy>>(wrap_array_of_agent_vsan_storage_policy), from_value: |v| from_val_with::<Vec<super::structs::AgentVsanStoragePolicy>>(v, wrap_array_of_agent_vsan_storage_policy) }),
        ("HotSnapshotMoveNotSupported", TypeInfo::Object { name: "HotSnapshotMoveNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HotSnapshotMoveNotSupported))) }),
        ("ArrayOfVsanHostConfigInfoNetworkInfoPortConfig", TypeInfo::Value { name: "ArrayOfVsanHostConfigInfoNetworkInfoPortConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_host_config_info_network_info_port_config_array)), from_value: |v| cast_to_vsan_host_config_info_network_info_port_config_array(from_value(v)?) }),
        ("PerfQuerySpec", TypeInfo::Object { name: "PerfQuerySpec", builder_fn: || Box::new(PerfQuerySpecFields::new()) }),
        ("vslmInfrastructureObjectPolicySpec", TypeInfo::Object { name: "vslmInfrastructureObjectPolicySpec", builder_fn: || Box::new(VslmInfrastructureObjectPolicySpecFields::new()) }),
        ("ArrayOfClusterDasVmSettings", TypeInfo::Value { name: "ArrayOfClusterDasVmSettings", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasVmSettings>>(wrap_array_of_cluster_das_vm_settings), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasVmSettings>>(v, wrap_array_of_cluster_das_vm_settings) }),
        ("NumPortsProfile", TypeInfo::Object { name: "NumPortsProfile", builder_fn: || Box::new(NumPortsProfileFields::new()) }),
        ("ArrayOfTypeDescription", TypeInfo::Value { name: "ArrayOfTypeDescription", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_type_description_array)), from_value: |v| cast_to_type_description_array(from_value(v)?) }),
        ("ClusterFailoverLevelAdmissionControlInfo", TypeInfo::Object { name: "ClusterFailoverLevelAdmissionControlInfo", builder_fn: || Box::new(ClusterFailoverLevelAdmissionControlInfoFields::new()) }),
        ("ArrayOfCustomizationPrefixName", TypeInfo::Value { name: "ArrayOfCustomizationPrefixName", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationPrefixName>>(wrap_array_of_customization_prefix_name), from_value: |v| from_val_with::<Vec<super::structs::CustomizationPrefixName>>(v, wrap_array_of_customization_prefix_name) }),
        ("VmBeingClonedNoFolderEvent", TypeInfo::Object { name: "VmBeingClonedNoFolderEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmBeingClonedNoFolderEvent))) }),
        ("HostSriovConfig", TypeInfo::Object { name: "HostSriovConfig", builder_fn: || Box::new(HostSriovConfigFields::new()) }),
        ("ArrayOfProviderUnavailable", TypeInfo::Value { name: "ArrayOfProviderUnavailable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_provider_unavailable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_provider_unavailable) }),
        ("ArrayOfVsanHwToVcgInfoMappingSpec", TypeInfo::Value { name: "ArrayOfVsanHwToVcgInfoMappingSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHwToVcgInfoMappingSpec>>(wrap_array_of_vsan_hw_to_vcg_info_mapping_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanHwToVcgInfoMappingSpec>>(v, wrap_array_of_vsan_hw_to_vcg_info_mapping_spec) }),
        ("ArrayOfGuestRegistryFault", TypeInfo::Value { name: "ArrayOfGuestRegistryFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_registry_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_registry_fault) }),
        ("ArrayOfNumPortsProfile", TypeInfo::Value { name: "ArrayOfNumPortsProfile", make_deserializer: || make_deser_with::<Vec<super::structs::NumPortsProfile>>(wrap_array_of_num_ports_profile), from_value: |v| from_val_with::<Vec<super::structs::NumPortsProfile>>(v, wrap_array_of_num_ports_profile) }),
        ("ArrayOfFailoverParam", TypeInfo::Value { name: "ArrayOfFailoverParam", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_failover_param_array)), from_value: |v| cast_to_failover_param_array(from_value(v)?) }),
        ("DeviceBackingNotSupported", TypeInfo::Object { name: "DeviceBackingNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DeviceBackingNotSupported))) }),
        ("VsanClusterVMsHealthOverallResult", TypeInfo::Object { name: "VsanClusterVMsHealthOverallResult", builder_fn: || Box::new(VsanClusterVMsHealthOverallResultFields::new()) }),
        ("VirtualMachineMovePriority", TypeInfo::Value { name: "VirtualMachineMovePriority", make_deserializer: || make_deser_with::<super::enums::VirtualMachineMovePriorityEnum>(wrap_virtual_machine_move_priority), from_value: |v| from_val_with::<super::enums::VirtualMachineMovePriorityEnum>(v, wrap_virtual_machine_move_priority) }),
        ("GuestNicInfo", TypeInfo::Object { name: "GuestNicInfo", builder_fn: || Box::new(GuestNicInfoFields::new()) }),
        ("ArrayOfHostVfatVolume", TypeInfo::Value { name: "ArrayOfHostVfatVolume", make_deserializer: || make_deser_with::<Vec<super::structs::HostVfatVolume>>(wrap_array_of_host_vfat_volume), from_value: |v| from_val_with::<Vec<super::structs::HostVfatVolume>>(v, wrap_array_of_host_vfat_volume) }),
        ("ArrayOfIoFilterManagerSslTrust", TypeInfo::Value { name: "ArrayOfIoFilterManagerSslTrust", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_io_filter_manager_ssl_trust_array)), from_value: |v| cast_to_io_filter_manager_ssl_trust_array(from_value(v)?) }),
        ("ArrayOfInvalidCollectorVersion", TypeInfo::Value { name: "ArrayOfInvalidCollectorVersion", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_collector_version), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_collector_version) }),
        ("ArrayOfAction", TypeInfo::Value { name: "ArrayOfAction", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_action_array)), from_value: |v| cast_to_action_array(from_value(v)?) }),
        ("ArrayOfPlatformConfigFault", TypeInfo::Value { name: "ArrayOfPlatformConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_platform_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_platform_config_fault) }),
        ("ArrayOfVsanHostComponentSyncState", TypeInfo::Value { name: "ArrayOfVsanHostComponentSyncState", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostComponentSyncState>>(wrap_array_of_vsan_host_component_sync_state), from_value: |v| from_val_with::<Vec<super::structs::VsanHostComponentSyncState>>(v, wrap_array_of_vsan_host_component_sync_state) }),
        ("HostProfileConfigSpec", TypeInfo::Object { name: "HostProfileConfigSpec", builder_fn: || Box::new(HostProfileConfigSpecFields::new()) }),
        ("NetworkRollbackEvent", TypeInfo::Object { name: "NetworkRollbackEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::NetworkRollbackEvent))) }),
        ("ArrayOfVspanPortMoveFault", TypeInfo::Value { name: "ArrayOfVspanPortMoveFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vspan_port_move_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vspan_port_move_fault) }),
        ("ArrayOfVStorageObjectReconcileResult", TypeInfo::Value { name: "ArrayOfVStorageObjectReconcileResult", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectReconcileResult>>(wrap_array_of_v_storage_object_reconcile_result), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectReconcileResult>>(v, wrap_array_of_v_storage_object_reconcile_result) }),
        ("HbrDiskMigrationAction", TypeInfo::Object { name: "HbrDiskMigrationAction", builder_fn: || Box::new(HbrDiskMigrationActionFields::new()) }),
        ("ArrayOfDatacenterMismatchArgument", TypeInfo::Value { name: "ArrayOfDatacenterMismatchArgument", make_deserializer: || make_deser_with::<Vec<super::structs::DatacenterMismatchArgument>>(wrap_array_of_datacenter_mismatch_argument), from_value: |v| from_val_with::<Vec<super::structs::DatacenterMismatchArgument>>(v, wrap_array_of_datacenter_mismatch_argument) }),
        ("ArrayOfVirtualNVMEControllerOption", TypeInfo::Value { name: "ArrayOfVirtualNVMEControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualNvmeControllerOption>>(wrap_array_of_virtual_nvme_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualNvmeControllerOption>>(v, wrap_array_of_virtual_nvme_controller_option) }),
        ("HostNasVolumeUserInfo", TypeInfo::Object { name: "HostNasVolumeUserInfo", builder_fn: || Box::new(HostNasVolumeUserInfoFields::new()) }),
        ("HostNoAvailableNetworksEvent", TypeInfo::Object { name: "HostNoAvailableNetworksEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostNoAvailableNetworksEvent))) }),
        ("VsanHostGlobalDedupConfigHealthSummary", TypeInfo::Object { name: "VsanHostGlobalDedupConfigHealthSummary", builder_fn: || Box::new(VsanHostGlobalDedupConfigHealthSummaryFields::new()) }),
        ("HostNatServicePortForwardSpec", TypeInfo::Object { name: "HostNatServicePortForwardSpec", builder_fn: || Box::new(HostNatServicePortForwardSpecFields::new()) }),
        ("KmipServerStatus", TypeInfo::Object { name: "KmipServerStatus", builder_fn: || Box::new(KmipServerStatusFields::new()) }),
        ("ArrayOfVmFaultToleranceIssue", TypeInfo::Value { name: "ArrayOfVmFaultToleranceIssue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_fault_tolerance_issue), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_fault_tolerance_issue) }),
        ("ArrayOfDirectPathProfileManagerCapacityQueryById", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerCapacityQueryById", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerCapacityQueryById>>(wrap_array_of_direct_path_profile_manager_capacity_query_by_id), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerCapacityQueryById>>(v, wrap_array_of_direct_path_profile_manager_capacity_query_by_id) }),
        ("VirtualMachineSnapshotInfo", TypeInfo::Object { name: "VirtualMachineSnapshotInfo", builder_fn: || Box::new(VirtualMachineSnapshotInfoFields::new()) }),
        ("ArrayOfVirtualMachineBootOptions", TypeInfo::Value { name: "ArrayOfVirtualMachineBootOptions", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineBootOptions>>(wrap_array_of_virtual_machine_boot_options), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineBootOptions>>(v, wrap_array_of_virtual_machine_boot_options) }),
        ("ArrayOfClusterFailoverHostAdmissionControlInfoHostStatus", TypeInfo::Value { name: "ArrayOfClusterFailoverHostAdmissionControlInfoHostStatus", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterFailoverHostAdmissionControlInfoHostStatus>>(wrap_array_of_cluster_failover_host_admission_control_info_host_status), from_value: |v| from_val_with::<Vec<super::structs::ClusterFailoverHostAdmissionControlInfoHostStatus>>(v, wrap_array_of_cluster_failover_host_admission_control_info_host_status) }),
        ("VsanPolicyCost", TypeInfo::Object { name: "VsanPolicyCost", builder_fn: || Box::new(VsanPolicyCostFields::new()) }),
        ("VirtualEthernetCardDistributedVirtualPortBackingInfo", TypeInfo::Object { name: "VirtualEthernetCardDistributedVirtualPortBackingInfo", builder_fn: || Box::new(VirtualEthernetCardDistributedVirtualPortBackingInfoFields::new()) }),
        ("VirtualMachineDatastoreInfo", TypeInfo::Object { name: "VirtualMachineDatastoreInfo", builder_fn: || Box::new(VirtualMachineDatastoreInfoFields::new()) }),
        ("ArrayOfClusterAgentTransitionFailed", TypeInfo::Value { name: "ArrayOfClusterAgentTransitionFailed", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentTransitionFailed>>(wrap_array_of_cluster_agent_transition_failed), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentTransitionFailed>>(v, wrap_array_of_cluster_agent_transition_failed) }),
        ("ArrayOfActiveDirectoryProfile", TypeInfo::Value { name: "ArrayOfActiveDirectoryProfile", make_deserializer: || make_deser_with::<Vec<super::structs::ActiveDirectoryProfile>>(wrap_array_of_active_directory_profile), from_value: |v| from_val_with::<Vec<super::structs::ActiveDirectoryProfile>>(v, wrap_array_of_active_directory_profile) }),
        ("DistributedVirtualSwitchManagerDvsProductSpec", TypeInfo::Object { name: "DistributedVirtualSwitchManagerDvsProductSpec", builder_fn: || Box::new(DistributedVirtualSwitchManagerDvsProductSpecFields::new()) }),
        ("VslmVsoVStorageObjectAssociations", TypeInfo::Object { name: "VslmVsoVStorageObjectAssociations", builder_fn: || Box::new(VslmVsoVStorageObjectAssociationsFields::new()) }),
        ("ArrayOfVirtualDiskVFlashCacheConfigInfo", TypeInfo::Value { name: "ArrayOfVirtualDiskVFlashCacheConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskVFlashCacheConfigInfo>>(wrap_array_of_virtual_disk_v_flash_cache_config_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskVFlashCacheConfigInfo>>(v, wrap_array_of_virtual_disk_v_flash_cache_config_info) }),
        ("ArrayOfHostInternetScsiHbaParamValue", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaParamValue", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaParamValue>>(wrap_array_of_host_internet_scsi_hba_param_value), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaParamValue>>(v, wrap_array_of_host_internet_scsi_hba_param_value) }),
        ("HostDatastoreSystemCapabilities", TypeInfo::Object { name: "HostDatastoreSystemCapabilities", builder_fn: || Box::new(HostDatastoreSystemCapabilitiesFields::new()) }),
        ("HostDataTransportConnectionInfo", TypeInfo::Object { name: "HostDataTransportConnectionInfo", builder_fn: || Box::new(HostDataTransportConnectionInfoFields::new()) }),
        ("MonthlyTaskScheduler", TypeInfo::Object { name: "MonthlyTaskScheduler", builder_fn: || Box::new(MonthlyTaskSchedulerFields::new()) }),
        ("ArrayOfVmNotDeployed", TypeInfo::Value { name: "ArrayOfVmNotDeployed", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vm_not_deployed_array)), from_value: |v| cast_to_vm_not_deployed_array(from_value(v)?) }),
        ("VcAgentUninstallFailedEvent", TypeInfo::Object { name: "VcAgentUninstallFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VcAgentUninstallFailedEvent))) }),
        ("ArrayOfOptionValue", TypeInfo::Value { name: "ArrayOfOptionValue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_option_value_array)), from_value: |v| cast_to_option_value_array(from_value(v)?) }),
        ("ArrayOfVirtualMachineFloppyInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineFloppyInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFloppyInfo>>(wrap_array_of_virtual_machine_floppy_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFloppyInfo>>(v, wrap_array_of_virtual_machine_floppy_info) }),
        ("ArrayOfNotAFile", TypeInfo::Value { name: "ArrayOfNotAFile", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_a_file), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_a_file) }),
        ("AnswerFileCreateSpec", TypeInfo::Object { name: "AnswerFileCreateSpec", builder_fn: || Box::new(AnswerFileCreateSpecFields::new()) }),
        ("InvalidHostConnectionState", TypeInfo::Object { name: "InvalidHostConnectionState", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidHostConnectionState))) }),
        ("ArrayOfAutoStartDefaults", TypeInfo::Value { name: "ArrayOfAutoStartDefaults", make_deserializer: || make_deser_with::<Vec<super::structs::AutoStartDefaults>>(wrap_array_of_auto_start_defaults), from_value: |v| from_val_with::<Vec<super::structs::AutoStartDefaults>>(v, wrap_array_of_auto_start_defaults) }),
        ("ArrayOfCannotAccessNetwork", TypeInfo::Value { name: "ArrayOfCannotAccessNetwork", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_access_network), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_access_network) }),
        ("HostRdmaDevicePnicBacking", TypeInfo::Object { name: "HostRdmaDevicePnicBacking", builder_fn: || Box::new(HostRdmaDevicePnicBackingFields::new()) }),
        ("ArrayOfDateTimeProfile", TypeInfo::Value { name: "ArrayOfDateTimeProfile", make_deserializer: || make_deser_with::<Vec<super::structs::DateTimeProfile>>(wrap_array_of_date_time_profile), from_value: |v| from_val_with::<Vec<super::structs::DateTimeProfile>>(v, wrap_array_of_date_time_profile) }),
        ("ArrayOfVmRelocatedEvent", TypeInfo::Value { name: "ArrayOfVmRelocatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_relocated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_relocated_event) }),
        ("ArrayOfStringOption", TypeInfo::Value { name: "ArrayOfStringOption", make_deserializer: || make_deser_with::<Vec<super::structs::StringOption>>(wrap_array_of_string_option), from_value: |v| from_val_with::<Vec<super::structs::StringOption>>(v, wrap_array_of_string_option) }),
        ("ArrayOfVsanPerfHotspotEntitiesMetrics", TypeInfo::Value { name: "ArrayOfVsanPerfHotspotEntitiesMetrics", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfHotspotEntitiesMetrics>>(wrap_array_of_vsan_perf_hotspot_entities_metrics), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfHotspotEntitiesMetrics>>(v, wrap_array_of_vsan_perf_hotspot_entities_metrics) }),
        ("VMwareDVSFeatureCapability", TypeInfo::Object { name: "VMwareDVSFeatureCapability", builder_fn: || Box::new(VMwareDvsFeatureCapabilityFields::new()) }),
        ("ArrayOfVsanHclDeviceConstraint", TypeInfo::Value { name: "ArrayOfVsanHclDeviceConstraint", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclDeviceConstraint>>(wrap_array_of_vsan_hcl_device_constraint), from_value: |v| from_val_with::<Vec<super::structs::VsanHclDeviceConstraint>>(v, wrap_array_of_vsan_hcl_device_constraint) }),
        ("ArrayOfSourceGroupInfo", TypeInfo::Value { name: "ArrayOfSourceGroupInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SourceGroupInfo>>(wrap_array_of_source_group_info), from_value: |v| from_val_with::<Vec<super::structs::SourceGroupInfo>>(v, wrap_array_of_source_group_info) }),
        ("HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult", TypeInfo::Object { name: "HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult", builder_fn: || Box::new(HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResultFields::new()) }),
        ("GuestPosixFileAttributes", TypeInfo::Object { name: "GuestPosixFileAttributes", builder_fn: || Box::new(GuestPosixFileAttributesFields::new()) }),
        ("StorageDrsCannotMoveSharedDisk", TypeInfo::Object { name: "StorageDrsCannotMoveSharedDisk", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsCannotMoveSharedDisk))) }),
        ("VirtualSerialPortThinPrintBackingOption", TypeInfo::Object { name: "VirtualSerialPortThinPrintBackingOption", builder_fn: || Box::new(VirtualSerialPortThinPrintBackingOptionFields::new()) }),
        ("NotSupportedHostForVsan", TypeInfo::Object { name: "NotSupportedHostForVsan", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedHostForVsan))) }),
        ("ArrayOfID", TypeInfo::Value { name: "ArrayOfID", make_deserializer: || make_deser_with::<Vec<super::structs::Id>>(wrap_array_of_id), from_value: |v| from_val_with::<Vec<super::structs::Id>>(v, wrap_array_of_id) }),
        ("OvfValidateHostResult", TypeInfo::Object { name: "OvfValidateHostResult", builder_fn: || Box::new(OvfValidateHostResultFields::new()) }),
        ("VStorageObjectSnapshot", TypeInfo::Object { name: "VStorageObjectSnapshot", builder_fn: || Box::new(VStorageObjectSnapshotFields::new()) }),
        ("ArrayOfClusterProfileConfigInfo", TypeInfo::Value { name: "ArrayOfClusterProfileConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterProfileConfigInfo>>(wrap_array_of_cluster_profile_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterProfileConfigInfo>>(v, wrap_array_of_cluster_profile_config_info) }),
        ("ArrayOfIsoImageFileQuery", TypeInfo::Value { name: "ArrayOfIsoImageFileQuery", make_deserializer: || make_deser_with::<Vec<super::structs::IsoImageFileQuery>>(wrap_array_of_iso_image_file_query), from_value: |v| from_val_with::<Vec<super::structs::IsoImageFileQuery>>(v, wrap_array_of_iso_image_file_query) }),
        ("InvalidAgentConfiguration", TypeInfo::Object { name: "InvalidAgentConfiguration", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidAgentConfiguration))) }),
        ("ArrayOfUnsupportedVmxLocation", TypeInfo::Value { name: "ArrayOfUnsupportedVmxLocation", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_unsupported_vmx_location), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_unsupported_vmx_location) }),
        ("FileLockInfoResult", TypeInfo::Object { name: "FileLockInfoResult", builder_fn: || Box::new(FileLockInfoResultFields::new()) }),
        ("ArrayOfDasAdmissionControlDisabledEvent", TypeInfo::Value { name: "ArrayOfDasAdmissionControlDisabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_das_admission_control_disabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_das_admission_control_disabled_event) }),
        ("ArrayOfOvfDuplicatedPropertyIdExport", TypeInfo::Value { name: "ArrayOfOvfDuplicatedPropertyIdExport", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_duplicated_property_id_export), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_duplicated_property_id_export) }),
        ("ArrayOfNetIpConfigInfo", TypeInfo::Value { name: "ArrayOfNetIpConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpConfigInfo>>(wrap_array_of_net_ip_config_info), from_value: |v| from_val_with::<Vec<super::structs::NetIpConfigInfo>>(v, wrap_array_of_net_ip_config_info) }),
        ("CannotReconfigureVsanWhenHaEnabled", TypeInfo::Object { name: "CannotReconfigureVsanWhenHaEnabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotReconfigureVsanWhenHaEnabled))) }),
        ("ArrayOfMissingProperty", TypeInfo::Value { name: "ArrayOfMissingProperty", make_deserializer: || make_deser_with::<Vec<super::structs::MissingProperty>>(wrap_array_of_missing_property), from_value: |v| from_val_with::<Vec<super::structs::MissingProperty>>(v, wrap_array_of_missing_property) }),
        ("ArrayOfResourceConfigOption", TypeInfo::Value { name: "ArrayOfResourceConfigOption", make_deserializer: || make_deser_with::<Vec<super::structs::ResourceConfigOption>>(wrap_array_of_resource_config_option), from_value: |v| from_val_with::<Vec<super::structs::ResourceConfigOption>>(v, wrap_array_of_resource_config_option) }),
        ("EamCertificateNotTrusted", TypeInfo::Object { name: "EamCertificateNotTrusted", builder_fn: || Box::new(EamCertificateNotTrustedFields::new()) }),
        ("DvsIpPort", TypeInfo::Object { name: "DvsIpPort", builder_fn: || Box::new(DvsIpPortFields::new()) }),
        ("CannotAccessVmComponent", TypeInfo::Object { name: "CannotAccessVmComponent", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotAccessVmComponent))) }),
        ("VsanClusterHealthResultRow", TypeInfo::Object { name: "VsanClusterHealthResultRow", builder_fn: || Box::new(VsanClusterHealthResultRowFields::new()) }),
        ("CryptoManagerKmipClusterStatus", TypeInfo::Object { name: "CryptoManagerKmipClusterStatus", builder_fn: || Box::new(CryptoManagerKmipClusterStatusFields::new()) }),
        ("ArrayOfGuestRegistryValueFault", TypeInfo::Value { name: "ArrayOfGuestRegistryValueFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_registry_value_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_registry_value_fault) }),
        ("DatastoreDestroyedEvent", TypeInfo::Object { name: "DatastoreDestroyedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreDestroyedEvent))) }),
        ("VsanClusterObjectExtAttrs", TypeInfo::Object { name: "VsanClusterObjectExtAttrs", builder_fn: || Box::new(VsanClusterObjectExtAttrsFields::new()) }),
        ("ArrayOfPbmCapabilityMetadataPerCategory", TypeInfo::Value { name: "ArrayOfPbmCapabilityMetadataPerCategory", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityMetadataPerCategory>>(wrap_array_of_pbm_capability_metadata_per_category), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityMetadataPerCategory>>(v, wrap_array_of_pbm_capability_metadata_per_category) }),
        ("ArrayOfLAGInfo", TypeInfo::Value { name: "ArrayOfLAGInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LagInfo>>(wrap_array_of_lag_info), from_value: |v| from_val_with::<Vec<super::structs::LagInfo>>(v, wrap_array_of_lag_info) }),
        ("FirewallProfileRulesetProfile", TypeInfo::Object { name: "FirewallProfileRulesetProfile", builder_fn: || Box::new(FirewallProfileRulesetProfileFields::new()) }),
        ("VirtualMachineBaseIndependentFilterSpec", TypeInfo::Object { name: "VirtualMachineBaseIndependentFilterSpec", builder_fn: || Box::new(VirtualMachineBaseIndependentFilterSpecFields::new()) }),
        ("ArrayOfCryptoSpecDecrypt", TypeInfo::Value { name: "ArrayOfCryptoSpecDecrypt", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoSpecDecrypt>>(wrap_array_of_crypto_spec_decrypt), from_value: |v| from_val_with::<Vec<super::structs::CryptoSpecDecrypt>>(v, wrap_array_of_crypto_spec_decrypt) }),
        ("ArrayOfVsanSnapshotQueryResult", TypeInfo::Value { name: "ArrayOfVsanSnapshotQueryResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSnapshotQueryResult>>(wrap_array_of_vsan_snapshot_query_result), from_value: |v| from_val_with::<Vec<super::structs::VsanSnapshotQueryResult>>(v, wrap_array_of_vsan_snapshot_query_result) }),
        ("ArrayOfVimClusterVsanHostDiskMapping", TypeInfo::Value { name: "ArrayOfVimClusterVsanHostDiskMapping", make_deserializer: || make_deser_with::<Vec<super::structs::VimClusterVsanHostDiskMapping>>(wrap_array_of_vim_cluster_vsan_host_disk_mapping), from_value: |v| from_val_with::<Vec<super::structs::VimClusterVsanHostDiskMapping>>(v, wrap_array_of_vim_cluster_vsan_host_disk_mapping) }),
        ("VsanObjectHealthTelemetrySummary", TypeInfo::Object { name: "VsanObjectHealthTelemetrySummary", builder_fn: || Box::new(VsanObjectHealthTelemetrySummaryFields::new()) }),
        ("OvfNoHostNic", TypeInfo::Object { name: "OvfNoHostNic", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfNoHostNic))) }),
        ("VsanIODiagnosticsStats", TypeInfo::Object { name: "VsanIODiagnosticsStats", builder_fn: || Box::new(VsanIoDiagnosticsStatsFields::new()) }),
        ("ArrayOfClusterDasVmConfigInfo", TypeInfo::Value { name: "ArrayOfClusterDasVmConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasVmConfigInfo>>(wrap_array_of_cluster_das_vm_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasVmConfigInfo>>(v, wrap_array_of_cluster_das_vm_config_info) }),
        ("ArrayOfHostLowLevelProvisioningManagerFileReserveResult", TypeInfo::Value { name: "ArrayOfHostLowLevelProvisioningManagerFileReserveResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostLowLevelProvisioningManagerFileReserveResult>>(wrap_array_of_host_low_level_provisioning_manager_file_reserve_result), from_value: |v| from_val_with::<Vec<super::structs::HostLowLevelProvisioningManagerFileReserveResult>>(v, wrap_array_of_host_low_level_provisioning_manager_file_reserve_result) }),
        ("InvalidDrsBehaviorForFtVm", TypeInfo::Object { name: "InvalidDrsBehaviorForFtVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidDrsBehaviorForFtVm))) }),
        ("LocalDatastoreCreatedEvent", TypeInfo::Object { name: "LocalDatastoreCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::LocalDatastoreCreatedEvent))) }),
        ("ArrayOfVasaProviderSpec", TypeInfo::Value { name: "ArrayOfVasaProviderSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VasaProviderSpec>>(wrap_array_of_vasa_provider_spec), from_value: |v| from_val_with::<Vec<super::structs::VasaProviderSpec>>(v, wrap_array_of_vasa_provider_spec) }),
        ("ArrayOfClusterDasConfigInfo", TypeInfo::Value { name: "ArrayOfClusterDasConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasConfigInfo>>(wrap_array_of_cluster_das_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasConfigInfo>>(v, wrap_array_of_cluster_das_config_info) }),
        ("ArrayOfVirtualPCNet32Option", TypeInfo::Value { name: "ArrayOfVirtualPCNet32Option", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPcNet32Option>>(wrap_array_of_virtual_pc_net_32_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPcNet32Option>>(v, wrap_array_of_virtual_pc_net_32_option) }),
        ("ArrayOfVsanMountPrecheckNetworkConnectivityResult", TypeInfo::Value { name: "ArrayOfVsanMountPrecheckNetworkConnectivityResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMountPrecheckNetworkConnectivityResult>>(wrap_array_of_vsan_mount_precheck_network_connectivity_result), from_value: |v| from_val_with::<Vec<super::structs::VsanMountPrecheckNetworkConnectivityResult>>(v, wrap_array_of_vsan_mount_precheck_network_connectivity_result) }),
        ("VslmTaskReasonAlarm", TypeInfo::Object { name: "VslmTaskReasonAlarm", builder_fn: || Box::new(VslmTaskReasonAlarmFields::new()) }),
        ("ArrayOfCustomFieldEvent", TypeInfo::Value { name: "ArrayOfCustomFieldEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_custom_field_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_custom_field_event) }),
        ("ClusterDatastoreUpdateSpec", TypeInfo::Object { name: "ClusterDatastoreUpdateSpec", builder_fn: || Box::new(ClusterDatastoreUpdateSpecFields::new()) }),
        ("ArrayOfVirtualMachineDvxClassInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineDvxClassInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineDvxClassInfo>>(wrap_array_of_virtual_machine_dvx_class_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineDvxClassInfo>>(v, wrap_array_of_virtual_machine_dvx_class_info) }),
        ("NoDatastoresConfiguredEvent", TypeInfo::Object { name: "NoDatastoresConfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::NoDatastoresConfiguredEvent))) }),
        ("HostLowLevelProvisioningManagerVmMigrationStatus", TypeInfo::Object { name: "HostLowLevelProvisioningManagerVmMigrationStatus", builder_fn: || Box::new(HostLowLevelProvisioningManagerVmMigrationStatusFields::new()) }),
        ("FeatureRequirementsNotMet", TypeInfo::Object { name: "FeatureRequirementsNotMet", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FeatureRequirementsNotMet))) }),
        ("ArrayOfResourcePoolMovedEvent", TypeInfo::Value { name: "ArrayOfResourcePoolMovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_resource_pool_moved_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_resource_pool_moved_event) }),
        ("ArrayOfAfterStartupTaskScheduler", TypeInfo::Value { name: "ArrayOfAfterStartupTaskScheduler", make_deserializer: || make_deser_with::<Vec<super::structs::AfterStartupTaskScheduler>>(wrap_array_of_after_startup_task_scheduler), from_value: |v| from_val_with::<Vec<super::structs::AfterStartupTaskScheduler>>(v, wrap_array_of_after_startup_task_scheduler) }),
        ("AlarmFilterSpec", TypeInfo::Object { name: "AlarmFilterSpec", builder_fn: || Box::new(AlarmFilterSpecFields::new()) }),
        ("ArrayOfStorageCapability", TypeInfo::Value { name: "ArrayOfStorageCapability", make_deserializer: || make_deser_with::<Vec<super::structs::StorageCapability>>(wrap_array_of_storage_capability), from_value: |v| from_val_with::<Vec<super::structs::StorageCapability>>(v, wrap_array_of_storage_capability) }),
        ("ArrayOfDatastoreBackingPoolMapping", TypeInfo::Value { name: "ArrayOfDatastoreBackingPoolMapping", make_deserializer: || make_deser_with::<Vec<super::structs::DatastoreBackingPoolMapping>>(wrap_array_of_datastore_backing_pool_mapping), from_value: |v| from_val_with::<Vec<super::structs::DatastoreBackingPoolMapping>>(v, wrap_array_of_datastore_backing_pool_mapping) }),
        ("HealthUpdateInfo", TypeInfo::Object { name: "HealthUpdateInfo", builder_fn: || Box::new(HealthUpdateInfoFields::new()) }),
        ("ArrayOfPasswordExpired", TypeInfo::Value { name: "ArrayOfPasswordExpired", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_password_expired), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_password_expired) }),
        ("ArrayOfCannotAddHostWithFTVmAsStandalone", TypeInfo::Value { name: "ArrayOfCannotAddHostWithFTVmAsStandalone", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_add_host_with_ft_vm_as_standalone), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_add_host_with_ft_vm_as_standalone) }),
        ("ArrayOfIscsiFaultVnicIsLastPath", TypeInfo::Value { name: "ArrayOfIscsiFaultVnicIsLastPath", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_vnic_is_last_path), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_vnic_is_last_path) }),
        ("ArrayOfVStorageObjectAssociations", TypeInfo::Value { name: "ArrayOfVStorageObjectAssociations", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectAssociations>>(wrap_array_of_v_storage_object_associations), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectAssociations>>(v, wrap_array_of_v_storage_object_associations) }),
        ("ResourceConfigOption", TypeInfo::Object { name: "ResourceConfigOption", builder_fn: || Box::new(ResourceConfigOptionFields::new()) }),
        ("ArrayOfNvdimmHealthInfo", TypeInfo::Value { name: "ArrayOfNvdimmHealthInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmHealthInfo>>(wrap_array_of_nvdimm_health_info), from_value: |v| from_val_with::<Vec<super::structs::NvdimmHealthInfo>>(v, wrap_array_of_nvdimm_health_info) }),
        ("ArrayOfVirtualMachineCertThumbprint", TypeInfo::Value { name: "ArrayOfVirtualMachineCertThumbprint", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineCertThumbprint>>(wrap_array_of_virtual_machine_cert_thumbprint), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineCertThumbprint>>(v, wrap_array_of_virtual_machine_cert_thumbprint) }),
        ("ArrayOfOvfUnsupportedDeviceBackingOption", TypeInfo::Value { name: "ArrayOfOvfUnsupportedDeviceBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_device_backing_option), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_device_backing_option) }),
        ("ArrayOfVsanQueryResultHostInfo", TypeInfo::Value { name: "ArrayOfVsanQueryResultHostInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanQueryResultHostInfo>>(wrap_array_of_vsan_query_result_host_info), from_value: |v| from_val_with::<Vec<super::structs::VsanQueryResultHostInfo>>(v, wrap_array_of_vsan_query_result_host_info) }),
        ("VsanVmVdsMigrationSpec", TypeInfo::Object { name: "VsanVmVdsMigrationSpec", builder_fn: || Box::new(VsanVmVdsMigrationSpecFields::new()) }),
        ("ArrayOfVsanFileShareQuerySpec", TypeInfo::Value { name: "ArrayOfVsanFileShareQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShareQuerySpec>>(wrap_array_of_vsan_file_share_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShareQuerySpec>>(v, wrap_array_of_vsan_file_share_query_spec) }),
        ("ArrayOfDistributedVirtualPort", TypeInfo::Value { name: "ArrayOfDistributedVirtualPort", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualPort>>(wrap_array_of_distributed_virtual_port), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualPort>>(v, wrap_array_of_distributed_virtual_port) }),
        ("ArrayOfClusterComputeResourceCryptoModePolicy", TypeInfo::Value { name: "ArrayOfClusterComputeResourceCryptoModePolicy", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceCryptoModePolicy>>(wrap_array_of_cluster_compute_resource_crypto_mode_policy), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceCryptoModePolicy>>(v, wrap_array_of_cluster_compute_resource_crypto_mode_policy) }),
        ("IntOption", TypeInfo::Object { name: "IntOption", builder_fn: || Box::new(IntOptionFields::new()) }),
        ("ArrayOfHostDasEnabledEvent", TypeInfo::Value { name: "ArrayOfHostDasEnabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_das_enabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_das_enabled_event) }),
        ("ArrayOfHostGetShortNameFailedEvent", TypeInfo::Value { name: "ArrayOfHostGetShortNameFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_get_short_name_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_get_short_name_failed_event) }),
        ("HostTpmSoftwareComponentEventDetails", TypeInfo::Object { name: "HostTpmSoftwareComponentEventDetails", builder_fn: || Box::new(HostTpmSoftwareComponentEventDetailsFields::new()) }),
        ("ArrayOfAgencyIssue", TypeInfo::Value { name: "ArrayOfAgencyIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_agency_issue_array)), from_value: |v| cast_to_agency_issue_array(from_value(v)?) }),
        ("PbmCapabilityProfilePropertyMismatchFault", TypeInfo::Object { name: "PbmCapabilityProfilePropertyMismatchFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmCapabilityProfilePropertyMismatchFault))) }),
        ("ArrayOfOvfCreateDescriptorResult", TypeInfo::Value { name: "ArrayOfOvfCreateDescriptorResult", make_deserializer: || make_deser_with::<Vec<super::structs::OvfCreateDescriptorResult>>(wrap_array_of_ovf_create_descriptor_result), from_value: |v| from_val_with::<Vec<super::structs::OvfCreateDescriptorResult>>(v, wrap_array_of_ovf_create_descriptor_result) }),
        ("ArrayOfVirtualMachineVMCIDeviceOption", TypeInfo::Value { name: "ArrayOfVirtualMachineVMCIDeviceOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVmciDeviceOption>>(wrap_array_of_virtual_machine_vmci_device_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVmciDeviceOption>>(v, wrap_array_of_virtual_machine_vmci_device_option) }),
        ("CustomizationStartedEvent", TypeInfo::Object { name: "CustomizationStartedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomizationStartedEvent))) }),
        ("ArrayOfCnsPlacementFault", TypeInfo::Value { name: "ArrayOfCnsPlacementFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cns_placement_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cns_placement_fault) }),
        ("VmResourcePoolMovedEvent", TypeInfo::Object { name: "VmResourcePoolMovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmResourcePoolMovedEvent))) }),
        ("VMwareDVSPortSetting", TypeInfo::Object { name: "VMwareDVSPortSetting", builder_fn: || Box::new(VMwareDvsPortSettingFields::new()) }),
        ("FirewallProfile", TypeInfo::Object { name: "FirewallProfile", builder_fn: || Box::new(FirewallProfileFields::new()) }),
        ("PMemDatastoreInfo", TypeInfo::Object { name: "PMemDatastoreInfo", builder_fn: || Box::new(PMemDatastoreInfoFields::new()) }),
        ("ArrayOfOvfInvalidValueReference", TypeInfo::Value { name: "ArrayOfOvfInvalidValueReference", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_invalid_value_reference), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_invalid_value_reference) }),
        ("ArrayOfPerfMetricId", TypeInfo::Value { name: "ArrayOfPerfMetricId", make_deserializer: || make_deser_with::<Vec<super::structs::PerfMetricId>>(wrap_array_of_perf_metric_id), from_value: |v| from_val_with::<Vec<super::structs::PerfMetricId>>(v, wrap_array_of_perf_metric_id) }),
        ("ArrayOfToolsImageCopyFailed", TypeInfo::Value { name: "ArrayOfToolsImageCopyFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_tools_image_copy_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_tools_image_copy_failed) }),
        ("ComplianceFailure", TypeInfo::Object { name: "ComplianceFailure", builder_fn: || Box::new(ComplianceFailureFields::new()) }),
        ("ArrayOfVmEndReplayingEvent", TypeInfo::Value { name: "ArrayOfVmEndReplayingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_end_replaying_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_end_replaying_event) }),
        ("ArrayOfStorageDrsPlacementRankVmSpec", TypeInfo::Value { name: "ArrayOfStorageDrsPlacementRankVmSpec", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsPlacementRankVmSpec>>(wrap_array_of_storage_drs_placement_rank_vm_spec), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsPlacementRankVmSpec>>(v, wrap_array_of_storage_drs_placement_rank_vm_spec) }),
        ("ArrayOfVsanFault", TypeInfo::Value { name: "ArrayOfVsanFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vsan_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vsan_fault) }),
        ("IncorrectUsernamePassword", TypeInfo::Object { name: "IncorrectUsernamePassword", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IncorrectUsernamePassword))) }),
        ("ArrayOfClusterDpmConfigInfo", TypeInfo::Value { name: "ArrayOfClusterDpmConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDpmConfigInfo>>(wrap_array_of_cluster_dpm_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDpmConfigInfo>>(v, wrap_array_of_cluster_dpm_config_info) }),
        ("ArrayOfVmStartingSecondaryEvent", TypeInfo::Value { name: "ArrayOfVmStartingSecondaryEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_starting_secondary_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_starting_secondary_event) }),
        ("ArrayOfGuestInfoNamespaceGenerationInfo", TypeInfo::Value { name: "ArrayOfGuestInfoNamespaceGenerationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestInfoNamespaceGenerationInfo>>(wrap_array_of_guest_info_namespace_generation_info), from_value: |v| from_val_with::<Vec<super::structs::GuestInfoNamespaceGenerationInfo>>(v, wrap_array_of_guest_info_namespace_generation_info) }),
        ("ArrayOfVirtualMachineDiskDeviceInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineDiskDeviceInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_disk_device_info_array)), from_value: |v| cast_to_virtual_machine_disk_device_info_array(from_value(v)?) }),
        ("NoConnectionToVCenter", TypeInfo::Object { name: "NoConnectionToVCenter", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoConnectionToVCenter))) }),
        ("ArrayOfVirtualPCIPassthroughPluginBackingOption", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughPluginBackingOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_pci_passthrough_plugin_backing_option_array)), from_value: |v| cast_to_virtual_pci_passthrough_plugin_backing_option_array(from_value(v)?) }),
        ("ArrayOfHostRdmaDevice", TypeInfo::Value { name: "ArrayOfHostRdmaDevice", make_deserializer: || make_deser_with::<Vec<super::structs::HostRdmaDevice>>(wrap_array_of_host_rdma_device), from_value: |v| from_val_with::<Vec<super::structs::HostRdmaDevice>>(v, wrap_array_of_host_rdma_device) }),
        ("SubnetInfo", TypeInfo::Object { name: "SubnetInfo", builder_fn: || Box::new(SubnetInfoFields::new()) }),
        ("VsanXvcQueryFilter", TypeInfo::Object { name: "VsanXvcQueryFilter", builder_fn: || Box::new(VsanXvcQueryFilterFields::new()) }),
        ("PermissionProfile", TypeInfo::Object { name: "PermissionProfile", builder_fn: || Box::new(PermissionProfileFields::new()) }),
        ("ArrayOfHostVnicConnectedToCustomizedDVPortEvent", TypeInfo::Value { name: "ArrayOfHostVnicConnectedToCustomizedDVPortEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_vnic_connected_to_customized_dv_port_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_vnic_connected_to_customized_dv_port_event) }),
        ("ArrayOfHostDvxClass", TypeInfo::Value { name: "ArrayOfHostDvxClass", make_deserializer: || make_deser_with::<Vec<super::structs::HostDvxClass>>(wrap_array_of_host_dvx_class), from_value: |v| from_val_with::<Vec<super::structs::HostDvxClass>>(v, wrap_array_of_host_dvx_class) }),
        ("ArrayOfVirtualSerialPortDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualSerialPortDeviceBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortDeviceBackingInfo>>(wrap_array_of_virtual_serial_port_device_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortDeviceBackingInfo>>(v, wrap_array_of_virtual_serial_port_device_backing_info) }),
        ("ArrayOfClusterComputeResourceVcsSlots", TypeInfo::Value { name: "ArrayOfClusterComputeResourceVcsSlots", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceVcsSlots>>(wrap_array_of_cluster_compute_resource_vcs_slots), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceVcsSlots>>(v, wrap_array_of_cluster_compute_resource_vcs_slots) }),
        ("VsanHclQuerySpec", TypeInfo::Object { name: "VsanHclQuerySpec", builder_fn: || Box::new(VsanHclQuerySpecFields::new()) }),
        ("ArrayOfVirtualMachineCdromInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineCdromInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineCdromInfo>>(wrap_array_of_virtual_machine_cdrom_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineCdromInfo>>(v, wrap_array_of_virtual_machine_cdrom_info) }),
        ("ArrayOfVirtualDeviceFileBackingOption", TypeInfo::Value { name: "ArrayOfVirtualDeviceFileBackingOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_file_backing_option_array)), from_value: |v| cast_to_virtual_device_file_backing_option_array(from_value(v)?) }),
        ("ApplyStorageRecommendationResult", TypeInfo::Object { name: "ApplyStorageRecommendationResult", builder_fn: || Box::new(ApplyStorageRecommendationResultFields::new()) }),
        ("OvfNoSpaceOnController", TypeInfo::Object { name: "OvfNoSpaceOnController", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfNoSpaceOnController))) }),
        ("OvfConsumerFault", TypeInfo::Object { name: "OvfConsumerFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConsumerFault))) }),
        ("ArrayOfSourceNodeSpec", TypeInfo::Value { name: "ArrayOfSourceNodeSpec", make_deserializer: || make_deser_with::<Vec<super::structs::SourceNodeSpec>>(wrap_array_of_source_node_spec), from_value: |v| from_val_with::<Vec<super::structs::SourceNodeSpec>>(v, wrap_array_of_source_node_spec) }),
        ("OvfInvalidVmName", TypeInfo::Object { name: "OvfInvalidVmName", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfInvalidVmName))) }),
        ("DistributedVirtualSwitchManagerHostDvsMembershipFilter", TypeInfo::Object { name: "DistributedVirtualSwitchManagerHostDvsMembershipFilter", builder_fn: || Box::new(DistributedVirtualSwitchManagerHostDvsMembershipFilterFields::new()) }),
        ("ArrayOfDuplicateDisks", TypeInfo::Value { name: "ArrayOfDuplicateDisks", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_duplicate_disks), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_duplicate_disks) }),
        ("ArrayOfVmUpgradeFailedEvent", TypeInfo::Value { name: "ArrayOfVmUpgradeFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_upgrade_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_upgrade_failed_event) }),
        ("ArrayOfEventFilterSpec", TypeInfo::Value { name: "ArrayOfEventFilterSpec", make_deserializer: || make_deser_with::<Vec<super::structs::EventFilterSpec>>(wrap_array_of_event_filter_spec), from_value: |v| from_val_with::<Vec<super::structs::EventFilterSpec>>(v, wrap_array_of_event_filter_spec) }),
        ("NetIpRouteConfigSpecGatewaySpec", TypeInfo::Object { name: "NetIpRouteConfigSpecGatewaySpec", builder_fn: || Box::new(NetIpRouteConfigSpecGatewaySpecFields::new()) }),
        ("ArrayOfDisallowedDiskModeChange", TypeInfo::Value { name: "ArrayOfDisallowedDiskModeChange", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disallowed_disk_mode_change), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disallowed_disk_mode_change) }),
        ("LicenseSource", TypeInfo::Object { name: "LicenseSource", builder_fn: || Box::new(LicenseSourceFields::new()) }),
        ("ArrayOfVmRelayoutSuccessfulEvent", TypeInfo::Value { name: "ArrayOfVmRelayoutSuccessfulEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_relayout_successful_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_relayout_successful_event) }),
        ("VirtualNVDIMMController", TypeInfo::Object { name: "VirtualNVDIMMController", builder_fn: || Box::new(VirtualNvdimmControllerFields::new()) }),
        ("DVSSummary", TypeInfo::Object { name: "DVSSummary", builder_fn: || Box::new(DvsSummaryFields::new()) }),
        ("ArrayOfStorageContainerSpec", TypeInfo::Value { name: "ArrayOfStorageContainerSpec", make_deserializer: || make_deser_with::<Vec<super::structs::StorageContainerSpec>>(wrap_array_of_storage_container_spec), from_value: |v| from_val_with::<Vec<super::structs::StorageContainerSpec>>(v, wrap_array_of_storage_container_spec) }),
        ("HostDatastoreSystemVvolDatastoreSpec", TypeInfo::Object { name: "HostDatastoreSystemVvolDatastoreSpec", builder_fn: || Box::new(HostDatastoreSystemVvolDatastoreSpecFields::new()) }),
        ("ToolsAutoUpgradeNotSupported", TypeInfo::Object { name: "ToolsAutoUpgradeNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ToolsAutoUpgradeNotSupported))) }),
        ("DVSNetworkResourcePoolAllocationInfo", TypeInfo::Object { name: "DVSNetworkResourcePoolAllocationInfo", builder_fn: || Box::new(DvsNetworkResourcePoolAllocationInfoFields::new()) }),
        ("CannotMoveHostWithFaultToleranceVm", TypeInfo::Object { name: "CannotMoveHostWithFaultToleranceVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotMoveHostWithFaultToleranceVm))) }),
        ("VirtualSCSIPassthroughDeviceBackingOption", TypeInfo::Object { name: "VirtualSCSIPassthroughDeviceBackingOption", builder_fn: || Box::new(VirtualScsiPassthroughDeviceBackingOptionFields::new()) }),
        ("ArrayOfVirtualSCSIController", TypeInfo::Value { name: "ArrayOfVirtualSCSIController", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_scsi_controller_array)), from_value: |v| cast_to_virtual_scsi_controller_array(from_value(v)?) }),
        ("ArrayOfFileLocked", TypeInfo::Value { name: "ArrayOfFileLocked", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_file_locked), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_file_locked) }),
        ("VsanXVCClientInfo", TypeInfo::Object { name: "VsanXVCClientInfo", builder_fn: || Box::new(VsanXvcClientInfoFields::new()) }),
        ("ProfileNumericComparator", TypeInfo::Value { name: "ProfileNumericComparator", make_deserializer: || make_deser_with::<super::enums::ProfileNumericComparatorEnum>(wrap_profile_numeric_comparator), from_value: |v| from_val_with::<super::enums::ProfileNumericComparatorEnum>(v, wrap_profile_numeric_comparator) }),
        ("KmipServerInfo", TypeInfo::Object { name: "KmipServerInfo", builder_fn: || Box::new(KmipServerInfoFields::new()) }),
        ("DvsGreEncapNetworkRuleAction", TypeInfo::Object { name: "DvsGreEncapNetworkRuleAction", builder_fn: || Box::new(DvsGreEncapNetworkRuleActionFields::new()) }),
        ("HostCacheConfigurationSpec", TypeInfo::Object { name: "HostCacheConfigurationSpec", builder_fn: || Box::new(HostCacheConfigurationSpecFields::new()) }),
        ("ArrayOfStorageArray", TypeInfo::Value { name: "ArrayOfStorageArray", make_deserializer: || make_deser_with::<Vec<super::structs::StorageArray>>(wrap_array_of_storage_array), from_value: |v| from_val_with::<Vec<super::structs::StorageArray>>(v, wrap_array_of_storage_array) }),
        ("VmfsDatastoreExpandSpec", TypeInfo::Object { name: "VmfsDatastoreExpandSpec", builder_fn: || Box::new(VmfsDatastoreExpandSpecFields::new()) }),
        ("ArrayOfTaskInProgress", TypeInfo::Value { name: "ArrayOfTaskInProgress", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_task_in_progress), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_task_in_progress) }),
        ("ArrayOfVirtualNicManagerNetConfig", TypeInfo::Value { name: "ArrayOfVirtualNicManagerNetConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualNicManagerNetConfig>>(wrap_array_of_virtual_nic_manager_net_config), from_value: |v| from_val_with::<Vec<super::structs::VirtualNicManagerNetConfig>>(v, wrap_array_of_virtual_nic_manager_net_config) }),
        ("ArrayOfVStorageObjectStateInfo", TypeInfo::Value { name: "ArrayOfVStorageObjectStateInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectStateInfo>>(wrap_array_of_v_storage_object_state_info), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectStateInfo>>(v, wrap_array_of_v_storage_object_state_info) }),
        ("ArrayOfUserInputRequiredParameterMetadata", TypeInfo::Value { name: "ArrayOfUserInputRequiredParameterMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::UserInputRequiredParameterMetadata>>(wrap_array_of_user_input_required_parameter_metadata), from_value: |v| from_val_with::<Vec<super::structs::UserInputRequiredParameterMetadata>>(v, wrap_array_of_user_input_required_parameter_metadata) }),
        ("VirtualMachineBootOptionsBootableDiskDevice", TypeInfo::Object { name: "VirtualMachineBootOptionsBootableDiskDevice", builder_fn: || Box::new(VirtualMachineBootOptionsBootableDiskDeviceFields::new()) }),
        ("SubnetInfoFolderInfo", TypeInfo::Object { name: "SubnetInfoFolderInfo", builder_fn: || Box::new(SubnetInfoFolderInfoFields::new()) }),
        ("ArrayOfDVPortgroupSelection", TypeInfo::Value { name: "ArrayOfDVPortgroupSelection", make_deserializer: || make_deser_with::<Vec<super::structs::DvPortgroupSelection>>(wrap_array_of_dv_portgroup_selection), from_value: |v| from_val_with::<Vec<super::structs::DvPortgroupSelection>>(v, wrap_array_of_dv_portgroup_selection) }),
        ("ScheduledTaskRemovedEvent", TypeInfo::Object { name: "ScheduledTaskRemovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ScheduledTaskRemovedEvent))) }),
        ("ArrayOfVirtualLsiLogicSASControllerOption", TypeInfo::Value { name: "ArrayOfVirtualLsiLogicSASControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualLsiLogicSasControllerOption>>(wrap_array_of_virtual_lsi_logic_sas_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualLsiLogicSasControllerOption>>(v, wrap_array_of_virtual_lsi_logic_sas_controller_option) }),
        ("ArrayOfVsanClusterHealthResultTable", TypeInfo::Value { name: "ArrayOfVsanClusterHealthResultTable", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthResultTable>>(wrap_array_of_vsan_cluster_health_result_table), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthResultTable>>(v, wrap_array_of_vsan_cluster_health_result_table) }),
        ("NetIpRouteConfigInfo", TypeInfo::Object { name: "NetIpRouteConfigInfo", builder_fn: || Box::new(NetIpRouteConfigInfoFields::new()) }),
        ("VirtualMachinePowerState", TypeInfo::Value { name: "VirtualMachinePowerState", make_deserializer: || make_deser_with::<super::enums::VirtualMachinePowerStateEnum>(wrap_virtual_machine_power_state), from_value: |v| from_val_with::<super::enums::VirtualMachinePowerStateEnum>(v, wrap_virtual_machine_power_state) }),
        ("ArrayOfIntegrityAgencyCannotStageSoftware", TypeInfo::Value { name: "ArrayOfIntegrityAgencyCannotStageSoftware", make_deserializer: || make_deser_with::<Vec<super::structs::IntegrityAgencyCannotStageSoftware>>(wrap_array_of_integrity_agency_cannot_stage_software), from_value: |v| from_val_with::<Vec<super::structs::IntegrityAgencyCannotStageSoftware>>(v, wrap_array_of_integrity_agency_cannot_stage_software) }),
        ("VsanDeleteStoragePoolDiskSpec", TypeInfo::Object { name: "VsanDeleteStoragePoolDiskSpec", builder_fn: || Box::new(VsanDeleteStoragePoolDiskSpecFields::new()) }),
        ("ArrayOfFaultToleranceVmNotDasProtected", TypeInfo::Value { name: "ArrayOfFaultToleranceVmNotDasProtected", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fault_tolerance_vm_not_das_protected), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fault_tolerance_vm_not_das_protected) }),
        ("HostAuthenticationManagerInfo", TypeInfo::Object { name: "HostAuthenticationManagerInfo", builder_fn: || Box::new(HostAuthenticationManagerInfoFields::new()) }),
        ("VMwareDvsLacpGroupSpec", TypeInfo::Object { name: "VMwareDvsLacpGroupSpec", builder_fn: || Box::new(VMwareDvsLacpGroupSpecFields::new()) }),
        ("HostMultipathInfoFixedLogicalUnitPolicy", TypeInfo::Object { name: "HostMultipathInfoFixedLogicalUnitPolicy", builder_fn: || Box::new(HostMultipathInfoFixedLogicalUnitPolicyFields::new()) }),
        ("MissingPowerOnConfiguration", TypeInfo::Object { name: "MissingPowerOnConfiguration", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MissingPowerOnConfiguration))) }),
        ("VmDeployed", TypeInfo::Object { name: "VmDeployed", builder_fn: || Box::new(VmDeployedFields::new()) }),
        ("DirectPathProfileInfo", TypeInfo::Object { name: "DirectPathProfileInfo", builder_fn: || Box::new(DirectPathProfileInfoFields::new()) }),
        ("VsanFileServerHealthSummary", TypeInfo::Object { name: "VsanFileServerHealthSummary", builder_fn: || Box::new(VsanFileServerHealthSummaryFields::new()) }),
        ("ArrayOfPbmCapabilityProfile", TypeInfo::Value { name: "ArrayOfPbmCapabilityProfile", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_pbm_capability_profile_array)), from_value: |v| cast_to_pbm_capability_profile_array(from_value(v)?) }),
        ("HostGraphicsConfig", TypeInfo::Object { name: "HostGraphicsConfig", builder_fn: || Box::new(HostGraphicsConfigFields::new()) }),
        ("HostIpRouteTableInfo", TypeInfo::Object { name: "HostIpRouteTableInfo", builder_fn: || Box::new(HostIpRouteTableInfoFields::new()) }),
        ("FloppyImageFileQuery", TypeInfo::Object { name: "FloppyImageFileQuery", builder_fn: || Box::new(FloppyImageFileQueryFields::new()) }),
        ("ArrayOfDiskChangeInfo", TypeInfo::Value { name: "ArrayOfDiskChangeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DiskChangeInfo>>(wrap_array_of_disk_change_info), from_value: |v| from_val_with::<Vec<super::structs::DiskChangeInfo>>(v, wrap_array_of_disk_change_info) }),
        ("ArrayOfQueryNotSupported", TypeInfo::Value { name: "ArrayOfQueryNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_query_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_query_not_supported) }),
        ("ArrayOfClusterProactiveDrsConfigInfo", TypeInfo::Value { name: "ArrayOfClusterProactiveDrsConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterProactiveDrsConfigInfo>>(wrap_array_of_cluster_proactive_drs_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterProactiveDrsConfigInfo>>(v, wrap_array_of_cluster_proactive_drs_config_info) }),
        ("ArrayOfVsanFileServerHealthSummary", TypeInfo::Value { name: "ArrayOfVsanFileServerHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServerHealthSummary>>(wrap_array_of_vsan_file_server_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServerHealthSummary>>(v, wrap_array_of_vsan_file_server_health_summary) }),
        ("ArrayOfClusterVmReadiness", TypeInfo::Value { name: "ArrayOfClusterVmReadiness", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterVmReadiness>>(wrap_array_of_cluster_vm_readiness), from_value: |v| from_val_with::<Vec<super::structs::ClusterVmReadiness>>(v, wrap_array_of_cluster_vm_readiness) }),
        ("ArrayOfVsanDisallowEvacuateDataIssue", TypeInfo::Value { name: "ArrayOfVsanDisallowEvacuateDataIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDisallowEvacuateDataIssue>>(wrap_array_of_vsan_disallow_evacuate_data_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanDisallowEvacuateDataIssue>>(v, wrap_array_of_vsan_disallow_evacuate_data_issue) }),
        ("CertificateNotTrustedFault", TypeInfo::Object { name: "CertificateNotTrustedFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CertificateNotTrustedFault))) }),
        ("VimClusterVsanHostDiskMapping", TypeInfo::Object { name: "VimClusterVsanHostDiskMapping", builder_fn: || Box::new(VimClusterVsanHostDiskMappingFields::new()) }),
        ("ArrayOfVirtualFloppyImageBackingOption", TypeInfo::Value { name: "ArrayOfVirtualFloppyImageBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualFloppyImageBackingOption>>(wrap_array_of_virtual_floppy_image_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualFloppyImageBackingOption>>(v, wrap_array_of_virtual_floppy_image_backing_option) }),
        ("FaultsByVM", TypeInfo::Object { name: "FaultsByVM", builder_fn: || Box::new(FaultsByVmFields::new()) }),
        ("ArrayOfHostNvmeOverFibreChannelParameters", TypeInfo::Value { name: "ArrayOfHostNvmeOverFibreChannelParameters", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeOverFibreChannelParameters>>(wrap_array_of_host_nvme_over_fibre_channel_parameters), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeOverFibreChannelParameters>>(v, wrap_array_of_host_nvme_over_fibre_channel_parameters) }),
        ("ArrayOfPowerOnFtSecondaryTimedout", TypeInfo::Value { name: "ArrayOfPowerOnFtSecondaryTimedout", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_power_on_ft_secondary_timedout), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_power_on_ft_secondary_timedout) }),
        ("CryptoSpecShallowRecrypt", TypeInfo::Object { name: "CryptoSpecShallowRecrypt", builder_fn: || Box::new(CryptoSpecShallowRecryptFields::new()) }),
        ("ArrayOfMismatchedVMotionNetworkNames", TypeInfo::Value { name: "ArrayOfMismatchedVMotionNetworkNames", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_mismatched_v_motion_network_names), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_mismatched_v_motion_network_names) }),
        ("ArrayOfVibDependenciesNotMetByHost", TypeInfo::Value { name: "ArrayOfVibDependenciesNotMetByHost", make_deserializer: || make_deser_with::<Vec<super::structs::VibDependenciesNotMetByHost>>(wrap_array_of_vib_dependencies_not_met_by_host), from_value: |v| from_val_with::<Vec<super::structs::VibDependenciesNotMetByHost>>(v, wrap_array_of_vib_dependencies_not_met_by_host) }),
        ("VirtualDevicePipeBackingOption", TypeInfo::Object { name: "VirtualDevicePipeBackingOption", builder_fn: || Box::new(VirtualDevicePipeBackingOptionFields::new()) }),
        ("ArrayOfVirtualUSBRemoteClientBackingOption", TypeInfo::Value { name: "ArrayOfVirtualUSBRemoteClientBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbRemoteClientBackingOption>>(wrap_array_of_virtual_usb_remote_client_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbRemoteClientBackingOption>>(v, wrap_array_of_virtual_usb_remote_client_backing_option) }),
        ("VmGuestShutdownEvent", TypeInfo::Object { name: "VmGuestShutdownEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmGuestShutdownEvent))) }),
        ("VirtualMachineDefaultProfileSpec", TypeInfo::Object { name: "VirtualMachineDefaultProfileSpec", builder_fn: || Box::new(VirtualMachineDefaultProfileSpecFields::new()) }),
        ("VsanUnicastAddressInfo", TypeInfo::Object { name: "VsanUnicastAddressInfo", builder_fn: || Box::new(VsanUnicastAddressInfoFields::new()) }),
        ("PropertyChangeOp", TypeInfo::Value { name: "PropertyChangeOp", make_deserializer: || make_deser_with::<super::enums::PropertyChangeOpEnum>(wrap_property_change_op), from_value: |v| from_val_with::<super::enums::PropertyChangeOpEnum>(v, wrap_property_change_op) }),
        ("TaskFilterSpecRecursionOption", TypeInfo::Value { name: "TaskFilterSpecRecursionOption", make_deserializer: || make_deser_with::<super::enums::TaskFilterSpecRecursionOptionEnum>(wrap_task_filter_spec_recursion_option), from_value: |v| from_val_with::<super::enums::TaskFilterSpecRecursionOptionEnum>(v, wrap_task_filter_spec_recursion_option) }),
        ("ArrayOfVirtualLsiLogicControllerOption", TypeInfo::Value { name: "ArrayOfVirtualLsiLogicControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualLsiLogicControllerOption>>(wrap_array_of_virtual_lsi_logic_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualLsiLogicControllerOption>>(v, wrap_array_of_virtual_lsi_logic_controller_option) }),
        ("ArrayOfVMotionLicenseExpiredEvent", TypeInfo::Value { name: "ArrayOfVMotionLicenseExpiredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_v_motion_license_expired_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_v_motion_license_expired_event) }),
        ("ArrayOfVsanClusterConfigInfoHostDefaultInfo", TypeInfo::Value { name: "ArrayOfVsanClusterConfigInfoHostDefaultInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterConfigInfoHostDefaultInfo>>(wrap_array_of_vsan_cluster_config_info_host_default_info), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterConfigInfoHostDefaultInfo>>(v, wrap_array_of_vsan_cluster_config_info_host_default_info) }),
        ("ArrayOfExtSolutionManagerInfoTabInfo", TypeInfo::Value { name: "ArrayOfExtSolutionManagerInfoTabInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtSolutionManagerInfoTabInfo>>(wrap_array_of_ext_solution_manager_info_tab_info), from_value: |v| from_val_with::<Vec<super::structs::ExtSolutionManagerInfoTabInfo>>(v, wrap_array_of_ext_solution_manager_info_tab_info) }),
        ("VmDateRolledBackEvent", TypeInfo::Object { name: "VmDateRolledBackEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDateRolledBackEvent))) }),
        ("ArrayOfPbmPlacementHub", TypeInfo::Value { name: "ArrayOfPbmPlacementHub", make_deserializer: || make_deser_with::<Vec<super::structs::PbmPlacementHub>>(wrap_array_of_pbm_placement_hub), from_value: |v| from_val_with::<Vec<super::structs::PbmPlacementHub>>(v, wrap_array_of_pbm_placement_hub) }),
        ("ArrayOfResourcePoolEvent", TypeInfo::Value { name: "ArrayOfResourcePoolEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_resource_pool_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_resource_pool_event) }),
        ("KmipClusterInfoWrappingKeyIdKeyInfo", TypeInfo::Object { name: "KmipClusterInfoWrappingKeyIdKeyInfo", builder_fn: || Box::new(KmipClusterInfoWrappingKeyIdKeyInfoFields::new()) }),
        ("ArrayOfVsanGenericClusterBestPracticeHealth", TypeInfo::Value { name: "ArrayOfVsanGenericClusterBestPracticeHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanGenericClusterBestPracticeHealth>>(wrap_array_of_vsan_generic_cluster_best_practice_health), from_value: |v| from_val_with::<Vec<super::structs::VsanGenericClusterBestPracticeHealth>>(v, wrap_array_of_vsan_generic_cluster_best_practice_health) }),
        ("ClusterComputeResourceDvsProfileDVPortgroupSpecToServiceMapping", TypeInfo::Object { name: "ClusterComputeResourceDvsProfileDVPortgroupSpecToServiceMapping", builder_fn: || Box::new(ClusterComputeResourceDvsProfileDvPortgroupSpecToServiceMappingFields::new()) }),
        ("ArrayOfOperationDisallowedOnHost", TypeInfo::Value { name: "ArrayOfOperationDisallowedOnHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_operation_disallowed_on_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_operation_disallowed_on_host) }),
        ("ArrayOfVsanHostQueryCheckLimitsSpec", TypeInfo::Value { name: "ArrayOfVsanHostQueryCheckLimitsSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostQueryCheckLimitsSpec>>(wrap_array_of_vsan_host_query_check_limits_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanHostQueryCheckLimitsSpec>>(v, wrap_array_of_vsan_host_query_check_limits_spec) }),
        ("ArrayOfDasHostFailedEvent", TypeInfo::Value { name: "ArrayOfDasHostFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_das_host_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_das_host_failed_event) }),
        ("ArrayOfVmDasResetFailedEvent", TypeInfo::Value { name: "ArrayOfVmDasResetFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_das_reset_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_das_reset_failed_event) }),
        ("ArrayOfDistributedVirtualSwitchManagerDvsProductSpec", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchManagerDvsProductSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchManagerDvsProductSpec>>(wrap_array_of_distributed_virtual_switch_manager_dvs_product_spec), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchManagerDvsProductSpec>>(v, wrap_array_of_distributed_virtual_switch_manager_dvs_product_spec) }),
        ("ArrayOfHostInternetScsiHbaAuthenticationCapabilities", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaAuthenticationCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaAuthenticationCapabilities>>(wrap_array_of_host_internet_scsi_hba_authentication_capabilities), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaAuthenticationCapabilities>>(v, wrap_array_of_host_internet_scsi_hba_authentication_capabilities) }),
        ("AgentVibMatchingRule", TypeInfo::Object { name: "AgentVibMatchingRule", builder_fn: || Box::new(AgentVibMatchingRuleFields::new()) }),
        ("ArrayOfGroupAlarmAction", TypeInfo::Value { name: "ArrayOfGroupAlarmAction", make_deserializer: || make_deser_with::<Vec<super::structs::GroupAlarmAction>>(wrap_array_of_group_alarm_action), from_value: |v| from_val_with::<Vec<super::structs::GroupAlarmAction>>(v, wrap_array_of_group_alarm_action) }),
        ("ArrayOfStringExpression", TypeInfo::Value { name: "ArrayOfStringExpression", make_deserializer: || make_deser_with::<Vec<super::structs::StringExpression>>(wrap_array_of_string_expression), from_value: |v| from_val_with::<Vec<super::structs::StringExpression>>(v, wrap_array_of_string_expression) }),
        ("ArrayOfToolsUnavailable", TypeInfo::Value { name: "ArrayOfToolsUnavailable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_tools_unavailable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_tools_unavailable) }),
        ("ArrayOfBackingConfig", TypeInfo::Value { name: "ArrayOfBackingConfig", make_deserializer: || make_deser_with::<Vec<super::structs::BackingConfig>>(wrap_array_of_backing_config), from_value: |v| from_val_with::<Vec<super::structs::BackingConfig>>(v, wrap_array_of_backing_config) }),
        ("ArrayOfHostLowLevelProvisioningManagerDiskLayoutSpec", TypeInfo::Value { name: "ArrayOfHostLowLevelProvisioningManagerDiskLayoutSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostLowLevelProvisioningManagerDiskLayoutSpec>>(wrap_array_of_host_low_level_provisioning_manager_disk_layout_spec), from_value: |v| from_val_with::<Vec<super::structs::HostLowLevelProvisioningManagerDiskLayoutSpec>>(v, wrap_array_of_host_low_level_provisioning_manager_disk_layout_spec) }),
        ("ArrayOfCpuIncompatible", TypeInfo::Value { name: "ArrayOfCpuIncompatible", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cpu_incompatible), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cpu_incompatible) }),
        ("ArrayOfFtIssuesOnHostHostSelectionType", TypeInfo::Value { name: "ArrayOfFtIssuesOnHostHostSelectionType", make_deserializer: || make_deser_with::<Vec<super::enums::FtIssuesOnHostHostSelectionTypeEnum>>(wrap_array_of_ft_issues_on_host_host_selection_type), from_value: |v| from_val_with::<Vec<super::enums::FtIssuesOnHostHostSelectionTypeEnum>>(v, wrap_array_of_ft_issues_on_host_host_selection_type) }),
        ("ArrayOfLifecycleConfigDetails", TypeInfo::Value { name: "ArrayOfLifecycleConfigDetails", make_deserializer: || make_deser_with::<Vec<super::structs::LifecycleConfigDetails>>(wrap_array_of_lifecycle_config_details), from_value: |v| from_val_with::<Vec<super::structs::LifecycleConfigDetails>>(v, wrap_array_of_lifecycle_config_details) }),
        ("HostNetworkConfigResult", TypeInfo::Object { name: "HostNetworkConfigResult", builder_fn: || Box::new(HostNetworkConfigResultFields::new()) }),
        ("ArrayOfHostDateTimeSystemTimeZone", TypeInfo::Value { name: "ArrayOfHostDateTimeSystemTimeZone", make_deserializer: || make_deser_with::<Vec<super::structs::HostDateTimeSystemTimeZone>>(wrap_array_of_host_date_time_system_time_zone), from_value: |v| from_val_with::<Vec<super::structs::HostDateTimeSystemTimeZone>>(v, wrap_array_of_host_date_time_system_time_zone) }),
        ("ArrayOfCnsVSANFileCreateSpec", TypeInfo::Value { name: "ArrayOfCnsVSANFileCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVsanFileCreateSpec>>(wrap_array_of_cns_vsan_file_create_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsVsanFileCreateSpec>>(v, wrap_array_of_cns_vsan_file_create_spec) }),
        ("ArrayOfGuestListFileInfo", TypeInfo::Value { name: "ArrayOfGuestListFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestListFileInfo>>(wrap_array_of_guest_list_file_info), from_value: |v| from_val_with::<Vec<super::structs::GuestListFileInfo>>(v, wrap_array_of_guest_list_file_info) }),
        ("VsanStoragePoolDisk", TypeInfo::Object { name: "VsanStoragePoolDisk", builder_fn: || Box::new(VsanStoragePoolDiskFields::new()) }),
        ("ArrayOfVirtualDiskRawDiskVer2BackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDiskRawDiskVer2BackingInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_disk_raw_disk_ver_2_backing_info_array)), from_value: |v| cast_to_virtual_disk_raw_disk_ver_2_backing_info_array(from_value(v)?) }),
        ("ArrayOfQuestionPending", TypeInfo::Value { name: "ArrayOfQuestionPending", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_question_pending), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_question_pending) }),
        ("ArrayOfAnswerFileStatusResult", TypeInfo::Value { name: "ArrayOfAnswerFileStatusResult", make_deserializer: || make_deser_with::<Vec<super::structs::AnswerFileStatusResult>>(wrap_array_of_answer_file_status_result), from_value: |v| from_val_with::<Vec<super::structs::AnswerFileStatusResult>>(v, wrap_array_of_answer_file_status_result) }),
        ("DvsSingleIpPort", TypeInfo::Object { name: "DvsSingleIpPort", builder_fn: || Box::new(DvsSingleIpPortFields::new()) }),
        ("HostDatastoreNameConflictConnectInfo", TypeInfo::Object { name: "HostDatastoreNameConflictConnectInfo", builder_fn: || Box::new(HostDatastoreNameConflictConnectInfoFields::new()) }),
        ("VsanHclCommonDeviceInfo", TypeInfo::Object { name: "VsanHclCommonDeviceInfo", builder_fn: || Box::new(VsanHclCommonDeviceInfoFields::new()) }),
        ("ArrayOfIssue", TypeInfo::Value { name: "ArrayOfIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_issue_array)), from_value: |v| cast_to_issue_array(from_value(v)?) }),
        ("CannotDisableSnapshot", TypeInfo::Object { name: "CannotDisableSnapshot", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotDisableSnapshot))) }),
        ("ArrayOfFaultDomainProviderMapping", TypeInfo::Value { name: "ArrayOfFaultDomainProviderMapping", make_deserializer: || make_deser_with::<Vec<super::structs::FaultDomainProviderMapping>>(wrap_array_of_fault_domain_provider_mapping), from_value: |v| from_val_with::<Vec<super::structs::FaultDomainProviderMapping>>(v, wrap_array_of_fault_domain_provider_mapping) }),
        ("ArrayOfInvalidAgentConfiguration", TypeInfo::Value { name: "ArrayOfInvalidAgentConfiguration", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_agent_configuration), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_agent_configuration) }),
        ("VirtualMachineWipeResult", TypeInfo::Object { name: "VirtualMachineWipeResult", builder_fn: || Box::new(VirtualMachineWipeResultFields::new()) }),
        ("ArrayOfVsanStoragePoolResourceCheckResult", TypeInfo::Value { name: "ArrayOfVsanStoragePoolResourceCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanStoragePoolResourceCheckResult>>(wrap_array_of_vsan_storage_pool_resource_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanStoragePoolResourceCheckResult>>(v, wrap_array_of_vsan_storage_pool_resource_check_result) }),
        ("NoCompatibleHostWithAccessToDevice", TypeInfo::Object { name: "NoCompatibleHostWithAccessToDevice", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoCompatibleHostWithAccessToDevice))) }),
        ("CustomizationVirtualMachineName", TypeInfo::Object { name: "CustomizationVirtualMachineName", builder_fn: || Box::new(CustomizationVirtualMachineNameFields::new()) }),
        ("SecondaryVmNotRegistered", TypeInfo::Object { name: "SecondaryVmNotRegistered", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SecondaryVmNotRegistered))) }),
        ("PropertyChange", TypeInfo::Object { name: "PropertyChange", builder_fn: || Box::new(PropertyChangeFields::new()) }),
        ("UpdatedAgentBeingRestartedEvent", TypeInfo::Object { name: "UpdatedAgentBeingRestartedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UpdatedAgentBeingRestartedEvent))) }),
        ("StoragePlacementAction", TypeInfo::Object { name: "StoragePlacementAction", builder_fn: || Box::new(StoragePlacementActionFields::new()) }),
        ("ArrayOfPerfMetricSeriesCSV", TypeInfo::Value { name: "ArrayOfPerfMetricSeriesCSV", make_deserializer: || make_deser_with::<Vec<super::structs::PerfMetricSeriesCsv>>(wrap_array_of_perf_metric_series_csv), from_value: |v| from_val_with::<Vec<super::structs::PerfMetricSeriesCsv>>(v, wrap_array_of_perf_metric_series_csv) }),
        ("VirtualKeyboard", TypeInfo::Object { name: "VirtualKeyboard", builder_fn: || Box::new(VirtualKeyboardFields::new()) }),
        ("VirtualLsiLogicController", TypeInfo::Object { name: "VirtualLsiLogicController", builder_fn: || Box::new(VirtualLsiLogicControllerFields::new()) }),
        ("DiagnosticManagerAuditRecordResult", TypeInfo::Object { name: "DiagnosticManagerAuditRecordResult", builder_fn: || Box::new(DiagnosticManagerAuditRecordResultFields::new()) }),
        ("InvalidDatastorePath", TypeInfo::Object { name: "InvalidDatastorePath", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidDatastorePath))) }),
        ("VsanRemoteVcInfoStandalone", TypeInfo::Object { name: "VsanRemoteVcInfoStandalone", builder_fn: || Box::new(VsanRemoteVcInfoStandaloneFields::new()) }),
        ("QueryVsanManagedStorageSpaceUsageSpec", TypeInfo::Object { name: "QueryVsanManagedStorageSpaceUsageSpec", builder_fn: || Box::new(QueryVsanManagedStorageSpaceUsageSpecFields::new()) }),
        ("VirtualE1000e", TypeInfo::Object { name: "VirtualE1000e", builder_fn: || Box::new(VirtualE1000EFields::new()) }),
        ("ArrayOfKmipClusterInfoWrappingKeyIdKeyInfo", TypeInfo::Value { name: "ArrayOfKmipClusterInfoWrappingKeyIdKeyInfo", make_deserializer: || make_deser_with::<Vec<super::structs::KmipClusterInfoWrappingKeyIdKeyInfo>>(wrap_array_of_kmip_cluster_info_wrapping_key_id_key_info), from_value: |v| from_val_with::<Vec<super::structs::KmipClusterInfoWrappingKeyIdKeyInfo>>(v, wrap_array_of_kmip_cluster_info_wrapping_key_id_key_info) }),
        ("HostMemorySpec", TypeInfo::Object { name: "HostMemorySpec", builder_fn: || Box::new(HostMemorySpecFields::new()) }),
        ("ArrayOfVirtualMachineDisplayTopology", TypeInfo::Value { name: "ArrayOfVirtualMachineDisplayTopology", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineDisplayTopology>>(wrap_array_of_virtual_machine_display_topology), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineDisplayTopology>>(v, wrap_array_of_virtual_machine_display_topology) }),
        ("ArrayOfCnsKubernetesQueryFilter", TypeInfo::Value { name: "ArrayOfCnsKubernetesQueryFilter", make_deserializer: || make_deser_with::<Vec<super::structs::CnsKubernetesQueryFilter>>(wrap_array_of_cns_kubernetes_query_filter), from_value: |v| from_val_with::<Vec<super::structs::CnsKubernetesQueryFilter>>(v, wrap_array_of_cns_kubernetes_query_filter) }),
        ("ArrayOfIscsiStatus", TypeInfo::Value { name: "ArrayOfIscsiStatus", make_deserializer: || make_deser_with::<Vec<super::structs::IscsiStatus>>(wrap_array_of_iscsi_status), from_value: |v| from_val_with::<Vec<super::structs::IscsiStatus>>(v, wrap_array_of_iscsi_status) }),
        ("ArrayOfStorageDrsHmsUnreachable", TypeInfo::Value { name: "ArrayOfStorageDrsHmsUnreachable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_hms_unreachable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_hms_unreachable) }),
        ("ArrayOfHostDiskPartitionAttributes", TypeInfo::Value { name: "ArrayOfHostDiskPartitionAttributes", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskPartitionAttributes>>(wrap_array_of_host_disk_partition_attributes), from_value: |v| from_val_with::<Vec<super::structs::HostDiskPartitionAttributes>>(v, wrap_array_of_host_disk_partition_attributes) }),
        ("ArrayOfReplicationVmFault", TypeInfo::Value { name: "ArrayOfReplicationVmFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_replication_vm_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_replication_vm_fault) }),
        ("AlarmEmailCompletedEvent", TypeInfo::Object { name: "AlarmEmailCompletedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmEmailCompletedEvent))) }),
        ("VMwareDvsLagIpfixConfig", TypeInfo::Object { name: "VMwareDvsLagIpfixConfig", builder_fn: || Box::new(VMwareDvsLagIpfixConfigFields::new()) }),
        ("ArrayOfDistributedVirtualSwitchHostMemberBacking", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchHostMemberBacking", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_distributed_virtual_switch_host_member_backing_array)), from_value: |v| cast_to_distributed_virtual_switch_host_member_backing_array(from_value(v)?) }),
        ("ArrayOfVsanPolicyChangeBatch", TypeInfo::Value { name: "ArrayOfVsanPolicyChangeBatch", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPolicyChangeBatch>>(wrap_array_of_vsan_policy_change_batch), from_value: |v| from_val_with::<Vec<super::structs::VsanPolicyChangeBatch>>(v, wrap_array_of_vsan_policy_change_batch) }),
        ("ArrayOfCustomizationWinOptions", TypeInfo::Value { name: "ArrayOfCustomizationWinOptions", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationWinOptions>>(wrap_array_of_customization_win_options), from_value: |v| from_val_with::<Vec<super::structs::CustomizationWinOptions>>(v, wrap_array_of_customization_win_options) }),
        ("DrsVmMigratedEvent", TypeInfo::Object { name: "DrsVmMigratedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsVmMigratedEvent))) }),
        ("ArrayOfIpRouteProfile", TypeInfo::Value { name: "ArrayOfIpRouteProfile", make_deserializer: || make_deser_with::<Vec<super::structs::IpRouteProfile>>(wrap_array_of_ip_route_profile), from_value: |v| from_val_with::<Vec<super::structs::IpRouteProfile>>(v, wrap_array_of_ip_route_profile) }),
        ("ArrayOfDatastoreRenamedEvent", TypeInfo::Value { name: "ArrayOfDatastoreRenamedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_renamed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_renamed_event) }),
        ("HostQualifiedName", TypeInfo::Object { name: "HostQualifiedName", builder_fn: || Box::new(HostQualifiedNameFields::new()) }),
        ("ArrayOfHostListSummaryQuickStats", TypeInfo::Value { name: "ArrayOfHostListSummaryQuickStats", make_deserializer: || make_deser_with::<Vec<super::structs::HostListSummaryQuickStats>>(wrap_array_of_host_list_summary_quick_stats), from_value: |v| from_val_with::<Vec<super::structs::HostListSummaryQuickStats>>(v, wrap_array_of_host_list_summary_quick_stats) }),
        ("ArrayOfHostTpmSoftwareComponentEventDetails", TypeInfo::Value { name: "ArrayOfHostTpmSoftwareComponentEventDetails", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmSoftwareComponentEventDetails>>(wrap_array_of_host_tpm_software_component_event_details), from_value: |v| from_val_with::<Vec<super::structs::HostTpmSoftwareComponentEventDetails>>(v, wrap_array_of_host_tpm_software_component_event_details) }),
        ("ArrayOfVmAcquiredMksTicketEvent", TypeInfo::Value { name: "ArrayOfVmAcquiredMksTicketEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_acquired_mks_ticket_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_acquired_mks_ticket_event) }),
        ("ArrayOfHostBootDevice", TypeInfo::Value { name: "ArrayOfHostBootDevice", make_deserializer: || make_deser_with::<Vec<super::structs::HostBootDevice>>(wrap_array_of_host_boot_device), from_value: |v| from_val_with::<Vec<super::structs::HostBootDevice>>(v, wrap_array_of_host_boot_device) }),
        ("ArrayOfVirtualSerialPortPipeBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualSerialPortPipeBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortPipeBackingInfo>>(wrap_array_of_virtual_serial_port_pipe_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortPipeBackingInfo>>(v, wrap_array_of_virtual_serial_port_pipe_backing_info) }),
        ("ArrayOfVmFaultToleranceStateChangedEvent", TypeInfo::Value { name: "ArrayOfVmFaultToleranceStateChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_fault_tolerance_state_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_fault_tolerance_state_changed_event) }),
        ("SessionManagerHttpServiceRequestSpec", TypeInfo::Object { name: "SessionManagerHttpServiceRequestSpec", builder_fn: || Box::new(SessionManagerHttpServiceRequestSpecFields::new()) }),
        ("HooksHookListSpec", TypeInfo::Object { name: "HooksHookListSpec", builder_fn: || Box::new(HooksHookListSpecFields::new()) }),
        ("ArrayOfHostInternetScsiHbaIscsiIpv6Address", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaIscsiIpv6Address", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaIscsiIpv6Address>>(wrap_array_of_host_internet_scsi_hba_iscsi_ipv_6_address), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaIscsiIpv6Address>>(v, wrap_array_of_host_internet_scsi_hba_iscsi_ipv_6_address) }),
        ("ArrayOfDVPortStatus", TypeInfo::Value { name: "ArrayOfDVPortStatus", make_deserializer: || make_deser_with::<Vec<super::structs::DvPortStatus>>(wrap_array_of_dv_port_status), from_value: |v| from_val_with::<Vec<super::structs::DvPortStatus>>(v, wrap_array_of_dv_port_status) }),
        ("ArrayOfVirtualPointingDeviceOption", TypeInfo::Value { name: "ArrayOfVirtualPointingDeviceOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPointingDeviceOption>>(wrap_array_of_virtual_pointing_device_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPointingDeviceOption>>(v, wrap_array_of_virtual_pointing_device_option) }),
        ("ArrayOfInvalidLogin", TypeInfo::Value { name: "ArrayOfInvalidLogin", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_login), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_login) }),
        ("AccountRemovedEvent", TypeInfo::Object { name: "AccountRemovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AccountRemovedEvent))) }),
        ("FolderFailedHostResult", TypeInfo::Object { name: "FolderFailedHostResult", builder_fn: || Box::new(FolderFailedHostResultFields::new()) }),
        ("VsanMassCollectorSpec", TypeInfo::Object { name: "VsanMassCollectorSpec", builder_fn: || Box::new(VsanMassCollectorSpecFields::new()) }),
        ("VirtualCdromRemotePassthroughBackingInfo", TypeInfo::Object { name: "VirtualCdromRemotePassthroughBackingInfo", builder_fn: || Box::new(VirtualCdromRemotePassthroughBackingInfoFields::new()) }),
        ("ArrayOfSolutionsVmResourceSpec", TypeInfo::Value { name: "ArrayOfSolutionsVmResourceSpec", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsVmResourceSpec>>(wrap_array_of_solutions_vm_resource_spec), from_value: |v| from_val_with::<Vec<super::structs::SolutionsVmResourceSpec>>(v, wrap_array_of_solutions_vm_resource_spec) }),
        ("EventFilterSpecByUsername", TypeInfo::Object { name: "EventFilterSpecByUsername", builder_fn: || Box::new(EventFilterSpecByUsernameFields::new()) }),
        ("ArrayOfDVSConfigSpec", TypeInfo::Value { name: "ArrayOfDVSConfigSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_config_spec_array)), from_value: |v| cast_to_dvs_config_spec_array(from_value(v)?) }),
        ("ArrayOfHostListSummaryGatewaySummary", TypeInfo::Value { name: "ArrayOfHostListSummaryGatewaySummary", make_deserializer: || make_deser_with::<Vec<super::structs::HostListSummaryGatewaySummary>>(wrap_array_of_host_list_summary_gateway_summary), from_value: |v| from_val_with::<Vec<super::structs::HostListSummaryGatewaySummary>>(v, wrap_array_of_host_list_summary_gateway_summary) }),
        ("VirtualMachineStorageSummary", TypeInfo::Object { name: "VirtualMachineStorageSummary", builder_fn: || Box::new(VirtualMachineStorageSummaryFields::new()) }),
        ("ArrayOfExtensionOvfConsumerInfo", TypeInfo::Value { name: "ArrayOfExtensionOvfConsumerInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensionOvfConsumerInfo>>(wrap_array_of_extension_ovf_consumer_info), from_value: |v| from_val_with::<Vec<super::structs::ExtensionOvfConsumerInfo>>(v, wrap_array_of_extension_ovf_consumer_info) }),
        ("ArrayOfRecoveredDevice", TypeInfo::Value { name: "ArrayOfRecoveredDevice", make_deserializer: || make_deser_with::<Vec<super::structs::RecoveredDevice>>(wrap_array_of_recovered_device), from_value: |v| from_val_with::<Vec<super::structs::RecoveredDevice>>(v, wrap_array_of_recovered_device) }),
        ("ArrayOfVsanConfigCheckResult", TypeInfo::Value { name: "ArrayOfVsanConfigCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanConfigCheckResult>>(wrap_array_of_vsan_config_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanConfigCheckResult>>(v, wrap_array_of_vsan_config_check_result) }),
        ("ArrayOfAgentPinnedPemCertificate", TypeInfo::Value { name: "ArrayOfAgentPinnedPemCertificate", make_deserializer: || make_deser_with::<Vec<super::structs::AgentPinnedPemCertificate>>(wrap_array_of_agent_pinned_pem_certificate), from_value: |v| from_val_with::<Vec<super::structs::AgentPinnedPemCertificate>>(v, wrap_array_of_agent_pinned_pem_certificate) }),
        ("VmPodConfigForPlacement", TypeInfo::Object { name: "VmPodConfigForPlacement", builder_fn: || Box::new(VmPodConfigForPlacementFields::new()) }),
        ("ArrayOfRollbackEvent", TypeInfo::Value { name: "ArrayOfRollbackEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_rollback_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_rollback_event) }),
        ("ArrayOfPointInTimeReplicaInfo", TypeInfo::Value { name: "ArrayOfPointInTimeReplicaInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PointInTimeReplicaInfo>>(wrap_array_of_point_in_time_replica_info), from_value: |v| from_val_with::<Vec<super::structs::PointInTimeReplicaInfo>>(v, wrap_array_of_point_in_time_replica_info) }),
        ("OvfConsumerCommunicationError", TypeInfo::Object { name: "OvfConsumerCommunicationError", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConsumerCommunicationError))) }),
        ("HostDhcpService", TypeInfo::Object { name: "HostDhcpService", builder_fn: || Box::new(HostDhcpServiceFields::new()) }),
        ("ArrayOfNvdimmInterleaveSetInfo", TypeInfo::Value { name: "ArrayOfNvdimmInterleaveSetInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmInterleaveSetInfo>>(wrap_array_of_nvdimm_interleave_set_info), from_value: |v| from_val_with::<Vec<super::structs::NvdimmInterleaveSetInfo>>(v, wrap_array_of_nvdimm_interleave_set_info) }),
        ("ArrayOfVAppPropertySpec", TypeInfo::Value { name: "ArrayOfVAppPropertySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VAppPropertySpec>>(wrap_array_of_v_app_property_spec), from_value: |v| from_val_with::<Vec<super::structs::VAppPropertySpec>>(v, wrap_array_of_v_app_property_spec) }),
        ("ArrayOfTaskInfoState", TypeInfo::Value { name: "ArrayOfTaskInfoState", make_deserializer: || make_deser_with::<Vec<super::enums::TaskInfoStateEnum>>(wrap_array_of_task_info_state), from_value: |v| from_val_with::<Vec<super::enums::TaskInfoStateEnum>>(v, wrap_array_of_task_info_state) }),
        ("ArrayOfClusterDasAdvancedRuntimeInfoVmcpCapabilityInfo", TypeInfo::Value { name: "ArrayOfClusterDasAdvancedRuntimeInfoVmcpCapabilityInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasAdvancedRuntimeInfoVmcpCapabilityInfo>>(wrap_array_of_cluster_das_advanced_runtime_info_vmcp_capability_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasAdvancedRuntimeInfoVmcpCapabilityInfo>>(v, wrap_array_of_cluster_das_advanced_runtime_info_vmcp_capability_info) }),
        ("ArrayOfClusterCreatedEvent", TypeInfo::Value { name: "ArrayOfClusterCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_cluster_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_cluster_created_event) }),
        ("ArrayOfHostCpuPackage", TypeInfo::Value { name: "ArrayOfHostCpuPackage", make_deserializer: || make_deser_with::<Vec<super::structs::HostCpuPackage>>(wrap_array_of_host_cpu_package), from_value: |v| from_val_with::<Vec<super::structs::HostCpuPackage>>(v, wrap_array_of_host_cpu_package) }),
        ("HostBootDeviceInfo", TypeInfo::Object { name: "HostBootDeviceInfo", builder_fn: || Box::new(HostBootDeviceInfoFields::new()) }),
        ("VmCorrupted", TypeInfo::Object { name: "VmCorrupted", builder_fn: || Box::new(VmCorruptedFields::new()) }),
        ("ArrayOfCannotChangeHaSettingsForFtSecondary", TypeInfo::Value { name: "ArrayOfCannotChangeHaSettingsForFtSecondary", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_change_ha_settings_for_ft_secondary), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_change_ha_settings_for_ft_secondary) }),
        ("ArrayOfNotSupportedHost", TypeInfo::Value { name: "ArrayOfNotSupportedHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_host) }),
        ("ArrayOfSharedBusControllerNotSupported", TypeInfo::Value { name: "ArrayOfSharedBusControllerNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_shared_bus_controller_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_shared_bus_controller_not_supported) }),
        ("VirtualVmxnet3OptionStrictLatencyConfigOption", TypeInfo::Object { name: "VirtualVmxnet3OptionStrictLatencyConfigOption", builder_fn: || Box::new(VirtualVmxnet3OptionStrictLatencyConfigOptionFields::new()) }),
        ("LAGUplinkInfo", TypeInfo::Object { name: "LAGUplinkInfo", builder_fn: || Box::new(LagUplinkInfoFields::new()) }),
        ("TooManyHosts", TypeInfo::Object { name: "TooManyHosts", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TooManyHosts))) }),
        ("ArrayOfBaseConfigInfoDiskFileBackingInfo", TypeInfo::Value { name: "ArrayOfBaseConfigInfoDiskFileBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::BaseConfigInfoDiskFileBackingInfo>>(wrap_array_of_base_config_info_disk_file_backing_info), from_value: |v| from_val_with::<Vec<super::structs::BaseConfigInfoDiskFileBackingInfo>>(v, wrap_array_of_base_config_info_disk_file_backing_info) }),
        ("ArrayOfAgentOvfEnvironmentInfo", TypeInfo::Value { name: "ArrayOfAgentOvfEnvironmentInfo", make_deserializer: || make_deser_with::<Vec<super::structs::AgentOvfEnvironmentInfo>>(wrap_array_of_agent_ovf_environment_info), from_value: |v| from_val_with::<Vec<super::structs::AgentOvfEnvironmentInfo>>(v, wrap_array_of_agent_ovf_environment_info) }),
        ("ArrayOfHostNicTeamingPolicy", TypeInfo::Value { name: "ArrayOfHostNicTeamingPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::HostNicTeamingPolicy>>(wrap_array_of_host_nic_teaming_policy), from_value: |v| from_val_with::<Vec<super::structs::HostNicTeamingPolicy>>(v, wrap_array_of_host_nic_teaming_policy) }),
        ("ArrayOfPbmCapabilityConstraints", TypeInfo::Value { name: "ArrayOfPbmCapabilityConstraints", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_pbm_capability_constraints_array)), from_value: |v| cast_to_pbm_capability_constraints_array(from_value(v)?) }),
        ("VsanResourceCheckStatus", TypeInfo::Object { name: "VsanResourceCheckStatus", builder_fn: || Box::new(VsanResourceCheckStatusFields::new()) }),
        ("IpPoolAssociation", TypeInfo::Object { name: "IpPoolAssociation", builder_fn: || Box::new(IpPoolAssociationFields::new()) }),
        ("ArrayOfCertificateNotTrusted", TypeInfo::Value { name: "ArrayOfCertificateNotTrusted", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_certificate_not_trusted), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_certificate_not_trusted) }),
        ("VsanHostClomdLivenessResult", TypeInfo::Object { name: "VsanHostClomdLivenessResult", builder_fn: || Box::new(VsanHostClomdLivenessResultFields::new()) }),
        ("ClusterDpmConfigInfo", TypeInfo::Object { name: "ClusterDpmConfigInfo", builder_fn: || Box::new(ClusterDpmConfigInfoFields::new()) }),
        ("ArrayOfVmDateRolledBackEvent", TypeInfo::Value { name: "ArrayOfVmDateRolledBackEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_date_rolled_back_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_date_rolled_back_event) }),
        ("ArrayOfHostServiceConfig", TypeInfo::Value { name: "ArrayOfHostServiceConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostServiceConfig>>(wrap_array_of_host_service_config), from_value: |v| from_val_with::<Vec<super::structs::HostServiceConfig>>(v, wrap_array_of_host_service_config) }),
        ("ArrayOfHostDiskPartitionBlockRange", TypeInfo::Value { name: "ArrayOfHostDiskPartitionBlockRange", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskPartitionBlockRange>>(wrap_array_of_host_disk_partition_block_range), from_value: |v| from_val_with::<Vec<super::structs::HostDiskPartitionBlockRange>>(v, wrap_array_of_host_disk_partition_block_range) }),
        ("FailoverLevelRestored", TypeInfo::Object { name: "FailoverLevelRestored", builder_fn: || Box::new(EventFields::new(Some(StructType::FailoverLevelRestored))) }),
        ("HostTpmNvTagEventDetails", TypeInfo::Object { name: "HostTpmNvTagEventDetails", builder_fn: || Box::new(HostTpmNvTagEventDetailsFields::new()) }),
        ("ArrayOfDvsTrafficFilterConfigSpec", TypeInfo::Value { name: "ArrayOfDvsTrafficFilterConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsTrafficFilterConfigSpec>>(wrap_array_of_dvs_traffic_filter_config_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsTrafficFilterConfigSpec>>(v, wrap_array_of_dvs_traffic_filter_config_spec) }),
        ("DVSFilterSpecTrunkVlanSpec", TypeInfo::Object { name: "DVSFilterSpecTrunkVlanSpec", builder_fn: || Box::new(DvsFilterSpecTrunkVlanSpecFields::new()) }),
        ("VirtualBusLogicControllerOption", TypeInfo::Object { name: "VirtualBusLogicControllerOption", builder_fn: || Box::new(VirtualBusLogicControllerOptionFields::new()) }),
        ("ArrayOfVirtualMachineBaseIndependentFilterSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineBaseIndependentFilterSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_base_independent_filter_spec_array)), from_value: |v| cast_to_virtual_machine_base_independent_filter_spec_array(from_value(v)?) }),
        ("CustomizationFault", TypeInfo::Object { name: "CustomizationFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CustomizationFault))) }),
        ("VsanHostVmdkLoadTestResult", TypeInfo::Object { name: "VsanHostVmdkLoadTestResult", builder_fn: || Box::new(VsanHostVmdkLoadTestResultFields::new()) }),
        ("ConfigTarget", TypeInfo::Object { name: "ConfigTarget", builder_fn: || Box::new(ConfigTargetFields::new()) }),
        ("ArrayOfDrsRuleComplianceEvent", TypeInfo::Value { name: "ArrayOfDrsRuleComplianceEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_rule_compliance_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_rule_compliance_event) }),
        ("VirtualFloppyRemoteDeviceBackingInfo", TypeInfo::Object { name: "VirtualFloppyRemoteDeviceBackingInfo", builder_fn: || Box::new(VirtualFloppyRemoteDeviceBackingInfoFields::new()) }),
        ("DirectPathProfileManagerCapacityResult", TypeInfo::Object { name: "DirectPathProfileManagerCapacityResult", builder_fn: || Box::new(DirectPathProfileManagerCapacityResultFields::new()) }),
        ("ArrayOfSessionTerminatedEvent", TypeInfo::Value { name: "ArrayOfSessionTerminatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_session_terminated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_session_terminated_event) }),
        ("VMwareDVSHealthCheckCapability", TypeInfo::Object { name: "VMwareDVSHealthCheckCapability", builder_fn: || Box::new(VMwareDvsHealthCheckCapabilityFields::new()) }),
        ("VmMacConflictEvent", TypeInfo::Object { name: "VmMacConflictEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmMacConflictEvent))) }),
        ("ArrayOfApplyHostProfileConfigurationSpec", TypeInfo::Value { name: "ArrayOfApplyHostProfileConfigurationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ApplyHostProfileConfigurationSpec>>(wrap_array_of_apply_host_profile_configuration_spec), from_value: |v| from_val_with::<Vec<super::structs::ApplyHostProfileConfigurationSpec>>(v, wrap_array_of_apply_host_profile_configuration_spec) }),
        ("ArrayOfEventArgument", TypeInfo::Value { name: "ArrayOfEventArgument", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_event_argument_array)), from_value: |v| cast_to_event_argument_array(from_value(v)?) }),
        ("VirtualE1000", TypeInfo::Object { name: "VirtualE1000", builder_fn: || Box::new(VirtualE1000Fields::new()) }),
        ("ArrayOfLicenseEntityNotFound", TypeInfo::Value { name: "ArrayOfLicenseEntityNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_license_entity_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_license_entity_not_found) }),
        ("ArrayOfSwitchNotInUpgradeMode", TypeInfo::Value { name: "ArrayOfSwitchNotInUpgradeMode", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_switch_not_in_upgrade_mode), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_switch_not_in_upgrade_mode) }),
        ("ArrayOfNvdimmPMemNamespaceCreateSpec", TypeInfo::Value { name: "ArrayOfNvdimmPMemNamespaceCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmPMemNamespaceCreateSpec>>(wrap_array_of_nvdimm_p_mem_namespace_create_spec), from_value: |v| from_val_with::<Vec<super::structs::NvdimmPMemNamespaceCreateSpec>>(v, wrap_array_of_nvdimm_p_mem_namespace_create_spec) }),
        ("ArrayOfHostStorageSystemVmfsVolumeResult", TypeInfo::Value { name: "ArrayOfHostStorageSystemVmfsVolumeResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostStorageSystemVmfsVolumeResult>>(wrap_array_of_host_storage_system_vmfs_volume_result), from_value: |v| from_val_with::<Vec<super::structs::HostStorageSystemVmfsVolumeResult>>(v, wrap_array_of_host_storage_system_vmfs_volume_result) }),
        ("StorageDrsConfigSpec", TypeInfo::Object { name: "StorageDrsConfigSpec", builder_fn: || Box::new(StorageDrsConfigSpecFields::new()) }),
        ("ArrayOfVMOnVirtualIntranet", TypeInfo::Value { name: "ArrayOfVMOnVirtualIntranet", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_on_virtual_intranet), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_on_virtual_intranet) }),
        ("ArrayOfHostFirewallRulesetRulesetSpec", TypeInfo::Value { name: "ArrayOfHostFirewallRulesetRulesetSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostFirewallRulesetRulesetSpec>>(wrap_array_of_host_firewall_ruleset_ruleset_spec), from_value: |v| from_val_with::<Vec<super::structs::HostFirewallRulesetRulesetSpec>>(v, wrap_array_of_host_firewall_ruleset_ruleset_spec) }),
        ("ArrayOfVsanClusterHealthGroup", TypeInfo::Value { name: "ArrayOfVsanClusterHealthGroup", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthGroup>>(wrap_array_of_vsan_cluster_health_group), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthGroup>>(v, wrap_array_of_vsan_cluster_health_group) }),
        ("VSANSharedWitnessCompatibilityResult", TypeInfo::Object { name: "VSANSharedWitnessCompatibilityResult", builder_fn: || Box::new(VsanSharedWitnessCompatibilityResultFields::new()) }),
        ("DiskChangeExtent", TypeInfo::Object { name: "DiskChangeExtent", builder_fn: || Box::new(DiskChangeExtentFields::new()) }),
        ("DirectPathProfileManagerDvxDirectPathConfig", TypeInfo::Object { name: "DirectPathProfileManagerDvxDirectPathConfig", builder_fn: || Box::new(DirectPathProfileManagerDvxDirectPathConfigFields::new()) }),
        ("VStorageObjectReconcileSpec", TypeInfo::Object { name: "VStorageObjectReconcileSpec", builder_fn: || Box::new(VStorageObjectReconcileSpecFields::new()) }),
        ("MemorySizeNotRecommended", TypeInfo::Object { name: "MemorySizeNotRecommended", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MemorySizeNotRecommended))) }),
        ("ArrayOfLifecyclePreCheckResult", TypeInfo::Value { name: "ArrayOfLifecyclePreCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::LifecyclePreCheckResult>>(wrap_array_of_lifecycle_pre_check_result), from_value: |v| from_val_with::<Vec<super::structs::LifecyclePreCheckResult>>(v, wrap_array_of_lifecycle_pre_check_result) }),
        ("ArrayOfClusterAgentVmSuspended", TypeInfo::Value { name: "ArrayOfClusterAgentVmSuspended", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentVmSuspended>>(wrap_array_of_cluster_agent_vm_suspended), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentVmSuspended>>(v, wrap_array_of_cluster_agent_vm_suspended) }),
        ("ArrayOfEamCertificateNotTrusted", TypeInfo::Value { name: "ArrayOfEamCertificateNotTrusted", make_deserializer: || make_deser_with::<Vec<super::structs::EamCertificateNotTrusted>>(wrap_array_of_eam_certificate_not_trusted), from_value: |v| from_val_with::<Vec<super::structs::EamCertificateNotTrusted>>(v, wrap_array_of_eam_certificate_not_trusted) }),
        ("EventArgument", TypeInfo::Object { name: "EventArgument", builder_fn: || Box::new(EventArgumentFields::new()) }),
        ("DVSFilterSpecVmknicConnecteeSpec", TypeInfo::Object { name: "DVSFilterSpecVmknicConnecteeSpec", builder_fn: || Box::new(DvsFilterSpecVmknicConnecteeSpecFields::new()) }),
        ("ArrayOfOvfUnknownDeviceBacking", TypeInfo::Value { name: "ArrayOfOvfUnknownDeviceBacking", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unknown_device_backing), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unknown_device_backing) }),
        ("CustomizationNetBIOSMode", TypeInfo::Value { name: "CustomizationNetBIOSMode", make_deserializer: || make_deser_with::<super::enums::CustomizationNetBiosModeEnum>(wrap_customization_net_bios_mode), from_value: |v| from_val_with::<super::enums::CustomizationNetBiosModeEnum>(v, wrap_customization_net_bios_mode) }),
        ("ArrayOfVsanHealthActionBase", TypeInfo::Value { name: "ArrayOfVsanHealthActionBase", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_health_action_base_array)), from_value: |v| cast_to_vsan_health_action_base_array(from_value(v)?) }),
        ("ArrayOfInvalidBundle", TypeInfo::Value { name: "ArrayOfInvalidBundle", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_bundle), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_bundle) }),
        ("ArrayOfHostIpRouteTableConfig", TypeInfo::Value { name: "ArrayOfHostIpRouteTableConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostIpRouteTableConfig>>(wrap_array_of_host_ip_route_table_config), from_value: |v| from_val_with::<Vec<super::structs::HostIpRouteTableConfig>>(v, wrap_array_of_host_ip_route_table_config) }),
        ("ArrayOfTaskEvent", TypeInfo::Value { name: "ArrayOfTaskEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_task_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_task_event) }),
        ("VsanClusterHealthCheckInfo", TypeInfo::Object { name: "VsanClusterHealthCheckInfo", builder_fn: || Box::new(VsanClusterHealthCheckInfoFields::new()) }),
        ("FibreChannelPortType", TypeInfo::Value { name: "FibreChannelPortType", make_deserializer: || make_deser_with::<super::enums::FibreChannelPortTypeEnum>(wrap_fibre_channel_port_type), from_value: |v| from_val_with::<super::enums::FibreChannelPortTypeEnum>(v, wrap_fibre_channel_port_type) }),
        ("ArrayOfDvsPortBlockedEvent", TypeInfo::Value { name: "ArrayOfDvsPortBlockedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_blocked_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_blocked_event) }),
        ("UpgradeEvent", TypeInfo::Object { name: "UpgradeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UpgradeEvent))) }),
        ("ArrayOfReadHostResourcePoolTreeFailed", TypeInfo::Value { name: "ArrayOfReadHostResourcePoolTreeFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_read_host_resource_pool_tree_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_read_host_resource_pool_tree_failed) }),
        ("ArrayOfFailoverNodeInfo", TypeInfo::Value { name: "ArrayOfFailoverNodeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::FailoverNodeInfo>>(wrap_array_of_failover_node_info), from_value: |v| from_val_with::<Vec<super::structs::FailoverNodeInfo>>(v, wrap_array_of_failover_node_info) }),
        ("ArrayOfFtVmHostRuleViolation", TypeInfo::Value { name: "ArrayOfFtVmHostRuleViolation", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ft_vm_host_rule_violation), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ft_vm_host_rule_violation) }),
        ("ArrayOfVmRemoteConsoleConnectedEvent", TypeInfo::Value { name: "ArrayOfVmRemoteConsoleConnectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_remote_console_connected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_remote_console_connected_event) }),
        ("AfterStartupTaskScheduler", TypeInfo::Object { name: "AfterStartupTaskScheduler", builder_fn: || Box::new(AfterStartupTaskSchedulerFields::new()) }),
        ("ArrayOfVibRequiresHostReboot", TypeInfo::Value { name: "ArrayOfVibRequiresHostReboot", make_deserializer: || make_deser_with::<Vec<super::structs::VibRequiresHostReboot>>(wrap_array_of_vib_requires_host_reboot), from_value: |v| from_val_with::<Vec<super::structs::VibRequiresHostReboot>>(v, wrap_array_of_vib_requires_host_reboot) }),
        ("VirtualSriovEthernetCardSriovBackingInfo", TypeInfo::Object { name: "VirtualSriovEthernetCardSriovBackingInfo", builder_fn: || Box::new(VirtualSriovEthernetCardSriovBackingInfoFields::new()) }),
        ("ArrayOfGuestComponentsOutOfDate", TypeInfo::Value { name: "ArrayOfGuestComponentsOutOfDate", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_components_out_of_date), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_components_out_of_date) }),
        ("ArrayOfVmCloneFailedEvent", TypeInfo::Value { name: "ArrayOfVmCloneFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_clone_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_clone_failed_event) }),
        ("ArrayOfQuarantineModeFault", TypeInfo::Value { name: "ArrayOfQuarantineModeFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_quarantine_mode_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_quarantine_mode_fault) }),
        ("HostInternetScsiHbaDiscoveryCapabilities", TypeInfo::Object { name: "HostInternetScsiHbaDiscoveryCapabilities", builder_fn: || Box::new(HostInternetScsiHbaDiscoveryCapabilitiesFields::new()) }),
        ("GuestRegistryValueFault", TypeInfo::Object { name: "GuestRegistryValueFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestRegistryValueFault))) }),
        ("ArrayOfCryptoSpecShallowRecrypt", TypeInfo::Value { name: "ArrayOfCryptoSpecShallowRecrypt", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoSpecShallowRecrypt>>(wrap_array_of_crypto_spec_shallow_recrypt), from_value: |v| from_val_with::<Vec<super::structs::CryptoSpecShallowRecrypt>>(v, wrap_array_of_crypto_spec_shallow_recrypt) }),
        ("NumericRange", TypeInfo::Object { name: "NumericRange", builder_fn: || Box::new(NumericRangeFields::new()) }),
        ("PolicyAssociation", TypeInfo::Object { name: "PolicyAssociation", builder_fn: || Box::new(PolicyAssociationFields::new()) }),
        ("VimVsanHostStoragePoolInfo", TypeInfo::Object { name: "VimVsanHostStoragePoolInfo", builder_fn: || Box::new(VimVsanHostStoragePoolInfoFields::new()) }),
        ("VsanMountPrecheckNetworkLatencyDetail", TypeInfo::Object { name: "VsanMountPrecheckNetworkLatencyDetail", builder_fn: || Box::new(VsanMountPrecheckNetworkLatencyDetailFields::new()) }),
        ("ArrayOfDiskMoveTypeNotSupported", TypeInfo::Value { name: "ArrayOfDiskMoveTypeNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disk_move_type_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disk_move_type_not_supported) }),
        ("ArrayOfDomainNotFound", TypeInfo::Value { name: "ArrayOfDomainNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_domain_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_domain_not_found) }),
        ("VslmTaskReasonUser", TypeInfo::Object { name: "VslmTaskReasonUser", builder_fn: || Box::new(VslmTaskReasonUserFields::new()) }),
        ("ArrayOfOpaqueSwitchProfile", TypeInfo::Value { name: "ArrayOfOpaqueSwitchProfile", make_deserializer: || make_deser_with::<Vec<super::structs::OpaqueSwitchProfile>>(wrap_array_of_opaque_switch_profile), from_value: |v| from_val_with::<Vec<super::structs::OpaqueSwitchProfile>>(v, wrap_array_of_opaque_switch_profile) }),
        ("IndependentDiskVMotionNotSupported", TypeInfo::Object { name: "IndependentDiskVMotionNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IndependentDiskVMotionNotSupported))) }),
        ("ArrayOfVirtualMachineConfigInfoDatastoreUrlPair", TypeInfo::Value { name: "ArrayOfVirtualMachineConfigInfoDatastoreUrlPair", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineConfigInfoDatastoreUrlPair>>(wrap_array_of_virtual_machine_config_info_datastore_url_pair), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineConfigInfoDatastoreUrlPair>>(v, wrap_array_of_virtual_machine_config_info_datastore_url_pair) }),
        ("CnsInCompatibleFault", TypeInfo::Object { name: "CnsInCompatibleFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CnsInCompatibleFault))) }),
        ("VmwareDistributedVirtualSwitchDpuFailoverPolicy", TypeInfo::Object { name: "VmwareDistributedVirtualSwitchDpuFailoverPolicy", builder_fn: || Box::new(VmwareDistributedVirtualSwitchDpuFailoverPolicyFields::new()) }),
        ("PbmQueryProfileResult", TypeInfo::Object { name: "PbmQueryProfileResult", builder_fn: || Box::new(PbmQueryProfileResultFields::new()) }),
        ("FolderBatchAddHostsToClusterResult", TypeInfo::Object { name: "FolderBatchAddHostsToClusterResult", builder_fn: || Box::new(FolderBatchAddHostsToClusterResultFields::new()) }),
        ("VirtualDiskSparseVer2BackingInfo", TypeInfo::Object { name: "VirtualDiskSparseVer2BackingInfo", builder_fn: || Box::new(VirtualDiskSparseVer2BackingInfoFields::new()) }),
        ("ArrayOfCryptoManagerKmipCertSignRequest", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipCertSignRequest", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerKmipCertSignRequest>>(wrap_array_of_crypto_manager_kmip_cert_sign_request), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerKmipCertSignRequest>>(v, wrap_array_of_crypto_manager_kmip_cert_sign_request) }),
        ("FolderExternallyManagedFolderInfo", TypeInfo::Object { name: "FolderExternallyManagedFolderInfo", builder_fn: || Box::new(FolderExternallyManagedFolderInfoFields::new()) }),
        ("ArrayOfHostDnsConfig", TypeInfo::Value { name: "ArrayOfHostDnsConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_dns_config_array)), from_value: |v| cast_to_host_dns_config_array(from_value(v)?) }),
        ("ArrayOfOperationDisabledByGuest", TypeInfo::Value { name: "ArrayOfOperationDisabledByGuest", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_operation_disabled_by_guest), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_operation_disabled_by_guest) }),
        ("ArrayOfVirtualMachineMetadataManagerVmMetadataOwner", TypeInfo::Value { name: "ArrayOfVirtualMachineMetadataManagerVmMetadataOwner", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineMetadataManagerVmMetadataOwner>>(wrap_array_of_virtual_machine_metadata_manager_vm_metadata_owner), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineMetadataManagerVmMetadataOwner>>(v, wrap_array_of_virtual_machine_metadata_manager_vm_metadata_owner) }),
        ("ArrayOfHostProxySwitchConfig", TypeInfo::Value { name: "ArrayOfHostProxySwitchConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostProxySwitchConfig>>(wrap_array_of_host_proxy_switch_config), from_value: |v| from_val_with::<Vec<super::structs::HostProxySwitchConfig>>(v, wrap_array_of_host_proxy_switch_config) }),
        ("ArrayOfSessionManagerGenericServiceTicket", TypeInfo::Value { name: "ArrayOfSessionManagerGenericServiceTicket", make_deserializer: || make_deser_with::<Vec<super::structs::SessionManagerGenericServiceTicket>>(wrap_array_of_session_manager_generic_service_ticket), from_value: |v| from_val_with::<Vec<super::structs::SessionManagerGenericServiceTicket>>(v, wrap_array_of_session_manager_generic_service_ticket) }),
        ("ArrayOfDvsVmVnicResourceAllocation", TypeInfo::Value { name: "ArrayOfDvsVmVnicResourceAllocation", make_deserializer: || make_deser_with::<Vec<super::structs::DvsVmVnicResourceAllocation>>(wrap_array_of_dvs_vm_vnic_resource_allocation), from_value: |v| from_val_with::<Vec<super::structs::DvsVmVnicResourceAllocation>>(v, wrap_array_of_dvs_vm_vnic_resource_allocation) }),
        ("ArrayOfReplicationGroupData", TypeInfo::Value { name: "ArrayOfReplicationGroupData", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicationGroupData>>(wrap_array_of_replication_group_data), from_value: |v| from_val_with::<Vec<super::structs::ReplicationGroupData>>(v, wrap_array_of_replication_group_data) }),
        ("ArrayOfExtSolutionManagerInfo", TypeInfo::Value { name: "ArrayOfExtSolutionManagerInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtSolutionManagerInfo>>(wrap_array_of_ext_solution_manager_info), from_value: |v| from_val_with::<Vec<super::structs::ExtSolutionManagerInfo>>(v, wrap_array_of_ext_solution_manager_info) }),
        ("ArrayOfVirtualEthernetCardLegacyNetworkBackingOption", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardLegacyNetworkBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEthernetCardLegacyNetworkBackingOption>>(wrap_array_of_virtual_ethernet_card_legacy_network_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualEthernetCardLegacyNetworkBackingOption>>(v, wrap_array_of_virtual_ethernet_card_legacy_network_backing_option) }),
        ("ArrayOfVsanSpaceEfficiencyRatio", TypeInfo::Value { name: "ArrayOfVsanSpaceEfficiencyRatio", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSpaceEfficiencyRatio>>(wrap_array_of_vsan_space_efficiency_ratio), from_value: |v| from_val_with::<Vec<super::structs::VsanSpaceEfficiencyRatio>>(v, wrap_array_of_vsan_space_efficiency_ratio) }),
        ("ArrayOfVirtualUSBXHCIController", TypeInfo::Value { name: "ArrayOfVirtualUSBXHCIController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbxhciController>>(wrap_array_of_virtual_usbxhci_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbxhciController>>(v, wrap_array_of_virtual_usbxhci_controller) }),
        ("VirtualMachineProfileSpec", TypeInfo::Object { name: "VirtualMachineProfileSpec", builder_fn: || Box::new(VirtualMachineProfileSpecFields::new()) }),
        ("ArrayOfVirtualDeviceBusSlotInfo", TypeInfo::Value { name: "ArrayOfVirtualDeviceBusSlotInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_bus_slot_info_array)), from_value: |v| cast_to_virtual_device_bus_slot_info_array(from_value(v)?) }),
        ("VirtualTPM", TypeInfo::Object { name: "VirtualTPM", builder_fn: || Box::new(VirtualTpmFields::new()) }),
        ("ArrayOfHostProfileManagerConfigTaskList", TypeInfo::Value { name: "ArrayOfHostProfileManagerConfigTaskList", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileManagerConfigTaskList>>(wrap_array_of_host_profile_manager_config_task_list), from_value: |v| from_val_with::<Vec<super::structs::HostProfileManagerConfigTaskList>>(v, wrap_array_of_host_profile_manager_config_task_list) }),
        ("ArrayOfVirtualMachineConfigOptionDescriptor", TypeInfo::Value { name: "ArrayOfVirtualMachineConfigOptionDescriptor", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineConfigOptionDescriptor>>(wrap_array_of_virtual_machine_config_option_descriptor), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineConfigOptionDescriptor>>(v, wrap_array_of_virtual_machine_config_option_descriptor) }),
        ("ArrayOfProfileCreateSpec", TypeInfo::Value { name: "ArrayOfProfileCreateSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_profile_create_spec_array)), from_value: |v| cast_to_profile_create_spec_array(from_value(v)?) }),
        ("ArrayOfLong", TypeInfo::Value { name: "ArrayOfLong", make_deserializer: || make_deser_with::<Vec<i64>>(wrap_array_of_long), from_value: |v| from_val_with::<Vec<i64>>(v, wrap_array_of_long) }),
        ("ArrayOfVsanXvcClientConfig", TypeInfo::Value { name: "ArrayOfVsanXvcClientConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcClientConfig>>(wrap_array_of_vsan_xvc_client_config), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcClientConfig>>(v, wrap_array_of_vsan_xvc_client_config) }),
        ("GuestMappedAliases", TypeInfo::Object { name: "GuestMappedAliases", builder_fn: || Box::new(GuestMappedAliasesFields::new()) }),
        ("AccountUpdatedEvent", TypeInfo::Object { name: "AccountUpdatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AccountUpdatedEvent))) }),
        ("ArrayOfDrsEnteredStandbyModeEvent", TypeInfo::Value { name: "ArrayOfDrsEnteredStandbyModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_entered_standby_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_entered_standby_mode_event) }),
        ("ArrayOfProfileChangedEvent", TypeInfo::Value { name: "ArrayOfProfileChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_profile_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_profile_changed_event) }),
        ("VsanStorageComplianceResult", TypeInfo::Object { name: "VsanStorageComplianceResult", builder_fn: || Box::new(VsanStorageComplianceResultFields::new()) }),
        ("ExitedStandbyModeEvent", TypeInfo::Object { name: "ExitedStandbyModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ExitedStandbyModeEvent))) }),
        ("ArrayOfDvsDropNetworkRuleAction", TypeInfo::Value { name: "ArrayOfDvsDropNetworkRuleAction", make_deserializer: || make_deser_with::<Vec<super::structs::DvsDropNetworkRuleAction>>(wrap_array_of_dvs_drop_network_rule_action), from_value: |v| from_val_with::<Vec<super::structs::DvsDropNetworkRuleAction>>(v, wrap_array_of_dvs_drop_network_rule_action) }),
        ("ResourceViolatedEvent", TypeInfo::Object { name: "ResourceViolatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ResourceViolatedEvent))) }),
        ("DynamicProperty", TypeInfo::Object { name: "DynamicProperty", builder_fn: || Box::new(DynamicPropertyFields::new()) }),
        ("ArrayOfInvalidLicense", TypeInfo::Value { name: "ArrayOfInvalidLicense", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_license), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_license) }),
        ("ArrayOfProfileUpdateFailedUpdateFailure", TypeInfo::Value { name: "ArrayOfProfileUpdateFailedUpdateFailure", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileUpdateFailedUpdateFailure>>(wrap_array_of_profile_update_failed_update_failure), from_value: |v| from_val_with::<Vec<super::structs::ProfileUpdateFailedUpdateFailure>>(v, wrap_array_of_profile_update_failed_update_failure) }),
        ("ArrayOfVmConfigFileQueryFlags", TypeInfo::Value { name: "ArrayOfVmConfigFileQueryFlags", make_deserializer: || make_deser_with::<Vec<super::structs::VmConfigFileQueryFlags>>(wrap_array_of_vm_config_file_query_flags), from_value: |v| from_val_with::<Vec<super::structs::VmConfigFileQueryFlags>>(v, wrap_array_of_vm_config_file_query_flags) }),
        ("VsanFailedRepairObjectResult", TypeInfo::Object { name: "VsanFailedRepairObjectResult", builder_fn: || Box::new(VsanFailedRepairObjectResultFields::new()) }),
        ("ArrayOfHostNotInClusterEvent", TypeInfo::Value { name: "ArrayOfHostNotInClusterEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_not_in_cluster_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_not_in_cluster_event) }),
        ("ArrayOfVmShutdownOnIsolationEvent", TypeInfo::Value { name: "ArrayOfVmShutdownOnIsolationEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_shutdown_on_isolation_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_shutdown_on_isolation_event) }),
        ("HostIpToShortNameFailedEvent", TypeInfo::Object { name: "HostIpToShortNameFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostIpToShortNameFailedEvent))) }),
        ("ArrayOfHostVFlashResourceConfigurationResult", TypeInfo::Value { name: "ArrayOfHostVFlashResourceConfigurationResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostVFlashResourceConfigurationResult>>(wrap_array_of_host_v_flash_resource_configuration_result), from_value: |v| from_val_with::<Vec<super::structs::HostVFlashResourceConfigurationResult>>(v, wrap_array_of_host_v_flash_resource_configuration_result) }),
        ("VmToolsUpgradeFault", TypeInfo::Object { name: "VmToolsUpgradeFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmToolsUpgradeFault))) }),
        ("DrsVmPoweredOnEvent", TypeInfo::Object { name: "DrsVmPoweredOnEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsVmPoweredOnEvent))) }),
        ("HostConnectionLostEvent", TypeInfo::Object { name: "HostConnectionLostEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostConnectionLostEvent))) }),
        ("HostStorageElementInfo", TypeInfo::Object { name: "HostStorageElementInfo", builder_fn: || Box::new(HostStorageElementInfoFields::new()) }),
        ("VirtualUSBRemoteClientBackingOption", TypeInfo::Object { name: "VirtualUSBRemoteClientBackingOption", builder_fn: || Box::new(VirtualUsbRemoteClientBackingOptionFields::new()) }),
        ("DistributedVirtualSwitchManagerHostContainerFilter", TypeInfo::Object { name: "DistributedVirtualSwitchManagerHostContainerFilter", builder_fn: || Box::new(DistributedVirtualSwitchManagerHostContainerFilterFields::new()) }),
        ("ArrayOfOnceTaskScheduler", TypeInfo::Value { name: "ArrayOfOnceTaskScheduler", make_deserializer: || make_deser_with::<Vec<super::structs::OnceTaskScheduler>>(wrap_array_of_once_task_scheduler), from_value: |v| from_val_with::<Vec<super::structs::OnceTaskScheduler>>(v, wrap_array_of_once_task_scheduler) }),
        ("HostScsiTopologyInterface", TypeInfo::Object { name: "HostScsiTopologyInterface", builder_fn: || Box::new(HostScsiTopologyInterfaceFields::new()) }),
        ("PerfEntityMetric", TypeInfo::Object { name: "PerfEntityMetric", builder_fn: || Box::new(PerfEntityMetricFields::new()) }),
        ("ArrayOfClusterAgentMissingClusterVmDatastore", TypeInfo::Value { name: "ArrayOfClusterAgentMissingClusterVmDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentMissingClusterVmDatastore>>(wrap_array_of_cluster_agent_missing_cluster_vm_datastore), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentMissingClusterVmDatastore>>(v, wrap_array_of_cluster_agent_missing_cluster_vm_datastore) }),
        ("CnsFileBackingDetails", TypeInfo::Object { name: "CnsFileBackingDetails", builder_fn: || Box::new(CnsFileBackingDetailsFields::new()) }),
        ("ArrayOfVirtualMachineIdeDiskDevicePartitionInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineIdeDiskDevicePartitionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineIdeDiskDevicePartitionInfo>>(wrap_array_of_virtual_machine_ide_disk_device_partition_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineIdeDiskDevicePartitionInfo>>(v, wrap_array_of_virtual_machine_ide_disk_device_partition_info) }),
        ("ServerStartedSessionEvent", TypeInfo::Object { name: "ServerStartedSessionEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ServerStartedSessionEvent))) }),
        ("ArrayOfHostRdmaTargetTransport", TypeInfo::Value { name: "ArrayOfHostRdmaTargetTransport", make_deserializer: || make_deser_with::<Vec<super::structs::HostRdmaTargetTransport>>(wrap_array_of_host_rdma_target_transport), from_value: |v| from_val_with::<Vec<super::structs::HostRdmaTargetTransport>>(v, wrap_array_of_host_rdma_target_transport) }),
        ("ArrayOfStorageFileSystemInfo", TypeInfo::Value { name: "ArrayOfStorageFileSystemInfo", make_deserializer: || make_deser_with::<Vec<super::structs::StorageFileSystemInfo>>(wrap_array_of_storage_file_system_info), from_value: |v| from_val_with::<Vec<super::structs::StorageFileSystemInfo>>(v, wrap_array_of_storage_file_system_info) }),
        ("FolderFileInfo", TypeInfo::Object { name: "FolderFileInfo", builder_fn: || Box::new(FolderFileInfoFields::new()) }),
        ("VirtualMachineVgpuDeviceInfo", TypeInfo::Object { name: "VirtualMachineVgpuDeviceInfo", builder_fn: || Box::new(VirtualMachineVgpuDeviceInfoFields::new()) }),
        ("ArrayOfDuplicateIpDetectedEvent", TypeInfo::Value { name: "ArrayOfDuplicateIpDetectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_duplicate_ip_detected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_duplicate_ip_detected_event) }),
        ("InsufficientMemoryResourcesFault", TypeInfo::Object { name: "InsufficientMemoryResourcesFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientMemoryResourcesFault))) }),
        ("ToolsImageNotAvailable", TypeInfo::Object { name: "ToolsImageNotAvailable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ToolsImageNotAvailable))) }),
        ("VsanClusterBalanceSummary", TypeInfo::Object { name: "VsanClusterBalanceSummary", builder_fn: || Box::new(VsanClusterBalanceSummaryFields::new()) }),
        ("ArrayOfVslmEventVslmEventInfoState", TypeInfo::Value { name: "ArrayOfVslmEventVslmEventInfoState", make_deserializer: || make_deser_with::<Vec<super::enums::VslmEventVslmEventInfoStateEnum>>(wrap_array_of_vslm_event_vslm_event_info_state), from_value: |v| from_val_with::<Vec<super::enums::VslmEventVslmEventInfoStateEnum>>(v, wrap_array_of_vslm_event_vslm_event_info_state) }),
        ("HostPowerOpFailed", TypeInfo::Object { name: "HostPowerOpFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostPowerOpFailed))) }),
        ("RestrictedByAdministrator", TypeInfo::Object { name: "RestrictedByAdministrator", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RestrictedByAdministrator))) }),
        ("ArrayOfDvsPortVendorSpecificStateChangeEvent", TypeInfo::Value { name: "ArrayOfDvsPortVendorSpecificStateChangeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_vendor_specific_state_change_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_vendor_specific_state_change_event) }),
        ("HostNatService", TypeInfo::Object { name: "HostNatService", builder_fn: || Box::new(HostNatServiceFields::new()) }),
        ("VmDiskFileInfo", TypeInfo::Object { name: "VmDiskFileInfo", builder_fn: || Box::new(VmDiskFileInfoFields::new()) }),
        ("ArrayOfCustomizationLinuxOptions", TypeInfo::Value { name: "ArrayOfCustomizationLinuxOptions", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationLinuxOptions>>(wrap_array_of_customization_linux_options), from_value: |v| from_val_with::<Vec<super::structs::CustomizationLinuxOptions>>(v, wrap_array_of_customization_linux_options) }),
        ("ArrayOfVsanVdsPgMigrationSpec", TypeInfo::Value { name: "ArrayOfVsanVdsPgMigrationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVdsPgMigrationSpec>>(wrap_array_of_vsan_vds_pg_migration_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanVdsPgMigrationSpec>>(v, wrap_array_of_vsan_vds_pg_migration_spec) }),
        ("ArrayOfVsanHwToVcgInfoMapping", TypeInfo::Value { name: "ArrayOfVsanHwToVcgInfoMapping", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHwToVcgInfoMapping>>(wrap_array_of_vsan_hw_to_vcg_info_mapping), from_value: |v| from_val_with::<Vec<super::structs::VsanHwToVcgInfoMapping>>(v, wrap_array_of_vsan_hw_to_vcg_info_mapping) }),
        ("OvfDuplicatedPropertyIdImport", TypeInfo::Object { name: "OvfDuplicatedPropertyIdImport", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfDuplicatedPropertyIdImport))) }),
        ("VslmVsoVStorageObjectResult", TypeInfo::Object { name: "VslmVsoVStorageObjectResult", builder_fn: || Box::new(VslmVsoVStorageObjectResultFields::new()) }),
        ("ArrayOfVirtualPCIController", TypeInfo::Value { name: "ArrayOfVirtualPCIController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciController>>(wrap_array_of_virtual_pci_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciController>>(v, wrap_array_of_virtual_pci_controller) }),
        ("ArrayOfKmipServerSpecWrappingKeyIdKeySpec", TypeInfo::Value { name: "ArrayOfKmipServerSpecWrappingKeyIdKeySpec", make_deserializer: || make_deser_with::<Vec<super::structs::KmipServerSpecWrappingKeyIdKeySpec>>(wrap_array_of_kmip_server_spec_wrapping_key_id_key_spec), from_value: |v| from_val_with::<Vec<super::structs::KmipServerSpecWrappingKeyIdKeySpec>>(v, wrap_array_of_kmip_server_spec_wrapping_key_id_key_spec) }),
        ("VirtualEthernetCardDVPortBackingOption", TypeInfo::Object { name: "VirtualEthernetCardDVPortBackingOption", builder_fn: || Box::new(VirtualEthernetCardDvPortBackingOptionFields::new()) }),
        ("VmWrongResourcePool", TypeInfo::Object { name: "VmWrongResourcePool", builder_fn: || Box::new(VmWrongResourcePoolFields::new()) }),
        ("PerformanceStatisticsDescription", TypeInfo::Object { name: "PerformanceStatisticsDescription", builder_fn: || Box::new(PerformanceStatisticsDescriptionFields::new()) }),
        ("ArrayOfNamespaceWriteProtected", TypeInfo::Value { name: "ArrayOfNamespaceWriteProtected", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_namespace_write_protected), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_namespace_write_protected) }),
        ("HostVirtualSwitchBondBridge", TypeInfo::Object { name: "HostVirtualSwitchBondBridge", builder_fn: || Box::new(HostVirtualSwitchBondBridgeFields::new()) }),
        ("ResourceNotAvailable", TypeInfo::Object { name: "ResourceNotAvailable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ResourceNotAvailable))) }),
        ("ArrayOfNoPermissionOnNasVolume", TypeInfo::Value { name: "ArrayOfNoPermissionOnNasVolume", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_permission_on_nas_volume), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_permission_on_nas_volume) }),
        ("ArrayOfDescription", TypeInfo::Value { name: "ArrayOfDescription", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_description_array)), from_value: |v| cast_to_description_array(from_value(v)?) }),
        ("ArrayOfDeviceId", TypeInfo::Value { name: "ArrayOfDeviceId", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_device_id_array)), from_value: |v| cast_to_device_id_array(from_value(v)?) }),
        ("ArrayOfVmPoweredOn", TypeInfo::Value { name: "ArrayOfVmPoweredOn", make_deserializer: || make_deser_with::<Vec<super::structs::VmPoweredOn>>(wrap_array_of_vm_powered_on), from_value: |v| from_val_with::<Vec<super::structs::VmPoweredOn>>(v, wrap_array_of_vm_powered_on) }),
        ("ArrayOfCnsSnapshotDeleteSpec", TypeInfo::Value { name: "ArrayOfCnsSnapshotDeleteSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsSnapshotDeleteSpec>>(wrap_array_of_cns_snapshot_delete_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsSnapshotDeleteSpec>>(v, wrap_array_of_cns_snapshot_delete_spec) }),
        ("VsanResourceCheckResult", TypeInfo::Object { name: "VsanResourceCheckResult", builder_fn: || Box::new(VsanResourceCheckResultFields::new()) }),
        ("FileBackedPortNotSupported", TypeInfo::Object { name: "FileBackedPortNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FileBackedPortNotSupported))) }),
        ("ArrayOfVsanFileShareRuntimeInfo", TypeInfo::Value { name: "ArrayOfVsanFileShareRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShareRuntimeInfo>>(wrap_array_of_vsan_file_share_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShareRuntimeInfo>>(v, wrap_array_of_vsan_file_share_runtime_info) }),
        ("VirtualDiskSeSparseBackingInfo", TypeInfo::Object { name: "VirtualDiskSeSparseBackingInfo", builder_fn: || Box::new(VirtualDiskSeSparseBackingInfoFields::new()) }),
        ("ArrayOfVsanVmVdsMigrationSpec", TypeInfo::Value { name: "ArrayOfVsanVmVdsMigrationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVmVdsMigrationSpec>>(wrap_array_of_vsan_vm_vds_migration_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanVmVdsMigrationSpec>>(v, wrap_array_of_vsan_vm_vds_migration_spec) }),
        ("UnlicensedVirtualMachinesFoundEvent", TypeInfo::Object { name: "UnlicensedVirtualMachinesFoundEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UnlicensedVirtualMachinesFoundEvent))) }),
        ("ArrayOfUserAssignedToGroup", TypeInfo::Value { name: "ArrayOfUserAssignedToGroup", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_user_assigned_to_group), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_user_assigned_to_group) }),
        ("ArrayOfUnconfiguredPropertyValue", TypeInfo::Value { name: "ArrayOfUnconfiguredPropertyValue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_unconfigured_property_value), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_unconfigured_property_value) }),
        ("LicenseKeyEntityMismatch", TypeInfo::Object { name: "LicenseKeyEntityMismatch", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LicenseKeyEntityMismatch))) }),
        ("ArrayOfNoLicenseServerConfigured", TypeInfo::Value { name: "ArrayOfNoLicenseServerConfigured", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_license_server_configured), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_license_server_configured) }),
        ("ArrayOfVirtualDiskRawDiskMappingVer1BackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDiskRawDiskMappingVer1BackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskRawDiskMappingVer1BackingInfo>>(wrap_array_of_virtual_disk_raw_disk_mapping_ver_1_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskRawDiskMappingVer1BackingInfo>>(v, wrap_array_of_virtual_disk_raw_disk_mapping_ver_1_backing_info) }),
        ("ArrayOfVmFaultToleranceInvalidFileBacking", TypeInfo::Value { name: "ArrayOfVmFaultToleranceInvalidFileBacking", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_fault_tolerance_invalid_file_backing), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_fault_tolerance_invalid_file_backing) }),
        ("PbmVaioDataServiceInfo", TypeInfo::Object { name: "PbmVaioDataServiceInfo", builder_fn: || Box::new(PbmVaioDataServiceInfoFields::new()) }),
        ("ArrayOfFcoeConfigFcoeCapabilities", TypeInfo::Value { name: "ArrayOfFcoeConfigFcoeCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::FcoeConfigFcoeCapabilities>>(wrap_array_of_fcoe_config_fcoe_capabilities), from_value: |v| from_val_with::<Vec<super::structs::FcoeConfigFcoeCapabilities>>(v, wrap_array_of_fcoe_config_fcoe_capabilities) }),
        ("ArrayOfSolutionsSolutionComplianceResult", TypeInfo::Value { name: "ArrayOfSolutionsSolutionComplianceResult", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsSolutionComplianceResult>>(wrap_array_of_solutions_solution_compliance_result), from_value: |v| from_val_with::<Vec<super::structs::SolutionsSolutionComplianceResult>>(v, wrap_array_of_solutions_solution_compliance_result) }),
        ("ArrayOfNonHomeRDMVMotionNotSupported", TypeInfo::Value { name: "ArrayOfNonHomeRDMVMotionNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_non_home_rdmv_motion_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_non_home_rdmv_motion_not_supported) }),
        ("VsanFaultDomainUpdateSpec", TypeInfo::Object { name: "VsanFaultDomainUpdateSpec", builder_fn: || Box::new(VsanFaultDomainUpdateSpecFields::new()) }),
        ("CpuIncompatible", TypeInfo::Object { name: "CpuIncompatible", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CpuIncompatible))) }),
        ("ArrayOfMigrationFeatureNotSupported", TypeInfo::Value { name: "ArrayOfMigrationFeatureNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_migration_feature_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_migration_feature_not_supported) }),
        ("ArrayOfOvfElement", TypeInfo::Value { name: "ArrayOfOvfElement", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_element), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_element) }),
        ("WillLoseHAProtection", TypeInfo::Object { name: "WillLoseHAProtection", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::WillLoseHaProtection))) }),
        ("ArrayOfVslmTaskReason", TypeInfo::Value { name: "ArrayOfVslmTaskReason", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vslm_task_reason_array)), from_value: |v| cast_to_vslm_task_reason_array(from_value(v)?) }),
        ("HostProxySwitchConfig", TypeInfo::Object { name: "HostProxySwitchConfig", builder_fn: || Box::new(HostProxySwitchConfigFields::new()) }),
        ("VirtualMachineConfigOptionDescriptor", TypeInfo::Object { name: "VirtualMachineConfigOptionDescriptor", builder_fn: || Box::new(VirtualMachineConfigOptionDescriptorFields::new()) }),
        ("ArrayOfStorageVMotionNotSupported", TypeInfo::Value { name: "ArrayOfStorageVMotionNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_v_motion_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_v_motion_not_supported) }),
        ("ArrayOfDvsVnicAllocatedResource", TypeInfo::Value { name: "ArrayOfDvsVnicAllocatedResource", make_deserializer: || make_deser_with::<Vec<super::structs::DvsVnicAllocatedResource>>(wrap_array_of_dvs_vnic_allocated_resource), from_value: |v| from_val_with::<Vec<super::structs::DvsVnicAllocatedResource>>(v, wrap_array_of_dvs_vnic_allocated_resource) }),
        ("VsanClientDatastoreConfig", TypeInfo::Object { name: "VsanClientDatastoreConfig", builder_fn: || Box::new(VsanClientDatastoreConfigFields::new()) }),
        ("ArrayOfVirtualUSBControllerPciBusSlotInfo", TypeInfo::Value { name: "ArrayOfVirtualUSBControllerPciBusSlotInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbControllerPciBusSlotInfo>>(wrap_array_of_virtual_usb_controller_pci_bus_slot_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbControllerPciBusSlotInfo>>(v, wrap_array_of_virtual_usb_controller_pci_bus_slot_info) }),
        ("PbmServerObjectRef", TypeInfo::Object { name: "PbmServerObjectRef", builder_fn: || Box::new(PbmServerObjectRefFields::new()) }),
        ("ArrayOfTooManyConsecutiveOverrides", TypeInfo::Value { name: "ArrayOfTooManyConsecutiveOverrides", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_too_many_consecutive_overrides), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_too_many_consecutive_overrides) }),
        ("HostAdminEnableEvent", TypeInfo::Object { name: "HostAdminEnableEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostAdminEnableEvent))) }),
        ("HostNetCapabilities", TypeInfo::Object { name: "HostNetCapabilities", builder_fn: || Box::new(HostNetCapabilitiesFields::new()) }),
        ("ArrayOfVirtualParallelPortFileBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualParallelPortFileBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualParallelPortFileBackingInfo>>(wrap_array_of_virtual_parallel_port_file_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualParallelPortFileBackingInfo>>(v, wrap_array_of_virtual_parallel_port_file_backing_info) }),
        ("ArrayOfSmsReplicationFault", TypeInfo::Value { name: "ArrayOfSmsReplicationFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_sms_replication_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_sms_replication_fault) }),
        ("ArrayOfIntegrityAgencyVUMIssue", TypeInfo::Value { name: "ArrayOfIntegrityAgencyVUMIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_integrity_agency_vum_issue_array)), from_value: |v| cast_to_integrity_agency_vum_issue_array(from_value(v)?) }),
        ("NetDnsConfigSpec", TypeInfo::Object { name: "NetDnsConfigSpec", builder_fn: || Box::new(NetDnsConfigSpecFields::new()) }),
        ("MethodAlreadyDisabledFault", TypeInfo::Object { name: "MethodAlreadyDisabledFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MethodAlreadyDisabledFault))) }),
        ("DvsTrafficRuleset", TypeInfo::Object { name: "DvsTrafficRuleset", builder_fn: || Box::new(DvsTrafficRulesetFields::new()) }),
        ("ArrayOfVirtualMachineDefaultProfileSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineDefaultProfileSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineDefaultProfileSpec>>(wrap_array_of_virtual_machine_default_profile_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineDefaultProfileSpec>>(v, wrap_array_of_virtual_machine_default_profile_spec) }),
        ("ArrayOfProviderOutOfResource", TypeInfo::Value { name: "ArrayOfProviderOutOfResource", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_provider_out_of_resource), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_provider_out_of_resource) }),
        ("VsanEsaConfigInfo", TypeInfo::Object { name: "VsanEsaConfigInfo", builder_fn: || Box::new(VsanEsaConfigInfoFields::new()) }),
        ("ToolsUnavailable", TypeInfo::Object { name: "ToolsUnavailable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ToolsUnavailable))) }),
        ("ArrayOfHostVirtualNicConfig", TypeInfo::Value { name: "ArrayOfHostVirtualNicConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualNicConfig>>(wrap_array_of_host_virtual_nic_config), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualNicConfig>>(v, wrap_array_of_host_virtual_nic_config) }),
        ("ArrayOfLicenseServerUnavailable", TypeInfo::Value { name: "ArrayOfLicenseServerUnavailable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_license_server_unavailable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_license_server_unavailable) }),
        ("VsanObjSnapParams", TypeInfo::Object { name: "VsanObjSnapParams", builder_fn: || Box::new(VsanObjSnapParamsFields::new()) }),
        ("CnsQueryResult", TypeInfo::Object { name: "CnsQueryResult", builder_fn: || Box::new(CnsQueryResultFields::new()) }),
        ("ArrayOfAlreadyUpgraded", TypeInfo::Value { name: "ArrayOfAlreadyUpgraded", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_already_upgraded), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_already_upgraded) }),
        ("VsanHostCimProviderInfo", TypeInfo::Object { name: "VsanHostCimProviderInfo", builder_fn: || Box::new(VsanHostCimProviderInfoFields::new()) }),
        ("ArrayOfIncompatibleDefaultDevice", TypeInfo::Value { name: "ArrayOfIncompatibleDefaultDevice", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_incompatible_default_device), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_incompatible_default_device) }),
        ("HostCpuIdInfo", TypeInfo::Object { name: "HostCpuIdInfo", builder_fn: || Box::new(HostCpuIdInfoFields::new()) }),
        ("GuestQuiesceEndGuestQuiesceError", TypeInfo::Value { name: "GuestQuiesceEndGuestQuiesceError", make_deserializer: || make_deser_with::<super::enums::GuestQuiesceEndGuestQuiesceErrorEnum>(wrap_guest_quiesce_end_guest_quiesce_error), from_value: |v| from_val_with::<super::enums::GuestQuiesceEndGuestQuiesceErrorEnum>(v, wrap_guest_quiesce_end_guest_quiesce_error) }),
        ("ArrayOfVirtualMachineEmptyIndependentFilterSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineEmptyIndependentFilterSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineEmptyIndependentFilterSpec>>(wrap_array_of_virtual_machine_empty_independent_filter_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineEmptyIndependentFilterSpec>>(v, wrap_array_of_virtual_machine_empty_independent_filter_spec) }),
        ("ArrayOfVsanFileServiceHealthSummary", TypeInfo::Value { name: "ArrayOfVsanFileServiceHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServiceHealthSummary>>(wrap_array_of_vsan_file_service_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServiceHealthSummary>>(v, wrap_array_of_vsan_file_service_health_summary) }),
        ("VmProtected", TypeInfo::Object { name: "VmProtected", builder_fn: || Box::new(VmProtectedFields::new()) }),
        ("ArrayOfHostAuthenticationInfo", TypeInfo::Value { name: "ArrayOfHostAuthenticationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostAuthenticationInfo>>(wrap_array_of_host_authentication_info), from_value: |v| from_val_with::<Vec<super::structs::HostAuthenticationInfo>>(v, wrap_array_of_host_authentication_info) }),
        ("ArrayOfHostUnresolvedVmfsResignatureSpec", TypeInfo::Value { name: "ArrayOfHostUnresolvedVmfsResignatureSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostUnresolvedVmfsResignatureSpec>>(wrap_array_of_host_unresolved_vmfs_resignature_spec), from_value: |v| from_val_with::<Vec<super::structs::HostUnresolvedVmfsResignatureSpec>>(v, wrap_array_of_host_unresolved_vmfs_resignature_spec) }),
        ("ArrayOfVirtualVmxnet3Option", TypeInfo::Value { name: "ArrayOfVirtualVmxnet3Option", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_vmxnet_3_option_array)), from_value: |v| cast_to_virtual_vmxnet_3_option_array(from_value(v)?) }),
        ("HostCnxFailedNoAccessEvent", TypeInfo::Object { name: "HostCnxFailedNoAccessEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedNoAccessEvent))) }),
        ("ArrayOfInvalidDasRestartPriorityForFtVm", TypeInfo::Value { name: "ArrayOfInvalidDasRestartPriorityForFtVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_das_restart_priority_for_ft_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_das_restart_priority_for_ft_vm) }),
        ("VsanXVCDatastoreInfo", TypeInfo::Object { name: "VsanXVCDatastoreInfo", builder_fn: || Box::new(VsanXvcDatastoreInfoFields::new()) }),
        ("ArrayOfVsanFileServiceIpConfig", TypeInfo::Value { name: "ArrayOfVsanFileServiceIpConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServiceIpConfig>>(wrap_array_of_vsan_file_service_ip_config), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServiceIpConfig>>(v, wrap_array_of_vsan_file_service_ip_config) }),
        ("PbmProfile", TypeInfo::Object { name: "PbmProfile", builder_fn: || Box::new(PbmProfileFields::new()) }),
        ("SmsReplicationFault", TypeInfo::Object { name: "SmsReplicationFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SmsReplicationFault))) }),
        ("SolutionsInteractiveHookAcknowledgeConfig", TypeInfo::Object { name: "SolutionsInteractiveHookAcknowledgeConfig", builder_fn: || Box::new(SolutionsInteractiveHookAcknowledgeConfigFields::new()) }),
        ("ArrayOfOvfHardwareExport", TypeInfo::Value { name: "ArrayOfOvfHardwareExport", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_hardware_export), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_hardware_export) }),
        ("DiskChangeInfo", TypeInfo::Object { name: "DiskChangeInfo", builder_fn: || Box::new(DiskChangeInfoFields::new()) }),
        ("MksConnectionLimitReached", TypeInfo::Object { name: "MksConnectionLimitReached", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MksConnectionLimitReached))) }),
        ("ArrayOfKmipServerInfo", TypeInfo::Value { name: "ArrayOfKmipServerInfo", make_deserializer: || make_deser_with::<Vec<super::structs::KmipServerInfo>>(wrap_array_of_kmip_server_info), from_value: |v| from_val_with::<Vec<super::structs::KmipServerInfo>>(v, wrap_array_of_kmip_server_info) }),
        ("IntegrityAgencyCannotDeleteSoftware", TypeInfo::Object { name: "IntegrityAgencyCannotDeleteSoftware", builder_fn: || Box::new(IntegrityAgencyCannotDeleteSoftwareFields::new()) }),
        ("HostSystemSwapConfigurationHostLocalSwapOption", TypeInfo::Object { name: "HostSystemSwapConfigurationHostLocalSwapOption", builder_fn: || Box::new(HostSystemSwapConfigurationHostLocalSwapOptionFields::new()) }),
        ("ArrayOfInvalidCAMServer", TypeInfo::Value { name: "ArrayOfInvalidCAMServer", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_cam_server), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_cam_server) }),
        ("ServiceLocatorCredential", TypeInfo::Object { name: "ServiceLocatorCredential", builder_fn: || Box::new(ServiceLocatorCredentialFields::new()) }),
        ("ArrayOfVsanHostConfigInfoEx", TypeInfo::Value { name: "ArrayOfVsanHostConfigInfoEx", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostConfigInfoEx>>(wrap_array_of_vsan_host_config_info_ex), from_value: |v| from_val_with::<Vec<super::structs::VsanHostConfigInfoEx>>(v, wrap_array_of_vsan_host_config_info_ex) }),
        ("ArrayOfHostConfigSpec", TypeInfo::Value { name: "ArrayOfHostConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostConfigSpec>>(wrap_array_of_host_config_spec), from_value: |v| from_val_with::<Vec<super::structs::HostConfigSpec>>(v, wrap_array_of_host_config_spec) }),
        ("DVSCreateSpec", TypeInfo::Object { name: "DVSCreateSpec", builder_fn: || Box::new(DvsCreateSpecFields::new()) }),
        ("ArrayOfVirtualVmxnet3VrdmaOption", TypeInfo::Value { name: "ArrayOfVirtualVmxnet3VrdmaOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualVmxnet3VrdmaOption>>(wrap_array_of_virtual_vmxnet_3_vrdma_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualVmxnet3VrdmaOption>>(v, wrap_array_of_virtual_vmxnet_3_vrdma_option) }),
        ("ArrayOfHttpNfcLeaseCapabilities", TypeInfo::Value { name: "ArrayOfHttpNfcLeaseCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::HttpNfcLeaseCapabilities>>(wrap_array_of_http_nfc_lease_capabilities), from_value: |v| from_val_with::<Vec<super::structs::HttpNfcLeaseCapabilities>>(v, wrap_array_of_http_nfc_lease_capabilities) }),
        ("VsanSnapServiceConfig", TypeInfo::Object { name: "VsanSnapServiceConfig", builder_fn: || Box::new(VsanSnapServiceConfigFields::new()) }),
        ("OvfWrongNamespace", TypeInfo::Object { name: "OvfWrongNamespace", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfWrongNamespace))) }),
        ("InvalidEvent", TypeInfo::Object { name: "InvalidEvent", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidEvent))) }),
        ("SmsProviderSpec", TypeInfo::Object { name: "SmsProviderSpec", builder_fn: || Box::new(SmsProviderSpecFields::new()) }),
        ("VsanMassCollectorPropertyParams", TypeInfo::Object { name: "VsanMassCollectorPropertyParams", builder_fn: || Box::new(VsanMassCollectorPropertyParamsFields::new()) }),
        ("ArrayOfVsanIOLatency", TypeInfo::Value { name: "ArrayOfVsanIOLatency", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoLatency>>(wrap_array_of_vsan_io_latency), from_value: |v| from_val_with::<Vec<super::structs::VsanIoLatency>>(v, wrap_array_of_vsan_io_latency) }),
        ("ArrayOfVmWrongFolder", TypeInfo::Value { name: "ArrayOfVmWrongFolder", make_deserializer: || make_deser_with::<Vec<super::structs::VmWrongFolder>>(wrap_array_of_vm_wrong_folder), from_value: |v| from_val_with::<Vec<super::structs::VmWrongFolder>>(v, wrap_array_of_vm_wrong_folder) }),
        ("HooksMarkAsProcessedSpec", TypeInfo::Object { name: "HooksMarkAsProcessedSpec", builder_fn: || Box::new(HooksMarkAsProcessedSpecFields::new()) }),
        ("StorageRequirement", TypeInfo::Object { name: "StorageRequirement", builder_fn: || Box::new(StorageRequirementFields::new()) }),
        ("VirtualFloppyImageBackingOption", TypeInfo::Object { name: "VirtualFloppyImageBackingOption", builder_fn: || Box::new(VirtualFloppyImageBackingOptionFields::new()) }),
        ("VirtualDeviceRemoteDeviceBackingInfo", TypeInfo::Object { name: "VirtualDeviceRemoteDeviceBackingInfo", builder_fn: || Box::new(VirtualDeviceRemoteDeviceBackingInfoFields::new()) }),
        ("StorageDrsIoLoadBalanceConfig", TypeInfo::Object { name: "StorageDrsIoLoadBalanceConfig", builder_fn: || Box::new(StorageDrsIoLoadBalanceConfigFields::new()) }),
        ("ArrayOfCustomFieldDefRemovedEvent", TypeInfo::Value { name: "ArrayOfCustomFieldDefRemovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_custom_field_def_removed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_custom_field_def_removed_event) }),
        ("ArrayOfPbmCapabilityDescription", TypeInfo::Value { name: "ArrayOfPbmCapabilityDescription", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityDescription>>(wrap_array_of_pbm_capability_description), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityDescription>>(v, wrap_array_of_pbm_capability_description) }),
        ("StateAlarmOperator", TypeInfo::Value { name: "StateAlarmOperator", make_deserializer: || make_deser_with::<super::enums::StateAlarmOperatorEnum>(wrap_state_alarm_operator), from_value: |v| from_val_with::<super::enums::StateAlarmOperatorEnum>(v, wrap_state_alarm_operator) }),
        ("ArrayOfVmProtected", TypeInfo::Value { name: "ArrayOfVmProtected", make_deserializer: || make_deser_with::<Vec<super::structs::VmProtected>>(wrap_array_of_vm_protected), from_value: |v| from_val_with::<Vec<super::structs::VmProtected>>(v, wrap_array_of_vm_protected) }),
        ("ArrayOfGuestAuthAnySubject", TypeInfo::Value { name: "ArrayOfGuestAuthAnySubject", make_deserializer: || make_deser_with::<Vec<super::structs::GuestAuthAnySubject>>(wrap_array_of_guest_auth_any_subject), from_value: |v| from_val_with::<Vec<super::structs::GuestAuthAnySubject>>(v, wrap_array_of_guest_auth_any_subject) }),
        ("TargetDeviceId", TypeInfo::Object { name: "TargetDeviceId", builder_fn: || Box::new(TargetDeviceIdFields::new()) }),
        ("HostVsanInternalSystemDeleteVsanObjectsResult", TypeInfo::Object { name: "HostVsanInternalSystemDeleteVsanObjectsResult", builder_fn: || Box::new(HostVsanInternalSystemDeleteVsanObjectsResultFields::new()) }),
        ("ArrayOfHostDhcpService", TypeInfo::Value { name: "ArrayOfHostDhcpService", make_deserializer: || make_deser_with::<Vec<super::structs::HostDhcpService>>(wrap_array_of_host_dhcp_service), from_value: |v| from_val_with::<Vec<super::structs::HostDhcpService>>(v, wrap_array_of_host_dhcp_service) }),
        ("VirtualSriovEthernetCardSriovBackingOption", TypeInfo::Object { name: "VirtualSriovEthernetCardSriovBackingOption", builder_fn: || Box::new(VirtualSriovEthernetCardSriovBackingOptionFields::new()) }),
        ("ArrayOfVmToolsUpgradeFault", TypeInfo::Value { name: "ArrayOfVmToolsUpgradeFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_tools_upgrade_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_tools_upgrade_fault) }),
        ("ArrayOfExtensionManagerIpAllocationUsage", TypeInfo::Value { name: "ArrayOfExtensionManagerIpAllocationUsage", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensionManagerIpAllocationUsage>>(wrap_array_of_extension_manager_ip_allocation_usage), from_value: |v| from_val_with::<Vec<super::structs::ExtensionManagerIpAllocationUsage>>(v, wrap_array_of_extension_manager_ip_allocation_usage) }),
        ("VsanDatastoreSourcePrecheckResult", TypeInfo::Object { name: "VsanDatastoreSourcePrecheckResult", builder_fn: || Box::new(VsanDatastoreSourcePrecheckResultFields::new()) }),
        ("ArrayOfWinNetBIOSConfigInfo", TypeInfo::Value { name: "ArrayOfWinNetBIOSConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::WinNetBiosConfigInfo>>(wrap_array_of_win_net_bios_config_info), from_value: |v| from_val_with::<Vec<super::structs::WinNetBiosConfigInfo>>(v, wrap_array_of_win_net_bios_config_info) }),
        ("ArrayOfVmReloadFromPathEvent", TypeInfo::Value { name: "ArrayOfVmReloadFromPathEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_reload_from_path_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_reload_from_path_event) }),
        ("InvalidSession", TypeInfo::Object { name: "InvalidSession", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidSession))) }),
        ("ArrayOfPerformanceDescription", TypeInfo::Value { name: "ArrayOfPerformanceDescription", make_deserializer: || make_deser_with::<Vec<super::structs::PerformanceDescription>>(wrap_array_of_performance_description), from_value: |v| from_val_with::<Vec<super::structs::PerformanceDescription>>(v, wrap_array_of_performance_description) }),
        ("ArrayOfHostIpRouteConfig", TypeInfo::Value { name: "ArrayOfHostIpRouteConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_ip_route_config_array)), from_value: |v| cast_to_host_ip_route_config_array(from_value(v)?) }),
        ("ArrayOfVirtualMachineRelocateSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineRelocateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineRelocateSpec>>(wrap_array_of_virtual_machine_relocate_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineRelocateSpec>>(v, wrap_array_of_virtual_machine_relocate_spec) }),
        ("CustomFieldDef", TypeInfo::Object { name: "CustomFieldDef", builder_fn: || Box::new(CustomFieldDefFields::new()) }),
        ("ArrayOfVmPoweredOff", TypeInfo::Value { name: "ArrayOfVmPoweredOff", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vm_powered_off_array)), from_value: |v| cast_to_vm_powered_off_array(from_value(v)?) }),
        ("HostProtocolEndpoint", TypeInfo::Object { name: "HostProtocolEndpoint", builder_fn: || Box::new(HostProtocolEndpointFields::new()) }),
        ("OvfMissingAttribute", TypeInfo::Object { name: "OvfMissingAttribute", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfMissingAttribute))) }),
        ("VirtualMachineDeviceRuntimeInfoDeviceRuntimeState", TypeInfo::Object { name: "VirtualMachineDeviceRuntimeInfoDeviceRuntimeState", builder_fn: || Box::new(VirtualMachineDeviceRuntimeInfoDeviceRuntimeStateFields::new()) }),
        ("ArrayOfParaVirtualSCSIController", TypeInfo::Value { name: "ArrayOfParaVirtualSCSIController", make_deserializer: || make_deser_with::<Vec<super::structs::ParaVirtualScsiController>>(wrap_array_of_para_virtual_scsi_controller), from_value: |v| from_val_with::<Vec<super::structs::ParaVirtualScsiController>>(v, wrap_array_of_para_virtual_scsi_controller) }),
        ("PbmProfileType", TypeInfo::Object { name: "PbmProfileType", builder_fn: || Box::new(PbmProfileTypeFields::new()) }),
        ("DvsAcceptNetworkRuleAction", TypeInfo::Object { name: "DvsAcceptNetworkRuleAction", builder_fn: || Box::new(DvsAcceptNetworkRuleActionFields::new()) }),
        ("ArrayOfVirtualKeyboard", TypeInfo::Value { name: "ArrayOfVirtualKeyboard", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualKeyboard>>(wrap_array_of_virtual_keyboard), from_value: |v| from_val_with::<Vec<super::structs::VirtualKeyboard>>(v, wrap_array_of_virtual_keyboard) }),
        ("ArrayOfHbrTargetSpecReplacement", TypeInfo::Value { name: "ArrayOfHbrTargetSpecReplacement", make_deserializer: || make_deser_with::<Vec<super::structs::HbrTargetSpecReplacement>>(wrap_array_of_hbr_target_spec_replacement), from_value: |v| from_val_with::<Vec<super::structs::HbrTargetSpecReplacement>>(v, wrap_array_of_hbr_target_spec_replacement) }),
        ("ArrayOfVirtualMachineVirtualDeviceSwapDeviceSwapInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineVirtualDeviceSwapDeviceSwapInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVirtualDeviceSwapDeviceSwapInfo>>(wrap_array_of_virtual_machine_virtual_device_swap_device_swap_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVirtualDeviceSwapDeviceSwapInfo>>(v, wrap_array_of_virtual_machine_virtual_device_swap_device_swap_info) }),
        ("ArrayOfHostPathSelectionPolicyOption", TypeInfo::Value { name: "ArrayOfHostPathSelectionPolicyOption", make_deserializer: || make_deser_with::<Vec<super::structs::HostPathSelectionPolicyOption>>(wrap_array_of_host_path_selection_policy_option), from_value: |v| from_val_with::<Vec<super::structs::HostPathSelectionPolicyOption>>(v, wrap_array_of_host_path_selection_policy_option) }),
        ("ArrayOfFibreChannelPortType", TypeInfo::Value { name: "ArrayOfFibreChannelPortType", make_deserializer: || make_deser_with::<Vec<super::enums::FibreChannelPortTypeEnum>>(wrap_array_of_fibre_channel_port_type), from_value: |v| from_val_with::<Vec<super::enums::FibreChannelPortTypeEnum>>(v, wrap_array_of_fibre_channel_port_type) }),
        ("ArrayOfEncryptionKeyRequired", TypeInfo::Value { name: "ArrayOfEncryptionKeyRequired", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_encryption_key_required), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_encryption_key_required) }),
        ("ArrayOfToolsAutoUpgradeNotSupported", TypeInfo::Value { name: "ArrayOfToolsAutoUpgradeNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_tools_auto_upgrade_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_tools_auto_upgrade_not_supported) }),
        ("NoPermissionOnHost", TypeInfo::Object { name: "NoPermissionOnHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoPermissionOnHost))) }),
        ("SnapshotCloneNotSupported", TypeInfo::Object { name: "SnapshotCloneNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotCloneNotSupported))) }),
        ("ArrayOfVsanObjectPolicyIssue", TypeInfo::Value { name: "ArrayOfVsanObjectPolicyIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectPolicyIssue>>(wrap_array_of_vsan_object_policy_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectPolicyIssue>>(v, wrap_array_of_vsan_object_policy_issue) }),
        ("DuplicateVsanNetworkInterface", TypeInfo::Object { name: "DuplicateVsanNetworkInterface", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DuplicateVsanNetworkInterface))) }),
        ("ArrayOfCannotChangeVsanNodeUuid", TypeInfo::Value { name: "ArrayOfCannotChangeVsanNodeUuid", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_change_vsan_node_uuid), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_change_vsan_node_uuid) }),
        ("DrsEnabledEvent", TypeInfo::Object { name: "DrsEnabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsEnabledEvent))) }),
        ("AlreadyUpgraded", TypeInfo::Object { name: "AlreadyUpgraded", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AlreadyUpgraded))) }),
        ("ArrayOfVsanDataEncryptionConfig", TypeInfo::Value { name: "ArrayOfVsanDataEncryptionConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDataEncryptionConfig>>(wrap_array_of_vsan_data_encryption_config), from_value: |v| from_val_with::<Vec<super::structs::VsanDataEncryptionConfig>>(v, wrap_array_of_vsan_data_encryption_config) }),
        ("ArrayOfOvfPropertyNetworkExport", TypeInfo::Value { name: "ArrayOfOvfPropertyNetworkExport", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_property_network_export), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_property_network_export) }),
        ("ArrayOfFileNameTooLong", TypeInfo::Value { name: "ArrayOfFileNameTooLong", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_file_name_too_long), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_file_name_too_long) }),
        ("ArrayOfVirtualMachineWindowsQuiesceSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineWindowsQuiesceSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineWindowsQuiesceSpec>>(wrap_array_of_virtual_machine_windows_quiesce_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineWindowsQuiesceSpec>>(v, wrap_array_of_virtual_machine_windows_quiesce_spec) }),
        ("ArrayOfHostSnmpSystemAgentLimits", TypeInfo::Value { name: "ArrayOfHostSnmpSystemAgentLimits", make_deserializer: || make_deser_with::<Vec<super::structs::HostSnmpSystemAgentLimits>>(wrap_array_of_host_snmp_system_agent_limits), from_value: |v| from_val_with::<Vec<super::structs::HostSnmpSystemAgentLimits>>(v, wrap_array_of_host_snmp_system_agent_limits) }),
        ("ArrayOfPbmFault", TypeInfo::Value { name: "ArrayOfPbmFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_fault) }),
        ("ArrayOfVsanClusterHealthQuerySpec", TypeInfo::Value { name: "ArrayOfVsanClusterHealthQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthQuerySpec>>(wrap_array_of_vsan_cluster_health_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthQuerySpec>>(v, wrap_array_of_vsan_cluster_health_query_spec) }),
        ("HostTrustAuthorityAttestationInfo", TypeInfo::Object { name: "HostTrustAuthorityAttestationInfo", builder_fn: || Box::new(HostTrustAuthorityAttestationInfoFields::new()) }),
        ("VsanHostPropertyRetrieveIssue", TypeInfo::Object { name: "VsanHostPropertyRetrieveIssue", builder_fn: || Box::new(VsanHostPropertyRetrieveIssueFields::new()) }),
        ("EnteringMaintenanceModeEvent", TypeInfo::Object { name: "EnteringMaintenanceModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::EnteringMaintenanceModeEvent))) }),
        ("HostConnectFault", TypeInfo::Object { name: "HostConnectFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostConnectFault))) }),
        ("ClusterDrsMigration", TypeInfo::Object { name: "ClusterDrsMigration", builder_fn: || Box::new(ClusterDrsMigrationFields::new()) }),
        ("ArrayOfCustomizationSysprep", TypeInfo::Value { name: "ArrayOfCustomizationSysprep", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationSysprep>>(wrap_array_of_customization_sysprep), from_value: |v| from_val_with::<Vec<super::structs::CustomizationSysprep>>(v, wrap_array_of_customization_sysprep) }),
        ("VsanSiteFaultDomainConfig", TypeInfo::Object { name: "VsanSiteFaultDomainConfig", builder_fn: || Box::new(VsanSiteFaultDomainConfigFields::new()) }),
        ("ArrayOfDatastoreAccessible", TypeInfo::Value { name: "ArrayOfDatastoreAccessible", make_deserializer: || make_deser_with::<Vec<super::enums::DatastoreAccessibleEnum>>(wrap_array_of_datastore_accessible), from_value: |v| from_val_with::<Vec<super::enums::DatastoreAccessibleEnum>>(v, wrap_array_of_datastore_accessible) }),
        ("HostNvmeSpec", TypeInfo::Object { name: "HostNvmeSpec", builder_fn: || Box::new(HostNvmeSpecFields::new()) }),
        ("ArrayOfAuthConnectionFailed", TypeInfo::Value { name: "ArrayOfAuthConnectionFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_auth_connection_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_auth_connection_failed) }),
        ("CAMServerRefusedConnection", TypeInfo::Object { name: "CAMServerRefusedConnection", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CamServerRefusedConnection))) }),
        ("ArrayOfAgentAnyCertificate", TypeInfo::Value { name: "ArrayOfAgentAnyCertificate", make_deserializer: || make_deser_with::<Vec<super::structs::AgentAnyCertificate>>(wrap_array_of_agent_any_certificate), from_value: |v| from_val_with::<Vec<super::structs::AgentAnyCertificate>>(v, wrap_array_of_agent_any_certificate) }),
        ("VmFailedToRebootGuestEvent", TypeInfo::Object { name: "VmFailedToRebootGuestEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedToRebootGuestEvent))) }),
        ("HostHbaCreateSpec", TypeInfo::Object { name: "HostHbaCreateSpec", builder_fn: || Box::new(HostHbaCreateSpecFields::new()) }),
        ("ArrayOfHostNasVolume", TypeInfo::Value { name: "ArrayOfHostNasVolume", make_deserializer: || make_deser_with::<Vec<super::structs::HostNasVolume>>(wrap_array_of_host_nas_volume), from_value: |v| from_val_with::<Vec<super::structs::HostNasVolume>>(v, wrap_array_of_host_nas_volume) }),
        ("ArrayOfVmConfigIncompatibleForFaultTolerance", TypeInfo::Value { name: "ArrayOfVmConfigIncompatibleForFaultTolerance", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_config_incompatible_for_fault_tolerance), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_config_incompatible_for_fault_tolerance) }),
        ("ArrayOfUpdateVirtualMachineFilesResult", TypeInfo::Value { name: "ArrayOfUpdateVirtualMachineFilesResult", make_deserializer: || make_deser_with::<Vec<super::structs::UpdateVirtualMachineFilesResult>>(wrap_array_of_update_virtual_machine_files_result), from_value: |v| from_val_with::<Vec<super::structs::UpdateVirtualMachineFilesResult>>(v, wrap_array_of_update_virtual_machine_files_result) }),
        ("ArrayOfVsanNetworkDiagnosticsHealthInfo", TypeInfo::Value { name: "ArrayOfVsanNetworkDiagnosticsHealthInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkDiagnosticsHealthInfo>>(wrap_array_of_vsan_network_diagnostics_health_info), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkDiagnosticsHealthInfo>>(v, wrap_array_of_vsan_network_diagnostics_health_info) }),
        ("FcoeStoragePort", TypeInfo::Object { name: "FcoeStoragePort", builder_fn: || Box::new(FcoeStoragePortFields::new()) }),
        ("ArrayOfAnyType", TypeInfo::Value { name: "ArrayOfAnyType", make_deserializer: || make_deser_with::<Vec<super::vim_any::VimAny>>(wrap_array_of_any_type), from_value: |v| from_val_with::<Vec<super::vim_any::VimAny>>(v, wrap_array_of_any_type) }),
        ("HostTcpTargetTransport", TypeInfo::Object { name: "HostTcpTargetTransport", builder_fn: || Box::new(HostTcpTargetTransportFields::new()) }),
        ("ArrayOfVsanNewPolicyBatch", TypeInfo::Value { name: "ArrayOfVsanNewPolicyBatch", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNewPolicyBatch>>(wrap_array_of_vsan_new_policy_batch), from_value: |v| from_val_with::<Vec<super::structs::VsanNewPolicyBatch>>(v, wrap_array_of_vsan_new_policy_batch) }),
        ("VmSuspendedEvent", TypeInfo::Object { name: "VmSuspendedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmSuspendedEvent))) }),
        ("ArrayOfHostVFlashManagerVFlashCacheConfigSpec", TypeInfo::Value { name: "ArrayOfHostVFlashManagerVFlashCacheConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostVFlashManagerVFlashCacheConfigSpec>>(wrap_array_of_host_v_flash_manager_v_flash_cache_config_spec), from_value: |v| from_val_with::<Vec<super::structs::HostVFlashManagerVFlashCacheConfigSpec>>(v, wrap_array_of_host_v_flash_manager_v_flash_cache_config_spec) }),
        ("ArrayOfClusterEnterMaintenanceResult", TypeInfo::Value { name: "ArrayOfClusterEnterMaintenanceResult", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterEnterMaintenanceResult>>(wrap_array_of_cluster_enter_maintenance_result), from_value: |v| from_val_with::<Vec<super::structs::ClusterEnterMaintenanceResult>>(v, wrap_array_of_cluster_enter_maintenance_result) }),
        ("ArrayOfOvfConsumerCallbackFault", TypeInfo::Value { name: "ArrayOfOvfConsumerCallbackFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_consumer_callback_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_consumer_callback_fault) }),
        ("SDDCBase", TypeInfo::Object { name: "SDDCBase", builder_fn: || Box::new(SddcBaseFields::new()) }),
        ("VirtualMachineImportSpec", TypeInfo::Object { name: "VirtualMachineImportSpec", builder_fn: || Box::new(VirtualMachineImportSpecFields::new()) }),
        ("VsanIscsiInitiatorGroup", TypeInfo::Object { name: "VsanIscsiInitiatorGroup", builder_fn: || Box::new(VsanIscsiInitiatorGroupFields::new()) }),
        ("ArrayOfHostTargetTransport", TypeInfo::Value { name: "ArrayOfHostTargetTransport", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_target_transport_array)), from_value: |v| cast_to_host_target_transport_array(from_value(v)?) }),
        ("ArrayOfRemoteDeviceNotSupported", TypeInfo::Value { name: "ArrayOfRemoteDeviceNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_remote_device_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_remote_device_not_supported) }),
        ("VsanMountPrecheckNetworkConnectivity", TypeInfo::Object { name: "VsanMountPrecheckNetworkConnectivity", builder_fn: || Box::new(VsanMountPrecheckNetworkConnectivityFields::new()) }),
        ("DiskCryptoSpec", TypeInfo::Object { name: "DiskCryptoSpec", builder_fn: || Box::new(DiskCryptoSpecFields::new()) }),
        ("CnsVolume", TypeInfo::Object { name: "CnsVolume", builder_fn: || Box::new(CnsVolumeFields::new()) }),
        ("DasAgentFoundEvent", TypeInfo::Object { name: "DasAgentFoundEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DasAgentFoundEvent))) }),
        ("ArrayOfVsanVcgDeviceInfo", TypeInfo::Value { name: "ArrayOfVsanVcgDeviceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVcgDeviceInfo>>(wrap_array_of_vsan_vcg_device_info), from_value: |v| from_val_with::<Vec<super::structs::VsanVcgDeviceInfo>>(v, wrap_array_of_vsan_vcg_device_info) }),
        ("VirtualUSBControllerPciBusSlotInfo", TypeInfo::Object { name: "VirtualUSBControllerPciBusSlotInfo", builder_fn: || Box::new(VirtualUsbControllerPciBusSlotInfoFields::new()) }),
        ("ArrayOfPbmFetchEntityHealthStatusSpec", TypeInfo::Value { name: "ArrayOfPbmFetchEntityHealthStatusSpec", make_deserializer: || make_deser_with::<Vec<super::structs::PbmFetchEntityHealthStatusSpec>>(wrap_array_of_pbm_fetch_entity_health_status_spec), from_value: |v| from_val_with::<Vec<super::structs::PbmFetchEntityHealthStatusSpec>>(v, wrap_array_of_pbm_fetch_entity_health_status_spec) }),
        ("CustomizationSpecInfo", TypeInfo::Object { name: "CustomizationSpecInfo", builder_fn: || Box::new(CustomizationSpecInfoFields::new()) }),
        ("VsanClusterLimitHealthResult", TypeInfo::Object { name: "VsanClusterLimitHealthResult", builder_fn: || Box::new(VsanClusterLimitHealthResultFields::new()) }),
        ("InvalidCollectorVersion", TypeInfo::Object { name: "InvalidCollectorVersion", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidCollectorVersion))) }),
        ("ArrayOfUserProfile", TypeInfo::Value { name: "ArrayOfUserProfile", make_deserializer: || make_deser_with::<Vec<super::structs::UserProfile>>(wrap_array_of_user_profile), from_value: |v| from_val_with::<Vec<super::structs::UserProfile>>(v, wrap_array_of_user_profile) }),
        ("ArrayOfInUseFeatureManipulationDisallowed", TypeInfo::Value { name: "ArrayOfInUseFeatureManipulationDisallowed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_in_use_feature_manipulation_disallowed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_in_use_feature_manipulation_disallowed) }),
        ("PbmCapabilityGenericTypeInfo", TypeInfo::Object { name: "PbmCapabilityGenericTypeInfo", builder_fn: || Box::new(PbmCapabilityGenericTypeInfoFields::new()) }),
        ("HostPowerOperationType", TypeInfo::Value { name: "HostPowerOperationType", make_deserializer: || make_deser_with::<super::enums::HostPowerOperationTypeEnum>(wrap_host_power_operation_type), from_value: |v| from_val_with::<super::enums::HostPowerOperationTypeEnum>(v, wrap_host_power_operation_type) }),
        ("HostLicensableResourceInfo", TypeInfo::Object { name: "HostLicensableResourceInfo", builder_fn: || Box::new(HostLicensableResourceInfoFields::new()) }),
        ("PersonalityAgencyCannotUploadDepot", TypeInfo::Object { name: "PersonalityAgencyCannotUploadDepot", builder_fn: || Box::new(PersonalityAgencyCannotUploadDepotFields::new()) }),
        ("ArrayOfStorageAlarm", TypeInfo::Value { name: "ArrayOfStorageAlarm", make_deserializer: || make_deser_with::<Vec<super::structs::StorageAlarm>>(wrap_array_of_storage_alarm), from_value: |v| from_val_with::<Vec<super::structs::StorageAlarm>>(v, wrap_array_of_storage_alarm) }),
        ("ArrayOfVmFailedStartingSecondaryEvent", TypeInfo::Value { name: "ArrayOfVmFailedStartingSecondaryEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_starting_secondary_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_starting_secondary_event) }),
        ("ClusterDrsFaults", TypeInfo::Object { name: "ClusterDrsFaults", builder_fn: || Box::new(ClusterDrsFaultsFields::new()) }),
        ("ArrayOfHostSpecification", TypeInfo::Value { name: "ArrayOfHostSpecification", make_deserializer: || make_deser_with::<Vec<super::structs::HostSpecification>>(wrap_array_of_host_specification), from_value: |v| from_val_with::<Vec<super::structs::HostSpecification>>(v, wrap_array_of_host_specification) }),
        ("VirtualMachineWindowsQuiesceSpec", TypeInfo::Object { name: "VirtualMachineWindowsQuiesceSpec", builder_fn: || Box::new(VirtualMachineWindowsQuiesceSpecFields::new()) }),
        ("ArrayOfGeneralHostInfoEvent", TypeInfo::Value { name: "ArrayOfGeneralHostInfoEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_general_host_info_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_general_host_info_event) }),
        ("ArrayOfVirtualSCSIPassthroughDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualSCSIPassthroughDeviceBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualScsiPassthroughDeviceBackingInfo>>(wrap_array_of_virtual_scsi_passthrough_device_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualScsiPassthroughDeviceBackingInfo>>(v, wrap_array_of_virtual_scsi_passthrough_device_backing_info) }),
        ("WillModifyConfigCpuRequirements", TypeInfo::Object { name: "WillModifyConfigCpuRequirements", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::WillModifyConfigCpuRequirements))) }),
        ("AgentStoragePolicy", TypeInfo::Object { name: "AgentStoragePolicy", builder_fn: || Box::new(AgentStoragePolicyFields::new()) }),
        ("AuthenticationProfile", TypeInfo::Object { name: "AuthenticationProfile", builder_fn: || Box::new(AuthenticationProfileFields::new()) }),
        ("ArrayOfQueryPointInTimeReplicaSummaryResult", TypeInfo::Value { name: "ArrayOfQueryPointInTimeReplicaSummaryResult", make_deserializer: || make_deser_with::<Vec<super::structs::QueryPointInTimeReplicaSummaryResult>>(wrap_array_of_query_point_in_time_replica_summary_result), from_value: |v| from_val_with::<Vec<super::structs::QueryPointInTimeReplicaSummaryResult>>(v, wrap_array_of_query_point_in_time_replica_summary_result) }),
        ("ArrayOfNetIpConfigSpec", TypeInfo::Value { name: "ArrayOfNetIpConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpConfigSpec>>(wrap_array_of_net_ip_config_spec), from_value: |v| from_val_with::<Vec<super::structs::NetIpConfigSpec>>(v, wrap_array_of_net_ip_config_spec) }),
        ("ArrayOfHostDigestInfo", TypeInfo::Value { name: "ArrayOfHostDigestInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_digest_info_array)), from_value: |v| cast_to_host_digest_info_array(from_value(v)?) }),
        ("VMotionLinkDown", TypeInfo::Object { name: "VMotionLinkDown", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VMotionLinkDown))) }),
        ("VsanClusterUuidMismatch", TypeInfo::Object { name: "VsanClusterUuidMismatch", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VsanClusterUuidMismatch))) }),
        ("ArrayOfVirtualEthernetCardLegacyNetworkBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardLegacyNetworkBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEthernetCardLegacyNetworkBackingInfo>>(wrap_array_of_virtual_ethernet_card_legacy_network_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualEthernetCardLegacyNetworkBackingInfo>>(v, wrap_array_of_virtual_ethernet_card_legacy_network_backing_info) }),
        ("VsanNetworkConfigVswitchWithNoRedundancyIssue", TypeInfo::Object { name: "VsanNetworkConfigVswitchWithNoRedundancyIssue", builder_fn: || Box::new(VsanNetworkConfigVswitchWithNoRedundancyIssueFields::new()) }),
        ("VramLimitLicense", TypeInfo::Object { name: "VramLimitLicense", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VramLimitLicense))) }),
        ("ArrayOfDVPortSetting", TypeInfo::Value { name: "ArrayOfDVPortSetting", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dv_port_setting_array)), from_value: |v| cast_to_dv_port_setting_array(from_value(v)?) }),
        ("ArrayOfUserLoginSessionEvent", TypeInfo::Value { name: "ArrayOfUserLoginSessionEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_user_login_session_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_user_login_session_event) }),
        ("ArrayOfDatacenterEventArgument", TypeInfo::Value { name: "ArrayOfDatacenterEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::DatacenterEventArgument>>(wrap_array_of_datacenter_event_argument), from_value: |v| from_val_with::<Vec<super::structs::DatacenterEventArgument>>(v, wrap_array_of_datacenter_event_argument) }),
        ("ArrayOfClusterAgentInvalidConfig", TypeInfo::Value { name: "ArrayOfClusterAgentInvalidConfig", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentInvalidConfig>>(wrap_array_of_cluster_agent_invalid_config), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentInvalidConfig>>(v, wrap_array_of_cluster_agent_invalid_config) }),
        ("AlarmStatusChangedEvent", TypeInfo::Object { name: "AlarmStatusChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmStatusChangedEvent))) }),
        ("ArrayOfVsanClusterConfigInfo", TypeInfo::Value { name: "ArrayOfVsanClusterConfigInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_cluster_config_info_array)), from_value: |v| cast_to_vsan_cluster_config_info_array(from_value(v)?) }),
        ("ArrayOfSourceGroupMemberInfo", TypeInfo::Value { name: "ArrayOfSourceGroupMemberInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SourceGroupMemberInfo>>(wrap_array_of_source_group_member_info), from_value: |v| from_val_with::<Vec<super::structs::SourceGroupMemberInfo>>(v, wrap_array_of_source_group_member_info) }),
        ("ArrayOfHostOvercommittedEvent", TypeInfo::Value { name: "ArrayOfHostOvercommittedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_overcommitted_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_overcommitted_event) }),
        ("ArrayOfHostSnmpAgentCapability", TypeInfo::Value { name: "ArrayOfHostSnmpAgentCapability", make_deserializer: || make_deser_with::<Vec<super::enums::HostSnmpAgentCapabilityEnum>>(wrap_array_of_host_snmp_agent_capability), from_value: |v| from_val_with::<Vec<super::enums::HostSnmpAgentCapabilityEnum>>(v, wrap_array_of_host_snmp_agent_capability) }),
        ("UnsupportedVimApiVersion", TypeInfo::Object { name: "UnsupportedVimApiVersion", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnsupportedVimApiVersion))) }),
        ("HostMultipathInfoPath", TypeInfo::Object { name: "HostMultipathInfoPath", builder_fn: || Box::new(HostMultipathInfoPathFields::new()) }),
        ("VsanLimitHealthResult", TypeInfo::Object { name: "VsanLimitHealthResult", builder_fn: || Box::new(VsanLimitHealthResultFields::new()) }),
        ("ArrayOfHostVmciAccessManagerAccessSpec", TypeInfo::Value { name: "ArrayOfHostVmciAccessManagerAccessSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostVmciAccessManagerAccessSpec>>(wrap_array_of_host_vmci_access_manager_access_spec), from_value: |v| from_val_with::<Vec<super::structs::HostVmciAccessManagerAccessSpec>>(v, wrap_array_of_host_vmci_access_manager_access_spec) }),
        ("HostDiskPartitionAttributes", TypeInfo::Object { name: "HostDiskPartitionAttributes", builder_fn: || Box::new(HostDiskPartitionAttributesFields::new()) }),
        ("ArrayOfVirtualUSB", TypeInfo::Value { name: "ArrayOfVirtualUSB", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsb>>(wrap_array_of_virtual_usb), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsb>>(v, wrap_array_of_virtual_usb) }),
        ("GuestRegValueStringSpec", TypeInfo::Object { name: "GuestRegValueStringSpec", builder_fn: || Box::new(GuestRegValueStringSpecFields::new()) }),
        ("ArrayOfVsanPhysicalDiskHealthSummary", TypeInfo::Value { name: "ArrayOfVsanPhysicalDiskHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPhysicalDiskHealthSummary>>(wrap_array_of_vsan_physical_disk_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanPhysicalDiskHealthSummary>>(v, wrap_array_of_vsan_physical_disk_health_summary) }),
        ("ArrayOfVmDiscoveredEvent", TypeInfo::Value { name: "ArrayOfVmDiscoveredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_discovered_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_discovered_event) }),
        ("ArrayOfVirtualCdromIsoBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualCdromIsoBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromIsoBackingInfo>>(wrap_array_of_virtual_cdrom_iso_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromIsoBackingInfo>>(v, wrap_array_of_virtual_cdrom_iso_backing_info) }),
        ("ArrayOfDvsPortRuntimeChangeEvent", TypeInfo::Value { name: "ArrayOfDvsPortRuntimeChangeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_runtime_change_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_runtime_change_event) }),
        ("VirtualFloppyDeviceBackingOption", TypeInfo::Object { name: "VirtualFloppyDeviceBackingOption", builder_fn: || Box::new(VirtualFloppyDeviceBackingOptionFields::new()) }),
        ("ArrayOfNonVmwareOuiMacNotSupportedHost", TypeInfo::Value { name: "ArrayOfNonVmwareOuiMacNotSupportedHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_non_vmware_oui_mac_not_supported_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_non_vmware_oui_mac_not_supported_host) }),
        ("ArrayOfInvalidPowerState", TypeInfo::Value { name: "ArrayOfInvalidPowerState", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_power_state), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_power_state) }),
        ("ArrayOfVsanObjectInaccessibleIssue", TypeInfo::Value { name: "ArrayOfVsanObjectInaccessibleIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectInaccessibleIssue>>(wrap_array_of_vsan_object_inaccessible_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectInaccessibleIssue>>(v, wrap_array_of_vsan_object_inaccessible_issue) }),
        ("ArrayOfVsanPerfMemberInfo", TypeInfo::Value { name: "ArrayOfVsanPerfMemberInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfMemberInfo>>(wrap_array_of_vsan_perf_member_info), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfMemberInfo>>(v, wrap_array_of_vsan_perf_member_info) }),
        ("ArrayOfDVSTrafficShapingPolicy", TypeInfo::Value { name: "ArrayOfDVSTrafficShapingPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::DvsTrafficShapingPolicy>>(wrap_array_of_dvs_traffic_shaping_policy), from_value: |v| from_val_with::<Vec<super::structs::DvsTrafficShapingPolicy>>(v, wrap_array_of_dvs_traffic_shaping_policy) }),
        ("ComplianceLocator", TypeInfo::Object { name: "ComplianceLocator", builder_fn: || Box::new(ComplianceLocatorFields::new()) }),
        ("HostTpmSignerEventDetails", TypeInfo::Object { name: "HostTpmSignerEventDetails", builder_fn: || Box::new(HostTpmSignerEventDetailsFields::new()) }),
        ("SourceNodeSpec", TypeInfo::Object { name: "SourceNodeSpec", builder_fn: || Box::new(SourceNodeSpecFields::new()) }),
        ("ArrayOfVmGuestRebootEvent", TypeInfo::Value { name: "ArrayOfVmGuestRebootEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_guest_reboot_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_guest_reboot_event) }),
        ("SeSparseVirtualDiskSpec", TypeInfo::Object { name: "SeSparseVirtualDiskSpec", builder_fn: || Box::new(SeSparseVirtualDiskSpecFields::new()) }),
        ("VsanSpaceUsageWithDatastoreType", TypeInfo::Object { name: "VsanSpaceUsageWithDatastoreType", builder_fn: || Box::new(VsanSpaceUsageWithDatastoreTypeFields::new()) }),
        ("ArrayOfHostTpmNvTagEventDetails", TypeInfo::Value { name: "ArrayOfHostTpmNvTagEventDetails", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmNvTagEventDetails>>(wrap_array_of_host_tpm_nv_tag_event_details), from_value: |v| from_val_with::<Vec<super::structs::HostTpmNvTagEventDetails>>(v, wrap_array_of_host_tpm_nv_tag_event_details) }),
        ("ArrayOfExtensionHealthInfo", TypeInfo::Value { name: "ArrayOfExtensionHealthInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensionHealthInfo>>(wrap_array_of_extension_health_info), from_value: |v| from_val_with::<Vec<super::structs::ExtensionHealthInfo>>(v, wrap_array_of_extension_health_info) }),
        ("AutoStartDefaults", TypeInfo::Object { name: "AutoStartDefaults", builder_fn: || Box::new(AutoStartDefaultsFields::new()) }),
        ("ArrayOfVirtualVmxnet3Vrdma", TypeInfo::Value { name: "ArrayOfVirtualVmxnet3Vrdma", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualVmxnet3Vrdma>>(wrap_array_of_virtual_vmxnet_3_vrdma), from_value: |v| from_val_with::<Vec<super::structs::VirtualVmxnet3Vrdma>>(v, wrap_array_of_virtual_vmxnet_3_vrdma) }),
        ("ArrayOfDvsPortEnteredPassthruEvent", TypeInfo::Value { name: "ArrayOfDvsPortEnteredPassthruEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_entered_passthru_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_entered_passthru_event) }),
        ("VSANEntityCompatibilityResult", TypeInfo::Object { name: "VSANEntityCompatibilityResult", builder_fn: || Box::new(VsanEntityCompatibilityResultFields::new()) }),
        ("NotFound", TypeInfo::Object { name: "NotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotFound))) }),
        ("VmHookTimedout", TypeInfo::Object { name: "VmHookTimedout", builder_fn: || Box::new(VmHookTimedoutFields::new()) }),
        ("ArrayOfEnteredStandbyModeEvent", TypeInfo::Value { name: "ArrayOfEnteredStandbyModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_entered_standby_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_entered_standby_mode_event) }),
        ("ArrayOfFolderBatchAddStandaloneHostsResult", TypeInfo::Value { name: "ArrayOfFolderBatchAddStandaloneHostsResult", make_deserializer: || make_deser_with::<Vec<super::structs::FolderBatchAddStandaloneHostsResult>>(wrap_array_of_folder_batch_add_standalone_hosts_result), from_value: |v| from_val_with::<Vec<super::structs::FolderBatchAddStandaloneHostsResult>>(v, wrap_array_of_folder_batch_add_standalone_hosts_result) }),
        ("ArrayOfHostCnxFailedBadVersionEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedBadVersionEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_bad_version_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_bad_version_event) }),
        ("ArrayOfDatastoreEvent", TypeInfo::Value { name: "ArrayOfDatastoreEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_event) }),
        ("CustomizationFixedName", TypeInfo::Object { name: "CustomizationFixedName", builder_fn: || Box::new(CustomizationFixedNameFields::new()) }),
        ("InvalidDatastore", TypeInfo::Object { name: "InvalidDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidDatastore))) }),
        ("ArrayOfVsanDirectoryServerConfig", TypeInfo::Value { name: "ArrayOfVsanDirectoryServerConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_directory_server_config_array)), from_value: |v| cast_to_vsan_directory_server_config_array(from_value(v)?) }),
        ("ArrayOfDiagnosticManagerLogHeader", TypeInfo::Value { name: "ArrayOfDiagnosticManagerLogHeader", make_deserializer: || make_deser_with::<Vec<super::structs::DiagnosticManagerLogHeader>>(wrap_array_of_diagnostic_manager_log_header), from_value: |v| from_val_with::<Vec<super::structs::DiagnosticManagerLogHeader>>(v, wrap_array_of_diagnostic_manager_log_header) }),
        ("ArrayOfCryptoManagerKmipServerCertInfo", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipServerCertInfo", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerKmipServerCertInfo>>(wrap_array_of_crypto_manager_kmip_server_cert_info), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerKmipServerCertInfo>>(v, wrap_array_of_crypto_manager_kmip_server_cert_info) }),
        ("VirtualMachineQuickStats", TypeInfo::Object { name: "VirtualMachineQuickStats", builder_fn: || Box::new(VirtualMachineQuickStatsFields::new()) }),
        ("VmDiscoveredEvent", TypeInfo::Object { name: "VmDiscoveredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDiscoveredEvent))) }),
        ("ArrayOfVsanSyncingObjectRecoveryDetails", TypeInfo::Value { name: "ArrayOfVsanSyncingObjectRecoveryDetails", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSyncingObjectRecoveryDetails>>(wrap_array_of_vsan_syncing_object_recovery_details), from_value: |v| from_val_with::<Vec<super::structs::VsanSyncingObjectRecoveryDetails>>(v, wrap_array_of_vsan_syncing_object_recovery_details) }),
        ("VirtualSerialPortDeviceBackingInfo", TypeInfo::Object { name: "VirtualSerialPortDeviceBackingInfo", builder_fn: || Box::new(VirtualSerialPortDeviceBackingInfoFields::new()) }),
        ("ArrayOfNetIpConfigSpecIpAddressSpec", TypeInfo::Value { name: "ArrayOfNetIpConfigSpecIpAddressSpec", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpConfigSpecIpAddressSpec>>(wrap_array_of_net_ip_config_spec_ip_address_spec), from_value: |v| from_val_with::<Vec<super::structs::NetIpConfigSpecIpAddressSpec>>(v, wrap_array_of_net_ip_config_spec_ip_address_spec) }),
        ("ArrayOfVsanHealthConfigSpec", TypeInfo::Value { name: "ArrayOfVsanHealthConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthConfigSpec>>(wrap_array_of_vsan_health_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthConfigSpec>>(v, wrap_array_of_vsan_health_config_spec) }),
        ("HostNfcConnectionInfo", TypeInfo::Object { name: "HostNfcConnectionInfo", builder_fn: || Box::new(HostNfcConnectionInfoFields::new()) }),
        ("ArrayOfExtensionEventTypeInfo", TypeInfo::Value { name: "ArrayOfExtensionEventTypeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensionEventTypeInfo>>(wrap_array_of_extension_event_type_info), from_value: |v| from_val_with::<Vec<super::structs::ExtensionEventTypeInfo>>(v, wrap_array_of_extension_event_type_info) }),
        ("RelatedStorageArray", TypeInfo::Object { name: "RelatedStorageArray", builder_fn: || Box::new(RelatedStorageArrayFields::new()) }),
        ("ArrayOfRemoteVsanServerClusterConfig", TypeInfo::Value { name: "ArrayOfRemoteVsanServerClusterConfig", make_deserializer: || make_deser_with::<Vec<super::structs::RemoteVsanServerClusterConfig>>(wrap_array_of_remote_vsan_server_cluster_config), from_value: |v| from_val_with::<Vec<super::structs::RemoteVsanServerClusterConfig>>(v, wrap_array_of_remote_vsan_server_cluster_config) }),
        ("VirtualPCIPassthroughPluginBackingInfo", TypeInfo::Object { name: "VirtualPCIPassthroughPluginBackingInfo", builder_fn: || Box::new(VirtualPciPassthroughPluginBackingInfoFields::new()) }),
        ("CnsEntityMetadata", TypeInfo::Object { name: "CnsEntityMetadata", builder_fn: || Box::new(CnsEntityMetadataFields::new()) }),
        ("FaultToleranceNotLicensed", TypeInfo::Object { name: "FaultToleranceNotLicensed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FaultToleranceNotLicensed))) }),
        ("VmfsUnmapBandwidthSpec", TypeInfo::Object { name: "VmfsUnmapBandwidthSpec", builder_fn: || Box::new(VmfsUnmapBandwidthSpecFields::new()) }),
        ("VsanHostDeviceInfo", TypeInfo::Object { name: "VsanHostDeviceInfo", builder_fn: || Box::new(VsanHostDeviceInfoFields::new()) }),
        ("DatastorePrincipalConfigured", TypeInfo::Object { name: "DatastorePrincipalConfigured", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastorePrincipalConfigured))) }),
        ("ArrayOfMigrationEvent", TypeInfo::Value { name: "ArrayOfMigrationEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_migration_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_migration_event) }),
        ("ArrayOfVmAcquiredTicketEvent", TypeInfo::Value { name: "ArrayOfVmAcquiredTicketEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_acquired_ticket_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_acquired_ticket_event) }),
        ("ArrayOfDynamicProperty", TypeInfo::Value { name: "ArrayOfDynamicProperty", make_deserializer: || make_deser_with::<Vec<super::structs::DynamicProperty>>(wrap_array_of_dynamic_property), from_value: |v| from_val_with::<Vec<super::structs::DynamicProperty>>(v, wrap_array_of_dynamic_property) }),
        ("ArrayOfSSLVerifyFault", TypeInfo::Value { name: "ArrayOfSSLVerifyFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ssl_verify_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ssl_verify_fault) }),
        ("VirtualSCSIController", TypeInfo::Object { name: "VirtualSCSIController", builder_fn: || Box::new(VirtualScsiControllerFields::new()) }),
        ("ArrayOfDatastorePrincipalConfigured", TypeInfo::Value { name: "ArrayOfDatastorePrincipalConfigured", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_principal_configured), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_principal_configured) }),
        ("ArrayOfDasHeartbeatDatastoreInfo", TypeInfo::Value { name: "ArrayOfDasHeartbeatDatastoreInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DasHeartbeatDatastoreInfo>>(wrap_array_of_das_heartbeat_datastore_info), from_value: |v| from_val_with::<Vec<super::structs::DasHeartbeatDatastoreInfo>>(v, wrap_array_of_das_heartbeat_datastore_info) }),
        ("ArrayOfLicenseExpiredEvent", TypeInfo::Value { name: "ArrayOfLicenseExpiredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_license_expired_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_license_expired_event) }),
        ("ArrayOfPatchMetadataNotFound", TypeInfo::Value { name: "ArrayOfPatchMetadataNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_patch_metadata_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_patch_metadata_not_found) }),
        ("ArrayOfNotSupportedHostInCluster", TypeInfo::Value { name: "ArrayOfNotSupportedHostInCluster", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_host_in_cluster), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_host_in_cluster) }),
        ("FcStoragePort", TypeInfo::Object { name: "FcStoragePort", builder_fn: || Box::new(FcStoragePortFields::new()) }),
        ("DirectPathProfileManagerTargetHost", TypeInfo::Object { name: "DirectPathProfileManagerTargetHost", builder_fn: || Box::new(DirectPathProfileManagerTargetHostFields::new()) }),
        ("TargetGroupMemberInfo", TypeInfo::Object { name: "TargetGroupMemberInfo", builder_fn: || Box::new(TargetGroupMemberInfoFields::new()) }),
        ("ArrayOfInvalidGuestLogin", TypeInfo::Value { name: "ArrayOfInvalidGuestLogin", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_guest_login), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_guest_login) }),
        ("ArrayOfClusterFixedSizeSlotPolicy", TypeInfo::Value { name: "ArrayOfClusterFixedSizeSlotPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterFixedSizeSlotPolicy>>(wrap_array_of_cluster_fixed_size_slot_policy), from_value: |v| from_val_with::<Vec<super::structs::ClusterFixedSizeSlotPolicy>>(v, wrap_array_of_cluster_fixed_size_slot_policy) }),
        ("ArrayOfGroupInfo", TypeInfo::Value { name: "ArrayOfGroupInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_group_info_array)), from_value: |v| cast_to_group_info_array(from_value(v)?) }),
        ("ArrayOfHostTpmCommandEventDetails", TypeInfo::Value { name: "ArrayOfHostTpmCommandEventDetails", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmCommandEventDetails>>(wrap_array_of_host_tpm_command_event_details), from_value: |v| from_val_with::<Vec<super::structs::HostTpmCommandEventDetails>>(v, wrap_array_of_host_tpm_command_event_details) }),
        ("VsanObjectProfileInfo", TypeInfo::Object { name: "VsanObjectProfileInfo", builder_fn: || Box::new(VsanObjectProfileInfoFields::new()) }),
        ("ArrayOfHostServiceSourcePackage", TypeInfo::Value { name: "ArrayOfHostServiceSourcePackage", make_deserializer: || make_deser_with::<Vec<super::structs::HostServiceSourcePackage>>(wrap_array_of_host_service_source_package), from_value: |v| from_val_with::<Vec<super::structs::HostServiceSourcePackage>>(v, wrap_array_of_host_service_source_package) }),
        ("HostLowLevelProvisioningManagerSnapshotLayoutSpec", TypeInfo::Object { name: "HostLowLevelProvisioningManagerSnapshotLayoutSpec", builder_fn: || Box::new(HostLowLevelProvisioningManagerSnapshotLayoutSpecFields::new()) }),
        ("SolutionsVMNetworkMapping", TypeInfo::Object { name: "SolutionsVMNetworkMapping", builder_fn: || Box::new(SolutionsVmNetworkMappingFields::new()) }),
        ("ArrayOfPermissionUpdatedEvent", TypeInfo::Value { name: "ArrayOfPermissionUpdatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_permission_updated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_permission_updated_event) }),
        ("StorageDrsCannotMoveVmWithNoFilesInLayout", TypeInfo::Object { name: "StorageDrsCannotMoveVmWithNoFilesInLayout", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsCannotMoveVmWithNoFilesInLayout))) }),
        ("ManagedHostNotReachable", TypeInfo::Object { name: "ManagedHostNotReachable", builder_fn: || Box::new(ManagedHostNotReachableFields::new()) }),
        ("ArrayOfVirtualMachineMksTicket", TypeInfo::Value { name: "ArrayOfVirtualMachineMksTicket", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineMksTicket>>(wrap_array_of_virtual_machine_mks_ticket), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineMksTicket>>(v, wrap_array_of_virtual_machine_mks_ticket) }),
        ("CustomizationLinuxIdentityFailed", TypeInfo::Object { name: "CustomizationLinuxIdentityFailed", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomizationLinuxIdentityFailed))) }),
        ("VchaNodeRuntimeInfo", TypeInfo::Object { name: "VchaNodeRuntimeInfo", builder_fn: || Box::new(VchaNodeRuntimeInfoFields::new()) }),
        ("EamAppFault", TypeInfo::Object { name: "EamAppFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EamAppFault))) }),
        ("ArrayOfVmfsDatastoreExtendSpec", TypeInfo::Value { name: "ArrayOfVmfsDatastoreExtendSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VmfsDatastoreExtendSpec>>(wrap_array_of_vmfs_datastore_extend_spec), from_value: |v| from_val_with::<Vec<super::structs::VmfsDatastoreExtendSpec>>(v, wrap_array_of_vmfs_datastore_extend_spec) }),
        ("ArrayOfVmWrongResourcePool", TypeInfo::Value { name: "ArrayOfVmWrongResourcePool", make_deserializer: || make_deser_with::<Vec<super::structs::VmWrongResourcePool>>(wrap_array_of_vm_wrong_resource_pool), from_value: |v| from_val_with::<Vec<super::structs::VmWrongResourcePool>>(v, wrap_array_of_vm_wrong_resource_pool) }),
        ("VMotionNotLicensed", TypeInfo::Object { name: "VMotionNotLicensed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VMotionNotLicensed))) }),
        ("ArrayOfVsanFileShareSnapshotQuerySpec", TypeInfo::Value { name: "ArrayOfVsanFileShareSnapshotQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShareSnapshotQuerySpec>>(wrap_array_of_vsan_file_share_snapshot_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShareSnapshotQuerySpec>>(v, wrap_array_of_vsan_file_share_snapshot_query_spec) }),
        ("ArrayOfGuestQuiesceEndGuestQuiesceError", TypeInfo::Value { name: "ArrayOfGuestQuiesceEndGuestQuiesceError", make_deserializer: || make_deser_with::<Vec<super::enums::GuestQuiesceEndGuestQuiesceErrorEnum>>(wrap_array_of_guest_quiesce_end_guest_quiesce_error), from_value: |v| from_val_with::<Vec<super::enums::GuestQuiesceEndGuestQuiesceErrorEnum>>(v, wrap_array_of_guest_quiesce_end_guest_quiesce_error) }),
        ("VMwareDVSTeamingHealthCheckResult", TypeInfo::Object { name: "VMwareDVSTeamingHealthCheckResult", builder_fn: || Box::new(VMwareDvsTeamingHealthCheckResultFields::new()) }),
        ("ArrayOfInvalidDatastorePath", TypeInfo::Value { name: "ArrayOfInvalidDatastorePath", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_datastore_path), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_datastore_path) }),
        ("ArrayOfManagedObjectReference", TypeInfo::Value { name: "ArrayOfManagedObjectReference", make_deserializer: || make_deser_with::<Vec<super::structs::ManagedObjectReference>>(wrap_array_of_managed_object_reference), from_value: |v| from_val_with::<Vec<super::structs::ManagedObjectReference>>(v, wrap_array_of_managed_object_reference) }),
        ("HostScsiTopologyLun", TypeInfo::Object { name: "HostScsiTopologyLun", builder_fn: || Box::new(HostScsiTopologyLunFields::new()) }),
        ("OvfToXmlUnsupportedElement", TypeInfo::Object { name: "OvfToXmlUnsupportedElement", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfToXmlUnsupportedElement))) }),
        ("VsanRepairObjectsResult", TypeInfo::Object { name: "VsanRepairObjectsResult", builder_fn: || Box::new(VsanRepairObjectsResultFields::new()) }),
        ("ArrayOfVirtualSerialPortThinPrintBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualSerialPortThinPrintBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortThinPrintBackingInfo>>(wrap_array_of_virtual_serial_port_thin_print_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortThinPrintBackingInfo>>(v, wrap_array_of_virtual_serial_port_thin_print_backing_info) }),
        ("ClusterFailoverHostAdmissionControlInfo", TypeInfo::Object { name: "ClusterFailoverHostAdmissionControlInfo", builder_fn: || Box::new(ClusterFailoverHostAdmissionControlInfoFields::new()) }),
        ("ArrayOfVirtualSerialPortPipeBackingOption", TypeInfo::Value { name: "ArrayOfVirtualSerialPortPipeBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortPipeBackingOption>>(wrap_array_of_virtual_serial_port_pipe_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortPipeBackingOption>>(v, wrap_array_of_virtual_serial_port_pipe_backing_option) }),
        ("HostPatchManagerLocator", TypeInfo::Object { name: "HostPatchManagerLocator", builder_fn: || Box::new(HostPatchManagerLocatorFields::new()) }),
        ("MigrationWarningEvent", TypeInfo::Object { name: "MigrationWarningEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::MigrationWarningEvent))) }),
        ("GatewayNotReachable", TypeInfo::Object { name: "GatewayNotReachable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GatewayNotReachable))) }),
        ("ArrayOfPlacementSpec", TypeInfo::Value { name: "ArrayOfPlacementSpec", make_deserializer: || make_deser_with::<Vec<super::structs::PlacementSpec>>(wrap_array_of_placement_spec), from_value: |v| from_val_with::<Vec<super::structs::PlacementSpec>>(v, wrap_array_of_placement_spec) }),
        ("OvfUnsupportedPackage", TypeInfo::Object { name: "OvfUnsupportedPackage", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedPackage))) }),
        ("ArrayOfCryptoManagerKmipServerStatus", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipServerStatus", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerKmipServerStatus>>(wrap_array_of_crypto_manager_kmip_server_status), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerKmipServerStatus>>(v, wrap_array_of_crypto_manager_kmip_server_status) }),
        ("ArrayOfManagedEntityEventArgument", TypeInfo::Value { name: "ArrayOfManagedEntityEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::ManagedEntityEventArgument>>(wrap_array_of_managed_entity_event_argument), from_value: |v| from_val_with::<Vec<super::structs::ManagedEntityEventArgument>>(v, wrap_array_of_managed_entity_event_argument) }),
        ("TaskDescription", TypeInfo::Object { name: "TaskDescription", builder_fn: || Box::new(TaskDescriptionFields::new()) }),
        ("ArrayOfVsanClusterNetworkHealthResult", TypeInfo::Value { name: "ArrayOfVsanClusterNetworkHealthResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterNetworkHealthResult>>(wrap_array_of_vsan_cluster_network_health_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterNetworkHealthResult>>(v, wrap_array_of_vsan_cluster_network_health_result) }),
        ("ArrayOfRetrieveResult", TypeInfo::Value { name: "ArrayOfRetrieveResult", make_deserializer: || make_deser_with::<Vec<super::structs::RetrieveResult>>(wrap_array_of_retrieve_result), from_value: |v| from_val_with::<Vec<super::structs::RetrieveResult>>(v, wrap_array_of_retrieve_result) }),
        ("VirtualVmxnetOption", TypeInfo::Object { name: "VirtualVmxnetOption", builder_fn: || Box::new(VirtualVmxnetOptionFields::new()) }),
        ("ArrayOfExitMaintenanceModeEvent", TypeInfo::Value { name: "ArrayOfExitMaintenanceModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_exit_maintenance_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_exit_maintenance_mode_event) }),
        ("ArrayOfNoLicenseEvent", TypeInfo::Value { name: "ArrayOfNoLicenseEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_no_license_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_no_license_event) }),
        ("RemoteVsanServerClusterConfig", TypeInfo::Object { name: "RemoteVsanServerClusterConfig", builder_fn: || Box::new(RemoteVsanServerClusterConfigFields::new()) }),
        ("ArrayOfVsanClusterCoreConfig", TypeInfo::Value { name: "ArrayOfVsanClusterCoreConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterCoreConfig>>(wrap_array_of_vsan_cluster_core_config), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterCoreConfig>>(v, wrap_array_of_vsan_cluster_core_config) }),
        ("HostSpbmPolicyInfo", TypeInfo::Object { name: "HostSpbmPolicyInfo", builder_fn: || Box::new(HostSpbmPolicyInfoFields::new()) }),
        ("ArrayOfInvalidConfig", TypeInfo::Value { name: "ArrayOfInvalidConfig", make_deserializer: || make_deser_with::<Vec<super::structs::InvalidConfig>>(wrap_array_of_invalid_config), from_value: |v| from_val_with::<Vec<super::structs::InvalidConfig>>(v, wrap_array_of_invalid_config) }),
        ("ArrayOfVsanEncryptionHealthSummary", TypeInfo::Value { name: "ArrayOfVsanEncryptionHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanEncryptionHealthSummary>>(wrap_array_of_vsan_encryption_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanEncryptionHealthSummary>>(v, wrap_array_of_vsan_encryption_health_summary) }),
        ("VsanUpgradeSystemUpgradeHistoryStoragePoolOp", TypeInfo::Object { name: "VsanUpgradeSystemUpgradeHistoryStoragePoolOp", builder_fn: || Box::new(VsanUpgradeSystemUpgradeHistoryStoragePoolOpFields::new()) }),
        ("HostIpmiInfo", TypeInfo::Object { name: "HostIpmiInfo", builder_fn: || Box::new(HostIpmiInfoFields::new()) }),
        ("ArrayOfReplicationVmProgressInfo", TypeInfo::Value { name: "ArrayOfReplicationVmProgressInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicationVmProgressInfo>>(wrap_array_of_replication_vm_progress_info), from_value: |v| from_val_with::<Vec<super::structs::ReplicationVmProgressInfo>>(v, wrap_array_of_replication_vm_progress_info) }),
        ("ArrayOfVmUnsupportedStartingEvent", TypeInfo::Value { name: "ArrayOfVmUnsupportedStartingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_unsupported_starting_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_unsupported_starting_event) }),
        ("DrsExitedStandbyModeEvent", TypeInfo::Object { name: "DrsExitedStandbyModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsExitedStandbyModeEvent))) }),
        ("HostCertificateManagerCertificateSpec", TypeInfo::Object { name: "HostCertificateManagerCertificateSpec", builder_fn: || Box::new(HostCertificateManagerCertificateSpecFields::new()) }),
        ("AlreadyDone", TypeInfo::Object { name: "AlreadyDone", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AlreadyDone))) }),
        ("OvfFileItem", TypeInfo::Object { name: "OvfFileItem", builder_fn: || Box::new(OvfFileItemFields::new()) }),
        ("ArrayOfHostPlugStoreTopologyDevice", TypeInfo::Value { name: "ArrayOfHostPlugStoreTopologyDevice", make_deserializer: || make_deser_with::<Vec<super::structs::HostPlugStoreTopologyDevice>>(wrap_array_of_host_plug_store_topology_device), from_value: |v| from_val_with::<Vec<super::structs::HostPlugStoreTopologyDevice>>(v, wrap_array_of_host_plug_store_topology_device) }),
        ("ArrayOfTargetGroupInfo", TypeInfo::Value { name: "ArrayOfTargetGroupInfo", make_deserializer: || make_deser_with::<Vec<super::structs::TargetGroupInfo>>(wrap_array_of_target_group_info), from_value: |v| from_val_with::<Vec<super::structs::TargetGroupInfo>>(v, wrap_array_of_target_group_info) }),
        ("ArrayOfMissingController", TypeInfo::Value { name: "ArrayOfMissingController", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_missing_controller), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_missing_controller) }),
        ("ArrayOfHostStorageSystemDiskLocatorLedResult", TypeInfo::Value { name: "ArrayOfHostStorageSystemDiskLocatorLedResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostStorageSystemDiskLocatorLedResult>>(wrap_array_of_host_storage_system_disk_locator_led_result), from_value: |v| from_val_with::<Vec<super::structs::HostStorageSystemDiskLocatorLedResult>>(v, wrap_array_of_host_storage_system_disk_locator_led_result) }),
        ("VsanHclReleaseConstraint", TypeInfo::Object { name: "VsanHclReleaseConstraint", builder_fn: || Box::new(VsanHclReleaseConstraintFields::new()) }),
        ("NetIpConfigInfo", TypeInfo::Object { name: "NetIpConfigInfo", builder_fn: || Box::new(NetIpConfigInfoFields::new()) }),
        ("ArrayOfIscsiFaultVnicHasActivePaths", TypeInfo::Value { name: "ArrayOfIscsiFaultVnicHasActivePaths", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_vnic_has_active_paths), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_vnic_has_active_paths) }),
        ("VibRequiresManualUninstallation", TypeInfo::Object { name: "VibRequiresManualUninstallation", builder_fn: || Box::new(VibRequiresManualUninstallationFields::new()) }),
        ("DefaultDatastorePolicySelectionInfo", TypeInfo::Object { name: "DefaultDatastorePolicySelectionInfo", builder_fn: || Box::new(DefaultDatastorePolicySelectionInfoFields::new()) }),
        ("ArrayOfHostSecuritySpec", TypeInfo::Value { name: "ArrayOfHostSecuritySpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostSecuritySpec>>(wrap_array_of_host_security_spec), from_value: |v| from_val_with::<Vec<super::structs::HostSecuritySpec>>(v, wrap_array_of_host_security_spec) }),
        ("ArrayOfComputeResourceConfigSpec", TypeInfo::Value { name: "ArrayOfComputeResourceConfigSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_compute_resource_config_spec_array)), from_value: |v| cast_to_compute_resource_config_spec_array(from_value(v)?) }),
        ("VmfsDatastoreSpec", TypeInfo::Object { name: "VmfsDatastoreSpec", builder_fn: || Box::new(VmfsDatastoreSpecFields::new()) }),
        ("ArrayOfDrsDisabledEvent", TypeInfo::Value { name: "ArrayOfDrsDisabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_disabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_disabled_event) }),
        ("ArrayOfVsanNetworkConfigPnicSpeedInconsistencyIssue", TypeInfo::Value { name: "ArrayOfVsanNetworkConfigPnicSpeedInconsistencyIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkConfigPnicSpeedInconsistencyIssue>>(wrap_array_of_vsan_network_config_pnic_speed_inconsistency_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkConfigPnicSpeedInconsistencyIssue>>(v, wrap_array_of_vsan_network_config_pnic_speed_inconsistency_issue) }),
        ("ArrayOfDpuStatusInfoOperationalInfo", TypeInfo::Value { name: "ArrayOfDpuStatusInfoOperationalInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DpuStatusInfoOperationalInfo>>(wrap_array_of_dpu_status_info_operational_info), from_value: |v| from_val_with::<Vec<super::structs::DpuStatusInfoOperationalInfo>>(v, wrap_array_of_dpu_status_info_operational_info) }),
        ("ArrayOfProfileMetadataProfileOperationMessage", TypeInfo::Value { name: "ArrayOfProfileMetadataProfileOperationMessage", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileMetadataProfileOperationMessage>>(wrap_array_of_profile_metadata_profile_operation_message), from_value: |v| from_val_with::<Vec<super::structs::ProfileMetadataProfileOperationMessage>>(v, wrap_array_of_profile_metadata_profile_operation_message) }),
        ("ArrayOfVirtualMachineMetadataManagerVmMetadataInput", TypeInfo::Value { name: "ArrayOfVirtualMachineMetadataManagerVmMetadataInput", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineMetadataManagerVmMetadataInput>>(wrap_array_of_virtual_machine_metadata_manager_vm_metadata_input), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineMetadataManagerVmMetadataInput>>(v, wrap_array_of_virtual_machine_metadata_manager_vm_metadata_input) }),
        ("HostVMotionNetConfig", TypeInfo::Object { name: "HostVMotionNetConfig", builder_fn: || Box::new(HostVMotionNetConfigFields::new()) }),
        ("VirtualMachineFileLayoutExDiskLayout", TypeInfo::Object { name: "VirtualMachineFileLayoutExDiskLayout", builder_fn: || Box::new(VirtualMachineFileLayoutExDiskLayoutFields::new()) }),
        ("ArrayOfVsanDataDrivenAPIAction", TypeInfo::Value { name: "ArrayOfVsanDataDrivenAPIAction", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDataDrivenApiAction>>(wrap_array_of_vsan_data_driven_api_action), from_value: |v| from_val_with::<Vec<super::structs::VsanDataDrivenApiAction>>(v, wrap_array_of_vsan_data_driven_api_action) }),
        ("ArrayOfMissingObject", TypeInfo::Value { name: "ArrayOfMissingObject", make_deserializer: || make_deser_with::<Vec<super::structs::MissingObject>>(wrap_array_of_missing_object), from_value: |v| from_val_with::<Vec<super::structs::MissingObject>>(v, wrap_array_of_missing_object) }),
        ("ArrayOfGuestRegKeyRecordSpec", TypeInfo::Value { name: "ArrayOfGuestRegKeyRecordSpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegKeyRecordSpec>>(wrap_array_of_guest_reg_key_record_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegKeyRecordSpec>>(v, wrap_array_of_guest_reg_key_record_spec) }),
        ("HostDisconnectedEvent", TypeInfo::Object { name: "HostDisconnectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostDisconnectedEvent))) }),
        ("ArrayOfVsanHigherObjectsPresentDuringDowngradeIssue", TypeInfo::Value { name: "ArrayOfVsanHigherObjectsPresentDuringDowngradeIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHigherObjectsPresentDuringDowngradeIssue>>(wrap_array_of_vsan_higher_objects_present_during_downgrade_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanHigherObjectsPresentDuringDowngradeIssue>>(v, wrap_array_of_vsan_higher_objects_present_during_downgrade_issue) }),
        ("ArrayOfVsanHostPortConfigEx", TypeInfo::Value { name: "ArrayOfVsanHostPortConfigEx", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostPortConfigEx>>(wrap_array_of_vsan_host_port_config_ex), from_value: |v| from_val_with::<Vec<super::structs::VsanHostPortConfigEx>>(v, wrap_array_of_vsan_host_port_config_ex) }),
        ("ArrayOfDvpgRestoreEvent", TypeInfo::Value { name: "ArrayOfDvpgRestoreEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvpg_restore_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvpg_restore_event) }),
        ("ProfileProfileStructure", TypeInfo::Object { name: "ProfileProfileStructure", builder_fn: || Box::new(ProfileProfileStructureFields::new()) }),
        ("ArrayOfVirtualMachineSerialInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineSerialInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineSerialInfo>>(wrap_array_of_virtual_machine_serial_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineSerialInfo>>(v, wrap_array_of_virtual_machine_serial_info) }),
        ("DvsCopyNetworkRuleAction", TypeInfo::Object { name: "DvsCopyNetworkRuleAction", builder_fn: || Box::new(DvsCopyNetworkRuleActionFields::new()) }),
        ("VirtualMachineConfigSummary", TypeInfo::Object { name: "VirtualMachineConfigSummary", builder_fn: || Box::new(VirtualMachineConfigSummaryFields::new()) }),
        ("HttpNfcLeaseDeviceUrl", TypeInfo::Object { name: "HttpNfcLeaseDeviceUrl", builder_fn: || Box::new(HttpNfcLeaseDeviceUrlFields::new()) }),
        ("ArrayOfVslmCreateSpecDiskFileBackingSpec", TypeInfo::Value { name: "ArrayOfVslmCreateSpecDiskFileBackingSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VslmCreateSpecDiskFileBackingSpec>>(wrap_array_of_vslm_create_spec_disk_file_backing_spec), from_value: |v| from_val_with::<Vec<super::structs::VslmCreateSpecDiskFileBackingSpec>>(v, wrap_array_of_vslm_create_spec_disk_file_backing_spec) }),
        ("ArrayOfDeviceUnsupportedForVmVersion", TypeInfo::Value { name: "ArrayOfDeviceUnsupportedForVmVersion", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_device_unsupported_for_vm_version), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_device_unsupported_for_vm_version) }),
        ("ArrayOfHostLocalFileSystemVolume", TypeInfo::Value { name: "ArrayOfHostLocalFileSystemVolume", make_deserializer: || make_deser_with::<Vec<super::structs::HostLocalFileSystemVolume>>(wrap_array_of_host_local_file_system_volume), from_value: |v| from_val_with::<Vec<super::structs::HostLocalFileSystemVolume>>(v, wrap_array_of_host_local_file_system_volume) }),
        ("ArrayOfVirtualDeviceURIBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDeviceURIBackingInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_uri_backing_info_array)), from_value: |v| cast_to_virtual_device_uri_backing_info_array(from_value(v)?) }),
        ("ArrayOfHostPrimaryAgentNotShortNameEvent", TypeInfo::Value { name: "ArrayOfHostPrimaryAgentNotShortNameEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_primary_agent_not_short_name_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_primary_agent_not_short_name_event) }),
        ("EventManagerViewByStartId", TypeInfo::Object { name: "EventManagerViewByStartId", builder_fn: || Box::new(EventManagerViewByStartIdFields::new()) }),
        ("VsanJsonFilterRule", TypeInfo::Object { name: "VsanJsonFilterRule", builder_fn: || Box::new(VsanJsonFilterRuleFields::new()) }),
        ("MigrationErrorEvent", TypeInfo::Object { name: "MigrationErrorEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::MigrationErrorEvent))) }),
        ("ArrayOfVsanUpgradeSystemNetworkPartitionIssue", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemNetworkPartitionIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemNetworkPartitionIssue>>(wrap_array_of_vsan_upgrade_system_network_partition_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemNetworkPartitionIssue>>(v, wrap_array_of_vsan_upgrade_system_network_partition_issue) }),
        ("ArrayOfCnsContainerCluster", TypeInfo::Value { name: "ArrayOfCnsContainerCluster", make_deserializer: || make_deser_with::<Vec<super::structs::CnsContainerCluster>>(wrap_array_of_cns_container_cluster), from_value: |v| from_val_with::<Vec<super::structs::CnsContainerCluster>>(v, wrap_array_of_cns_container_cluster) }),
        ("ArrayOfPMemDatastoreInfo", TypeInfo::Value { name: "ArrayOfPMemDatastoreInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PMemDatastoreInfo>>(wrap_array_of_p_mem_datastore_info), from_value: |v| from_val_with::<Vec<super::structs::PMemDatastoreInfo>>(v, wrap_array_of_p_mem_datastore_info) }),
        ("ArrayOfVsanHealthTroubleshooting", TypeInfo::Value { name: "ArrayOfVsanHealthTroubleshooting", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthTroubleshooting>>(wrap_array_of_vsan_health_troubleshooting), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthTroubleshooting>>(v, wrap_array_of_vsan_health_troubleshooting) }),
        ("ArrayOfVmSecondaryEnabledEvent", TypeInfo::Value { name: "ArrayOfVmSecondaryEnabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_secondary_enabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_secondary_enabled_event) }),
        ("ArrayOfHostSubSpecificationDeleteEvent", TypeInfo::Value { name: "ArrayOfHostSubSpecificationDeleteEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_sub_specification_delete_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_sub_specification_delete_event) }),
        ("VirtualMachineBootOptionsBootableEthernetDevice", TypeInfo::Object { name: "VirtualMachineBootOptionsBootableEthernetDevice", builder_fn: || Box::new(VirtualMachineBootOptionsBootableEthernetDeviceFields::new()) }),
        ("ArrayOfTaskFilterSpec", TypeInfo::Value { name: "ArrayOfTaskFilterSpec", make_deserializer: || make_deser_with::<Vec<super::structs::TaskFilterSpec>>(wrap_array_of_task_filter_spec), from_value: |v| from_val_with::<Vec<super::structs::TaskFilterSpec>>(v, wrap_array_of_task_filter_spec) }),
        ("ArrayOfNvdimmDimmInfo", TypeInfo::Value { name: "ArrayOfNvdimmDimmInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmDimmInfo>>(wrap_array_of_nvdimm_dimm_info), from_value: |v| from_val_with::<Vec<super::structs::NvdimmDimmInfo>>(v, wrap_array_of_nvdimm_dimm_info) }),
        ("PowerSystemInfo", TypeInfo::Object { name: "PowerSystemInfo", builder_fn: || Box::new(PowerSystemInfoFields::new()) }),
        ("ArrayOfDVSConfigInfo", TypeInfo::Value { name: "ArrayOfDVSConfigInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_config_info_array)), from_value: |v| cast_to_dvs_config_info_array(from_value(v)?) }),
        ("InactiveProvider", TypeInfo::Object { name: "InactiveProvider", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InactiveProvider))) }),
        ("ArrayOfHostLowLevelProvisioningManagerSnapshotLayoutSpec", TypeInfo::Value { name: "ArrayOfHostLowLevelProvisioningManagerSnapshotLayoutSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostLowLevelProvisioningManagerSnapshotLayoutSpec>>(wrap_array_of_host_low_level_provisioning_manager_snapshot_layout_spec), from_value: |v| from_val_with::<Vec<super::structs::HostLowLevelProvisioningManagerSnapshotLayoutSpec>>(v, wrap_array_of_host_low_level_provisioning_manager_snapshot_layout_spec) }),
        ("IscsiFaultVnicNotFound", TypeInfo::Object { name: "IscsiFaultVnicNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultVnicNotFound))) }),
        ("ArrayOfCanceledHostOperationEvent", TypeInfo::Value { name: "ArrayOfCanceledHostOperationEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_canceled_host_operation_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_canceled_host_operation_event) }),
        ("VMwareDVSConfigSpec", TypeInfo::Object { name: "VMwareDVSConfigSpec", builder_fn: || Box::new(VMwareDvsConfigSpecFields::new()) }),
        ("SnapshotSelectionSpec", TypeInfo::Object { name: "SnapshotSelectionSpec", builder_fn: || Box::new(SnapshotSelectionSpecFields::new()) }),
        ("ArrayOfClusterAgentVmPoweredOff", TypeInfo::Value { name: "ArrayOfClusterAgentVmPoweredOff", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_agent_vm_powered_off_array)), from_value: |v| cast_to_cluster_agent_vm_powered_off_array(from_value(v)?) }),
        ("ArrayOfProfileParameterMetadata", TypeInfo::Value { name: "ArrayOfProfileParameterMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileParameterMetadata>>(wrap_array_of_profile_parameter_metadata), from_value: |v| from_val_with::<Vec<super::structs::ProfileParameterMetadata>>(v, wrap_array_of_profile_parameter_metadata) }),
        ("ArrayOfApplyStorageRecommendationResult", TypeInfo::Value { name: "ArrayOfApplyStorageRecommendationResult", make_deserializer: || make_deser_with::<Vec<super::structs::ApplyStorageRecommendationResult>>(wrap_array_of_apply_storage_recommendation_result), from_value: |v| from_val_with::<Vec<super::structs::ApplyStorageRecommendationResult>>(v, wrap_array_of_apply_storage_recommendation_result) }),
        ("SmsResourceInUse", TypeInfo::Object { name: "SmsResourceInUse", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SmsResourceInUse))) }),
        ("ArrayOfVsanNetworkConfigBaseIssue", TypeInfo::Value { name: "ArrayOfVsanNetworkConfigBaseIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_network_config_base_issue_array)), from_value: |v| cast_to_vsan_network_config_base_issue_array(from_value(v)?) }),
        ("HostGraphicsConfigDeviceType", TypeInfo::Object { name: "HostGraphicsConfigDeviceType", builder_fn: || Box::new(HostGraphicsConfigDeviceTypeFields::new()) }),
        ("SAMLTokenAuthentication", TypeInfo::Object { name: "SAMLTokenAuthentication", builder_fn: || Box::new(SamlTokenAuthenticationFields::new()) }),
        ("VsanHostHwDeviceId", TypeInfo::Object { name: "VsanHostHwDeviceId", builder_fn: || Box::new(VsanHostHwDeviceIdFields::new()) }),
        ("LunHbaAssociation", TypeInfo::Object { name: "LunHbaAssociation", builder_fn: || Box::new(LunHbaAssociationFields::new()) }),
        ("HostCnxFailedBadVersionEvent", TypeInfo::Object { name: "HostCnxFailedBadVersionEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedBadVersionEvent))) }),
        ("ArrayOfDisallowedOperationOnFailoverHost", TypeInfo::Value { name: "ArrayOfDisallowedOperationOnFailoverHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disallowed_operation_on_failover_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disallowed_operation_on_failover_host) }),
        ("SolutionsComplianceResult", TypeInfo::Object { name: "SolutionsComplianceResult", builder_fn: || Box::new(SolutionsComplianceResultFields::new()) }),
        ("ArrayOfVsanHostResourceCheckResult", TypeInfo::Value { name: "ArrayOfVsanHostResourceCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostResourceCheckResult>>(wrap_array_of_vsan_host_resource_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanHostResourceCheckResult>>(v, wrap_array_of_vsan_host_resource_check_result) }),
        ("ArrayOfVsanResourceCheckVsanResult", TypeInfo::Value { name: "ArrayOfVsanResourceCheckVsanResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanResourceCheckVsanResult>>(wrap_array_of_vsan_resource_check_vsan_result), from_value: |v| from_val_with::<Vec<super::structs::VsanResourceCheckVsanResult>>(v, wrap_array_of_vsan_resource_check_vsan_result) }),
        ("ReplicationGroupData", TypeInfo::Object { name: "ReplicationGroupData", builder_fn: || Box::new(ReplicationGroupDataFields::new()) }),
        ("ArrayOfVirtualSCSIPassthroughDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualSCSIPassthroughDeviceBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualScsiPassthroughDeviceBackingOption>>(wrap_array_of_virtual_scsi_passthrough_device_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualScsiPassthroughDeviceBackingOption>>(v, wrap_array_of_virtual_scsi_passthrough_device_backing_option) }),
        ("ArrayOfOvfCreateImportSpecResult", TypeInfo::Value { name: "ArrayOfOvfCreateImportSpecResult", make_deserializer: || make_deser_with::<Vec<super::structs::OvfCreateImportSpecResult>>(wrap_array_of_ovf_create_import_spec_result), from_value: |v| from_val_with::<Vec<super::structs::OvfCreateImportSpecResult>>(v, wrap_array_of_ovf_create_import_spec_result) }),
        ("ArrayOfVsanUpgradeSystemHostsDisconnectedIssue", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemHostsDisconnectedIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemHostsDisconnectedIssue>>(wrap_array_of_vsan_upgrade_system_hosts_disconnected_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemHostsDisconnectedIssue>>(v, wrap_array_of_vsan_upgrade_system_hosts_disconnected_issue) }),
        ("ArrayOfHostAccessControlEntry", TypeInfo::Value { name: "ArrayOfHostAccessControlEntry", make_deserializer: || make_deser_with::<Vec<super::structs::HostAccessControlEntry>>(wrap_array_of_host_access_control_entry), from_value: |v| from_val_with::<Vec<super::structs::HostAccessControlEntry>>(v, wrap_array_of_host_access_control_entry) }),
        ("DistributedVirtualSwitchPortConnection", TypeInfo::Object { name: "DistributedVirtualSwitchPortConnection", builder_fn: || Box::new(DistributedVirtualSwitchPortConnectionFields::new()) }),
        ("NotAuthorized", TypeInfo::Object { name: "NotAuthorized", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotAuthorized))) }),
        ("DvsFault", TypeInfo::Object { name: "DvsFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DvsFault))) }),
        ("ArrayOfVsanDiagnosticsThreshold", TypeInfo::Value { name: "ArrayOfVsanDiagnosticsThreshold", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDiagnosticsThreshold>>(wrap_array_of_vsan_diagnostics_threshold), from_value: |v| from_val_with::<Vec<super::structs::VsanDiagnosticsThreshold>>(v, wrap_array_of_vsan_diagnostics_threshold) }),
        ("VirtualEnsoniq1371Option", TypeInfo::Object { name: "VirtualEnsoniq1371Option", builder_fn: || Box::new(VirtualEnsoniq1371OptionFields::new()) }),
        ("ArrayOfVsanWitnessHostConfig", TypeInfo::Value { name: "ArrayOfVsanWitnessHostConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanWitnessHostConfig>>(wrap_array_of_vsan_witness_host_config), from_value: |v| from_val_with::<Vec<super::structs::VsanWitnessHostConfig>>(v, wrap_array_of_vsan_witness_host_config) }),
        ("ArrayOfVirtualSriovEthernetCardOption", TypeInfo::Value { name: "ArrayOfVirtualSriovEthernetCardOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSriovEthernetCardOption>>(wrap_array_of_virtual_sriov_ethernet_card_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSriovEthernetCardOption>>(v, wrap_array_of_virtual_sriov_ethernet_card_option) }),
        ("ArrayOfPbmCapabilityDiscreteSet", TypeInfo::Value { name: "ArrayOfPbmCapabilityDiscreteSet", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityDiscreteSet>>(wrap_array_of_pbm_capability_discrete_set), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityDiscreteSet>>(v, wrap_array_of_pbm_capability_discrete_set) }),
        ("HostCommunication", TypeInfo::Object { name: "HostCommunication", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostCommunication))) }),
        ("ArrayOfVStorageObjectSnapshotInfoVStorageObjectSnapshot", TypeInfo::Value { name: "ArrayOfVStorageObjectSnapshotInfoVStorageObjectSnapshot", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectSnapshotInfoVStorageObjectSnapshot>>(wrap_array_of_v_storage_object_snapshot_info_v_storage_object_snapshot), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectSnapshotInfoVStorageObjectSnapshot>>(v, wrap_array_of_v_storage_object_snapshot_info_v_storage_object_snapshot) }),
        ("ArrayOfOvfUnsupportedDiskProvisioning", TypeInfo::Value { name: "ArrayOfOvfUnsupportedDiskProvisioning", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_disk_provisioning), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_disk_provisioning) }),
        ("ArrayOfVAppEntityConfigInfo", TypeInfo::Value { name: "ArrayOfVAppEntityConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VAppEntityConfigInfo>>(wrap_array_of_v_app_entity_config_info), from_value: |v| from_val_with::<Vec<super::structs::VAppEntityConfigInfo>>(v, wrap_array_of_v_app_entity_config_info) }),
        ("ArrayOfVMwareVspanSession", TypeInfo::Value { name: "ArrayOfVMwareVspanSession", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareVspanSession>>(wrap_array_of_v_mware_vspan_session), from_value: |v| from_val_with::<Vec<super::structs::VMwareVspanSession>>(v, wrap_array_of_v_mware_vspan_session) }),
        ("ArrayOfGuestAuthAliasInfo", TypeInfo::Value { name: "ArrayOfGuestAuthAliasInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestAuthAliasInfo>>(wrap_array_of_guest_auth_alias_info), from_value: |v| from_val_with::<Vec<super::structs::GuestAuthAliasInfo>>(v, wrap_array_of_guest_auth_alias_info) }),
        ("ArrayOfVirtualFloppyDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualFloppyDeviceBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualFloppyDeviceBackingInfo>>(wrap_array_of_virtual_floppy_device_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualFloppyDeviceBackingInfo>>(v, wrap_array_of_virtual_floppy_device_backing_info) }),
        ("ArrayOfVsanSmartDiskStats", TypeInfo::Value { name: "ArrayOfVsanSmartDiskStats", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSmartDiskStats>>(wrap_array_of_vsan_smart_disk_stats), from_value: |v| from_val_with::<Vec<super::structs::VsanSmartDiskStats>>(v, wrap_array_of_vsan_smart_disk_stats) }),
        ("ProfileMetadataProfileSortSpec", TypeInfo::Object { name: "ProfileMetadataProfileSortSpec", builder_fn: || Box::new(ProfileMetadataProfileSortSpecFields::new()) }),
        ("ArrayOfPbmCapabilityProfileUpdateSpec", TypeInfo::Value { name: "ArrayOfPbmCapabilityProfileUpdateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityProfileUpdateSpec>>(wrap_array_of_pbm_capability_profile_update_spec), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityProfileUpdateSpec>>(v, wrap_array_of_pbm_capability_profile_update_spec) }),
        ("VsanProactiveRebalanceInfo", TypeInfo::Object { name: "VsanProactiveRebalanceInfo", builder_fn: || Box::new(VsanProactiveRebalanceInfoFields::new()) }),
        ("DiskHasPartitions", TypeInfo::Object { name: "DiskHasPartitions", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DiskHasPartitions))) }),
        ("RDMNotSupportedOnDatastore", TypeInfo::Object { name: "RDMNotSupportedOnDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RdmNotSupportedOnDatastore))) }),
        ("VmLogFileInfo", TypeInfo::Object { name: "VmLogFileInfo", builder_fn: || Box::new(VmLogFileInfoFields::new()) }),
        ("ArrayOfVmLogFileQuery", TypeInfo::Value { name: "ArrayOfVmLogFileQuery", make_deserializer: || make_deser_with::<Vec<super::structs::VmLogFileQuery>>(wrap_array_of_vm_log_file_query), from_value: |v| from_val_with::<Vec<super::structs::VmLogFileQuery>>(v, wrap_array_of_vm_log_file_query) }),
        ("ArrayOfVmfsDatastoreSingleExtentOption", TypeInfo::Value { name: "ArrayOfVmfsDatastoreSingleExtentOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vmfs_datastore_single_extent_option_array)), from_value: |v| cast_to_vmfs_datastore_single_extent_option_array(from_value(v)?) }),
        ("ArrayOfInvalidDeviceBacking", TypeInfo::Value { name: "ArrayOfInvalidDeviceBacking", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_device_backing), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_device_backing) }),
        ("ArrayOfFolderExternallyManagedFolderInfo", TypeInfo::Value { name: "ArrayOfFolderExternallyManagedFolderInfo", make_deserializer: || make_deser_with::<Vec<super::structs::FolderExternallyManagedFolderInfo>>(wrap_array_of_folder_externally_managed_folder_info), from_value: |v| from_val_with::<Vec<super::structs::FolderExternallyManagedFolderInfo>>(v, wrap_array_of_folder_externally_managed_folder_info) }),
        ("OvfCpuCompatibilityCheckNotSupported", TypeInfo::Object { name: "OvfCpuCompatibilityCheckNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfCpuCompatibilityCheckNotSupported))) }),
        ("ArrayOfVAppPropertyFault", TypeInfo::Value { name: "ArrayOfVAppPropertyFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_app_property_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_app_property_fault) }),
        ("ArrayOfHostActiveDirectoryInfo", TypeInfo::Value { name: "ArrayOfHostActiveDirectoryInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostActiveDirectoryInfo>>(wrap_array_of_host_active_directory_info), from_value: |v| from_val_with::<Vec<super::structs::HostActiveDirectoryInfo>>(v, wrap_array_of_host_active_directory_info) }),
        ("VStorageObjectReconcileResult", TypeInfo::Object { name: "VStorageObjectReconcileResult", builder_fn: || Box::new(VStorageObjectReconcileResultFields::new()) }),
        ("ArrayOfVsanClientDatastoreConfig", TypeInfo::Value { name: "ArrayOfVsanClientDatastoreConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClientDatastoreConfig>>(wrap_array_of_vsan_client_datastore_config), from_value: |v| from_val_with::<Vec<super::structs::VsanClientDatastoreConfig>>(v, wrap_array_of_vsan_client_datastore_config) }),
        ("ArrayOfEnvironmentBrowserConfigOptionQuerySpec", TypeInfo::Value { name: "ArrayOfEnvironmentBrowserConfigOptionQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::EnvironmentBrowserConfigOptionQuerySpec>>(wrap_array_of_environment_browser_config_option_query_spec), from_value: |v| from_val_with::<Vec<super::structs::EnvironmentBrowserConfigOptionQuerySpec>>(v, wrap_array_of_environment_browser_config_option_query_spec) }),
        ("HostInventoryFullEvent", TypeInfo::Object { name: "HostInventoryFullEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostInventoryFullEvent))) }),
        ("ArrayOfPbmAlreadyExists", TypeInfo::Value { name: "ArrayOfPbmAlreadyExists", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_already_exists), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_already_exists) }),
        ("AgencyIssue", TypeInfo::Object { name: "AgencyIssue", builder_fn: || Box::new(AgencyIssueFields::new()) }),
        ("ArrayOfVirtualMachineAffinityInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineAffinityInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineAffinityInfo>>(wrap_array_of_virtual_machine_affinity_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineAffinityInfo>>(v, wrap_array_of_virtual_machine_affinity_info) }),
        ("LockerReconfiguredEvent", TypeInfo::Object { name: "LockerReconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::LockerReconfiguredEvent))) }),
        ("OvfUnsupportedElement", TypeInfo::Object { name: "OvfUnsupportedElement", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedElement))) }),
        ("ArrayOfVmWwnConflictEvent", TypeInfo::Value { name: "ArrayOfVmWwnConflictEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_wwn_conflict_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_wwn_conflict_event) }),
        ("VsanClusterHealthResultWithRemediation", TypeInfo::Object { name: "VsanClusterHealthResultWithRemediation", builder_fn: || Box::new(VsanClusterHealthResultWithRemediationFields::new()) }),
        ("SoftwarePackageCapability", TypeInfo::Object { name: "SoftwarePackageCapability", builder_fn: || Box::new(SoftwarePackageCapabilityFields::new()) }),
        ("ArrayOfSolutionsInteractiveHookAcknowledgeConfig", TypeInfo::Value { name: "ArrayOfSolutionsInteractiveHookAcknowledgeConfig", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsInteractiveHookAcknowledgeConfig>>(wrap_array_of_solutions_interactive_hook_acknowledge_config), from_value: |v| from_val_with::<Vec<super::structs::SolutionsInteractiveHookAcknowledgeConfig>>(v, wrap_array_of_solutions_interactive_hook_acknowledge_config) }),
        ("ArrayOfVsanIODiagnosticsPrecheckResult", TypeInfo::Value { name: "ArrayOfVsanIODiagnosticsPrecheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoDiagnosticsPrecheckResult>>(wrap_array_of_vsan_io_diagnostics_precheck_result), from_value: |v| from_val_with::<Vec<super::structs::VsanIoDiagnosticsPrecheckResult>>(v, wrap_array_of_vsan_io_diagnostics_precheck_result) }),
        ("ArrayOfObjectUpdateKind", TypeInfo::Value { name: "ArrayOfObjectUpdateKind", make_deserializer: || make_deser_with::<Vec<super::enums::ObjectUpdateKindEnum>>(wrap_array_of_object_update_kind), from_value: |v| from_val_with::<Vec<super::enums::ObjectUpdateKindEnum>>(v, wrap_array_of_object_update_kind) }),
        ("ArrayOfCnsVolumeCreateSpec", TypeInfo::Value { name: "ArrayOfCnsVolumeCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumeCreateSpec>>(wrap_array_of_cns_volume_create_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumeCreateSpec>>(v, wrap_array_of_cns_volume_create_spec) }),
        ("ArrayOfFcoeConfig", TypeInfo::Value { name: "ArrayOfFcoeConfig", make_deserializer: || make_deser_with::<Vec<super::structs::FcoeConfig>>(wrap_array_of_fcoe_config), from_value: |v| from_val_with::<Vec<super::structs::FcoeConfig>>(v, wrap_array_of_fcoe_config) }),
        ("ArrayOfVirtualMachineGuestQuiesceSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineGuestQuiesceSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_guest_quiesce_spec_array)), from_value: |v| cast_to_virtual_machine_guest_quiesce_spec_array(from_value(v)?) }),
        ("VirtualDeviceDeviceGroupInfo", TypeInfo::Object { name: "VirtualDeviceDeviceGroupInfo", builder_fn: || Box::new(VirtualDeviceDeviceGroupInfoFields::new()) }),
        ("ArrayOfRawDiskNotSupported", TypeInfo::Value { name: "ArrayOfRawDiskNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_raw_disk_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_raw_disk_not_supported) }),
        ("ArrayOfVMotionProtocolIncompatible", TypeInfo::Value { name: "ArrayOfVMotionProtocolIncompatible", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_motion_protocol_incompatible), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_motion_protocol_incompatible) }),
        ("ArrayOfSolutionsHostComplianceResult", TypeInfo::Value { name: "ArrayOfSolutionsHostComplianceResult", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsHostComplianceResult>>(wrap_array_of_solutions_host_compliance_result), from_value: |v| from_val_with::<Vec<super::structs::SolutionsHostComplianceResult>>(v, wrap_array_of_solutions_host_compliance_result) }),
        ("SnapshotMoveNotSupported", TypeInfo::Object { name: "SnapshotMoveNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotMoveNotSupported))) }),
        ("DiagnosticManagerLogDescriptor", TypeInfo::Object { name: "DiagnosticManagerLogDescriptor", builder_fn: || Box::new(DiagnosticManagerLogDescriptorFields::new()) }),
        ("ArrayOfSharesOption", TypeInfo::Value { name: "ArrayOfSharesOption", make_deserializer: || make_deser_with::<Vec<super::structs::SharesOption>>(wrap_array_of_shares_option), from_value: |v| from_val_with::<Vec<super::structs::SharesOption>>(v, wrap_array_of_shares_option) }),
        ("ArrayOfCustomizationSucceeded", TypeInfo::Value { name: "ArrayOfCustomizationSucceeded", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_customization_succeeded), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_customization_succeeded) }),
        ("ArrayOfPbmProfile", TypeInfo::Value { name: "ArrayOfPbmProfile", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_pbm_profile_array)), from_value: |v| cast_to_pbm_profile_array(from_value(v)?) }),
        ("ArrayOfImportOperationBulkFaultFaultOnImport", TypeInfo::Value { name: "ArrayOfImportOperationBulkFaultFaultOnImport", make_deserializer: || make_deser_with::<Vec<super::structs::ImportOperationBulkFaultFaultOnImport>>(wrap_array_of_import_operation_bulk_fault_fault_on_import), from_value: |v| from_val_with::<Vec<super::structs::ImportOperationBulkFaultFaultOnImport>>(v, wrap_array_of_import_operation_bulk_fault_fault_on_import) }),
        ("ClusterRuntimeInfo", TypeInfo::Object { name: "ClusterRuntimeInfo", builder_fn: || Box::new(ClusterRuntimeInfoFields::new()) }),
        ("DvsScopeViolated", TypeInfo::Object { name: "DvsScopeViolated", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DvsScopeViolated))) }),
        ("SessionManagerVmomiServiceRequestSpec", TypeInfo::Object { name: "SessionManagerVmomiServiceRequestSpec", builder_fn: || Box::new(SessionManagerVmomiServiceRequestSpecFields::new()) }),
        ("ArrayOfPbmFaultProfileStorageFault", TypeInfo::Value { name: "ArrayOfPbmFaultProfileStorageFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_fault_profile_storage_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_fault_profile_storage_fault) }),
        ("ArrayOfVmMonitorIncompatibleForFaultTolerance", TypeInfo::Value { name: "ArrayOfVmMonitorIncompatibleForFaultTolerance", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_monitor_incompatible_for_fault_tolerance), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_monitor_incompatible_for_fault_tolerance) }),
        ("ArrayOfComputeResourceHostSPBMLicenseInfo", TypeInfo::Value { name: "ArrayOfComputeResourceHostSPBMLicenseInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ComputeResourceHostSpbmLicenseInfo>>(wrap_array_of_compute_resource_host_spbm_license_info), from_value: |v| from_val_with::<Vec<super::structs::ComputeResourceHostSpbmLicenseInfo>>(v, wrap_array_of_compute_resource_host_spbm_license_info) }),
        ("VirtualPCNet32", TypeInfo::Object { name: "VirtualPCNet32", builder_fn: || Box::new(VirtualPcNet32Fields::new()) }),
        ("ArrayOfVsanCompliantDriver", TypeInfo::Value { name: "ArrayOfVsanCompliantDriver", make_deserializer: || make_deser_with::<Vec<super::structs::VsanCompliantDriver>>(wrap_array_of_vsan_compliant_driver), from_value: |v| from_val_with::<Vec<super::structs::VsanCompliantDriver>>(v, wrap_array_of_vsan_compliant_driver) }),
        ("DVSContactInfo", TypeInfo::Object { name: "DVSContactInfo", builder_fn: || Box::new(DvsContactInfoFields::new()) }),
        ("LicenseEntityNotFound", TypeInfo::Object { name: "LicenseEntityNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LicenseEntityNotFound))) }),
        ("NoSubjectName", TypeInfo::Object { name: "NoSubjectName", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoSubjectName))) }),
        ("VmOrphanedEvent", TypeInfo::Object { name: "VmOrphanedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmOrphanedEvent))) }),
        ("ArrayOfVsanClusterBalanceSummary", TypeInfo::Value { name: "ArrayOfVsanClusterBalanceSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterBalanceSummary>>(wrap_array_of_vsan_cluster_balance_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterBalanceSummary>>(v, wrap_array_of_vsan_cluster_balance_summary) }),
        ("ObjectSpec", TypeInfo::Object { name: "ObjectSpec", builder_fn: || Box::new(ObjectSpecFields::new()) }),
        ("VmMarkedAsTemplate", TypeInfo::Object { name: "VmMarkedAsTemplate", builder_fn: || Box::new(VmMarkedAsTemplateFields::new()) }),
        ("VmUpgradingEvent", TypeInfo::Object { name: "VmUpgradingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmUpgradingEvent))) }),
        ("ArrayOfVirtualDeviceRemoteDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualDeviceRemoteDeviceBackingOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_remote_device_backing_option_array)), from_value: |v| cast_to_virtual_device_remote_device_backing_option_array(from_value(v)?) }),
        ("HostLowLevelProvisioningManagerFileReserveSpec", TypeInfo::Object { name: "HostLowLevelProvisioningManagerFileReserveSpec", builder_fn: || Box::new(HostLowLevelProvisioningManagerFileReserveSpecFields::new()) }),
        ("ArrayOfVmBeingMigratedEvent", TypeInfo::Value { name: "ArrayOfVmBeingMigratedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_being_migrated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_being_migrated_event) }),
        ("ArrayOfStoragePlacementResult", TypeInfo::Value { name: "ArrayOfStoragePlacementResult", make_deserializer: || make_deser_with::<Vec<super::structs::StoragePlacementResult>>(wrap_array_of_storage_placement_result), from_value: |v| from_val_with::<Vec<super::structs::StoragePlacementResult>>(v, wrap_array_of_storage_placement_result) }),
        ("VFlashCacheHotConfigNotSupported", TypeInfo::Object { name: "VFlashCacheHotConfigNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VFlashCacheHotConfigNotSupported))) }),
        ("ArrayOfDatastoreVVolContainerFailoverPair", TypeInfo::Value { name: "ArrayOfDatastoreVVolContainerFailoverPair", make_deserializer: || make_deser_with::<Vec<super::structs::DatastoreVVolContainerFailoverPair>>(wrap_array_of_datastore_v_vol_container_failover_pair), from_value: |v| from_val_with::<Vec<super::structs::DatastoreVVolContainerFailoverPair>>(v, wrap_array_of_datastore_v_vol_container_failover_pair) }),
        ("VmUpgradeCompleteEvent", TypeInfo::Object { name: "VmUpgradeCompleteEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmUpgradeCompleteEvent))) }),
        ("ArrayOfOvfUnsupportedElementValue", TypeInfo::Value { name: "ArrayOfOvfUnsupportedElementValue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_element_value), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_element_value) }),
        ("ArrayOfStorageResourceManagerStorageProfileStatistics", TypeInfo::Value { name: "ArrayOfStorageResourceManagerStorageProfileStatistics", make_deserializer: || make_deser_with::<Vec<super::structs::StorageResourceManagerStorageProfileStatistics>>(wrap_array_of_storage_resource_manager_storage_profile_statistics), from_value: |v| from_val_with::<Vec<super::structs::StorageResourceManagerStorageProfileStatistics>>(v, wrap_array_of_storage_resource_manager_storage_profile_statistics) }),
        ("ArrayOfHostParallelScsiHba", TypeInfo::Value { name: "ArrayOfHostParallelScsiHba", make_deserializer: || make_deser_with::<Vec<super::structs::HostParallelScsiHba>>(wrap_array_of_host_parallel_scsi_hba), from_value: |v| from_val_with::<Vec<super::structs::HostParallelScsiHba>>(v, wrap_array_of_host_parallel_scsi_hba) }),
        ("ArrayOfVslmVsoVStorageObjectQueryResult", TypeInfo::Value { name: "ArrayOfVslmVsoVStorageObjectQueryResult", make_deserializer: || make_deser_with::<Vec<super::structs::VslmVsoVStorageObjectQueryResult>>(wrap_array_of_vslm_vso_v_storage_object_query_result), from_value: |v| from_val_with::<Vec<super::structs::VslmVsoVStorageObjectQueryResult>>(v, wrap_array_of_vslm_vso_v_storage_object_query_result) }),
        ("VsanClusterEncryptionHealthSummary", TypeInfo::Object { name: "VsanClusterEncryptionHealthSummary", builder_fn: || Box::new(VsanClusterEncryptionHealthSummaryFields::new()) }),
        ("DirectPathProfileManagerCapacityUnknown", TypeInfo::Object { name: "DirectPathProfileManagerCapacityUnknown", builder_fn: || Box::new(DirectPathProfileManagerCapacityUnknownFields::new()) }),
        ("InvalidPowerState", TypeInfo::Object { name: "InvalidPowerState", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidPowerState))) }),
        ("VsanDiskFormatConversionCheckResult", TypeInfo::Object { name: "VsanDiskFormatConversionCheckResult", builder_fn: || Box::new(VsanDiskFormatConversionCheckResultFields::new()) }),
        ("ArrayOfLocalizedMethodFault", TypeInfo::Value { name: "ArrayOfLocalizedMethodFault", make_deserializer: || make_deser_with::<Vec<super::structs::LocalizedMethodFault>>(wrap_array_of_localized_method_fault), from_value: |v| from_val_with::<Vec<super::structs::LocalizedMethodFault>>(v, wrap_array_of_localized_method_fault) }),
        ("ArrayOfVirtualPCIPassthroughDvxBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughDvxBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthroughDvxBackingInfo>>(wrap_array_of_virtual_pci_passthrough_dvx_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthroughDvxBackingInfo>>(v, wrap_array_of_virtual_pci_passthrough_dvx_backing_info) }),
        ("ArrayOfDeviceBackingNotSupported", TypeInfo::Value { name: "ArrayOfDeviceBackingNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_device_backing_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_device_backing_not_supported) }),
        ("VsanIscsiTarget", TypeInfo::Object { name: "VsanIscsiTarget", builder_fn: || Box::new(VsanIscsiTargetFields::new()) }),
        ("VirtualDiskSparseVer1BackingInfo", TypeInfo::Object { name: "VirtualDiskSparseVer1BackingInfo", builder_fn: || Box::new(VirtualDiskSparseVer1BackingInfoFields::new()) }),
        ("ArrayOfVirtualNVDIMM", TypeInfo::Value { name: "ArrayOfVirtualNVDIMM", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualNvdimm>>(wrap_array_of_virtual_nvdimm), from_value: |v| from_val_with::<Vec<super::structs::VirtualNvdimm>>(v, wrap_array_of_virtual_nvdimm) }),
        ("ArrayOfVirtualMachineFileLayoutExFileInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineFileLayoutExFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFileLayoutExFileInfo>>(wrap_array_of_virtual_machine_file_layout_ex_file_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFileLayoutExFileInfo>>(v, wrap_array_of_virtual_machine_file_layout_ex_file_info) }),
        ("ArrayOfHostInternetScsiHbaDiscoveryCapabilities", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaDiscoveryCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaDiscoveryCapabilities>>(wrap_array_of_host_internet_scsi_hba_discovery_capabilities), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaDiscoveryCapabilities>>(v, wrap_array_of_host_internet_scsi_hba_discovery_capabilities) }),
        ("ArrayOfDVSFilterSpecVlanIdSpec", TypeInfo::Value { name: "ArrayOfDVSFilterSpecVlanIdSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsFilterSpecVlanIdSpec>>(wrap_array_of_dvs_filter_spec_vlan_id_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsFilterSpecVlanIdSpec>>(v, wrap_array_of_dvs_filter_spec_vlan_id_spec) }),
        ("ArrayOfVirtualEthernetCard", TypeInfo::Value { name: "ArrayOfVirtualEthernetCard", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_ethernet_card_array)), from_value: |v| cast_to_virtual_ethernet_card_array(from_value(v)?) }),
        ("OvfMappedOsId", TypeInfo::Object { name: "OvfMappedOsId", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfMappedOsId))) }),
        ("ArrayOfSwitchIpUnset", TypeInfo::Value { name: "ArrayOfSwitchIpUnset", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_switch_ip_unset), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_switch_ip_unset) }),
        ("VsanFileServiceIpConfig", TypeInfo::Object { name: "VsanFileServiceIpConfig", builder_fn: || Box::new(VsanFileServiceIpConfigFields::new()) }),
        ("ProviderUnavailable", TypeInfo::Object { name: "ProviderUnavailable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProviderUnavailable))) }),
        ("RetrieveOptions", TypeInfo::Object { name: "RetrieveOptions", builder_fn: || Box::new(RetrieveOptionsFields::new()) }),
        ("UserUnassignedFromGroup", TypeInfo::Object { name: "UserUnassignedFromGroup", builder_fn: || Box::new(EventFields::new(Some(StructType::UserUnassignedFromGroup))) }),
        ("VsanClusterHealthResultColumnInfo", TypeInfo::Object { name: "VsanClusterHealthResultColumnInfo", builder_fn: || Box::new(VsanClusterHealthResultColumnInfoFields::new()) }),
        ("ArrayOfRoleRemovedEvent", TypeInfo::Value { name: "ArrayOfRoleRemovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_role_removed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_role_removed_event) }),
        ("VirtualMachineDisplayTopology", TypeInfo::Object { name: "VirtualMachineDisplayTopology", builder_fn: || Box::new(VirtualMachineDisplayTopologyFields::new()) }),
        ("ArrayOfDvsMacNetworkRuleQualifier", TypeInfo::Value { name: "ArrayOfDvsMacNetworkRuleQualifier", make_deserializer: || make_deser_with::<Vec<super::structs::DvsMacNetworkRuleQualifier>>(wrap_array_of_dvs_mac_network_rule_qualifier), from_value: |v| from_val_with::<Vec<super::structs::DvsMacNetworkRuleQualifier>>(v, wrap_array_of_dvs_mac_network_rule_qualifier) }),
        ("DeviceNotSupported", TypeInfo::Object { name: "DeviceNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DeviceNotSupported))) }),
        ("HostFileAccess", TypeInfo::Object { name: "HostFileAccess", builder_fn: || Box::new(HostFileAccessFields::new()) }),
        ("ArrayOfDvsIpPort", TypeInfo::Value { name: "ArrayOfDvsIpPort", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_ip_port_array)), from_value: |v| cast_to_dvs_ip_port_array(from_value(v)?) }),
        ("HostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperation", TypeInfo::Value { name: "HostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperation", make_deserializer: || make_deser_with::<super::enums::HostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperationEnum>(wrap_host_internet_scsi_hba_iscsi_ipv_6_address_i_pv_6_address_operation), from_value: |v| from_val_with::<super::enums::HostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperationEnum>(v, wrap_host_internet_scsi_hba_iscsi_ipv_6_address_i_pv_6_address_operation) }),
        ("VmInstanceUuidChangedEvent", TypeInfo::Object { name: "VmInstanceUuidChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmInstanceUuidChangedEvent))) }),
        ("GeneralVmErrorEvent", TypeInfo::Object { name: "GeneralVmErrorEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GeneralVmErrorEvent))) }),
        ("HostPortGroupPort", TypeInfo::Object { name: "HostPortGroupPort", builder_fn: || Box::new(HostPortGroupPortFields::new()) }),
        ("NetworkEventArgument", TypeInfo::Object { name: "NetworkEventArgument", builder_fn: || Box::new(NetworkEventArgumentFields::new()) }),
        ("ArrayOfArrayUpdateSpec", TypeInfo::Value { name: "ArrayOfArrayUpdateSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_array_update_spec_array)), from_value: |v| cast_to_array_update_spec_array(from_value(v)?) }),
        ("ArrayOfHeterogenousHostsBlockingEVC", TypeInfo::Value { name: "ArrayOfHeterogenousHostsBlockingEVC", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_heterogenous_hosts_blocking_evc), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_heterogenous_hosts_blocking_evc) }),
        ("TypeName", TypeInfo::Value { name: "TypeName", make_deserializer: || make_deser_with::<String>(wrap_primitive_type_name), from_value: |v| from_val_with::<String>(v, wrap_primitive_type_name) }),
        ("ArrayOfHostCnxFailedBadUsernameEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedBadUsernameEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_bad_username_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_bad_username_event) }),
        ("AllVirtualMachinesLicensedEvent", TypeInfo::Object { name: "AllVirtualMachinesLicensedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AllVirtualMachinesLicensedEvent))) }),
        ("HttpNfcLeaseProbeResult", TypeInfo::Object { name: "HttpNfcLeaseProbeResult", builder_fn: || Box::new(HttpNfcLeaseProbeResultFields::new()) }),
        ("InvalidAffinitySettingFault", TypeInfo::Object { name: "InvalidAffinitySettingFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidAffinitySettingFault))) }),
        ("HostNetworkSecurityPolicy", TypeInfo::Object { name: "HostNetworkSecurityPolicy", builder_fn: || Box::new(HostNetworkSecurityPolicyFields::new()) }),
        ("RDMConversionNotSupported", TypeInfo::Object { name: "RDMConversionNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RdmConversionNotSupported))) }),
        ("LongPolicy", TypeInfo::Object { name: "LongPolicy", builder_fn: || Box::new(LongPolicyFields::new()) }),
        ("ArrayOfServiceLocator", TypeInfo::Value { name: "ArrayOfServiceLocator", make_deserializer: || make_deser_with::<Vec<super::structs::ServiceLocator>>(wrap_array_of_service_locator), from_value: |v| from_val_with::<Vec<super::structs::ServiceLocator>>(v, wrap_array_of_service_locator) }),
        ("VirtualSriovEthernetCard", TypeInfo::Object { name: "VirtualSriovEthernetCard", builder_fn: || Box::new(VirtualSriovEthernetCardFields::new()) }),
        ("ArrayOfOvfNetworkInfo", TypeInfo::Value { name: "ArrayOfOvfNetworkInfo", make_deserializer: || make_deser_with::<Vec<super::structs::OvfNetworkInfo>>(wrap_array_of_ovf_network_info), from_value: |v| from_val_with::<Vec<super::structs::OvfNetworkInfo>>(v, wrap_array_of_ovf_network_info) }),
        ("RecoveredDevice", TypeInfo::Object { name: "RecoveredDevice", builder_fn: || Box::new(RecoveredDeviceFields::new()) }),
        ("ArrayOfSelectionSpec", TypeInfo::Value { name: "ArrayOfSelectionSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_selection_spec_array)), from_value: |v| cast_to_selection_spec_array(from_value(v)?) }),
        ("ArrayOfClusterComputeResourceDVSConfigurationValidation", TypeInfo::Value { name: "ArrayOfClusterComputeResourceDVSConfigurationValidation", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceDvsConfigurationValidation>>(wrap_array_of_cluster_compute_resource_dvs_configuration_validation), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceDvsConfigurationValidation>>(v, wrap_array_of_cluster_compute_resource_dvs_configuration_validation) }),
        ("VirtualMachineMetadataManagerVmMetadataOwner", TypeInfo::Object { name: "VirtualMachineMetadataManagerVmMetadataOwner", builder_fn: || Box::new(VirtualMachineMetadataManagerVmMetadataOwnerFields::new()) }),
        ("ArrayOfNotADirectory", TypeInfo::Value { name: "ArrayOfNotADirectory", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_a_directory), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_a_directory) }),
        ("ArrayOfVirtualMachineFilePath", TypeInfo::Value { name: "ArrayOfVirtualMachineFilePath", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFilePath>>(wrap_array_of_virtual_machine_file_path), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFilePath>>(v, wrap_array_of_virtual_machine_file_path) }),
        ("CustomizationLicenseFilePrintData", TypeInfo::Object { name: "CustomizationLicenseFilePrintData", builder_fn: || Box::new(CustomizationLicenseFilePrintDataFields::new()) }),
        ("CannotChangeVsanNodeUuid", TypeInfo::Object { name: "CannotChangeVsanNodeUuid", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotChangeVsanNodeUuid))) }),
        ("VimVsanReconfigSpec", TypeInfo::Object { name: "VimVsanReconfigSpec", builder_fn: || Box::new(VimVsanReconfigSpecFields::new()) }),
        ("HostFaultToleranceManagerComponentHealthInfo", TypeInfo::Object { name: "HostFaultToleranceManagerComponentHealthInfo", builder_fn: || Box::new(HostFaultToleranceManagerComponentHealthInfoFields::new()) }),
        ("DirectPathProfileManagerCreateSpec", TypeInfo::Object { name: "DirectPathProfileManagerCreateSpec", builder_fn: || Box::new(DirectPathProfileManagerCreateSpecFields::new()) }),
        ("HostNvmeDiscoverSpec", TypeInfo::Object { name: "HostNvmeDiscoverSpec", builder_fn: || Box::new(HostNvmeDiscoverSpecFields::new()) }),
        ("HealthUpdate", TypeInfo::Object { name: "HealthUpdate", builder_fn: || Box::new(HealthUpdateFields::new()) }),
        ("ArrayOfFileShareQueryResult", TypeInfo::Value { name: "ArrayOfFileShareQueryResult", make_deserializer: || make_deser_with::<Vec<super::structs::FileShareQueryResult>>(wrap_array_of_file_share_query_result), from_value: |v| from_val_with::<Vec<super::structs::FileShareQueryResult>>(v, wrap_array_of_file_share_query_result) }),
        ("ArrayOfOvfImportFailed", TypeInfo::Value { name: "ArrayOfOvfImportFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_import_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_import_failed) }),
        ("VsanFileShareSnapshotConfig", TypeInfo::Object { name: "VsanFileShareSnapshotConfig", builder_fn: || Box::new(VsanFileShareSnapshotConfigFields::new()) }),
        ("ProfileDissociatedEvent", TypeInfo::Object { name: "ProfileDissociatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ProfileDissociatedEvent))) }),
        ("VirtualSoundCardOption", TypeInfo::Object { name: "VirtualSoundCardOption", builder_fn: || Box::new(VirtualSoundCardOptionFields::new()) }),
        ("ArrayOfNetIpStackInfo", TypeInfo::Value { name: "ArrayOfNetIpStackInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpStackInfo>>(wrap_array_of_net_ip_stack_info), from_value: |v| from_val_with::<Vec<super::structs::NetIpStackInfo>>(v, wrap_array_of_net_ip_stack_info) }),
        ("ArrayOfDeviceHotPlugNotSupported", TypeInfo::Value { name: "ArrayOfDeviceHotPlugNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_device_hot_plug_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_device_hot_plug_not_supported) }),
        ("ArrayOfEvent", TypeInfo::Value { name: "ArrayOfEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_event) }),
        ("ArrayOfVAppOvfSectionSpec", TypeInfo::Value { name: "ArrayOfVAppOvfSectionSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VAppOvfSectionSpec>>(wrap_array_of_v_app_ovf_section_spec), from_value: |v| from_val_with::<Vec<super::structs::VAppOvfSectionSpec>>(v, wrap_array_of_v_app_ovf_section_spec) }),
        ("OnceTaskScheduler", TypeInfo::Object { name: "OnceTaskScheduler", builder_fn: || Box::new(OnceTaskSchedulerFields::new()) }),
        ("ArrayOfDvsSingleIpPort", TypeInfo::Value { name: "ArrayOfDvsSingleIpPort", make_deserializer: || make_deser_with::<Vec<super::structs::DvsSingleIpPort>>(wrap_array_of_dvs_single_ip_port), from_value: |v| from_val_with::<Vec<super::structs::DvsSingleIpPort>>(v, wrap_array_of_dvs_single_ip_port) }),
        ("VirtualNVDIMMBackingInfo", TypeInfo::Object { name: "VirtualNVDIMMBackingInfo", builder_fn: || Box::new(VirtualNvdimmBackingInfoFields::new()) }),
        ("TaskFilterSpecByEntity", TypeInfo::Object { name: "TaskFilterSpecByEntity", builder_fn: || Box::new(TaskFilterSpecByEntityFields::new()) }),
        ("CustomizationIPSettingsIpV6AddressSpec", TypeInfo::Object { name: "CustomizationIPSettingsIpV6AddressSpec", builder_fn: || Box::new(CustomizationIpSettingsIpV6AddressSpecFields::new()) }),
        ("VimAccountPasswordChangedEvent", TypeInfo::Object { name: "VimAccountPasswordChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VimAccountPasswordChangedEvent))) }),
        ("VsanNetworkConfigPnicSpeedInconsistencyIssue", TypeInfo::Object { name: "VsanNetworkConfigPnicSpeedInconsistencyIssue", builder_fn: || Box::new(VsanNetworkConfigPnicSpeedInconsistencyIssueFields::new()) }),
        ("VirtualUSBControllerOption", TypeInfo::Object { name: "VirtualUSBControllerOption", builder_fn: || Box::new(VirtualUsbControllerOptionFields::new()) }),
        ("OptionType", TypeInfo::Object { name: "OptionType", builder_fn: || Box::new(OptionTypeFields::new()) }),
        ("VirtualMachineSnapshotTree", TypeInfo::Object { name: "VirtualMachineSnapshotTree", builder_fn: || Box::new(VirtualMachineSnapshotTreeFields::new()) }),
        ("NetworkPolicyProfile", TypeInfo::Object { name: "NetworkPolicyProfile", builder_fn: || Box::new(NetworkPolicyProfileFields::new()) }),
        ("ArrayOfActiveDirectoryFault", TypeInfo::Value { name: "ArrayOfActiveDirectoryFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_active_directory_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_active_directory_fault) }),
        ("ArrayOfVirtualDeviceDeviceGroupInfo", TypeInfo::Value { name: "ArrayOfVirtualDeviceDeviceGroupInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDeviceDeviceGroupInfo>>(wrap_array_of_virtual_device_device_group_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDeviceDeviceGroupInfo>>(v, wrap_array_of_virtual_device_device_group_info) }),
        ("ArrayOfHostHardwareSummary", TypeInfo::Value { name: "ArrayOfHostHardwareSummary", make_deserializer: || make_deser_with::<Vec<super::structs::HostHardwareSummary>>(wrap_array_of_host_hardware_summary), from_value: |v| from_val_with::<Vec<super::structs::HostHardwareSummary>>(v, wrap_array_of_host_hardware_summary) }),
        ("ArrayOfVsanXvcQueryResultSet", TypeInfo::Value { name: "ArrayOfVsanXvcQueryResultSet", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcQueryResultSet>>(wrap_array_of_vsan_xvc_query_result_set), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcQueryResultSet>>(v, wrap_array_of_vsan_xvc_query_result_set) }),
        ("UnexpectedCustomizationFault", TypeInfo::Object { name: "UnexpectedCustomizationFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnexpectedCustomizationFault))) }),
        ("ArrayOfCryptoSpecNoOp", TypeInfo::Value { name: "ArrayOfCryptoSpecNoOp", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_crypto_spec_no_op_array)), from_value: |v| cast_to_crypto_spec_no_op_array(from_value(v)?) }),
        ("ArrayOfHostAssignableHardwareBinding", TypeInfo::Value { name: "ArrayOfHostAssignableHardwareBinding", make_deserializer: || make_deser_with::<Vec<super::structs::HostAssignableHardwareBinding>>(wrap_array_of_host_assignable_hardware_binding), from_value: |v| from_val_with::<Vec<super::structs::HostAssignableHardwareBinding>>(v, wrap_array_of_host_assignable_hardware_binding) }),
        ("VsanRemoteVcInfo", TypeInfo::Object { name: "VsanRemoteVcInfo", builder_fn: || Box::new(VsanRemoteVcInfoFields::new()) }),
        ("HostLicensableResourceKey", TypeInfo::Value { name: "HostLicensableResourceKey", make_deserializer: || make_deser_with::<super::enums::HostLicensableResourceKeyEnum>(wrap_host_licensable_resource_key), from_value: |v| from_val_with::<super::enums::HostLicensableResourceKeyEnum>(v, wrap_host_licensable_resource_key) }),
        ("ArrayOfOvfNoHostNic", TypeInfo::Value { name: "ArrayOfOvfNoHostNic", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_no_host_nic), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_no_host_nic) }),
        ("ArrayOfHostSriovNetworkDevicePoolInfo", TypeInfo::Value { name: "ArrayOfHostSriovNetworkDevicePoolInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSriovNetworkDevicePoolInfo>>(wrap_array_of_host_sriov_network_device_pool_info), from_value: |v| from_val_with::<Vec<super::structs::HostSriovNetworkDevicePoolInfo>>(v, wrap_array_of_host_sriov_network_device_pool_info) }),
        ("GenericVmConfigFault", TypeInfo::Object { name: "GenericVmConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GenericVmConfigFault))) }),
        ("InvalidFormat", TypeInfo::Object { name: "InvalidFormat", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidFormat))) }),
        ("ArrayOfHostRdmaDeviceBacking", TypeInfo::Value { name: "ArrayOfHostRdmaDeviceBacking", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_rdma_device_backing_array)), from_value: |v| cast_to_host_rdma_device_backing_array(from_value(v)?) }),
        ("ArrayOfServiceConsoleReservationInfo", TypeInfo::Value { name: "ArrayOfServiceConsoleReservationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ServiceConsoleReservationInfo>>(wrap_array_of_service_console_reservation_info), from_value: |v| from_val_with::<Vec<super::structs::ServiceConsoleReservationInfo>>(v, wrap_array_of_service_console_reservation_info) }),
        ("VspanPortgroupPromiscChangeFault", TypeInfo::Object { name: "VspanPortgroupPromiscChangeFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VspanPortgroupPromiscChangeFault))) }),
        ("ArrayOfVslmVsoVStorageObjectQuerySpec", TypeInfo::Value { name: "ArrayOfVslmVsoVStorageObjectQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VslmVsoVStorageObjectQuerySpec>>(wrap_array_of_vslm_vso_v_storage_object_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VslmVsoVStorageObjectQuerySpec>>(v, wrap_array_of_vslm_vso_v_storage_object_query_spec) }),
        ("HostLocalFileSystemVolume", TypeInfo::Object { name: "HostLocalFileSystemVolume", builder_fn: || Box::new(HostLocalFileSystemVolumeFields::new()) }),
        ("VsanIOLatency", TypeInfo::Object { name: "VsanIOLatency", builder_fn: || Box::new(VsanIoLatencyFields::new()) }),
        ("CannotComputeFTCompatibleHosts", TypeInfo::Object { name: "CannotComputeFTCompatibleHosts", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotComputeFtCompatibleHosts))) }),
        ("ArrayOfDrsRecoveredFromFailureEvent", TypeInfo::Value { name: "ArrayOfDrsRecoveredFromFailureEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_recovered_from_failure_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_recovered_from_failure_event) }),
        ("ArrayOfHostConfigChange", TypeInfo::Value { name: "ArrayOfHostConfigChange", make_deserializer: || make_deser_with::<Vec<super::structs::HostConfigChange>>(wrap_array_of_host_config_change), from_value: |v| from_val_with::<Vec<super::structs::HostConfigChange>>(v, wrap_array_of_host_config_change) }),
        ("LicenseDowngradeDisallowed", TypeInfo::Object { name: "LicenseDowngradeDisallowed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LicenseDowngradeDisallowed))) }),
        ("ArrayOfVirtualPCIPassthroughOption", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthroughOption>>(wrap_array_of_virtual_pci_passthrough_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthroughOption>>(v, wrap_array_of_virtual_pci_passthrough_option) }),
        ("ArrayOfVsanComplianceResult", TypeInfo::Value { name: "ArrayOfVsanComplianceResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanComplianceResult>>(wrap_array_of_vsan_compliance_result), from_value: |v| from_val_with::<Vec<super::structs::VsanComplianceResult>>(v, wrap_array_of_vsan_compliance_result) }),
        ("ArrayOfDasEnabledEvent", TypeInfo::Value { name: "ArrayOfDasEnabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_das_enabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_das_enabled_event) }),
        ("HostAutoStartManagerConfig", TypeInfo::Object { name: "HostAutoStartManagerConfig", builder_fn: || Box::new(HostAutoStartManagerConfigFields::new()) }),
        ("ArrayOfExtendedElementDescription", TypeInfo::Value { name: "ArrayOfExtendedElementDescription", make_deserializer: || make_deser_with::<Vec<super::structs::ExtendedElementDescription>>(wrap_array_of_extended_element_description), from_value: |v| from_val_with::<Vec<super::structs::ExtendedElementDescription>>(v, wrap_array_of_extended_element_description) }),
        ("ArrayOfEamIOFault", TypeInfo::Value { name: "ArrayOfEamIOFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eam_io_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eam_io_fault) }),
        ("VmRequirementsExceedCurrentEVCModeEvent", TypeInfo::Object { name: "VmRequirementsExceedCurrentEVCModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRequirementsExceedCurrentEvcModeEvent))) }),
        ("ArrayOfClusterDasAdvancedRuntimeInfo", TypeInfo::Value { name: "ArrayOfClusterDasAdvancedRuntimeInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_das_advanced_runtime_info_array)), from_value: |v| cast_to_cluster_das_advanced_runtime_info_array(from_value(v)?) }),
        ("ArrayOfDVSMacLearningPolicy", TypeInfo::Value { name: "ArrayOfDVSMacLearningPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::DvsMacLearningPolicy>>(wrap_array_of_dvs_mac_learning_policy), from_value: |v| from_val_with::<Vec<super::structs::DvsMacLearningPolicy>>(v, wrap_array_of_dvs_mac_learning_policy) }),
        ("VsanAddStoragePoolDiskSpec", TypeInfo::Object { name: "VsanAddStoragePoolDiskSpec", builder_fn: || Box::new(VsanAddStoragePoolDiskSpecFields::new()) }),
        ("VmAlreadyExistsInDatacenter", TypeInfo::Object { name: "VmAlreadyExistsInDatacenter", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmAlreadyExistsInDatacenter))) }),
        ("ArrayOfHostNvmeDiscoveryLog", TypeInfo::Value { name: "ArrayOfHostNvmeDiscoveryLog", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeDiscoveryLog>>(wrap_array_of_host_nvme_discovery_log), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeDiscoveryLog>>(v, wrap_array_of_host_nvme_discovery_log) }),
        ("StorageDrsRelocateDisabled", TypeInfo::Object { name: "StorageDrsRelocateDisabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsRelocateDisabled))) }),
        ("HostSriovDevicePoolInfo", TypeInfo::Object { name: "HostSriovDevicePoolInfo", builder_fn: || Box::new(HostSriovDevicePoolInfoFields::new()) }),
        ("ArrayOfLocalTSMEnabledEvent", TypeInfo::Value { name: "ArrayOfLocalTSMEnabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_local_tsm_enabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_local_tsm_enabled_event) }),
        ("PowerOnFtSecondaryFailed", TypeInfo::Object { name: "PowerOnFtSecondaryFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PowerOnFtSecondaryFailed))) }),
        ("ArrayOfDvsVmVnicNetworkResourcePoolRuntimeInfo", TypeInfo::Value { name: "ArrayOfDvsVmVnicNetworkResourcePoolRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DvsVmVnicNetworkResourcePoolRuntimeInfo>>(wrap_array_of_dvs_vm_vnic_network_resource_pool_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::DvsVmVnicNetworkResourcePoolRuntimeInfo>>(v, wrap_array_of_dvs_vm_vnic_network_resource_pool_runtime_info) }),
        ("HostHostBusAdapter", TypeInfo::Object { name: "HostHostBusAdapter", builder_fn: || Box::new(HostHostBusAdapterFields::new()) }),
        ("ArrayOfProfilePolicyMetadata", TypeInfo::Value { name: "ArrayOfProfilePolicyMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::ProfilePolicyMetadata>>(wrap_array_of_profile_policy_metadata), from_value: |v| from_val_with::<Vec<super::structs::ProfilePolicyMetadata>>(v, wrap_array_of_profile_policy_metadata) }),
        ("VmDiskFailedEvent", TypeInfo::Object { name: "VmDiskFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDiskFailedEvent))) }),
        ("ActiveVMsBlockingEVC", TypeInfo::Object { name: "ActiveVMsBlockingEVC", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ActiveVMsBlockingEvc))) }),
        ("InsufficientStandbyCpuResource", TypeInfo::Object { name: "InsufficientStandbyCpuResource", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientStandbyCpuResource))) }),
        ("VmConfigFileEncryptionInfo", TypeInfo::Object { name: "VmConfigFileEncryptionInfo", builder_fn: || Box::new(VmConfigFileEncryptionInfoFields::new()) }),
        ("ArrayOfPbmCapabilityTimeSpan", TypeInfo::Value { name: "ArrayOfPbmCapabilityTimeSpan", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityTimeSpan>>(wrap_array_of_pbm_capability_time_span), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityTimeSpan>>(v, wrap_array_of_pbm_capability_time_span) }),
        ("ArrayOfVsanObjectProfileInfo", TypeInfo::Value { name: "ArrayOfVsanObjectProfileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectProfileInfo>>(wrap_array_of_vsan_object_profile_info), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectProfileInfo>>(v, wrap_array_of_vsan_object_profile_info) }),
        ("ArrayOfDatabaseSizeParam", TypeInfo::Value { name: "ArrayOfDatabaseSizeParam", make_deserializer: || make_deser_with::<Vec<super::structs::DatabaseSizeParam>>(wrap_array_of_database_size_param), from_value: |v| from_val_with::<Vec<super::structs::DatabaseSizeParam>>(v, wrap_array_of_database_size_param) }),
        ("VirtualEthernetCardOption", TypeInfo::Object { name: "VirtualEthernetCardOption", builder_fn: || Box::new(VirtualEthernetCardOptionFields::new()) }),
        ("VirtualUSBXHCIControllerOption", TypeInfo::Object { name: "VirtualUSBXHCIControllerOption", builder_fn: || Box::new(VirtualUsbxhciControllerOptionFields::new()) }),
        ("InvalidFunctionTarget", TypeInfo::Object { name: "InvalidFunctionTarget", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidFunctionTarget))) }),
        ("ArrayOfFaultToleranceMetaSpec", TypeInfo::Value { name: "ArrayOfFaultToleranceMetaSpec", make_deserializer: || make_deser_with::<Vec<super::structs::FaultToleranceMetaSpec>>(wrap_array_of_fault_tolerance_meta_spec), from_value: |v| from_val_with::<Vec<super::structs::FaultToleranceMetaSpec>>(v, wrap_array_of_fault_tolerance_meta_spec) }),
        ("PbmLoggingConfiguration", TypeInfo::Object { name: "PbmLoggingConfiguration", builder_fn: || Box::new(PbmLoggingConfigurationFields::new()) }),
        ("DvsHostWentOutOfSyncEvent", TypeInfo::Object { name: "DvsHostWentOutOfSyncEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsHostWentOutOfSyncEvent))) }),
        ("AgentVsanStoragePolicy", TypeInfo::Object { name: "AgentVsanStoragePolicy", builder_fn: || Box::new(AgentVsanStoragePolicyFields::new()) }),
        ("ArrayOfVmMacConflictEvent", TypeInfo::Value { name: "ArrayOfVmMacConflictEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_mac_conflict_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_mac_conflict_event) }),
        ("ClusterComputeResourceValidationResultBase", TypeInfo::Object { name: "ClusterComputeResourceValidationResultBase", builder_fn: || Box::new(ClusterComputeResourceValidationResultBaseFields::new()) }),
        ("ArrayOfIscsiFaultVnicHasMultipleUplinks", TypeInfo::Value { name: "ArrayOfIscsiFaultVnicHasMultipleUplinks", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_vnic_has_multiple_uplinks), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_vnic_has_multiple_uplinks) }),
        ("ArrayOfDesiredSoftwareSpecComponentSpec", TypeInfo::Value { name: "ArrayOfDesiredSoftwareSpecComponentSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DesiredSoftwareSpecComponentSpec>>(wrap_array_of_desired_software_spec_component_spec), from_value: |v| from_val_with::<Vec<super::structs::DesiredSoftwareSpecComponentSpec>>(v, wrap_array_of_desired_software_spec_component_spec) }),
        ("ArrayOfCannotPlaceWithoutPrerequisiteMoves", TypeInfo::Value { name: "ArrayOfCannotPlaceWithoutPrerequisiteMoves", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_place_without_prerequisite_moves), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_place_without_prerequisite_moves) }),
        ("StorageDrsVmConfigInfo", TypeInfo::Object { name: "StorageDrsVmConfigInfo", builder_fn: || Box::new(StorageDrsVmConfigInfoFields::new()) }),
        ("ArrayOfVirtualDiskSeSparseBackingOption", TypeInfo::Value { name: "ArrayOfVirtualDiskSeSparseBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskSeSparseBackingOption>>(wrap_array_of_virtual_disk_se_sparse_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskSeSparseBackingOption>>(v, wrap_array_of_virtual_disk_se_sparse_backing_option) }),
        ("VirtualUSBRemoteHostBackingInfo", TypeInfo::Object { name: "VirtualUSBRemoteHostBackingInfo", builder_fn: || Box::new(VirtualUsbRemoteHostBackingInfoFields::new()) }),
        ("QueryPointInTimeReplicaParam", TypeInfo::Object { name: "QueryPointInTimeReplicaParam", builder_fn: || Box::new(QueryPointInTimeReplicaParamFields::new()) }),
        ("DistributedVirtualPortgroupNsxPortgroupOperationResult", TypeInfo::Object { name: "DistributedVirtualPortgroupNsxPortgroupOperationResult", builder_fn: || Box::new(DistributedVirtualPortgroupNsxPortgroupOperationResultFields::new()) }),
        ("PhysicalNicNameHint", TypeInfo::Object { name: "PhysicalNicNameHint", builder_fn: || Box::new(PhysicalNicNameHintFields::new()) }),
        ("KernelModuleSectionInfo", TypeInfo::Object { name: "KernelModuleSectionInfo", builder_fn: || Box::new(KernelModuleSectionInfoFields::new()) }),
        ("VsanClusterClomdLivenessResult", TypeInfo::Object { name: "VsanClusterClomdLivenessResult", builder_fn: || Box::new(VsanClusterClomdLivenessResultFields::new()) }),
        ("VmRemoteConsoleConnectedEvent", TypeInfo::Object { name: "VmRemoteConsoleConnectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRemoteConsoleConnectedEvent))) }),
        ("ArrayOfVirtualDeviceConfigSpecOperation", TypeInfo::Value { name: "ArrayOfVirtualDeviceConfigSpecOperation", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualDeviceConfigSpecOperationEnum>>(wrap_array_of_virtual_device_config_spec_operation), from_value: |v| from_val_with::<Vec<super::enums::VirtualDeviceConfigSpecOperationEnum>>(v, wrap_array_of_virtual_device_config_spec_operation) }),
        ("ArrayOfCustomizationLicenseDataMode", TypeInfo::Value { name: "ArrayOfCustomizationLicenseDataMode", make_deserializer: || make_deser_with::<Vec<super::enums::CustomizationLicenseDataModeEnum>>(wrap_array_of_customization_license_data_mode), from_value: |v| from_val_with::<Vec<super::enums::CustomizationLicenseDataModeEnum>>(v, wrap_array_of_customization_license_data_mode) }),
        ("HostNvmeDisconnectSpec", TypeInfo::Object { name: "HostNvmeDisconnectSpec", builder_fn: || Box::new(HostNvmeDisconnectSpecFields::new()) }),
        ("SnapshotCopyNotSupported", TypeInfo::Object { name: "SnapshotCopyNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotCopyNotSupported))) }),
        ("ArrayOfCustomizationSysprepFailed", TypeInfo::Value { name: "ArrayOfCustomizationSysprepFailed", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_customization_sysprep_failed), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_customization_sysprep_failed) }),
        ("VmSecondaryStartedEvent", TypeInfo::Object { name: "VmSecondaryStartedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmSecondaryStartedEvent))) }),
        ("CustomizationFixedIpV6", TypeInfo::Object { name: "CustomizationFixedIpV6", builder_fn: || Box::new(CustomizationFixedIpV6Fields::new()) }),
        ("ArrayOfScheduledTaskFailedEvent", TypeInfo::Value { name: "ArrayOfScheduledTaskFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_scheduled_task_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_scheduled_task_failed_event) }),
        ("DVSMacLearningPolicy", TypeInfo::Object { name: "DVSMacLearningPolicy", builder_fn: || Box::new(DvsMacLearningPolicyFields::new()) }),
        ("ArrayOfInsufficientNetworkResourcePoolCapacity", TypeInfo::Value { name: "ArrayOfInsufficientNetworkResourcePoolCapacity", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_network_resource_pool_capacity), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_network_resource_pool_capacity) }),
        ("ArrayOfEventFilterSpecByUsername", TypeInfo::Value { name: "ArrayOfEventFilterSpecByUsername", make_deserializer: || make_deser_with::<Vec<super::structs::EventFilterSpecByUsername>>(wrap_array_of_event_filter_spec_by_username), from_value: |v| from_val_with::<Vec<super::structs::EventFilterSpecByUsername>>(v, wrap_array_of_event_filter_spec_by_username) }),
        ("ArrayOfChangesInfoEventArgument", TypeInfo::Value { name: "ArrayOfChangesInfoEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::ChangesInfoEventArgument>>(wrap_array_of_changes_info_event_argument), from_value: |v| from_val_with::<Vec<super::structs::ChangesInfoEventArgument>>(v, wrap_array_of_changes_info_event_argument) }),
        ("ArrayOfNotSupportedHostForVsan", TypeInfo::Value { name: "ArrayOfNotSupportedHostForVsan", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_host_for_vsan), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_host_for_vsan) }),
        ("ArrayOfVirtualParallelPort", TypeInfo::Value { name: "ArrayOfVirtualParallelPort", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualParallelPort>>(wrap_array_of_virtual_parallel_port), from_value: |v| from_val_with::<Vec<super::structs::VirtualParallelPort>>(v, wrap_array_of_virtual_parallel_port) }),
        ("HostVirtualNicSpec", TypeInfo::Object { name: "HostVirtualNicSpec", builder_fn: || Box::new(HostVirtualNicSpecFields::new()) }),
        ("VirtualCdromRemotePassthroughBackingOption", TypeInfo::Object { name: "VirtualCdromRemotePassthroughBackingOption", builder_fn: || Box::new(VirtualCdromRemotePassthroughBackingOptionFields::new()) }),
        ("HostFeatureCapability", TypeInfo::Object { name: "HostFeatureCapability", builder_fn: || Box::new(HostFeatureCapabilityFields::new()) }),
        ("ArrayOfVsanFileServiceConfig", TypeInfo::Value { name: "ArrayOfVsanFileServiceConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServiceConfig>>(wrap_array_of_vsan_file_service_config), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServiceConfig>>(v, wrap_array_of_vsan_file_service_config) }),
        ("ClusterDrsFaultsFaultsByVirtualDisk", TypeInfo::Object { name: "ClusterDrsFaultsFaultsByVirtualDisk", builder_fn: || Box::new(ClusterDrsFaultsFaultsByVirtualDiskFields::new()) }),
        ("ArrayOfVirtualDiskModeNotSupported", TypeInfo::Value { name: "ArrayOfVirtualDiskModeNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_virtual_disk_mode_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_virtual_disk_mode_not_supported) }),
        ("IscsiFaultPnicInUse", TypeInfo::Object { name: "IscsiFaultPnicInUse", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultPnicInUse))) }),
        ("ArrayOfVmLogFileInfo", TypeInfo::Value { name: "ArrayOfVmLogFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VmLogFileInfo>>(wrap_array_of_vm_log_file_info), from_value: |v| from_val_with::<Vec<super::structs::VmLogFileInfo>>(v, wrap_array_of_vm_log_file_info) }),
        ("ArrayOfCustomizationLinuxIdentityFailed", TypeInfo::Value { name: "ArrayOfCustomizationLinuxIdentityFailed", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_customization_linux_identity_failed), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_customization_linux_identity_failed) }),
        ("VStorageObjectReconcileResultInvalidDiskPath", TypeInfo::Object { name: "VStorageObjectReconcileResultInvalidDiskPath", builder_fn: || Box::new(VStorageObjectReconcileResultInvalidDiskPathFields::new()) }),
        ("ClusterPreemptibleVmPairInfo", TypeInfo::Object { name: "ClusterPreemptibleVmPairInfo", builder_fn: || Box::new(ClusterPreemptibleVmPairInfoFields::new()) }),
        ("VirtualDiskMoId", TypeInfo::Object { name: "VirtualDiskMoId", builder_fn: || Box::new(VirtualDiskMoIdFields::new()) }),
        ("ArrayOfSmsAboutInfo", TypeInfo::Value { name: "ArrayOfSmsAboutInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SmsAboutInfo>>(wrap_array_of_sms_about_info), from_value: |v| from_val_with::<Vec<super::structs::SmsAboutInfo>>(v, wrap_array_of_sms_about_info) }),
        ("ArrayOfVFlashModuleNotSupported", TypeInfo::Value { name: "ArrayOfVFlashModuleNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_flash_module_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_flash_module_not_supported) }),
        ("ToolsUpgradeCancelled", TypeInfo::Object { name: "ToolsUpgradeCancelled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ToolsUpgradeCancelled))) }),
        ("EVCAdmissionFailedHostSoftwareForMode", TypeInfo::Object { name: "EVCAdmissionFailedHostSoftwareForMode", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcAdmissionFailedHostSoftwareForMode))) }),
        ("ArrayOfVsanDatastoreConfig", TypeInfo::Value { name: "ArrayOfVsanDatastoreConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_datastore_config_array)), from_value: |v| cast_to_vsan_datastore_config_array(from_value(v)?) }),
        ("EVCModeUnsupportedByHosts", TypeInfo::Object { name: "EVCModeUnsupportedByHosts", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcModeUnsupportedByHosts))) }),
        ("VsanObjIdentityQuerySpec", TypeInfo::Object { name: "VsanObjIdentityQuerySpec", builder_fn: || Box::new(VsanObjIdentityQuerySpecFields::new()) }),
        ("DVSTrafficShapingPolicy", TypeInfo::Object { name: "DVSTrafficShapingPolicy", builder_fn: || Box::new(DvsTrafficShapingPolicyFields::new()) }),
        ("ClusterOrchestrationInfo", TypeInfo::Object { name: "ClusterOrchestrationInfo", builder_fn: || Box::new(ClusterOrchestrationInfoFields::new()) }),
        ("NvdimmHealthInfo", TypeInfo::Object { name: "NvdimmHealthInfo", builder_fn: || Box::new(NvdimmHealthInfoFields::new()) }),
        ("GhostDvsProxySwitchDetectedEvent", TypeInfo::Object { name: "GhostDvsProxySwitchDetectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GhostDvsProxySwitchDetectedEvent))) }),
        ("HostDiskDimensions", TypeInfo::Object { name: "HostDiskDimensions", builder_fn: || Box::new(HostDiskDimensionsFields::new()) }),
        ("AuthorizationEvent", TypeInfo::Object { name: "AuthorizationEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AuthorizationEvent))) }),
        ("ArrayOfUsbScanCodeSpec", TypeInfo::Value { name: "ArrayOfUsbScanCodeSpec", make_deserializer: || make_deser_with::<Vec<super::structs::UsbScanCodeSpec>>(wrap_array_of_usb_scan_code_spec), from_value: |v| from_val_with::<Vec<super::structs::UsbScanCodeSpec>>(v, wrap_array_of_usb_scan_code_spec) }),
        ("HostDatastoreBrowserSearchSpec", TypeInfo::Object { name: "HostDatastoreBrowserSearchSpec", builder_fn: || Box::new(HostDatastoreBrowserSearchSpecFields::new()) }),
        ("IscsiFaultVnicInUse", TypeInfo::Object { name: "IscsiFaultVnicInUse", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultVnicInUse))) }),
        ("HostHardwareStatusInfo", TypeInfo::Object { name: "HostHardwareStatusInfo", builder_fn: || Box::new(HostHardwareStatusInfoFields::new()) }),
        ("GuestRegistryKeyAlreadyExists", TypeInfo::Object { name: "GuestRegistryKeyAlreadyExists", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestRegistryKeyAlreadyExists))) }),
        ("ArrayOfRepairTimerInfo", TypeInfo::Value { name: "ArrayOfRepairTimerInfo", make_deserializer: || make_deser_with::<Vec<super::structs::RepairTimerInfo>>(wrap_array_of_repair_timer_info), from_value: |v| from_val_with::<Vec<super::structs::RepairTimerInfo>>(v, wrap_array_of_repair_timer_info) }),
        ("EntityEventArgument", TypeInfo::Object { name: "EntityEventArgument", builder_fn: || Box::new(EntityEventArgumentFields::new()) }),
        ("SwitchIpUnset", TypeInfo::Object { name: "SwitchIpUnset", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SwitchIpUnset))) }),
        ("ArrayOfVirtualDiskRawDiskMappingVer1BackingOption", TypeInfo::Value { name: "ArrayOfVirtualDiskRawDiskMappingVer1BackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskRawDiskMappingVer1BackingOption>>(wrap_array_of_virtual_disk_raw_disk_mapping_ver_1_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskRawDiskMappingVer1BackingOption>>(v, wrap_array_of_virtual_disk_raw_disk_mapping_ver_1_backing_option) }),
        ("ArrayOfVsanObjectDetail", TypeInfo::Value { name: "ArrayOfVsanObjectDetail", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectDetail>>(wrap_array_of_vsan_object_detail), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectDetail>>(v, wrap_array_of_vsan_object_detail) }),
        ("ArrayOfStateAlarmExpression", TypeInfo::Value { name: "ArrayOfStateAlarmExpression", make_deserializer: || make_deser_with::<Vec<super::structs::StateAlarmExpression>>(wrap_array_of_state_alarm_expression), from_value: |v| from_val_with::<Vec<super::structs::StateAlarmExpression>>(v, wrap_array_of_state_alarm_expression) }),
        ("ArrayOfOvfExportFailed", TypeInfo::Value { name: "ArrayOfOvfExportFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_export_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_export_failed) }),
        ("ClusterHostInfraUpdateHaModeAction", TypeInfo::Object { name: "ClusterHostInfraUpdateHaModeAction", builder_fn: || Box::new(ClusterHostInfraUpdateHaModeActionFields::new()) }),
        ("ArrayOfHostTcpHbaCreateSpec", TypeInfo::Value { name: "ArrayOfHostTcpHbaCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostTcpHbaCreateSpec>>(wrap_array_of_host_tcp_hba_create_spec), from_value: |v| from_val_with::<Vec<super::structs::HostTcpHbaCreateSpec>>(v, wrap_array_of_host_tcp_hba_create_spec) }),
        ("ArrayOfVsanCapacityReservationInfo", TypeInfo::Value { name: "ArrayOfVsanCapacityReservationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanCapacityReservationInfo>>(wrap_array_of_vsan_capacity_reservation_info), from_value: |v| from_val_with::<Vec<super::structs::VsanCapacityReservationInfo>>(v, wrap_array_of_vsan_capacity_reservation_info) }),
        ("VsanVdsPgMigrationSpec", TypeInfo::Object { name: "VsanVdsPgMigrationSpec", builder_fn: || Box::new(VsanVdsPgMigrationSpecFields::new()) }),
        ("CnsSnapshotDeleteSpec", TypeInfo::Object { name: "CnsSnapshotDeleteSpec", builder_fn: || Box::new(CnsSnapshotDeleteSpecFields::new()) }),
        ("ArrayOfHostPartialMaintenanceModeRuntimeInfo", TypeInfo::Value { name: "ArrayOfHostPartialMaintenanceModeRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostPartialMaintenanceModeRuntimeInfo>>(wrap_array_of_host_partial_maintenance_mode_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::HostPartialMaintenanceModeRuntimeInfo>>(v, wrap_array_of_host_partial_maintenance_mode_runtime_info) }),
        ("AlarmDescription", TypeInfo::Object { name: "AlarmDescription", builder_fn: || Box::new(AlarmDescriptionFields::new()) }),
        ("ArrayOfVsanUpgradeSystemV2ObjectsPresentDuringDowngradeIssue", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemV2ObjectsPresentDuringDowngradeIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemV2ObjectsPresentDuringDowngradeIssue>>(wrap_array_of_vsan_upgrade_system_v_2_objects_present_during_downgrade_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemV2ObjectsPresentDuringDowngradeIssue>>(v, wrap_array_of_vsan_upgrade_system_v_2_objects_present_during_downgrade_issue) }),
        ("ArrayOfVsanClusterNetworkLoadTestResult", TypeInfo::Value { name: "ArrayOfVsanClusterNetworkLoadTestResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterNetworkLoadTestResult>>(wrap_array_of_vsan_cluster_network_load_test_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterNetworkLoadTestResult>>(v, wrap_array_of_vsan_cluster_network_load_test_result) }),
        ("VsanHostVsanDiskInfo", TypeInfo::Object { name: "VsanHostVsanDiskInfo", builder_fn: || Box::new(VsanHostVsanDiskInfoFields::new()) }),
        ("MethodDisabled", TypeInfo::Object { name: "MethodDisabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MethodDisabled))) }),
        ("HostWwnChangedEvent", TypeInfo::Object { name: "HostWwnChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostWwnChangedEvent))) }),
        ("ArrayOfDistributedVirtualSwitchManagerCompatibilityResult", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchManagerCompatibilityResult", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchManagerCompatibilityResult>>(wrap_array_of_distributed_virtual_switch_manager_compatibility_result), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchManagerCompatibilityResult>>(v, wrap_array_of_distributed_virtual_switch_manager_compatibility_result) }),
        ("MultipleSortSpecsNotSupported", TypeInfo::Object { name: "MultipleSortSpecsNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MultipleSortSpecsNotSupported))) }),
        ("HostMultipathInfoLogicalUnitPolicy", TypeInfo::Object { name: "HostMultipathInfoLogicalUnitPolicy", builder_fn: || Box::new(HostMultipathInfoLogicalUnitPolicyFields::new()) }),
        ("HostNetworkTrafficShapingPolicy", TypeInfo::Object { name: "HostNetworkTrafficShapingPolicy", builder_fn: || Box::new(HostNetworkTrafficShapingPolicyFields::new()) }),
        ("VirtualMachineConfigInfoDatastoreUrlPair", TypeInfo::Object { name: "VirtualMachineConfigInfoDatastoreUrlPair", builder_fn: || Box::new(VirtualMachineConfigInfoDatastoreUrlPairFields::new()) }),
        ("ArrayOfVsanVibSpec", TypeInfo::Value { name: "ArrayOfVsanVibSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVibSpec>>(wrap_array_of_vsan_vib_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanVibSpec>>(v, wrap_array_of_vsan_vib_spec) }),
        ("ArrayOfHostSubSpecification", TypeInfo::Value { name: "ArrayOfHostSubSpecification", make_deserializer: || make_deser_with::<Vec<super::structs::HostSubSpecification>>(wrap_array_of_host_sub_specification), from_value: |v| from_val_with::<Vec<super::structs::HostSubSpecification>>(v, wrap_array_of_host_sub_specification) }),
        ("InvalidController", TypeInfo::Object { name: "InvalidController", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidController))) }),
        ("VVolVmConfigFileUpdateResult", TypeInfo::Object { name: "VVolVmConfigFileUpdateResult", builder_fn: || Box::new(VVolVmConfigFileUpdateResultFields::new()) }),
        ("ArrayOfHostIncompatibleForRecordReplay", TypeInfo::Value { name: "ArrayOfHostIncompatibleForRecordReplay", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_incompatible_for_record_replay), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_incompatible_for_record_replay) }),
        ("OpaqueSwitchProfile", TypeInfo::Object { name: "OpaqueSwitchProfile", builder_fn: || Box::new(OpaqueSwitchProfileFields::new()) }),
        ("ArrayOfDistributedVirtualPortgroupNsxPortgroupOperationResult", TypeInfo::Value { name: "ArrayOfDistributedVirtualPortgroupNsxPortgroupOperationResult", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualPortgroupNsxPortgroupOperationResult>>(wrap_array_of_distributed_virtual_portgroup_nsx_portgroup_operation_result), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualPortgroupNsxPortgroupOperationResult>>(v, wrap_array_of_distributed_virtual_portgroup_nsx_portgroup_operation_result) }),
        ("VsanObjectSpaceSummary", TypeInfo::Object { name: "VsanObjectSpaceSummary", builder_fn: || Box::new(VsanObjectSpaceSummaryFields::new()) }),
        ("ArrayOfDvsUpgradedEvent", TypeInfo::Value { name: "ArrayOfDvsUpgradedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_upgraded_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_upgraded_event) }),
        ("ScheduledTaskSpec", TypeInfo::Object { name: "ScheduledTaskSpec", builder_fn: || Box::new(ScheduledTaskSpecFields::new()) }),
        ("HostConfigSpec", TypeInfo::Object { name: "HostConfigSpec", builder_fn: || Box::new(HostConfigSpecFields::new()) }),
        ("ArrayOfCustomizationUnknownName", TypeInfo::Value { name: "ArrayOfCustomizationUnknownName", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationUnknownName>>(wrap_array_of_customization_unknown_name), from_value: |v| from_val_with::<Vec<super::structs::CustomizationUnknownName>>(v, wrap_array_of_customization_unknown_name) }),
        ("DVPortConfigSpec", TypeInfo::Object { name: "DVPortConfigSpec", builder_fn: || Box::new(DvPortConfigSpecFields::new()) }),
        ("ArrayOfComplianceResult", TypeInfo::Value { name: "ArrayOfComplianceResult", make_deserializer: || make_deser_with::<Vec<super::structs::ComplianceResult>>(wrap_array_of_compliance_result), from_value: |v| from_val_with::<Vec<super::structs::ComplianceResult>>(v, wrap_array_of_compliance_result) }),
        ("ArrayOfVMotionNotLicensed", TypeInfo::Value { name: "ArrayOfVMotionNotLicensed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_motion_not_licensed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_motion_not_licensed) }),
        ("ArrayOfHostAssignableHardwareConfig", TypeInfo::Value { name: "ArrayOfHostAssignableHardwareConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostAssignableHardwareConfig>>(wrap_array_of_host_assignable_hardware_config), from_value: |v| from_val_with::<Vec<super::structs::HostAssignableHardwareConfig>>(v, wrap_array_of_host_assignable_hardware_config) }),
        ("ArrayOfVirtualMachineMksConnection", TypeInfo::Value { name: "ArrayOfVirtualMachineMksConnection", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineMksConnection>>(wrap_array_of_virtual_machine_mks_connection), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineMksConnection>>(v, wrap_array_of_virtual_machine_mks_connection) }),
        ("ArrayOfFileBackedVirtualDiskSpec", TypeInfo::Value { name: "ArrayOfFileBackedVirtualDiskSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_file_backed_virtual_disk_spec_array)), from_value: |v| cast_to_file_backed_virtual_disk_spec_array(from_value(v)?) }),
        ("HostHyperThreadScheduleInfo", TypeInfo::Object { name: "HostHyperThreadScheduleInfo", builder_fn: || Box::new(HostHyperThreadScheduleInfoFields::new()) }),
        ("VsanClusterHealthConfigs", TypeInfo::Object { name: "VsanClusterHealthConfigs", builder_fn: || Box::new(VsanClusterHealthConfigsFields::new()) }),
        ("ArrayOfVmFaultToleranceTurnedOffEvent", TypeInfo::Value { name: "ArrayOfVmFaultToleranceTurnedOffEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_fault_tolerance_turned_off_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_fault_tolerance_turned_off_event) }),
        ("ArrayOfStorageDrsStaleHmsCollection", TypeInfo::Value { name: "ArrayOfStorageDrsStaleHmsCollection", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_stale_hms_collection), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_stale_hms_collection) }),
        ("VmHookFailed", TypeInfo::Object { name: "VmHookFailed", builder_fn: || Box::new(VmHookFailedFields::new()) }),
        ("ArrayOfDatastoreEventArgument", TypeInfo::Value { name: "ArrayOfDatastoreEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::DatastoreEventArgument>>(wrap_array_of_datastore_event_argument), from_value: |v| from_val_with::<Vec<super::structs::DatastoreEventArgument>>(v, wrap_array_of_datastore_event_argument) }),
        ("DeviceHotPlugNotSupported", TypeInfo::Object { name: "DeviceHotPlugNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DeviceHotPlugNotSupported))) }),
        ("InsufficientResourcesFault", TypeInfo::Object { name: "InsufficientResourcesFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientResourcesFault))) }),
        ("ArrayOfMissingBmcSupport", TypeInfo::Value { name: "ArrayOfMissingBmcSupport", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_missing_bmc_support), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_missing_bmc_support) }),
        ("VsanDataObfuscationRule", TypeInfo::Object { name: "VsanDataObfuscationRule", builder_fn: || Box::new(VsanDataObfuscationRuleFields::new()) }),
        ("UnSupportedDatastoreForVFlash", TypeInfo::Object { name: "UnSupportedDatastoreForVFlash", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnSupportedDatastoreForVFlash))) }),
        ("ArrayOfAndAlarmExpression", TypeInfo::Value { name: "ArrayOfAndAlarmExpression", make_deserializer: || make_deser_with::<Vec<super::structs::AndAlarmExpression>>(wrap_array_of_and_alarm_expression), from_value: |v| from_val_with::<Vec<super::structs::AndAlarmExpression>>(v, wrap_array_of_and_alarm_expression) }),
        ("UserPrivilegeResult", TypeInfo::Object { name: "UserPrivilegeResult", builder_fn: || Box::new(UserPrivilegeResultFields::new()) }),
        ("ArrayOfReplicationDiskConfigFault", TypeInfo::Value { name: "ArrayOfReplicationDiskConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_replication_disk_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_replication_disk_config_fault) }),
        ("VMwareVspanPort", TypeInfo::Object { name: "VMwareVspanPort", builder_fn: || Box::new(VMwareVspanPortFields::new()) }),
        ("ArrayOfDvsOperationBulkFaultFaultOnHost", TypeInfo::Value { name: "ArrayOfDvsOperationBulkFaultFaultOnHost", make_deserializer: || make_deser_with::<Vec<super::structs::DvsOperationBulkFaultFaultOnHost>>(wrap_array_of_dvs_operation_bulk_fault_fault_on_host), from_value: |v| from_val_with::<Vec<super::structs::DvsOperationBulkFaultFaultOnHost>>(v, wrap_array_of_dvs_operation_bulk_fault_fault_on_host) }),
        ("CryptoManagerKmipServerStatus", TypeInfo::Object { name: "CryptoManagerKmipServerStatus", builder_fn: || Box::new(CryptoManagerKmipServerStatusFields::new()) }),
        ("ArrayOfResourcePoolCreatedEvent", TypeInfo::Value { name: "ArrayOfResourcePoolCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_resource_pool_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_resource_pool_created_event) }),
        ("VsanClusterNetworkPerfTaskSpec", TypeInfo::Object { name: "VsanClusterNetworkPerfTaskSpec", builder_fn: || Box::new(VsanClusterNetworkPerfTaskSpecFields::new()) }),
        ("ProfileCreateSpec", TypeInfo::Object { name: "ProfileCreateSpec", builder_fn: || Box::new(ProfileCreateSpecFields::new()) }),
        ("VirtualControllerOption", TypeInfo::Object { name: "VirtualControllerOption", builder_fn: || Box::new(VirtualControllerOptionFields::new()) }),
        ("PbmResourceInUse", TypeInfo::Object { name: "PbmResourceInUse", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmResourceInUse))) }),
        ("TaskFilterSpec", TypeInfo::Object { name: "TaskFilterSpec", builder_fn: || Box::new(TaskFilterSpecFields::new()) }),
        ("MountError", TypeInfo::Object { name: "MountError", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MountError))) }),
        ("ProfileUpdateFailedUpdateFailure", TypeInfo::Object { name: "ProfileUpdateFailedUpdateFailure", builder_fn: || Box::new(ProfileUpdateFailedUpdateFailureFields::new()) }),
        ("HostVffsVolume", TypeInfo::Object { name: "HostVffsVolume", builder_fn: || Box::new(HostVffsVolumeFields::new()) }),
        ("ArrayOfCpuIncompatible1ECX", TypeInfo::Value { name: "ArrayOfCpuIncompatible1ECX", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cpu_incompatible_1_ecx), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cpu_incompatible_1_ecx) }),
        ("ArrayOfNoPermissionEntityPrivileges", TypeInfo::Value { name: "ArrayOfNoPermissionEntityPrivileges", make_deserializer: || make_deser_with::<Vec<super::structs::NoPermissionEntityPrivileges>>(wrap_array_of_no_permission_entity_privileges), from_value: |v| from_val_with::<Vec<super::structs::NoPermissionEntityPrivileges>>(v, wrap_array_of_no_permission_entity_privileges) }),
        ("VirtualMachineTargetInfo", TypeInfo::Object { name: "VirtualMachineTargetInfo", builder_fn: || Box::new(VirtualMachineTargetInfoFields::new()) }),
        ("ArrayOfVirtualPCIPassthrough", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthrough", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthrough>>(wrap_array_of_virtual_pci_passthrough), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthrough>>(v, wrap_array_of_virtual_pci_passthrough) }),
        ("ArrayOfFeatureEVCMode", TypeInfo::Value { name: "ArrayOfFeatureEVCMode", make_deserializer: || make_deser_with::<Vec<super::structs::FeatureEvcMode>>(wrap_array_of_feature_evc_mode), from_value: |v| from_val_with::<Vec<super::structs::FeatureEvcMode>>(v, wrap_array_of_feature_evc_mode) }),
        ("VirtualCdromIsoBackingOption", TypeInfo::Object { name: "VirtualCdromIsoBackingOption", builder_fn: || Box::new(VirtualCdromIsoBackingOptionFields::new()) }),
        ("ArrayOfDvsHostLeftEvent", TypeInfo::Value { name: "ArrayOfDvsHostLeftEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_host_left_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_host_left_event) }),
        ("DrsDisabledOnVm", TypeInfo::Object { name: "DrsDisabledOnVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DrsDisabledOnVm))) }),
        ("ArrayOfHostCpuInfo", TypeInfo::Value { name: "ArrayOfHostCpuInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostCpuInfo>>(wrap_array_of_host_cpu_info), from_value: |v| from_val_with::<Vec<super::structs::HostCpuInfo>>(v, wrap_array_of_host_cpu_info) }),
        ("ClusterAgentInsufficientClusterResources", TypeInfo::Object { name: "ClusterAgentInsufficientClusterResources", builder_fn: || Box::new(ClusterAgentInsufficientClusterResourcesFields::new()) }),
        ("ArrayOfVmInstanceUuidAssignedEvent", TypeInfo::Value { name: "ArrayOfVmInstanceUuidAssignedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_instance_uuid_assigned_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_instance_uuid_assigned_event) }),
        ("VsanObjectIdentity", TypeInfo::Object { name: "VsanObjectIdentity", builder_fn: || Box::new(VsanObjectIdentityFields::new()) }),
        ("ArrayOfPbmCapabilityMetadataUniqueId", TypeInfo::Value { name: "ArrayOfPbmCapabilityMetadataUniqueId", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityMetadataUniqueId>>(wrap_array_of_pbm_capability_metadata_unique_id), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityMetadataUniqueId>>(v, wrap_array_of_pbm_capability_metadata_unique_id) }),
        ("ArrayOfHostShutdownEvent", TypeInfo::Value { name: "ArrayOfHostShutdownEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_shutdown_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_shutdown_event) }),
        ("AgencyScope", TypeInfo::Object { name: "AgencyScope", builder_fn: || Box::new(AgencyScopeFields::new()) }),
        ("SharesOption", TypeInfo::Object { name: "SharesOption", builder_fn: || Box::new(SharesOptionFields::new()) }),
        ("VirtualMachineVirtualNuma", TypeInfo::Object { name: "VirtualMachineVirtualNuma", builder_fn: || Box::new(VirtualMachineVirtualNumaFields::new()) }),
        ("ArrayOfVsanDataInTransitEncryptionConfig", TypeInfo::Value { name: "ArrayOfVsanDataInTransitEncryptionConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDataInTransitEncryptionConfig>>(wrap_array_of_vsan_data_in_transit_encryption_config), from_value: |v| from_val_with::<Vec<super::structs::VsanDataInTransitEncryptionConfig>>(v, wrap_array_of_vsan_data_in_transit_encryption_config) }),
        ("SecondaryVmAlreadyDisabled", TypeInfo::Object { name: "SecondaryVmAlreadyDisabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SecondaryVmAlreadyDisabled))) }),
        ("ArrayOfHostNvmeTransportParameters", TypeInfo::Value { name: "ArrayOfHostNvmeTransportParameters", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_nvme_transport_parameters_array)), from_value: |v| cast_to_host_nvme_transport_parameters_array(from_value(v)?) }),
        ("MethodName", TypeInfo::Value { name: "MethodName", make_deserializer: || make_deser_with::<String>(wrap_primitive_method_name), from_value: |v| from_val_with::<String>(v, wrap_primitive_method_name) }),
        ("DvsOperationBulkFaultFaultOnHost", TypeInfo::Object { name: "DvsOperationBulkFaultFaultOnHost", builder_fn: || Box::new(DvsOperationBulkFaultFaultOnHostFields::new()) }),
        ("ArrayOfHostLowLevelProvisioningManagerFileDeleteResult", TypeInfo::Value { name: "ArrayOfHostLowLevelProvisioningManagerFileDeleteResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostLowLevelProvisioningManagerFileDeleteResult>>(wrap_array_of_host_low_level_provisioning_manager_file_delete_result), from_value: |v| from_val_with::<Vec<super::structs::HostLowLevelProvisioningManagerFileDeleteResult>>(v, wrap_array_of_host_low_level_provisioning_manager_file_delete_result) }),
        ("ArrayOfPlacementAction", TypeInfo::Value { name: "ArrayOfPlacementAction", make_deserializer: || make_deser_with::<Vec<super::structs::PlacementAction>>(wrap_array_of_placement_action), from_value: |v| from_val_with::<Vec<super::structs::PlacementAction>>(v, wrap_array_of_placement_action) }),
        ("HostRdmaDeviceBacking", TypeInfo::Object { name: "HostRdmaDeviceBacking", builder_fn: || Box::new(HostRdmaDeviceBackingFields::new()) }),
        ("RollbackFailure", TypeInfo::Object { name: "RollbackFailure", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RollbackFailure))) }),
        ("ArrayOfVmfsDatastoreOption", TypeInfo::Value { name: "ArrayOfVmfsDatastoreOption", make_deserializer: || make_deser_with::<Vec<super::structs::VmfsDatastoreOption>>(wrap_array_of_vmfs_datastore_option), from_value: |v| from_val_with::<Vec<super::structs::VmfsDatastoreOption>>(v, wrap_array_of_vmfs_datastore_option) }),
        ("PhysicalNicIpHint", TypeInfo::Object { name: "PhysicalNicIpHint", builder_fn: || Box::new(PhysicalNicIpHintFields::new()) }),
        ("ProviderUnregistrationFault", TypeInfo::Object { name: "ProviderUnregistrationFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProviderUnregistrationFault))) }),
        ("ArrayOfExtendedEvent", TypeInfo::Value { name: "ArrayOfExtendedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_extended_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_extended_event) }),
        ("GuestRegistryKeyParentVolatile", TypeInfo::Object { name: "GuestRegistryKeyParentVolatile", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestRegistryKeyParentVolatile))) }),
        ("CnsSnapshotId", TypeInfo::Object { name: "CnsSnapshotId", builder_fn: || Box::new(CnsSnapshotIdFields::new()) }),
        ("GroupAlarmAction", TypeInfo::Object { name: "GroupAlarmAction", builder_fn: || Box::new(GroupAlarmActionFields::new()) }),
        ("ArrayOfHostGraphicsInfo", TypeInfo::Value { name: "ArrayOfHostGraphicsInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostGraphicsInfo>>(wrap_array_of_host_graphics_info), from_value: |v| from_val_with::<Vec<super::structs::HostGraphicsInfo>>(v, wrap_array_of_host_graphics_info) }),
        ("VirtualPS2Controller", TypeInfo::Object { name: "VirtualPS2Controller", builder_fn: || Box::new(VirtualPs2ControllerFields::new()) }),
        ("MetricAlarmOperator", TypeInfo::Value { name: "MetricAlarmOperator", make_deserializer: || make_deser_with::<super::enums::MetricAlarmOperatorEnum>(wrap_metric_alarm_operator), from_value: |v| from_val_with::<super::enums::MetricAlarmOperatorEnum>(v, wrap_metric_alarm_operator) }),
        ("VAppProductInfo", TypeInfo::Object { name: "VAppProductInfo", builder_fn: || Box::new(VAppProductInfoFields::new()) }),
        ("ArrayOfGuestRegistryValueNotFound", TypeInfo::Value { name: "ArrayOfGuestRegistryValueNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_registry_value_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_registry_value_not_found) }),
        ("CryptoKeyId", TypeInfo::Object { name: "CryptoKeyId", builder_fn: || Box::new(CryptoKeyIdFields::new()) }),
        ("DvsHealthStatusChangeEvent", TypeInfo::Object { name: "DvsHealthStatusChangeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsHealthStatusChangeEvent))) }),
        ("ArrayOfVmMetadataManagerFault", TypeInfo::Value { name: "ArrayOfVmMetadataManagerFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_metadata_manager_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_metadata_manager_fault) }),
        ("VsanObjectOverallHealth", TypeInfo::Object { name: "VsanObjectOverallHealth", builder_fn: || Box::new(VsanObjectOverallHealthFields::new()) }),
        ("ArrayOfReplicationGroupId", TypeInfo::Value { name: "ArrayOfReplicationGroupId", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicationGroupId>>(wrap_array_of_replication_group_id), from_value: |v| from_val_with::<Vec<super::structs::ReplicationGroupId>>(v, wrap_array_of_replication_group_id) }),
        ("ArrayOfFileNotWritable", TypeInfo::Value { name: "ArrayOfFileNotWritable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_file_not_writable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_file_not_writable) }),
        ("ArrayOfVsanPerfThreshold", TypeInfo::Value { name: "ArrayOfVsanPerfThreshold", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfThreshold>>(wrap_array_of_vsan_perf_threshold), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfThreshold>>(v, wrap_array_of_vsan_perf_threshold) }),
        ("ArrayOfDeviceUnsupportedForVmPlatform", TypeInfo::Value { name: "ArrayOfDeviceUnsupportedForVmPlatform", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_device_unsupported_for_vm_platform), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_device_unsupported_for_vm_platform) }),
        ("ArrayOfHostServiceInfo", TypeInfo::Value { name: "ArrayOfHostServiceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostServiceInfo>>(wrap_array_of_host_service_info), from_value: |v| from_val_with::<Vec<super::structs::HostServiceInfo>>(v, wrap_array_of_host_service_info) }),
        ("ArrayOfHostInternetScsiHbaAuthenticationProperties", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaAuthenticationProperties", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaAuthenticationProperties>>(wrap_array_of_host_internet_scsi_hba_authentication_properties), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaAuthenticationProperties>>(v, wrap_array_of_host_internet_scsi_hba_authentication_properties) }),
        ("DVSFailureCriteria", TypeInfo::Object { name: "DVSFailureCriteria", builder_fn: || Box::new(DvsFailureCriteriaFields::new()) }),
        ("CnsSnapshotVolumeSource", TypeInfo::Object { name: "CnsSnapshotVolumeSource", builder_fn: || Box::new(CnsSnapshotVolumeSourceFields::new()) }),
        ("VmMessageErrorEvent", TypeInfo::Object { name: "VmMessageErrorEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmMessageErrorEvent))) }),
        ("ArrayOfVirtualEthernetCardResourceAllocation", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardResourceAllocation", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEthernetCardResourceAllocation>>(wrap_array_of_virtual_ethernet_card_resource_allocation), from_value: |v| from_val_with::<Vec<super::structs::VirtualEthernetCardResourceAllocation>>(v, wrap_array_of_virtual_ethernet_card_resource_allocation) }),
        ("VcAgentUpgradedEvent", TypeInfo::Object { name: "VcAgentUpgradedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VcAgentUpgradedEvent))) }),
        ("ArrayOfVsanResourceCheckResult", TypeInfo::Value { name: "ArrayOfVsanResourceCheckResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_resource_check_result_array)), from_value: |v| cast_to_vsan_resource_check_result_array(from_value(v)?) }),
        ("ArrayOfInsufficientPerCpuCapacity", TypeInfo::Value { name: "ArrayOfInsufficientPerCpuCapacity", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_per_cpu_capacity), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_per_cpu_capacity) }),
        ("HostStorageOperationalInfo", TypeInfo::Object { name: "HostStorageOperationalInfo", builder_fn: || Box::new(HostStorageOperationalInfoFields::new()) }),
        ("ArrayOfAlarmEvent", TypeInfo::Value { name: "ArrayOfAlarmEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_event) }),
        ("ArrayOfHostConnectInfo", TypeInfo::Value { name: "ArrayOfHostConnectInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostConnectInfo>>(wrap_array_of_host_connect_info), from_value: |v| from_val_with::<Vec<super::structs::HostConnectInfo>>(v, wrap_array_of_host_connect_info) }),
        ("VsanHostRuntimeInfoDiskIssue", TypeInfo::Object { name: "VsanHostRuntimeInfoDiskIssue", builder_fn: || Box::new(VsanHostRuntimeInfoDiskIssueFields::new()) }),
        ("ArrayOfVirtualSCSISharing", TypeInfo::Value { name: "ArrayOfVirtualSCSISharing", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualScsiSharingEnum>>(wrap_array_of_virtual_scsi_sharing), from_value: |v| from_val_with::<Vec<super::enums::VirtualScsiSharingEnum>>(v, wrap_array_of_virtual_scsi_sharing) }),
        ("ArrayOfNoVcManagedIpConfigured", TypeInfo::Value { name: "ArrayOfNoVcManagedIpConfigured", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_vc_managed_ip_configured), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_vc_managed_ip_configured) }),
        ("ArrayOfVirtualFloppyDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualFloppyDeviceBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualFloppyDeviceBackingOption>>(wrap_array_of_virtual_floppy_device_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualFloppyDeviceBackingOption>>(v, wrap_array_of_virtual_floppy_device_backing_option) }),
        ("VsanWhatIfEvacDetail", TypeInfo::Object { name: "VsanWhatIfEvacDetail", builder_fn: || Box::new(VsanWhatIfEvacDetailFields::new()) }),
        ("HostGraphicsInfo", TypeInfo::Object { name: "HostGraphicsInfo", builder_fn: || Box::new(HostGraphicsInfoFields::new()) }),
        ("ClusterAgentVmNotRemoved", TypeInfo::Object { name: "ClusterAgentVmNotRemoved", builder_fn: || Box::new(ClusterAgentVmNotRemovedFields::new()) }),
        ("ArrayOfClusterInfraUpdateHaConfigInfo", TypeInfo::Value { name: "ArrayOfClusterInfraUpdateHaConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterInfraUpdateHaConfigInfo>>(wrap_array_of_cluster_infra_update_ha_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterInfraUpdateHaConfigInfo>>(v, wrap_array_of_cluster_infra_update_ha_config_info) }),
        ("ArrayOfStorageDrsVmConfigSpec", TypeInfo::Value { name: "ArrayOfStorageDrsVmConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsVmConfigSpec>>(wrap_array_of_storage_drs_vm_config_spec), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsVmConfigSpec>>(v, wrap_array_of_storage_drs_vm_config_spec) }),
        ("StorageCapability", TypeInfo::Object { name: "StorageCapability", builder_fn: || Box::new(StorageCapabilityFields::new()) }),
        ("ArrayOfHostBlockAdapterTargetTransport", TypeInfo::Value { name: "ArrayOfHostBlockAdapterTargetTransport", make_deserializer: || make_deser_with::<Vec<super::structs::HostBlockAdapterTargetTransport>>(wrap_array_of_host_block_adapter_target_transport), from_value: |v| from_val_with::<Vec<super::structs::HostBlockAdapterTargetTransport>>(v, wrap_array_of_host_block_adapter_target_transport) }),
        ("VsanDownloadItem", TypeInfo::Object { name: "VsanDownloadItem", builder_fn: || Box::new(VsanDownloadItemFields::new()) }),
        ("VmConfigMissingEvent", TypeInfo::Object { name: "VmConfigMissingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmConfigMissingEvent))) }),
        ("ArrayOfVsanFileShareConfig", TypeInfo::Value { name: "ArrayOfVsanFileShareConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShareConfig>>(wrap_array_of_vsan_file_share_config), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShareConfig>>(v, wrap_array_of_vsan_file_share_config) }),
        ("LicenseFeatureInfoState", TypeInfo::Value { name: "LicenseFeatureInfoState", make_deserializer: || make_deser_with::<super::enums::LicenseFeatureInfoStateEnum>(wrap_license_feature_info_state), from_value: |v| from_val_with::<super::enums::LicenseFeatureInfoStateEnum>(v, wrap_license_feature_info_state) }),
        ("ArrayOfDistributedVirtualSwitchHostMemberPnicSpec", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchHostMemberPnicSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberPnicSpec>>(wrap_array_of_distributed_virtual_switch_host_member_pnic_spec), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberPnicSpec>>(v, wrap_array_of_distributed_virtual_switch_host_member_pnic_spec) }),
        ("ArrayOfOvfOptionInfo", TypeInfo::Value { name: "ArrayOfOvfOptionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::OvfOptionInfo>>(wrap_array_of_ovf_option_info), from_value: |v| from_val_with::<Vec<super::structs::OvfOptionInfo>>(v, wrap_array_of_ovf_option_info) }),
        ("VsanIscsiTargetCommonInfo", TypeInfo::Object { name: "VsanIscsiTargetCommonInfo", builder_fn: || Box::new(VsanIscsiTargetCommonInfoFields::new()) }),
        ("FilterInUse", TypeInfo::Object { name: "FilterInUse", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FilterInUse))) }),
        ("ArrayOfRuleViolation", TypeInfo::Value { name: "ArrayOfRuleViolation", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_rule_violation), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_rule_violation) }),
        ("ArrayOfGuestRegValueExpandStringSpec", TypeInfo::Value { name: "ArrayOfGuestRegValueExpandStringSpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegValueExpandStringSpec>>(wrap_array_of_guest_reg_value_expand_string_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegValueExpandStringSpec>>(v, wrap_array_of_guest_reg_value_expand_string_spec) }),
        ("IsoImageFileInfo", TypeInfo::Object { name: "IsoImageFileInfo", builder_fn: || Box::new(IsoImageFileInfoFields::new()) }),
        ("ArrayOfOvfUnsupportedSubType", TypeInfo::Value { name: "ArrayOfOvfUnsupportedSubType", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_sub_type), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_sub_type) }),
        ("ArrayOfNonVIWorkloadDetectedOnDatastoreEvent", TypeInfo::Value { name: "ArrayOfNonVIWorkloadDetectedOnDatastoreEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_non_vi_workload_detected_on_datastore_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_non_vi_workload_detected_on_datastore_event) }),
        ("ArrayOfStorageIORMConfigOption", TypeInfo::Value { name: "ArrayOfStorageIORMConfigOption", make_deserializer: || make_deser_with::<Vec<super::structs::StorageIormConfigOption>>(wrap_array_of_storage_iorm_config_option), from_value: |v| from_val_with::<Vec<super::structs::StorageIormConfigOption>>(v, wrap_array_of_storage_iorm_config_option) }),
        ("ArrayOfVmDeployFailedEvent", TypeInfo::Value { name: "ArrayOfVmDeployFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_deploy_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_deploy_failed_event) }),
        ("ArrayOfPerfEntityMetricBase", TypeInfo::Value { name: "ArrayOfPerfEntityMetricBase", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_perf_entity_metric_base_array)), from_value: |v| cast_to_perf_entity_metric_base_array(from_value(v)?) }),
        ("HostMultipathInfoLogicalUnitStorageArrayTypePolicy", TypeInfo::Object { name: "HostMultipathInfoLogicalUnitStorageArrayTypePolicy", builder_fn: || Box::new(HostMultipathInfoLogicalUnitStorageArrayTypePolicyFields::new()) }),
        ("ArrayOfComplianceProfile", TypeInfo::Value { name: "ArrayOfComplianceProfile", make_deserializer: || make_deser_with::<Vec<super::structs::ComplianceProfile>>(wrap_array_of_compliance_profile), from_value: |v| from_val_with::<Vec<super::structs::ComplianceProfile>>(v, wrap_array_of_compliance_profile) }),
        ("EVCAdmissionFailedCPUFeaturesForMode", TypeInfo::Object { name: "EVCAdmissionFailedCPUFeaturesForMode", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcAdmissionFailedCpuFeaturesForMode))) }),
        ("GuestRegKeyNameSpec", TypeInfo::Object { name: "GuestRegKeyNameSpec", builder_fn: || Box::new(GuestRegKeyNameSpecFields::new()) }),
        ("ClusterNotAttemptedVmInfo", TypeInfo::Object { name: "ClusterNotAttemptedVmInfo", builder_fn: || Box::new(ClusterNotAttemptedVmInfoFields::new()) }),
        ("VsanPerfQuerySpec", TypeInfo::Object { name: "VsanPerfQuerySpec", builder_fn: || Box::new(VsanPerfQuerySpecFields::new()) }),
        ("ArrayOfHostAuthenticationManagerInfo", TypeInfo::Value { name: "ArrayOfHostAuthenticationManagerInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostAuthenticationManagerInfo>>(wrap_array_of_host_authentication_manager_info), from_value: |v| from_val_with::<Vec<super::structs::HostAuthenticationManagerInfo>>(v, wrap_array_of_host_authentication_manager_info) }),
        ("HostIpConfigIpV6Address", TypeInfo::Object { name: "HostIpConfigIpV6Address", builder_fn: || Box::new(HostIpConfigIpV6AddressFields::new()) }),
        ("InsufficientFailoverResourcesFault", TypeInfo::Object { name: "InsufficientFailoverResourcesFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientFailoverResourcesFault))) }),
        ("TaskInProgress", TypeInfo::Object { name: "TaskInProgress", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TaskInProgress))) }),
        ("VmDasUpdateOkEvent", TypeInfo::Object { name: "VmDasUpdateOkEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDasUpdateOkEvent))) }),
        ("ArrayOfEamSystemFault", TypeInfo::Value { name: "ArrayOfEamSystemFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eam_system_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eam_system_fault) }),
        ("ArrayOfNetIpStackInfoDefaultRouter", TypeInfo::Value { name: "ArrayOfNetIpStackInfoDefaultRouter", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpStackInfoDefaultRouter>>(wrap_array_of_net_ip_stack_info_default_router), from_value: |v| from_val_with::<Vec<super::structs::NetIpStackInfoDefaultRouter>>(v, wrap_array_of_net_ip_stack_info_default_router) }),
        ("ArrayOfEVCAdmissionFailed", TypeInfo::Value { name: "ArrayOfEVCAdmissionFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_admission_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_admission_failed) }),
        ("ArrayOfPassiveNodeNetworkSpec", TypeInfo::Value { name: "ArrayOfPassiveNodeNetworkSpec", make_deserializer: || make_deser_with::<Vec<super::structs::PassiveNodeNetworkSpec>>(wrap_array_of_passive_node_network_spec), from_value: |v| from_val_with::<Vec<super::structs::PassiveNodeNetworkSpec>>(v, wrap_array_of_passive_node_network_spec) }),
        ("ArrayOfBadUsernameSessionEvent", TypeInfo::Value { name: "ArrayOfBadUsernameSessionEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_bad_username_session_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_bad_username_session_event) }),
        ("ArrayOfHostNatServiceSpec", TypeInfo::Value { name: "ArrayOfHostNatServiceSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostNatServiceSpec>>(wrap_array_of_host_nat_service_spec), from_value: |v| from_val_with::<Vec<super::structs::HostNatServiceSpec>>(v, wrap_array_of_host_nat_service_spec) }),
        ("ArrayOfVlanProfile", TypeInfo::Value { name: "ArrayOfVlanProfile", make_deserializer: || make_deser_with::<Vec<super::structs::VlanProfile>>(wrap_array_of_vlan_profile), from_value: |v| from_val_with::<Vec<super::structs::VlanProfile>>(v, wrap_array_of_vlan_profile) }),
        ("VsanIODiagnosticsTargetStats", TypeInfo::Object { name: "VsanIODiagnosticsTargetStats", builder_fn: || Box::new(VsanIoDiagnosticsTargetStatsFields::new()) }),
        ("TaskReasonSchedule", TypeInfo::Object { name: "TaskReasonSchedule", builder_fn: || Box::new(TaskReasonScheduleFields::new()) }),
        ("ArrayOfVirtualBusLogicControllerOption", TypeInfo::Value { name: "ArrayOfVirtualBusLogicControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualBusLogicControllerOption>>(wrap_array_of_virtual_bus_logic_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualBusLogicControllerOption>>(v, wrap_array_of_virtual_bus_logic_controller_option) }),
        ("ArrayOfVirtualHardware", TypeInfo::Value { name: "ArrayOfVirtualHardware", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualHardware>>(wrap_array_of_virtual_hardware), from_value: |v| from_val_with::<Vec<super::structs::VirtualHardware>>(v, wrap_array_of_virtual_hardware) }),
        ("ArrayOfElementDescription", TypeInfo::Value { name: "ArrayOfElementDescription", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_element_description_array)), from_value: |v| cast_to_element_description_array(from_value(v)?) }),
        ("VsanIscsiVipConfig", TypeInfo::Object { name: "VsanIscsiVipConfig", builder_fn: || Box::new(VsanIscsiVipConfigFields::new()) }),
        ("VirtualUSBOption", TypeInfo::Object { name: "VirtualUSBOption", builder_fn: || Box::new(VirtualUsbOptionFields::new()) }),
        ("ArrayOfClusterPreemptibleVmPairInfo", TypeInfo::Value { name: "ArrayOfClusterPreemptibleVmPairInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterPreemptibleVmPairInfo>>(wrap_array_of_cluster_preemptible_vm_pair_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterPreemptibleVmPairInfo>>(v, wrap_array_of_cluster_preemptible_vm_pair_info) }),
        ("GuestRegistryKeyFault", TypeInfo::Object { name: "GuestRegistryKeyFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestRegistryKeyFault))) }),
        ("ArrayOfInvalidNetworkInType", TypeInfo::Value { name: "ArrayOfInvalidNetworkInType", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_network_in_type), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_network_in_type) }),
        ("EightHostLimitViolated", TypeInfo::Object { name: "EightHostLimitViolated", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EightHostLimitViolated))) }),
        ("NetworkInaccessible", TypeInfo::Object { name: "NetworkInaccessible", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NetworkInaccessible))) }),
        ("HostSystemHealthInfo", TypeInfo::Object { name: "HostSystemHealthInfo", builder_fn: || Box::new(HostSystemHealthInfoFields::new()) }),
        ("ArrayOfCustomizationUserData", TypeInfo::Value { name: "ArrayOfCustomizationUserData", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationUserData>>(wrap_array_of_customization_user_data), from_value: |v| from_val_with::<Vec<super::structs::CustomizationUserData>>(v, wrap_array_of_customization_user_data) }),
        ("WipeDiskFault", TypeInfo::Object { name: "WipeDiskFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::WipeDiskFault))) }),
        ("VirtualMachineVMCIDeviceFilterSpec", TypeInfo::Object { name: "VirtualMachineVMCIDeviceFilterSpec", builder_fn: || Box::new(VirtualMachineVmciDeviceFilterSpecFields::new()) }),
        ("ArrayOfVimVsanHostVsanDiskManagementSystemCapability", TypeInfo::Value { name: "ArrayOfVimVsanHostVsanDiskManagementSystemCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostVsanDiskManagementSystemCapability>>(wrap_array_of_vim_vsan_host_vsan_disk_management_system_capability), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostVsanDiskManagementSystemCapability>>(v, wrap_array_of_vim_vsan_host_vsan_disk_management_system_capability) }),
        ("PhysicalNicSpec", TypeInfo::Object { name: "PhysicalNicSpec", builder_fn: || Box::new(PhysicalNicSpecFields::new()) }),
        ("ArrayOfVirtualMachineVMCIDeviceFilterSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineVMCIDeviceFilterSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVmciDeviceFilterSpec>>(wrap_array_of_virtual_machine_vmci_device_filter_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVmciDeviceFilterSpec>>(v, wrap_array_of_virtual_machine_vmci_device_filter_spec) }),
        ("ArrayOfClusterAgentHostInPartialMaintenanceMode", TypeInfo::Value { name: "ArrayOfClusterAgentHostInPartialMaintenanceMode", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentHostInPartialMaintenanceMode>>(wrap_array_of_cluster_agent_host_in_partial_maintenance_mode), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentHostInPartialMaintenanceMode>>(v, wrap_array_of_cluster_agent_host_in_partial_maintenance_mode) }),
        ("VmReconfiguredEvent", TypeInfo::Object { name: "VmReconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmReconfiguredEvent))) }),
        ("VsanMountPrecheckItem", TypeInfo::Object { name: "VsanMountPrecheckItem", builder_fn: || Box::new(VsanMountPrecheckItemFields::new()) }),
        ("ArrayOfScheduledTaskStartedEvent", TypeInfo::Value { name: "ArrayOfScheduledTaskStartedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_scheduled_task_started_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_scheduled_task_started_event) }),
        ("ArrayOfDrsResourceConfigureSyncedEvent", TypeInfo::Value { name: "ArrayOfDrsResourceConfigureSyncedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_resource_configure_synced_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_resource_configure_synced_event) }),
        ("ArrayOfServerLicenseExpiredEvent", TypeInfo::Value { name: "ArrayOfServerLicenseExpiredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_server_license_expired_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_server_license_expired_event) }),
        ("ArrayOfKernelModuleInfo", TypeInfo::Value { name: "ArrayOfKernelModuleInfo", make_deserializer: || make_deser_with::<Vec<super::structs::KernelModuleInfo>>(wrap_array_of_kernel_module_info), from_value: |v| from_val_with::<Vec<super::structs::KernelModuleInfo>>(v, wrap_array_of_kernel_module_info) }),
        ("ArrayOfVmInstanceUuidChangedEvent", TypeInfo::Value { name: "ArrayOfVmInstanceUuidChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_instance_uuid_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_instance_uuid_changed_event) }),
        ("ArrayOfNetIpRouteConfigInfo", TypeInfo::Value { name: "ArrayOfNetIpRouteConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpRouteConfigInfo>>(wrap_array_of_net_ip_route_config_info), from_value: |v| from_val_with::<Vec<super::structs::NetIpRouteConfigInfo>>(v, wrap_array_of_net_ip_route_config_info) }),
        ("ArrayOfVsanResourceHealth", TypeInfo::Value { name: "ArrayOfVsanResourceHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanResourceHealth>>(wrap_array_of_vsan_resource_health), from_value: |v| from_val_with::<Vec<super::structs::VsanResourceHealth>>(v, wrap_array_of_vsan_resource_health) }),
        ("ArrayOfProviderSyncFailed", TypeInfo::Value { name: "ArrayOfProviderSyncFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_provider_sync_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_provider_sync_failed) }),
        ("HostShutdownEvent", TypeInfo::Object { name: "HostShutdownEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostShutdownEvent))) }),
        ("ArrayOfPatchMetadataCorrupted", TypeInfo::Value { name: "ArrayOfPatchMetadataCorrupted", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_patch_metadata_corrupted), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_patch_metadata_corrupted) }),
        ("ArrayOfConcurrentAccess", TypeInfo::Value { name: "ArrayOfConcurrentAccess", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_concurrent_access), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_concurrent_access) }),
        ("ReplicationVmInProgressFault", TypeInfo::Object { name: "ReplicationVmInProgressFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReplicationVmInProgressFault))) }),
        ("ArrayOfDvsIpNetworkRuleQualifier", TypeInfo::Value { name: "ArrayOfDvsIpNetworkRuleQualifier", make_deserializer: || make_deser_with::<Vec<super::structs::DvsIpNetworkRuleQualifier>>(wrap_array_of_dvs_ip_network_rule_qualifier), from_value: |v| from_val_with::<Vec<super::structs::DvsIpNetworkRuleQualifier>>(v, wrap_array_of_dvs_ip_network_rule_qualifier) }),
        ("ArrayOfVirtualMachineDatastoreVolumeOption", TypeInfo::Value { name: "ArrayOfVirtualMachineDatastoreVolumeOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineDatastoreVolumeOption>>(wrap_array_of_virtual_machine_datastore_volume_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineDatastoreVolumeOption>>(v, wrap_array_of_virtual_machine_datastore_volume_option) }),
        ("PerfSummaryType", TypeInfo::Value { name: "PerfSummaryType", make_deserializer: || make_deser_with::<super::enums::PerfSummaryTypeEnum>(wrap_perf_summary_type), from_value: |v| from_val_with::<super::enums::PerfSummaryTypeEnum>(v, wrap_perf_summary_type) }),
        ("VibRequirementsNotMetByHost", TypeInfo::Object { name: "VibRequirementsNotMetByHost", builder_fn: || Box::new(VibRequirementsNotMetByHostFields::new()) }),
        ("FaultToleranceSecondaryOpResult", TypeInfo::Object { name: "FaultToleranceSecondaryOpResult", builder_fn: || Box::new(FaultToleranceSecondaryOpResultFields::new()) }),
        ("ArrayOfNoGateway", TypeInfo::Value { name: "ArrayOfNoGateway", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_gateway), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_gateway) }),
        ("ArrayOfCnsVolume", TypeInfo::Value { name: "ArrayOfCnsVolume", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolume>>(wrap_array_of_cns_volume), from_value: |v| from_val_with::<Vec<super::structs::CnsVolume>>(v, wrap_array_of_cns_volume) }),
        ("ArrayOfDasVmPriority", TypeInfo::Value { name: "ArrayOfDasVmPriority", make_deserializer: || make_deser_with::<Vec<super::enums::DasVmPriorityEnum>>(wrap_array_of_das_vm_priority), from_value: |v| from_val_with::<Vec<super::enums::DasVmPriorityEnum>>(v, wrap_array_of_das_vm_priority) }),
        ("ArrayOfVsanHclDiskInfo", TypeInfo::Value { name: "ArrayOfVsanHclDiskInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclDiskInfo>>(wrap_array_of_vsan_hcl_disk_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHclDiskInfo>>(v, wrap_array_of_vsan_hcl_disk_info) }),
        ("UpdateSet", TypeInfo::Object { name: "UpdateSet", builder_fn: || Box::new(UpdateSetFields::new()) }),
        ("CnsNFSAccessControlSpec", TypeInfo::Object { name: "CnsNFSAccessControlSpec", builder_fn: || Box::new(CnsNfsAccessControlSpecFields::new()) }),
        ("ArrayOfVsanHealthThreshold", TypeInfo::Value { name: "ArrayOfVsanHealthThreshold", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthThreshold>>(wrap_array_of_vsan_health_threshold), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthThreshold>>(v, wrap_array_of_vsan_health_threshold) }),
        ("ArrayOfProfileDescriptionSection", TypeInfo::Value { name: "ArrayOfProfileDescriptionSection", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileDescriptionSection>>(wrap_array_of_profile_description_section), from_value: |v| from_val_with::<Vec<super::structs::ProfileDescriptionSection>>(v, wrap_array_of_profile_description_section) }),
        ("ArrayOfNvdimmNamespaceInfo", TypeInfo::Value { name: "ArrayOfNvdimmNamespaceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmNamespaceInfo>>(wrap_array_of_nvdimm_namespace_info), from_value: |v| from_val_with::<Vec<super::structs::NvdimmNamespaceInfo>>(v, wrap_array_of_nvdimm_namespace_info) }),
        ("HostRdmaHba", TypeInfo::Object { name: "HostRdmaHba", builder_fn: || Box::new(HostRdmaHbaFields::new()) }),
        ("InheritablePolicy", TypeInfo::Object { name: "InheritablePolicy", builder_fn: || Box::new(InheritablePolicyFields::new()) }),
        ("HostVirtualNicConfig", TypeInfo::Object { name: "HostVirtualNicConfig", builder_fn: || Box::new(HostVirtualNicConfigFields::new()) }),
        ("ArrayOfOvfInvalidValue", TypeInfo::Value { name: "ArrayOfOvfInvalidValue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_invalid_value), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_invalid_value) }),
        ("ArrayOfVirtualVmxnet", TypeInfo::Value { name: "ArrayOfVirtualVmxnet", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_vmxnet_array)), from_value: |v| cast_to_virtual_vmxnet_array(from_value(v)?) }),
        ("DiskMoveTypeNotSupported", TypeInfo::Object { name: "DiskMoveTypeNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DiskMoveTypeNotSupported))) }),
        ("ArrayOfDVPortNotSupported", TypeInfo::Value { name: "ArrayOfDVPortNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_dv_port_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_dv_port_not_supported) }),
        ("VimClusterVsanFaultDomainSpec", TypeInfo::Object { name: "VimClusterVsanFaultDomainSpec", builder_fn: || Box::new(VimClusterVsanFaultDomainSpecFields::new()) }),
        ("VirtualPointingDevice", TypeInfo::Object { name: "VirtualPointingDevice", builder_fn: || Box::new(VirtualPointingDeviceFields::new()) }),
        ("ArrayOfSnapshotRevertIssue", TypeInfo::Value { name: "ArrayOfSnapshotRevertIssue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_revert_issue), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_revert_issue) }),
        ("HostSystemRemediationState", TypeInfo::Object { name: "HostSystemRemediationState", builder_fn: || Box::new(HostSystemRemediationStateFields::new()) }),
        ("ArrayOfOvfImport", TypeInfo::Value { name: "ArrayOfOvfImport", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_import), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_import) }),
        ("VirtualNVMEController", TypeInfo::Object { name: "VirtualNVMEController", builder_fn: || Box::new(VirtualNvmeControllerFields::new()) }),
        ("HttpNfcLeaseSourceFile", TypeInfo::Object { name: "HttpNfcLeaseSourceFile", builder_fn: || Box::new(HttpNfcLeaseSourceFileFields::new()) }),
        ("ArrayOfClusterComputeResourceDVSSetting", TypeInfo::Value { name: "ArrayOfClusterComputeResourceDVSSetting", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceDvsSetting>>(wrap_array_of_cluster_compute_resource_dvs_setting), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceDvsSetting>>(v, wrap_array_of_cluster_compute_resource_dvs_setting) }),
        ("ArrayOfLACPInfo", TypeInfo::Value { name: "ArrayOfLACPInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LacpInfo>>(wrap_array_of_lacp_info), from_value: |v| from_val_with::<Vec<super::structs::LacpInfo>>(v, wrap_array_of_lacp_info) }),
        ("VAppConfigSpec", TypeInfo::Object { name: "VAppConfigSpec", builder_fn: || Box::new(VAppConfigSpecFields::new()) }),
        ("VirtualSATAController", TypeInfo::Object { name: "VirtualSATAController", builder_fn: || Box::new(VirtualSataControllerFields::new()) }),
        ("PbmCapabilityMetadataUniqueId", TypeInfo::Object { name: "PbmCapabilityMetadataUniqueId", builder_fn: || Box::new(PbmCapabilityMetadataUniqueIdFields::new()) }),
        ("DvsHostJoinedEvent", TypeInfo::Object { name: "DvsHostJoinedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsHostJoinedEvent))) }),
        ("HostFru", TypeInfo::Object { name: "HostFru", builder_fn: || Box::new(HostFruFields::new()) }),
        ("NonADUserRequired", TypeInfo::Object { name: "NonADUserRequired", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NonAdUserRequired))) }),
        ("ArrayOfDVPortgroupConfigInfo", TypeInfo::Value { name: "ArrayOfDVPortgroupConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DvPortgroupConfigInfo>>(wrap_array_of_dv_portgroup_config_info), from_value: |v| from_val_with::<Vec<super::structs::DvPortgroupConfigInfo>>(v, wrap_array_of_dv_portgroup_config_info) }),
        ("ArrayOfVsanHistoricalHealthConfig", TypeInfo::Value { name: "ArrayOfVsanHistoricalHealthConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHistoricalHealthConfig>>(wrap_array_of_vsan_historical_health_config), from_value: |v| from_val_with::<Vec<super::structs::VsanHistoricalHealthConfig>>(v, wrap_array_of_vsan_historical_health_config) }),
        ("ArrayOfFaultToleranceDiskSpec", TypeInfo::Value { name: "ArrayOfFaultToleranceDiskSpec", make_deserializer: || make_deser_with::<Vec<super::structs::FaultToleranceDiskSpec>>(wrap_array_of_fault_tolerance_disk_spec), from_value: |v| from_val_with::<Vec<super::structs::FaultToleranceDiskSpec>>(v, wrap_array_of_fault_tolerance_disk_spec) }),
        ("ClusterFailoverResourcesAdmissionControlInfo", TypeInfo::Object { name: "ClusterFailoverResourcesAdmissionControlInfo", builder_fn: || Box::new(ClusterFailoverResourcesAdmissionControlInfoFields::new()) }),
        ("ArrayOfCustomizationSpecInfo", TypeInfo::Value { name: "ArrayOfCustomizationSpecInfo", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationSpecInfo>>(wrap_array_of_customization_spec_info), from_value: |v| from_val_with::<Vec<super::structs::CustomizationSpecInfo>>(v, wrap_array_of_customization_spec_info) }),
        ("ArrayOfPlacementResult", TypeInfo::Value { name: "ArrayOfPlacementResult", make_deserializer: || make_deser_with::<Vec<super::structs::PlacementResult>>(wrap_array_of_placement_result), from_value: |v| from_val_with::<Vec<super::structs::PlacementResult>>(v, wrap_array_of_placement_result) }),
        ("VsanHclDiskConstraint", TypeInfo::Object { name: "VsanHclDiskConstraint", builder_fn: || Box::new(VsanHclDiskConstraintFields::new()) }),
        ("TaskTimeoutEvent", TypeInfo::Object { name: "TaskTimeoutEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::TaskTimeoutEvent))) }),
        ("VsanObjectSnapshotId", TypeInfo::Object { name: "VsanObjectSnapshotId", builder_fn: || Box::new(VsanObjectSnapshotIdFields::new()) }),
        ("ArrayOfLicenseManagerEvaluationInfo", TypeInfo::Value { name: "ArrayOfLicenseManagerEvaluationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LicenseManagerEvaluationInfo>>(wrap_array_of_license_manager_evaluation_info), from_value: |v| from_val_with::<Vec<super::structs::LicenseManagerEvaluationInfo>>(v, wrap_array_of_license_manager_evaluation_info) }),
        ("ArrayOfNoDatastoresConfiguredEvent", TypeInfo::Value { name: "ArrayOfNoDatastoresConfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_no_datastores_configured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_no_datastores_configured_event) }),
        ("MonthlyByWeekdayTaskScheduler", TypeInfo::Object { name: "MonthlyByWeekdayTaskScheduler", builder_fn: || Box::new(MonthlyByWeekdayTaskSchedulerFields::new()) }),
        ("ArrayOfVirtualMachineVirtualDeviceSwap", TypeInfo::Value { name: "ArrayOfVirtualMachineVirtualDeviceSwap", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVirtualDeviceSwap>>(wrap_array_of_virtual_machine_virtual_device_swap), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVirtualDeviceSwap>>(v, wrap_array_of_virtual_machine_virtual_device_swap) }),
        ("SolutionsSolutionConfig", TypeInfo::Object { name: "SolutionsSolutionConfig", builder_fn: || Box::new(SolutionsSolutionConfigFields::new()) }),
        ("ArrayOfHostVirtualNicManagerNicTypeSelection", TypeInfo::Value { name: "ArrayOfHostVirtualNicManagerNicTypeSelection", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualNicManagerNicTypeSelection>>(wrap_array_of_host_virtual_nic_manager_nic_type_selection), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualNicManagerNicTypeSelection>>(v, wrap_array_of_host_virtual_nic_manager_nic_type_selection) }),
        ("ArrayOfPermissionEvent", TypeInfo::Value { name: "ArrayOfPermissionEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_permission_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_permission_event) }),
        ("ArrayOfDatastoreRenamedOnHostEvent", TypeInfo::Value { name: "ArrayOfDatastoreRenamedOnHostEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_renamed_on_host_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_renamed_on_host_event) }),
        ("ArrayOfVsanPerfMasterInformation", TypeInfo::Value { name: "ArrayOfVsanPerfMasterInformation", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfMasterInformation>>(wrap_array_of_vsan_perf_master_information), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfMasterInformation>>(v, wrap_array_of_vsan_perf_master_information) }),
        ("ArrayOfVmDiskFileQueryFilter", TypeInfo::Value { name: "ArrayOfVmDiskFileQueryFilter", make_deserializer: || make_deser_with::<Vec<super::structs::VmDiskFileQueryFilter>>(wrap_array_of_vm_disk_file_query_filter), from_value: |v| from_val_with::<Vec<super::structs::VmDiskFileQueryFilter>>(v, wrap_array_of_vm_disk_file_query_filter) }),
        ("ArrayOfReplicationConfigFault", TypeInfo::Value { name: "ArrayOfReplicationConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_replication_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_replication_config_fault) }),
        ("ClusterVmComponentProtectionSettings", TypeInfo::Object { name: "ClusterVmComponentProtectionSettings", builder_fn: || Box::new(ClusterVmComponentProtectionSettingsFields::new()) }),
        ("HostConfigChange", TypeInfo::Object { name: "HostConfigChange", builder_fn: || Box::new(HostConfigChangeFields::new()) }),
        ("ArrayOfHostFirewallRule", TypeInfo::Value { name: "ArrayOfHostFirewallRule", make_deserializer: || make_deser_with::<Vec<super::structs::HostFirewallRule>>(wrap_array_of_host_firewall_rule), from_value: |v| from_val_with::<Vec<super::structs::HostFirewallRule>>(v, wrap_array_of_host_firewall_rule) }),
        ("ArrayOfCryptoKeyPlain", TypeInfo::Value { name: "ArrayOfCryptoKeyPlain", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoKeyPlain>>(wrap_array_of_crypto_key_plain), from_value: |v| from_val_with::<Vec<super::structs::CryptoKeyPlain>>(v, wrap_array_of_crypto_key_plain) }),
        ("HostPtpConfig", TypeInfo::Object { name: "HostPtpConfig", builder_fn: || Box::new(HostPtpConfigFields::new()) }),
        ("ArrayOfFaultDomainId", TypeInfo::Value { name: "ArrayOfFaultDomainId", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_fault_domain_id_array)), from_value: |v| cast_to_fault_domain_id_array(from_value(v)?) }),
        ("OvfUnableToExportDisk", TypeInfo::Object { name: "OvfUnableToExportDisk", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnableToExportDisk))) }),
        ("ArrayOfHostPatchManagerStatus", TypeInfo::Value { name: "ArrayOfHostPatchManagerStatus", make_deserializer: || make_deser_with::<Vec<super::structs::HostPatchManagerStatus>>(wrap_array_of_host_patch_manager_status), from_value: |v| from_val_with::<Vec<super::structs::HostPatchManagerStatus>>(v, wrap_array_of_host_patch_manager_status) }),
        ("VirtualUSBXHCIController", TypeInfo::Object { name: "VirtualUSBXHCIController", builder_fn: || Box::new(VirtualUsbxhciControllerFields::new()) }),
        ("VsanProactiveRebalanceInfoEx", TypeInfo::Object { name: "VsanProactiveRebalanceInfoEx", builder_fn: || Box::new(VsanProactiveRebalanceInfoExFields::new()) }),
        ("ArrayOfDistributedVirtualSwitchPortConnectee", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchPortConnectee", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchPortConnectee>>(wrap_array_of_distributed_virtual_switch_port_connectee), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchPortConnectee>>(v, wrap_array_of_distributed_virtual_switch_port_connectee) }),
        ("ArrayOfVsanHostIoInsightInfo", TypeInfo::Value { name: "ArrayOfVsanHostIoInsightInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostIoInsightInfo>>(wrap_array_of_vsan_host_io_insight_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostIoInsightInfo>>(v, wrap_array_of_vsan_host_io_insight_info) }),
        ("ArrayOfHostVirtualNicOpaqueNetworkSpec", TypeInfo::Value { name: "ArrayOfHostVirtualNicOpaqueNetworkSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualNicOpaqueNetworkSpec>>(wrap_array_of_host_virtual_nic_opaque_network_spec), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualNicOpaqueNetworkSpec>>(v, wrap_array_of_host_virtual_nic_opaque_network_spec) }),
        ("ArrayOfVsanClusterAdvCfgSyncResult", TypeInfo::Value { name: "ArrayOfVsanClusterAdvCfgSyncResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterAdvCfgSyncResult>>(wrap_array_of_vsan_cluster_adv_cfg_sync_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterAdvCfgSyncResult>>(v, wrap_array_of_vsan_cluster_adv_cfg_sync_result) }),
        ("ArrayOfVASAStorageArrayDiscoveryIpTransport", TypeInfo::Value { name: "ArrayOfVASAStorageArrayDiscoveryIpTransport", make_deserializer: || make_deser_with::<Vec<super::structs::VasaStorageArrayDiscoveryIpTransport>>(wrap_array_of_vasa_storage_array_discovery_ip_transport), from_value: |v| from_val_with::<Vec<super::structs::VasaStorageArrayDiscoveryIpTransport>>(v, wrap_array_of_vasa_storage_array_discovery_ip_transport) }),
        ("ExtensionTaskTypeInfo", TypeInfo::Object { name: "ExtensionTaskTypeInfo", builder_fn: || Box::new(ExtensionTaskTypeInfoFields::new()) }),
        ("ArrayOfAutoStartWaitHeartbeatSetting", TypeInfo::Value { name: "ArrayOfAutoStartWaitHeartbeatSetting", make_deserializer: || make_deser_with::<Vec<super::enums::AutoStartWaitHeartbeatSettingEnum>>(wrap_array_of_auto_start_wait_heartbeat_setting), from_value: |v| from_val_with::<Vec<super::enums::AutoStartWaitHeartbeatSettingEnum>>(v, wrap_array_of_auto_start_wait_heartbeat_setting) }),
        ("HostNoHAEnabledPortGroupsEvent", TypeInfo::Object { name: "HostNoHAEnabledPortGroupsEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostNoHaEnabledPortGroupsEvent))) }),
        ("VirtualMachineFileInfo", TypeInfo::Object { name: "VirtualMachineFileInfo", builder_fn: || Box::new(VirtualMachineFileInfoFields::new()) }),
        ("DirectPathProfileManagerVmiopDirectPathConfig", TypeInfo::Object { name: "DirectPathProfileManagerVmiopDirectPathConfig", builder_fn: || Box::new(DirectPathProfileManagerVmiopDirectPathConfigFields::new()) }),
        ("ArrayOfClusterComputeResourceDvsProfile", TypeInfo::Value { name: "ArrayOfClusterComputeResourceDvsProfile", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceDvsProfile>>(wrap_array_of_cluster_compute_resource_dvs_profile), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceDvsProfile>>(v, wrap_array_of_cluster_compute_resource_dvs_profile) }),
        ("ArrayOfHostMultipathStateInfoPath", TypeInfo::Value { name: "ArrayOfHostMultipathStateInfoPath", make_deserializer: || make_deser_with::<Vec<super::structs::HostMultipathStateInfoPath>>(wrap_array_of_host_multipath_state_info_path), from_value: |v| from_val_with::<Vec<super::structs::HostMultipathStateInfoPath>>(v, wrap_array_of_host_multipath_state_info_path) }),
        ("NoDiscoverableAgentVmNetwork", TypeInfo::Object { name: "NoDiscoverableAgentVmNetwork", builder_fn: || Box::new(NoDiscoverableAgentVmNetworkFields::new()) }),
        ("AdminNotDisabled", TypeInfo::Object { name: "AdminNotDisabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AdminNotDisabled))) }),
        ("VirtualParallelPortFileBackingOption", TypeInfo::Object { name: "VirtualParallelPortFileBackingOption", builder_fn: || Box::new(VirtualParallelPortFileBackingOptionFields::new()) }),
        ("ArrayOfVirtualPCIPassthroughDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughDeviceBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthroughDeviceBackingOption>>(wrap_array_of_virtual_pci_passthrough_device_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthroughDeviceBackingOption>>(v, wrap_array_of_virtual_pci_passthrough_device_backing_option) }),
        ("ArrayOfHostComplianceCheckedEvent", TypeInfo::Value { name: "ArrayOfHostComplianceCheckedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_compliance_checked_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_compliance_checked_event) }),
        ("VirtualDeviceConfigSpecFileOperation", TypeInfo::Value { name: "VirtualDeviceConfigSpecFileOperation", make_deserializer: || make_deser_with::<super::enums::VirtualDeviceConfigSpecFileOperationEnum>(wrap_virtual_device_config_spec_file_operation), from_value: |v| from_val_with::<super::enums::VirtualDeviceConfigSpecFileOperationEnum>(v, wrap_virtual_device_config_spec_file_operation) }),
        ("ArrayOfHostCnxFailedNotFoundEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedNotFoundEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_not_found_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_not_found_event) }),
        ("OvfParseDescriptorResult", TypeInfo::Object { name: "OvfParseDescriptorResult", builder_fn: || Box::new(OvfParseDescriptorResultFields::new()) }),
        ("VsanDataEfficiencyConfigEx", TypeInfo::Object { name: "VsanDataEfficiencyConfigEx", builder_fn: || Box::new(VsanDataEfficiencyConfigExFields::new()) }),
        ("ClusterVmOrchestrationInfo", TypeInfo::Object { name: "ClusterVmOrchestrationInfo", builder_fn: || Box::new(ClusterVmOrchestrationInfoFields::new()) }),
        ("VsanDiskRebalanceResult", TypeInfo::Object { name: "VsanDiskRebalanceResult", builder_fn: || Box::new(VsanDiskRebalanceResultFields::new()) }),
        ("ArrayOfAnswerFileCreateSpec", TypeInfo::Value { name: "ArrayOfAnswerFileCreateSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_answer_file_create_spec_array)), from_value: |v| cast_to_answer_file_create_spec_array(from_value(v)?) }),
        ("VsanClusterHealthSystemObjectsRepairResult", TypeInfo::Object { name: "VsanClusterHealthSystemObjectsRepairResult", builder_fn: || Box::new(VsanClusterHealthSystemObjectsRepairResultFields::new()) }),
        ("PhysicalNicProfile", TypeInfo::Object { name: "PhysicalNicProfile", builder_fn: || Box::new(PhysicalNicProfileFields::new()) }),
        ("ArrayOfClusterDasHostRecommendation", TypeInfo::Value { name: "ArrayOfClusterDasHostRecommendation", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasHostRecommendation>>(wrap_array_of_cluster_das_host_recommendation), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasHostRecommendation>>(v, wrap_array_of_cluster_das_host_recommendation) }),
        ("ResourcePoolDestroyedEvent", TypeInfo::Object { name: "ResourcePoolDestroyedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ResourcePoolDestroyedEvent))) }),
        ("ArrayOfPbmQueryReplicationGroupResult", TypeInfo::Value { name: "ArrayOfPbmQueryReplicationGroupResult", make_deserializer: || make_deser_with::<Vec<super::structs::PbmQueryReplicationGroupResult>>(wrap_array_of_pbm_query_replication_group_result), from_value: |v| from_val_with::<Vec<super::structs::PbmQueryReplicationGroupResult>>(v, wrap_array_of_pbm_query_replication_group_result) }),
        ("AnswerFileUpdateFailed", TypeInfo::Object { name: "AnswerFileUpdateFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AnswerFileUpdateFailed))) }),
        ("VirtualLsiLogicControllerOption", TypeInfo::Object { name: "VirtualLsiLogicControllerOption", builder_fn: || Box::new(VirtualLsiLogicControllerOptionFields::new()) }),
        ("ArrayOfVmFailedToResetEvent", TypeInfo::Value { name: "ArrayOfVmFailedToResetEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_to_reset_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_to_reset_event) }),
        ("AgencyVMResourcePool", TypeInfo::Object { name: "AgencyVMResourcePool", builder_fn: || Box::new(AgencyVmResourcePoolFields::new()) }),
        ("VirtualParallelPortOption", TypeInfo::Object { name: "VirtualParallelPortOption", builder_fn: || Box::new(VirtualParallelPortOptionFields::new()) }),
        ("ArrayOfVirtualMachineFileLayoutEx", TypeInfo::Value { name: "ArrayOfVirtualMachineFileLayoutEx", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFileLayoutEx>>(wrap_array_of_virtual_machine_file_layout_ex), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFileLayoutEx>>(v, wrap_array_of_virtual_machine_file_layout_ex) }),
        ("VirtualDeviceConfigSpecBackingSpec", TypeInfo::Object { name: "VirtualDeviceConfigSpecBackingSpec", builder_fn: || Box::new(VirtualDeviceConfigSpecBackingSpecFields::new()) }),
        ("HostUnresolvedVmfsExtent", TypeInfo::Object { name: "HostUnresolvedVmfsExtent", builder_fn: || Box::new(HostUnresolvedVmfsExtentFields::new()) }),
        ("PersonalityAgencyPMUnavailable", TypeInfo::Object { name: "PersonalityAgencyPMUnavailable", builder_fn: || Box::new(PersonalityAgencyPmUnavailableFields::new()) }),
        ("PbmCompliancePolicyStatus", TypeInfo::Object { name: "PbmCompliancePolicyStatus", builder_fn: || Box::new(PbmCompliancePolicyStatusFields::new()) }),
        ("VirtualLsiLogicSASControllerOption", TypeInfo::Object { name: "VirtualLsiLogicSASControllerOption", builder_fn: || Box::new(VirtualLsiLogicSasControllerOptionFields::new()) }),
        ("ArrayOfDirectPathProfileManagerFilterSpec", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerFilterSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerFilterSpec>>(wrap_array_of_direct_path_profile_manager_filter_spec), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerFilterSpec>>(v, wrap_array_of_direct_path_profile_manager_filter_spec) }),
        ("ArrayOfFilterInUse", TypeInfo::Value { name: "ArrayOfFilterInUse", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_filter_in_use), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_filter_in_use) }),
        ("ArrayOfDirectPathProfileManagerDirectPathConfig", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerDirectPathConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_direct_path_profile_manager_direct_path_config_array)), from_value: |v| cast_to_direct_path_profile_manager_direct_path_config_array(from_value(v)?) }),
        ("ArrayOfVsanClusterCreateVmHealthTestResult", TypeInfo::Value { name: "ArrayOfVsanClusterCreateVmHealthTestResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterCreateVmHealthTestResult>>(wrap_array_of_vsan_cluster_create_vm_health_test_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterCreateVmHealthTestResult>>(v, wrap_array_of_vsan_cluster_create_vm_health_test_result) }),
        ("VirtualMachineAffinityInfo", TypeInfo::Object { name: "VirtualMachineAffinityInfo", builder_fn: || Box::new(VirtualMachineAffinityInfoFields::new()) }),
        ("DatastoreOption", TypeInfo::Object { name: "DatastoreOption", builder_fn: || Box::new(DatastoreOptionFields::new()) }),
        ("ArrayOfVsanHostAbortWipeDiskStatus", TypeInfo::Value { name: "ArrayOfVsanHostAbortWipeDiskStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostAbortWipeDiskStatus>>(wrap_array_of_vsan_host_abort_wipe_disk_status), from_value: |v| from_val_with::<Vec<super::structs::VsanHostAbortWipeDiskStatus>>(v, wrap_array_of_vsan_host_abort_wipe_disk_status) }),
        ("VsanNetworkDiagnosticsHealthInfo", TypeInfo::Object { name: "VsanNetworkDiagnosticsHealthInfo", builder_fn: || Box::new(VsanNetworkDiagnosticsHealthInfoFields::new()) }),
        ("ArrayOfComputeResourceSummary", TypeInfo::Value { name: "ArrayOfComputeResourceSummary", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_compute_resource_summary_array)), from_value: |v| cast_to_compute_resource_summary_array(from_value(v)?) }),
        ("ArrayOfHostPoweredOff", TypeInfo::Value { name: "ArrayOfHostPoweredOff", make_deserializer: || make_deser_with::<Vec<super::structs::HostPoweredOff>>(wrap_array_of_host_powered_off), from_value: |v| from_val_with::<Vec<super::structs::HostPoweredOff>>(v, wrap_array_of_host_powered_off) }),
        ("ArrayOfStorageLun", TypeInfo::Value { name: "ArrayOfStorageLun", make_deserializer: || make_deser_with::<Vec<super::structs::StorageLun>>(wrap_array_of_storage_lun), from_value: |v| from_val_with::<Vec<super::structs::StorageLun>>(v, wrap_array_of_storage_lun) }),
        ("VimVsanHostVsanScsiDisk", TypeInfo::Object { name: "VimVsanHostVsanScsiDisk", builder_fn: || Box::new(VimVsanHostVsanScsiDiskFields::new()) }),
        ("ArrayOfToolsInstallationInProgress", TypeInfo::Value { name: "ArrayOfToolsInstallationInProgress", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_tools_installation_in_progress), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_tools_installation_in_progress) }),
        ("ArrayOfVirtualCdromAtapiBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualCdromAtapiBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromAtapiBackingInfo>>(wrap_array_of_virtual_cdrom_atapi_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromAtapiBackingInfo>>(v, wrap_array_of_virtual_cdrom_atapi_backing_info) }),
        ("ArrayOfHostSystemRemediationState", TypeInfo::Value { name: "ArrayOfHostSystemRemediationState", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemRemediationState>>(wrap_array_of_host_system_remediation_state), from_value: |v| from_val_with::<Vec<super::structs::HostSystemRemediationState>>(v, wrap_array_of_host_system_remediation_state) }),
        ("HostSpecification", TypeInfo::Object { name: "HostSpecification", builder_fn: || Box::new(HostSpecificationFields::new()) }),
        ("VsanBurnInTest", TypeInfo::Object { name: "VsanBurnInTest", builder_fn: || Box::new(VsanBurnInTestFields::new()) }),
        ("HostCnxFailedAlreadyManagedEvent", TypeInfo::Object { name: "HostCnxFailedAlreadyManagedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedAlreadyManagedEvent))) }),
        ("ArrayOfSolutionsValidateSpec", TypeInfo::Value { name: "ArrayOfSolutionsValidateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsValidateSpec>>(wrap_array_of_solutions_validate_spec), from_value: |v| from_val_with::<Vec<super::structs::SolutionsValidateSpec>>(v, wrap_array_of_solutions_validate_spec) }),
        ("NasConfigFault", TypeInfo::Object { name: "NasConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NasConfigFault))) }),
        ("SuspendedRelocateNotSupported", TypeInfo::Object { name: "SuspendedRelocateNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SuspendedRelocateNotSupported))) }),
        ("ArrayOfProxyRegistrationFailed", TypeInfo::Value { name: "ArrayOfProxyRegistrationFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_proxy_registration_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_proxy_registration_failed) }),
        ("DVSManagerPhysicalNicsList", TypeInfo::Object { name: "DVSManagerPhysicalNicsList", builder_fn: || Box::new(DvsManagerPhysicalNicsListFields::new()) }),
        ("ActiveDirectoryProfile", TypeInfo::Object { name: "ActiveDirectoryProfile", builder_fn: || Box::new(ActiveDirectoryProfileFields::new()) }),
        ("ArrayOfHostAdminEnableEvent", TypeInfo::Value { name: "ArrayOfHostAdminEnableEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_admin_enable_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_admin_enable_event) }),
        ("AlarmScriptCompleteEvent", TypeInfo::Object { name: "AlarmScriptCompleteEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmScriptCompleteEvent))) }),
        ("ArrayOfVirtualDevicePipeBackingOption", TypeInfo::Value { name: "ArrayOfVirtualDevicePipeBackingOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_pipe_backing_option_array)), from_value: |v| cast_to_virtual_device_pipe_backing_option_array(from_value(v)?) }),
        ("ArrayOfGeneralEvent", TypeInfo::Value { name: "ArrayOfGeneralEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_general_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_general_event) }),
        ("ArrayOfAccountUpdatedEvent", TypeInfo::Value { name: "ArrayOfAccountUpdatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_account_updated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_account_updated_event) }),
        ("DatastoreFileDeletedEvent", TypeInfo::Object { name: "DatastoreFileDeletedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreFileDeletedEvent))) }),
        ("ClusterConfigSpec", TypeInfo::Object { name: "ClusterConfigSpec", builder_fn: || Box::new(ClusterConfigSpecFields::new()) }),
        ("ArrayOfCertificateRevocationFailed", TypeInfo::Value { name: "ArrayOfCertificateRevocationFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_certificate_revocation_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_certificate_revocation_failed) }),
        ("DistributedVirtualSwitchManagerImportResult", TypeInfo::Object { name: "DistributedVirtualSwitchManagerImportResult", builder_fn: || Box::new(DistributedVirtualSwitchManagerImportResultFields::new()) }),
        ("ArrayOfIncorrectHostInformation", TypeInfo::Value { name: "ArrayOfIncorrectHostInformation", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_incorrect_host_information), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_incorrect_host_information) }),
        ("ScheduledTaskEmailFailedEvent", TypeInfo::Object { name: "ScheduledTaskEmailFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ScheduledTaskEmailFailedEvent))) }),
        ("PbmComplianceOperationalStatus", TypeInfo::Object { name: "PbmComplianceOperationalStatus", builder_fn: || Box::new(PbmComplianceOperationalStatusFields::new()) }),
        ("NoAccessUserEvent", TypeInfo::Object { name: "NoAccessUserEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::NoAccessUserEvent))) }),
        ("ClusterDasAdmissionControlInfo", TypeInfo::Object { name: "ClusterDasAdmissionControlInfo", builder_fn: || Box::new(ClusterDasAdmissionControlInfoFields::new()) }),
        ("ArrayOfNotSupported", TypeInfo::Value { name: "ArrayOfNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported) }),
        ("ArrayOfBackupBlobWriteFailure", TypeInfo::Value { name: "ArrayOfBackupBlobWriteFailure", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_backup_blob_write_failure), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_backup_blob_write_failure) }),
        ("ArrayOfVmBeingRelocatedEvent", TypeInfo::Value { name: "ArrayOfVmBeingRelocatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_being_relocated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_being_relocated_event) }),
        ("ClusterRuleInfo", TypeInfo::Object { name: "ClusterRuleInfo", builder_fn: || Box::new(ClusterRuleInfoFields::new()) }),
        ("KeyValue", TypeInfo::Object { name: "KeyValue", builder_fn: || Box::new(KeyValueFields::new()) }),
        ("ArrayOfFailToLockFaultToleranceVMs", TypeInfo::Value { name: "ArrayOfFailToLockFaultToleranceVMs", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fail_to_lock_fault_tolerance_v_ms), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fail_to_lock_fault_tolerance_v_ms) }),
        ("ArrayOfNetIpConfigInfoIpAddress", TypeInfo::Value { name: "ArrayOfNetIpConfigInfoIpAddress", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpConfigInfoIpAddress>>(wrap_array_of_net_ip_config_info_ip_address), from_value: |v| from_val_with::<Vec<super::structs::NetIpConfigInfoIpAddress>>(v, wrap_array_of_net_ip_config_info_ip_address) }),
        ("ArrayOfVirtualUSBUSBBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualUSBUSBBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbusbBackingInfo>>(wrap_array_of_virtual_usbusb_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbusbBackingInfo>>(v, wrap_array_of_virtual_usbusb_backing_info) }),
        ("VmBeingHotMigratedEvent", TypeInfo::Object { name: "VmBeingHotMigratedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmBeingHotMigratedEvent))) }),
        ("ArrayOfHostVsanInternalSystemDeleteVsanObjectsResult", TypeInfo::Value { name: "ArrayOfHostVsanInternalSystemDeleteVsanObjectsResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostVsanInternalSystemDeleteVsanObjectsResult>>(wrap_array_of_host_vsan_internal_system_delete_vsan_objects_result), from_value: |v| from_val_with::<Vec<super::structs::HostVsanInternalSystemDeleteVsanObjectsResult>>(v, wrap_array_of_host_vsan_internal_system_delete_vsan_objects_result) }),
        ("GeneralHostErrorEvent", TypeInfo::Object { name: "GeneralHostErrorEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GeneralHostErrorEvent))) }),
        ("ExtensionFaultTypeInfo", TypeInfo::Object { name: "ExtensionFaultTypeInfo", builder_fn: || Box::new(ExtensionFaultTypeInfoFields::new()) }),
        ("HostScsiDiskPartition", TypeInfo::Object { name: "HostScsiDiskPartition", builder_fn: || Box::new(HostScsiDiskPartitionFields::new()) }),
        ("ArrayOfHostStorageDeviceInfo", TypeInfo::Value { name: "ArrayOfHostStorageDeviceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostStorageDeviceInfo>>(wrap_array_of_host_storage_device_info), from_value: |v| from_val_with::<Vec<super::structs::HostStorageDeviceInfo>>(v, wrap_array_of_host_storage_device_info) }),
        ("ArrayOfNasDatastoreInfo", TypeInfo::Value { name: "ArrayOfNasDatastoreInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NasDatastoreInfo>>(wrap_array_of_nas_datastore_info), from_value: |v| from_val_with::<Vec<super::structs::NasDatastoreInfo>>(v, wrap_array_of_nas_datastore_info) }),
        ("HostProxySwitchEnsInfo", TypeInfo::Object { name: "HostProxySwitchEnsInfo", builder_fn: || Box::new(HostProxySwitchEnsInfoFields::new()) }),
        ("DrsResourceConfigureFailedEvent", TypeInfo::Object { name: "DrsResourceConfigureFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsResourceConfigureFailedEvent))) }),
        ("ArrayOfVirtualAppVAppState", TypeInfo::Value { name: "ArrayOfVirtualAppVAppState", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualAppVAppStateEnum>>(wrap_array_of_virtual_app_v_app_state), from_value: |v| from_val_with::<Vec<super::enums::VirtualAppVAppStateEnum>>(v, wrap_array_of_virtual_app_v_app_state) }),
        ("ArrayOfVsanObjectIOStats", TypeInfo::Value { name: "ArrayOfVsanObjectIOStats", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectIoStats>>(wrap_array_of_vsan_object_io_stats), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectIoStats>>(v, wrap_array_of_vsan_object_io_stats) }),
        ("VsanHealthTroubleshooting", TypeInfo::Object { name: "VsanHealthTroubleshooting", builder_fn: || Box::new(VsanHealthTroubleshootingFields::new()) }),
        ("VsanHealthConfigSpec", TypeInfo::Object { name: "VsanHealthConfigSpec", builder_fn: || Box::new(VsanHealthConfigSpecFields::new()) }),
        ("WakeOnLanNotSupported", TypeInfo::Object { name: "WakeOnLanNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::WakeOnLanNotSupported))) }),
        ("InvalidDeviceSpec", TypeInfo::Object { name: "InvalidDeviceSpec", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidDeviceSpec))) }),
        ("PbmFaultInvalidLogin", TypeInfo::Object { name: "PbmFaultInvalidLogin", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmFaultInvalidLogin))) }),
        ("VirtualMachineFeatureRequirement", TypeInfo::Object { name: "VirtualMachineFeatureRequirement", builder_fn: || Box::new(VirtualMachineFeatureRequirementFields::new()) }),
        ("VsanClusterHealthTest", TypeInfo::Object { name: "VsanClusterHealthTest", builder_fn: || Box::new(VsanClusterHealthTestFields::new()) }),
        ("ArrayOfDvsPortJoinPortgroupEvent", TypeInfo::Value { name: "ArrayOfDvsPortJoinPortgroupEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_join_portgroup_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_join_portgroup_event) }),
        ("ArrayOfGatewayToHostAuthFault", TypeInfo::Value { name: "ArrayOfGatewayToHostAuthFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_gateway_to_host_auth_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_gateway_to_host_auth_fault) }),
        ("ArrayOfVirtualMachineRuntimeInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineRuntimeInfo>>(wrap_array_of_virtual_machine_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineRuntimeInfo>>(v, wrap_array_of_virtual_machine_runtime_info) }),
        ("ArrayOfVMINotSupported", TypeInfo::Value { name: "ArrayOfVMINotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vmi_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vmi_not_supported) }),
        ("DestinationVsanDisabled", TypeInfo::Object { name: "DestinationVsanDisabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DestinationVsanDisabled))) }),
        ("ExtensibleIssue", TypeInfo::Object { name: "ExtensibleIssue", builder_fn: || Box::new(ExtensibleIssueFields::new()) }),
        ("MonthlyByDayTaskScheduler", TypeInfo::Object { name: "MonthlyByDayTaskScheduler", builder_fn: || Box::new(MonthlyByDayTaskSchedulerFields::new()) }),
        ("ArrayOfSeSparseVirtualDiskSpec", TypeInfo::Value { name: "ArrayOfSeSparseVirtualDiskSpec", make_deserializer: || make_deser_with::<Vec<super::structs::SeSparseVirtualDiskSpec>>(wrap_array_of_se_sparse_virtual_disk_spec), from_value: |v| from_val_with::<Vec<super::structs::SeSparseVirtualDiskSpec>>(v, wrap_array_of_se_sparse_virtual_disk_spec) }),
        ("ProfilePropertyPath", TypeInfo::Object { name: "ProfilePropertyPath", builder_fn: || Box::new(ProfilePropertyPathFields::new()) }),
        ("AlarmExpression", TypeInfo::Object { name: "AlarmExpression", builder_fn: || Box::new(AlarmExpressionFields::new()) }),
        ("VirtualSCSIPassthroughOption", TypeInfo::Object { name: "VirtualSCSIPassthroughOption", builder_fn: || Box::new(VirtualScsiPassthroughOptionFields::new()) }),
        ("HostRuntimeInfoNetStackInstanceRuntimeInfo", TypeInfo::Object { name: "HostRuntimeInfoNetStackInstanceRuntimeInfo", builder_fn: || Box::new(HostRuntimeInfoNetStackInstanceRuntimeInfoFields::new()) }),
        ("ArrayOfPerformClusterPowerActionSpec", TypeInfo::Value { name: "ArrayOfPerformClusterPowerActionSpec", make_deserializer: || make_deser_with::<Vec<super::structs::PerformClusterPowerActionSpec>>(wrap_array_of_perform_cluster_power_action_spec), from_value: |v| from_val_with::<Vec<super::structs::PerformClusterPowerActionSpec>>(v, wrap_array_of_perform_cluster_power_action_spec) }),
        ("DisallowedOperationOnFailoverHost", TypeInfo::Object { name: "DisallowedOperationOnFailoverHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DisallowedOperationOnFailoverHost))) }),
        ("OvfAttribute", TypeInfo::Object { name: "OvfAttribute", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfAttribute))) }),
        ("SiteInfo", TypeInfo::Object { name: "SiteInfo", builder_fn: || Box::new(SiteInfoFields::new()) }),
        ("EVCAdmissionFailedCPUVendor", TypeInfo::Object { name: "EVCAdmissionFailedCPUVendor", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcAdmissionFailedCpuVendor))) }),
        ("ArrayOfEamInvalidLogin", TypeInfo::Value { name: "ArrayOfEamInvalidLogin", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eam_invalid_login), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eam_invalid_login) }),
        ("VsanHostHealthState", TypeInfo::Value { name: "VsanHostHealthState", make_deserializer: || make_deser_with::<super::enums::VsanHostHealthStateEnum>(wrap_vsan_host_health_state), from_value: |v| from_val_with::<super::enums::VsanHostHealthStateEnum>(v, wrap_vsan_host_health_state) }),
        ("ArrayOfVsanHostAboutInfoEx", TypeInfo::Value { name: "ArrayOfVsanHostAboutInfoEx", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostAboutInfoEx>>(wrap_array_of_vsan_host_about_info_ex), from_value: |v| from_val_with::<Vec<super::structs::VsanHostAboutInfoEx>>(v, wrap_array_of_vsan_host_about_info_ex) }),
        ("ServiceNotInitialized", TypeInfo::Object { name: "ServiceNotInitialized", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ServiceNotInitialized))) }),
        ("VsanFileServiceDomain", TypeInfo::Object { name: "VsanFileServiceDomain", builder_fn: || Box::new(VsanFileServiceDomainFields::new()) }),
        ("VMwareUplinkLacpPolicy", TypeInfo::Object { name: "VMwareUplinkLacpPolicy", builder_fn: || Box::new(VMwareUplinkLacpPolicyFields::new()) }),
        ("ArrayOfVMFSDatastoreExpandedEvent", TypeInfo::Value { name: "ArrayOfVMFSDatastoreExpandedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vmfs_datastore_expanded_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vmfs_datastore_expanded_event) }),
        ("ArrayOfVsanBrokenDiskChainIssue", TypeInfo::Value { name: "ArrayOfVsanBrokenDiskChainIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanBrokenDiskChainIssue>>(wrap_array_of_vsan_broken_disk_chain_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanBrokenDiskChainIssue>>(v, wrap_array_of_vsan_broken_disk_chain_issue) }),
        ("ArrayOfCannotModifyConfigCpuRequirements", TypeInfo::Value { name: "ArrayOfCannotModifyConfigCpuRequirements", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_modify_config_cpu_requirements), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_modify_config_cpu_requirements) }),
        ("ArrayOfNoCompatibleHostWithAccessToDevice", TypeInfo::Value { name: "ArrayOfNoCompatibleHostWithAccessToDevice", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_compatible_host_with_access_to_device), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_compatible_host_with_access_to_device) }),
        ("VirtualMachineEmptyIndependentFilterSpec", TypeInfo::Object { name: "VirtualMachineEmptyIndependentFilterSpec", builder_fn: || Box::new(VirtualMachineEmptyIndependentFilterSpecFields::new()) }),
        ("ArrayOfVsanHostVsanDiskInfo", TypeInfo::Value { name: "ArrayOfVsanHostVsanDiskInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostVsanDiskInfo>>(wrap_array_of_vsan_host_vsan_disk_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostVsanDiskInfo>>(v, wrap_array_of_vsan_host_vsan_disk_info) }),
        ("ArrayOfVimClusterVSANWitnessHostInfo", TypeInfo::Value { name: "ArrayOfVimClusterVSANWitnessHostInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VimClusterVsanWitnessHostInfo>>(wrap_array_of_vim_cluster_vsan_witness_host_info), from_value: |v| from_val_with::<Vec<super::structs::VimClusterVsanWitnessHostInfo>>(v, wrap_array_of_vim_cluster_vsan_witness_host_info) }),
        ("ArrayOfVsanHealthCorrelation", TypeInfo::Value { name: "ArrayOfVsanHealthCorrelation", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthCorrelation>>(wrap_array_of_vsan_health_correlation), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthCorrelation>>(v, wrap_array_of_vsan_health_correlation) }),
        ("ArrayOfVsanUpgradeSystemPreflightCheckResult", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemPreflightCheckResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_upgrade_system_preflight_check_result_array)), from_value: |v| cast_to_vsan_upgrade_system_preflight_check_result_array(from_value(v)?) }),
        ("ClusterInitialPlacementAction", TypeInfo::Object { name: "ClusterInitialPlacementAction", builder_fn: || Box::new(ClusterInitialPlacementActionFields::new()) }),
        ("HostService", TypeInfo::Object { name: "HostService", builder_fn: || Box::new(HostServiceFields::new()) }),
        ("ArrayOfClusterComputeResourceHostConfigurationProfile", TypeInfo::Value { name: "ArrayOfClusterComputeResourceHostConfigurationProfile", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceHostConfigurationProfile>>(wrap_array_of_cluster_compute_resource_host_configuration_profile), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceHostConfigurationProfile>>(v, wrap_array_of_cluster_compute_resource_host_configuration_profile) }),
        ("ArrayOfCustomizationCloudinitPrep", TypeInfo::Value { name: "ArrayOfCustomizationCloudinitPrep", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationCloudinitPrep>>(wrap_array_of_customization_cloudinit_prep), from_value: |v| from_val_with::<Vec<super::structs::CustomizationCloudinitPrep>>(v, wrap_array_of_customization_cloudinit_prep) }),
        ("ArrayOfVmClonedEvent", TypeInfo::Value { name: "ArrayOfVmClonedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_cloned_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_cloned_event) }),
        ("ArrayOfVsanVibInstallPreflightStatus", TypeInfo::Value { name: "ArrayOfVsanVibInstallPreflightStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVibInstallPreflightStatus>>(wrap_array_of_vsan_vib_install_preflight_status), from_value: |v| from_val_with::<Vec<super::structs::VsanVibInstallPreflightStatus>>(v, wrap_array_of_vsan_vib_install_preflight_status) }),
        ("VmBeingDeployedEvent", TypeInfo::Object { name: "VmBeingDeployedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmBeingDeployedEvent))) }),
        ("ArrayOfVchaClusterRuntimeInfo", TypeInfo::Value { name: "ArrayOfVchaClusterRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VchaClusterRuntimeInfo>>(wrap_array_of_vcha_cluster_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::VchaClusterRuntimeInfo>>(v, wrap_array_of_vcha_cluster_runtime_info) }),
        ("ArrayOfUnsupportedVimApiVersion", TypeInfo::Value { name: "ArrayOfUnsupportedVimApiVersion", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_unsupported_vim_api_version), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_unsupported_vim_api_version) }),
        ("VirtualMachineConfigInfo", TypeInfo::Object { name: "VirtualMachineConfigInfo", builder_fn: || Box::new(VirtualMachineConfigInfoFields::new()) }),
        ("VsanClusterCoreConfigSpec", TypeInfo::Object { name: "VsanClusterCoreConfigSpec", builder_fn: || Box::new(VsanClusterCoreConfigSpecFields::new()) }),
        ("VsanPerfDiagnosticException", TypeInfo::Object { name: "VsanPerfDiagnosticException", builder_fn: || Box::new(VsanPerfDiagnosticExceptionFields::new()) }),
        ("ArrayOfVirtualPCIPassthroughDvxBackingOption", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughDvxBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthroughDvxBackingOption>>(wrap_array_of_virtual_pci_passthrough_dvx_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthroughDvxBackingOption>>(v, wrap_array_of_virtual_pci_passthrough_dvx_backing_option) }),
        ("VsanDatastoreDefaultPolicySelectionConfig", TypeInfo::Object { name: "VsanDatastoreDefaultPolicySelectionConfig", builder_fn: || Box::new(VsanDatastoreDefaultPolicySelectionConfigFields::new()) }),
        ("ArrayOfVsanNetworkPeerHealthResult", TypeInfo::Value { name: "ArrayOfVsanNetworkPeerHealthResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkPeerHealthResult>>(wrap_array_of_vsan_network_peer_health_result), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkPeerHealthResult>>(v, wrap_array_of_vsan_network_peer_health_result) }),
        ("DvsProfile", TypeInfo::Object { name: "DvsProfile", builder_fn: || Box::new(DvsProfileFields::new()) }),
        ("DvsHostBackInSyncEvent", TypeInfo::Object { name: "DvsHostBackInSyncEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsHostBackInSyncEvent))) }),
        ("CryptoKeyPlain", TypeInfo::Object { name: "CryptoKeyPlain", builder_fn: || Box::new(CryptoKeyPlainFields::new()) }),
        ("ArrayOfDVSNetworkResourceManagementCapability", TypeInfo::Value { name: "ArrayOfDVSNetworkResourceManagementCapability", make_deserializer: || make_deser_with::<Vec<super::structs::DvsNetworkResourceManagementCapability>>(wrap_array_of_dvs_network_resource_management_capability), from_value: |v| from_val_with::<Vec<super::structs::DvsNetworkResourceManagementCapability>>(v, wrap_array_of_dvs_network_resource_management_capability) }),
        ("ArrayOfHostNetworkResourceRuntime", TypeInfo::Value { name: "ArrayOfHostNetworkResourceRuntime", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetworkResourceRuntime>>(wrap_array_of_host_network_resource_runtime), from_value: |v| from_val_with::<Vec<super::structs::HostNetworkResourceRuntime>>(v, wrap_array_of_host_network_resource_runtime) }),
        ("HostTpmAttestationInfoAcceptanceStatus", TypeInfo::Value { name: "HostTpmAttestationInfoAcceptanceStatus", make_deserializer: || make_deser_with::<super::enums::HostTpmAttestationInfoAcceptanceStatusEnum>(wrap_host_tpm_attestation_info_acceptance_status), from_value: |v| from_val_with::<super::enums::HostTpmAttestationInfoAcceptanceStatusEnum>(v, wrap_host_tpm_attestation_info_acceptance_status) }),
        ("ArrayOfHostCpuPowerManagementInfo", TypeInfo::Value { name: "ArrayOfHostCpuPowerManagementInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostCpuPowerManagementInfo>>(wrap_array_of_host_cpu_power_management_info), from_value: |v| from_val_with::<Vec<super::structs::HostCpuPowerManagementInfo>>(v, wrap_array_of_host_cpu_power_management_info) }),
        ("DistributedVirtualPortgroupProblem", TypeInfo::Object { name: "DistributedVirtualPortgroupProblem", builder_fn: || Box::new(DistributedVirtualPortgroupProblemFields::new()) }),
        ("HostSubSpecificationUpdateEvent", TypeInfo::Object { name: "HostSubSpecificationUpdateEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostSubSpecificationUpdateEvent))) }),
        ("ClusterVmReadiness", TypeInfo::Object { name: "ClusterVmReadiness", builder_fn: || Box::new(ClusterVmReadinessFields::new()) }),
        ("VmAutoRenameEvent", TypeInfo::Object { name: "VmAutoRenameEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmAutoRenameEvent))) }),
        ("VmFailedRelayoutEvent", TypeInfo::Object { name: "VmFailedRelayoutEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedRelayoutEvent))) }),
        ("ArrayOfGuestOsDescriptor", TypeInfo::Value { name: "ArrayOfGuestOsDescriptor", make_deserializer: || make_deser_with::<Vec<super::structs::GuestOsDescriptor>>(wrap_array_of_guest_os_descriptor), from_value: |v| from_val_with::<Vec<super::structs::GuestOsDescriptor>>(v, wrap_array_of_guest_os_descriptor) }),
        ("ArrayOfDatacenterConfigInfo", TypeInfo::Value { name: "ArrayOfDatacenterConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DatacenterConfigInfo>>(wrap_array_of_datacenter_config_info), from_value: |v| from_val_with::<Vec<super::structs::DatacenterConfigInfo>>(v, wrap_array_of_datacenter_config_info) }),
        ("ArrayOfClusterConfigSpec", TypeInfo::Value { name: "ArrayOfClusterConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterConfigSpec>>(wrap_array_of_cluster_config_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterConfigSpec>>(v, wrap_array_of_cluster_config_spec) }),
        ("ArrayOfVsanVmdkIOLoadSpec", TypeInfo::Value { name: "ArrayOfVsanVmdkIOLoadSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVmdkIoLoadSpec>>(wrap_array_of_vsan_vmdk_io_load_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanVmdkIoLoadSpec>>(v, wrap_array_of_vsan_vmdk_io_load_spec) }),
        ("ArrayOfAnswerFileUpdateFailed", TypeInfo::Value { name: "ArrayOfAnswerFileUpdateFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_answer_file_update_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_answer_file_update_failed) }),
        ("VirtualSerialPortThinPrintBackingInfo", TypeInfo::Object { name: "VirtualSerialPortThinPrintBackingInfo", builder_fn: || Box::new(VirtualSerialPortThinPrintBackingInfoFields::new()) }),
        ("DatacenterConfigInfo", TypeInfo::Object { name: "DatacenterConfigInfo", builder_fn: || Box::new(DatacenterConfigInfoFields::new()) }),
        ("ArrayOfGatewayNotFound", TypeInfo::Value { name: "ArrayOfGatewayNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_gateway_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_gateway_not_found) }),
        ("InvalidEditionLicense", TypeInfo::Object { name: "InvalidEditionLicense", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidEditionLicense))) }),
        ("VsanVcsaDeploymentProgress", TypeInfo::Object { name: "VsanVcsaDeploymentProgress", builder_fn: || Box::new(VsanVcsaDeploymentProgressFields::new()) }),
        ("ArrayOfVAppIPAssignmentInfo", TypeInfo::Value { name: "ArrayOfVAppIPAssignmentInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VAppIpAssignmentInfo>>(wrap_array_of_v_app_ip_assignment_info), from_value: |v| from_val_with::<Vec<super::structs::VAppIpAssignmentInfo>>(v, wrap_array_of_v_app_ip_assignment_info) }),
        ("ArrayOfVsanIoInsightInfo", TypeInfo::Value { name: "ArrayOfVsanIoInsightInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoInsightInfo>>(wrap_array_of_vsan_io_insight_info), from_value: |v| from_val_with::<Vec<super::structs::VsanIoInsightInfo>>(v, wrap_array_of_vsan_io_insight_info) }),
        ("ArrayOfVmInaccessible", TypeInfo::Value { name: "ArrayOfVmInaccessible", make_deserializer: || make_deser_with::<Vec<super::structs::VmInaccessible>>(wrap_array_of_vm_inaccessible), from_value: |v| from_val_with::<Vec<super::structs::VmInaccessible>>(v, wrap_array_of_vm_inaccessible) }),
        ("ArrayOfVsanDownloadItem", TypeInfo::Value { name: "ArrayOfVsanDownloadItem", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDownloadItem>>(wrap_array_of_vsan_download_item), from_value: |v| from_val_with::<Vec<super::structs::VsanDownloadItem>>(v, wrap_array_of_vsan_download_item) }),
        ("ParaVirtualSCSIController", TypeInfo::Object { name: "ParaVirtualSCSIController", builder_fn: || Box::new(ParaVirtualScsiControllerFields::new()) }),
        ("ArrayOfDasConfigFault", TypeInfo::Value { name: "ArrayOfDasConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_das_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_das_config_fault) }),
        ("ArrayOfVirtualSoundBlaster16", TypeInfo::Value { name: "ArrayOfVirtualSoundBlaster16", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSoundBlaster16>>(wrap_array_of_virtual_sound_blaster_16), from_value: |v| from_val_with::<Vec<super::structs::VirtualSoundBlaster16>>(v, wrap_array_of_virtual_sound_blaster_16) }),
        ("VmConnectedEvent", TypeInfo::Object { name: "VmConnectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmConnectedEvent))) }),
        ("ArrayOfVmResourceReallocatedEvent", TypeInfo::Value { name: "ArrayOfVmResourceReallocatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_resource_reallocated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_resource_reallocated_event) }),
        ("ArrayOfVmResettingEvent", TypeInfo::Value { name: "ArrayOfVmResettingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_resetting_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_resetting_event) }),
        ("ClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots", TypeInfo::Object { name: "ClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots", builder_fn: || Box::new(ClusterDasFailoverLevelAdvancedRuntimeInfoHostSlotsFields::new()) }),
        ("ScheduledTaskCompletedEvent", TypeInfo::Object { name: "ScheduledTaskCompletedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ScheduledTaskCompletedEvent))) }),
        ("ArrayOfMissingPowerOnConfiguration", TypeInfo::Value { name: "ArrayOfMissingPowerOnConfiguration", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_missing_power_on_configuration), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_missing_power_on_configuration) }),
        ("DrsRuleViolationEvent", TypeInfo::Object { name: "DrsRuleViolationEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsRuleViolationEvent))) }),
        ("HostTargetTransport", TypeInfo::Object { name: "HostTargetTransport", builder_fn: || Box::new(HostTargetTransportFields::new()) }),
        ("VsanClusterHostVmknicMapping", TypeInfo::Object { name: "VsanClusterHostVmknicMapping", builder_fn: || Box::new(VsanClusterHostVmknicMappingFields::new()) }),
        ("ArrayOfVirtualPointingDeviceDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualPointingDeviceDeviceBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPointingDeviceDeviceBackingInfo>>(wrap_array_of_virtual_pointing_device_device_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualPointingDeviceDeviceBackingInfo>>(v, wrap_array_of_virtual_pointing_device_device_backing_info) }),
        ("CnsVolumeCreateResult", TypeInfo::Object { name: "CnsVolumeCreateResult", builder_fn: || Box::new(CnsVolumeCreateResultFields::new()) }),
        ("OptionValue", TypeInfo::Object { name: "OptionValue", builder_fn: || Box::new(OptionValueFields::new()) }),
        ("ArrayOfVStorageObjectReconcileSpec", TypeInfo::Value { name: "ArrayOfVStorageObjectReconcileSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectReconcileSpec>>(wrap_array_of_v_storage_object_reconcile_spec), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectReconcileSpec>>(v, wrap_array_of_v_storage_object_reconcile_spec) }),
        ("InvalidType", TypeInfo::Object { name: "InvalidType", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidType))) }),
        ("ArrayOfVsanInternalExtendedConfig", TypeInfo::Value { name: "ArrayOfVsanInternalExtendedConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanInternalExtendedConfig>>(wrap_array_of_vsan_internal_extended_config), from_value: |v| from_val_with::<Vec<super::structs::VsanInternalExtendedConfig>>(v, wrap_array_of_vsan_internal_extended_config) }),
        ("ArrayOfNetIpRouteConfigInfoIpRoute", TypeInfo::Value { name: "ArrayOfNetIpRouteConfigInfoIpRoute", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpRouteConfigInfoIpRoute>>(wrap_array_of_net_ip_route_config_info_ip_route), from_value: |v| from_val_with::<Vec<super::structs::NetIpRouteConfigInfoIpRoute>>(v, wrap_array_of_net_ip_route_config_info_ip_route) }),
        ("VMwareDVSVlanMtuHealthCheckConfig", TypeInfo::Object { name: "VMwareDVSVlanMtuHealthCheckConfig", builder_fn: || Box::new(VMwareDvsVlanMtuHealthCheckConfigFields::new()) }),
        ("ArrayOfClusterMigrationAction", TypeInfo::Value { name: "ArrayOfClusterMigrationAction", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterMigrationAction>>(wrap_array_of_cluster_migration_action), from_value: |v| from_val_with::<Vec<super::structs::ClusterMigrationAction>>(v, wrap_array_of_cluster_migration_action) }),
        ("ArrayOfCannotChangeDrsBehaviorForFtSecondary", TypeInfo::Value { name: "ArrayOfCannotChangeDrsBehaviorForFtSecondary", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_change_drs_behavior_for_ft_secondary), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_change_drs_behavior_for_ft_secondary) }),
        ("DvsPortJoinPortgroupEvent", TypeInfo::Object { name: "DvsPortJoinPortgroupEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortJoinPortgroupEvent))) }),
        ("HostSystemInfo", TypeInfo::Object { name: "HostSystemInfo", builder_fn: || Box::new(HostSystemInfoFields::new()) }),
        ("VsanRegexBasedRule", TypeInfo::Object { name: "VsanRegexBasedRule", builder_fn: || Box::new(VsanRegexBasedRuleFields::new()) }),
        ("ArrayOfInsufficientStorageSpace", TypeInfo::Value { name: "ArrayOfInsufficientStorageSpace", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_storage_space), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_storage_space) }),
        ("VmLimitLicense", TypeInfo::Object { name: "VmLimitLicense", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmLimitLicense))) }),
        ("ServiceProfile", TypeInfo::Object { name: "ServiceProfile", builder_fn: || Box::new(ServiceProfileFields::new()) }),
        ("AlarmTriggeringActionTransitionSpec", TypeInfo::Object { name: "AlarmTriggeringActionTransitionSpec", builder_fn: || Box::new(AlarmTriggeringActionTransitionSpecFields::new()) }),
        ("VAppNotRunning", TypeInfo::Object { name: "VAppNotRunning", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VAppNotRunning))) }),
        ("HostVmfsRescanResult", TypeInfo::Object { name: "HostVmfsRescanResult", builder_fn: || Box::new(HostVmfsRescanResultFields::new()) }),
        ("ArrayOfWitnessNodeInfo", TypeInfo::Value { name: "ArrayOfWitnessNodeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::WitnessNodeInfo>>(wrap_array_of_witness_node_info), from_value: |v| from_val_with::<Vec<super::structs::WitnessNodeInfo>>(v, wrap_array_of_witness_node_info) }),
        ("ArrayOfRecurrentTaskScheduler", TypeInfo::Value { name: "ArrayOfRecurrentTaskScheduler", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_recurrent_task_scheduler_array)), from_value: |v| cast_to_recurrent_task_scheduler_array(from_value(v)?) }),
        ("VirtualHardware", TypeInfo::Object { name: "VirtualHardware", builder_fn: || Box::new(VirtualHardwareFields::new()) }),
        ("ArrayOfNotAuthenticated", TypeInfo::Value { name: "ArrayOfNotAuthenticated", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_authenticated), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_authenticated) }),
        ("HostInternetScsiHbaIPProperties", TypeInfo::Object { name: "HostInternetScsiHbaIPProperties", builder_fn: || Box::new(HostInternetScsiHbaIpPropertiesFields::new()) }),
        ("HostVffsSpec", TypeInfo::Object { name: "HostVffsSpec", builder_fn: || Box::new(HostVffsSpecFields::new()) }),
        ("FtVmHostRuleViolation", TypeInfo::Object { name: "FtVmHostRuleViolation", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FtVmHostRuleViolation))) }),
        ("ArrayOfVsanIscsiVipVswitchConfig", TypeInfo::Value { name: "ArrayOfVsanIscsiVipVswitchConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiVipVswitchConfig>>(wrap_array_of_vsan_iscsi_vip_vswitch_config), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiVipVswitchConfig>>(v, wrap_array_of_vsan_iscsi_vip_vswitch_config) }),
        ("ArrayOfOvfUnsupportedDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfOvfUnsupportedDeviceBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_device_backing_info), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_device_backing_info) }),
        ("PbmPlacementCapabilityConstraintsRequirement", TypeInfo::Object { name: "PbmPlacementCapabilityConstraintsRequirement", builder_fn: || Box::new(PbmPlacementCapabilityConstraintsRequirementFields::new()) }),
        ("ArrayOfDVSCreateSpec", TypeInfo::Value { name: "ArrayOfDVSCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsCreateSpec>>(wrap_array_of_dvs_create_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsCreateSpec>>(v, wrap_array_of_dvs_create_spec) }),
        ("VsanEntitySpaceUsage", TypeInfo::Object { name: "VsanEntitySpaceUsage", builder_fn: || Box::new(VsanEntitySpaceUsageFields::new()) }),
        ("NoDiscoverableAgentVmDatastore", TypeInfo::Object { name: "NoDiscoverableAgentVmDatastore", builder_fn: || Box::new(NoDiscoverableAgentVmDatastoreFields::new()) }),
        ("VsanNetworkConfigVsanNotOnVdsIssue", TypeInfo::Object { name: "VsanNetworkConfigVsanNotOnVdsIssue", builder_fn: || Box::new(VsanNetworkConfigVsanNotOnVdsIssueFields::new()) }),
        ("VirtualMachineProfileDetails", TypeInfo::Object { name: "VirtualMachineProfileDetails", builder_fn: || Box::new(VirtualMachineProfileDetailsFields::new()) }),
        ("VsanObjectDetail", TypeInfo::Object { name: "VsanObjectDetail", builder_fn: || Box::new(VsanObjectDetailFields::new()) }),
        ("SnapshotRevertIssue", TypeInfo::Object { name: "SnapshotRevertIssue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotRevertIssue))) }),
        ("TemplateUpgradeFailedEvent", TypeInfo::Object { name: "TemplateUpgradeFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::TemplateUpgradeFailedEvent))) }),
        ("ArrayOfHostVFlashManagerVFlashResourceRunTimeInfo", TypeInfo::Value { name: "ArrayOfHostVFlashManagerVFlashResourceRunTimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostVFlashManagerVFlashResourceRunTimeInfo>>(wrap_array_of_host_v_flash_manager_v_flash_resource_run_time_info), from_value: |v| from_val_with::<Vec<super::structs::HostVFlashManagerVFlashResourceRunTimeInfo>>(v, wrap_array_of_host_v_flash_manager_v_flash_resource_run_time_info) }),
        ("VMwareDVSHealthCheckConfig", TypeInfo::Object { name: "VMwareDVSHealthCheckConfig", builder_fn: || Box::new(VMwareDvsHealthCheckConfigFields::new()) }),
        ("ArrayOfHostSpecificationOperationFailed", TypeInfo::Value { name: "ArrayOfHostSpecificationOperationFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_specification_operation_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_specification_operation_failed) }),
        ("EamServiceNotInitialized", TypeInfo::Object { name: "EamServiceNotInitialized", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EamServiceNotInitialized))) }),
        ("DatastoreInfo", TypeInfo::Object { name: "DatastoreInfo", builder_fn: || Box::new(DatastoreInfoFields::new()) }),
        ("CryptoManagerKmipCryptoKeyStatusWrappingKeyIdKeyInfo", TypeInfo::Object { name: "CryptoManagerKmipCryptoKeyStatusWrappingKeyIdKeyInfo", builder_fn: || Box::new(CryptoManagerKmipCryptoKeyStatusWrappingKeyIdKeyInfoFields::new()) }),
        ("ArrayOfExpiredFeatureLicense", TypeInfo::Value { name: "ArrayOfExpiredFeatureLicense", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_expired_feature_license), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_expired_feature_license) }),
        ("VmConfigFileQueryFilter", TypeInfo::Object { name: "VmConfigFileQueryFilter", builder_fn: || Box::new(VmConfigFileQueryFilterFields::new()) }),
        ("DvsPortExitedPassthruEvent", TypeInfo::Object { name: "DvsPortExitedPassthruEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortExitedPassthruEvent))) }),
        ("VVolHostPE", TypeInfo::Object { name: "VVolHostPE", builder_fn: || Box::new(VVolHostPeFields::new()) }),
        ("VsanJsonComparator", TypeInfo::Object { name: "VsanJsonComparator", builder_fn: || Box::new(VsanJsonComparatorFields::new()) }),
        ("PodDiskLocator", TypeInfo::Object { name: "PodDiskLocator", builder_fn: || Box::new(PodDiskLocatorFields::new()) }),
        ("ArrayOfSharesLevel", TypeInfo::Value { name: "ArrayOfSharesLevel", make_deserializer: || make_deser_with::<Vec<super::enums::SharesLevelEnum>>(wrap_array_of_shares_level), from_value: |v| from_val_with::<Vec<super::enums::SharesLevelEnum>>(v, wrap_array_of_shares_level) }),
        ("ArrayOfVirtualNVDIMMController", TypeInfo::Value { name: "ArrayOfVirtualNVDIMMController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualNvdimmController>>(wrap_array_of_virtual_nvdimm_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualNvdimmController>>(v, wrap_array_of_virtual_nvdimm_controller) }),
        ("VsanUpgradeSystemUpgradeStatus", TypeInfo::Object { name: "VsanUpgradeSystemUpgradeStatus", builder_fn: || Box::new(VsanUpgradeSystemUpgradeStatusFields::new()) }),
        ("VirtualMachineFloppyInfo", TypeInfo::Object { name: "VirtualMachineFloppyInfo", builder_fn: || Box::new(VirtualMachineFloppyInfoFields::new()) }),
        ("ArrayOfHostIpToShortNameFailedEvent", TypeInfo::Value { name: "ArrayOfHostIpToShortNameFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_ip_to_short_name_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_ip_to_short_name_failed_event) }),
        ("OperationDisabledByGuest", TypeInfo::Object { name: "OperationDisabledByGuest", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OperationDisabledByGuest))) }),
        ("ArrayOfVsanObjectSnapshotId", TypeInfo::Value { name: "ArrayOfVsanObjectSnapshotId", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectSnapshotId>>(wrap_array_of_vsan_object_snapshot_id), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectSnapshotId>>(v, wrap_array_of_vsan_object_snapshot_id) }),
        ("ArrayOfEVCAdmissionFailedCPUModelForMode", TypeInfo::Value { name: "ArrayOfEVCAdmissionFailedCPUModelForMode", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_admission_failed_cpu_model_for_mode), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_admission_failed_cpu_model_for_mode) }),
        ("ArrayOfDVSMacManagementPolicy", TypeInfo::Value { name: "ArrayOfDVSMacManagementPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::DvsMacManagementPolicy>>(wrap_array_of_dvs_mac_management_policy), from_value: |v| from_val_with::<Vec<super::structs::DvsMacManagementPolicy>>(v, wrap_array_of_dvs_mac_management_policy) }),
        ("VsanIODiagnosticsObjectLayout", TypeInfo::Object { name: "VsanIODiagnosticsObjectLayout", builder_fn: || Box::new(VsanIoDiagnosticsObjectLayoutFields::new()) }),
        ("UserGroupProfile", TypeInfo::Object { name: "UserGroupProfile", builder_fn: || Box::new(UserGroupProfileFields::new()) }),
        ("ArrayOfVsanHclComputeResource", TypeInfo::Value { name: "ArrayOfVsanHclComputeResource", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclComputeResource>>(wrap_array_of_vsan_hcl_compute_resource), from_value: |v| from_val_with::<Vec<super::structs::VsanHclComputeResource>>(v, wrap_array_of_vsan_hcl_compute_resource) }),
        ("VirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeState", TypeInfo::Object { name: "VirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeState", builder_fn: || Box::new(VirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeStateFields::new()) }),
        ("ArrayOfNoHostSuitableForFtSecondary", TypeInfo::Value { name: "ArrayOfNoHostSuitableForFtSecondary", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_host_suitable_for_ft_secondary), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_host_suitable_for_ft_secondary) }),
        ("HostCnxFailedAccountFailedEvent", TypeInfo::Object { name: "HostCnxFailedAccountFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedAccountFailedEvent))) }),
        ("ArrayOfOvfUnsupportedType", TypeInfo::Value { name: "ArrayOfOvfUnsupportedType", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_type), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_type) }),
        ("ArrayOfExtensionResourceInfo", TypeInfo::Value { name: "ArrayOfExtensionResourceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensionResourceInfo>>(wrap_array_of_extension_resource_info), from_value: |v| from_val_with::<Vec<super::structs::ExtensionResourceInfo>>(v, wrap_array_of_extension_resource_info) }),
        ("PbmProfileResourceType", TypeInfo::Object { name: "PbmProfileResourceType", builder_fn: || Box::new(PbmProfileResourceTypeFields::new()) }),
        ("ArrayOfLAGUplinkInfo", TypeInfo::Value { name: "ArrayOfLAGUplinkInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LagUplinkInfo>>(wrap_array_of_lag_uplink_info), from_value: |v| from_val_with::<Vec<super::structs::LagUplinkInfo>>(v, wrap_array_of_lag_uplink_info) }),
        ("ArrayOfVirtualAppImportSpec", TypeInfo::Value { name: "ArrayOfVirtualAppImportSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualAppImportSpec>>(wrap_array_of_virtual_app_import_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualAppImportSpec>>(v, wrap_array_of_virtual_app_import_spec) }),
        ("ArrayOfPatchMissingDependencies", TypeInfo::Value { name: "ArrayOfPatchMissingDependencies", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_patch_missing_dependencies), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_patch_missing_dependencies) }),
        ("ArrayOfCustomizationIpV6Generator", TypeInfo::Value { name: "ArrayOfCustomizationIpV6Generator", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_customization_ip_v_6_generator_array)), from_value: |v| cast_to_customization_ip_v_6_generator_array(from_value(v)?) }),
        ("LicenseRestrictedEvent", TypeInfo::Object { name: "LicenseRestrictedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::LicenseRestrictedEvent))) }),
        ("VirtualSCSISharing", TypeInfo::Value { name: "VirtualSCSISharing", make_deserializer: || make_deser_with::<super::enums::VirtualScsiSharingEnum>(wrap_virtual_scsi_sharing), from_value: |v| from_val_with::<super::enums::VirtualScsiSharingEnum>(v, wrap_virtual_scsi_sharing) }),
        ("ArrayOfVirtualVideoCardOption", TypeInfo::Value { name: "ArrayOfVirtualVideoCardOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualVideoCardOption>>(wrap_array_of_virtual_video_card_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualVideoCardOption>>(v, wrap_array_of_virtual_video_card_option) }),
        ("ArrayOfUpdateSet", TypeInfo::Value { name: "ArrayOfUpdateSet", make_deserializer: || make_deser_with::<Vec<super::structs::UpdateSet>>(wrap_array_of_update_set), from_value: |v| from_val_with::<Vec<super::structs::UpdateSet>>(v, wrap_array_of_update_set) }),
        ("VsanFileShareConfig", TypeInfo::Object { name: "VsanFileShareConfig", builder_fn: || Box::new(VsanFileShareConfigFields::new()) }),
        ("DVSVmVnicNetworkResourcePool", TypeInfo::Object { name: "DVSVmVnicNetworkResourcePool", builder_fn: || Box::new(DvsVmVnicNetworkResourcePoolFields::new()) }),
        ("ArrayOfHostHardwareInfo", TypeInfo::Value { name: "ArrayOfHostHardwareInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostHardwareInfo>>(wrap_array_of_host_hardware_info), from_value: |v| from_val_with::<Vec<super::structs::HostHardwareInfo>>(v, wrap_array_of_host_hardware_info) }),
        ("ArrayOfNotEnoughLogicalCpus", TypeInfo::Value { name: "ArrayOfNotEnoughLogicalCpus", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_enough_logical_cpus), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_enough_logical_cpus) }),
        ("VirtualDiskOption", TypeInfo::Object { name: "VirtualDiskOption", builder_fn: || Box::new(VirtualDiskOptionFields::new()) }),
        ("ArrayOfHostDasDisabledEvent", TypeInfo::Value { name: "ArrayOfHostDasDisabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_das_disabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_das_disabled_event) }),
        ("ArrayOfInvalidProperty", TypeInfo::Value { name: "ArrayOfInvalidProperty", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_property), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_property) }),
        ("VchaClusterHealth", TypeInfo::Object { name: "VchaClusterHealth", builder_fn: || Box::new(VchaClusterHealthFields::new()) }),
        ("ArrayOfGenericVmConfigFault", TypeInfo::Value { name: "ArrayOfGenericVmConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_generic_vm_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_generic_vm_config_fault) }),
        ("ArrayOfVsanClusterConfig", TypeInfo::Value { name: "ArrayOfVsanClusterConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterConfig>>(wrap_array_of_vsan_cluster_config), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterConfig>>(v, wrap_array_of_vsan_cluster_config) }),
        ("DVPortConfigInfo", TypeInfo::Object { name: "DVPortConfigInfo", builder_fn: || Box::new(DvPortConfigInfoFields::new()) }),
        ("ServiceLocatorNamePassword", TypeInfo::Object { name: "ServiceLocatorNamePassword", builder_fn: || Box::new(ServiceLocatorNamePasswordFields::new()) }),
        ("ArrayOfNoPeerHostFound", TypeInfo::Value { name: "ArrayOfNoPeerHostFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_peer_host_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_peer_host_found) }),
        ("ArrayOfMemoryFileFormatNotSupportedByDatastore", TypeInfo::Value { name: "ArrayOfMemoryFileFormatNotSupportedByDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_memory_file_format_not_supported_by_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_memory_file_format_not_supported_by_datastore) }),
        ("ArrayOfKeyAnyValue", TypeInfo::Value { name: "ArrayOfKeyAnyValue", make_deserializer: || make_deser_with::<Vec<super::structs::KeyAnyValue>>(wrap_array_of_key_any_value), from_value: |v| from_val_with::<Vec<super::structs::KeyAnyValue>>(v, wrap_array_of_key_any_value) }),
        ("LicenseEvent", TypeInfo::Object { name: "LicenseEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::LicenseEvent))) }),
        ("ArrayOfScheduledTaskEmailFailedEvent", TypeInfo::Value { name: "ArrayOfScheduledTaskEmailFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_scheduled_task_email_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_scheduled_task_email_failed_event) }),
        ("ArrayOfVmAutoRenameEvent", TypeInfo::Value { name: "ArrayOfVmAutoRenameEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_auto_rename_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_auto_rename_event) }),
        ("ArrayOfHostService", TypeInfo::Value { name: "ArrayOfHostService", make_deserializer: || make_deser_with::<Vec<super::structs::HostService>>(wrap_array_of_host_service), from_value: |v| from_val_with::<Vec<super::structs::HostService>>(v, wrap_array_of_host_service) }),
        ("CustomizationIpV6Generator", TypeInfo::Object { name: "CustomizationIpV6Generator", builder_fn: || Box::new(CustomizationIpV6GeneratorFields::new()) }),
        ("ArrayOfCnsMissingPrivilegeFault", TypeInfo::Value { name: "ArrayOfCnsMissingPrivilegeFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cns_missing_privilege_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cns_missing_privilege_fault) }),
        ("PbmDatastoreSpaceStatistics", TypeInfo::Object { name: "PbmDatastoreSpaceStatistics", builder_fn: || Box::new(PbmDatastoreSpaceStatisticsFields::new()) }),
        ("ArrayOfDvsFilterParameter", TypeInfo::Value { name: "ArrayOfDvsFilterParameter", make_deserializer: || make_deser_with::<Vec<super::structs::DvsFilterParameter>>(wrap_array_of_dvs_filter_parameter), from_value: |v| from_val_with::<Vec<super::structs::DvsFilterParameter>>(v, wrap_array_of_dvs_filter_parameter) }),
        ("ArrayOfIncompatibleHostForFtSecondary", TypeInfo::Value { name: "ArrayOfIncompatibleHostForFtSecondary", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_incompatible_host_for_ft_secondary), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_incompatible_host_for_ft_secondary) }),
        ("EVCUnsupportedByHostSoftware", TypeInfo::Object { name: "EVCUnsupportedByHostSoftware", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcUnsupportedByHostSoftware))) }),
        ("VsanHostClusterStatusStateCompletionEstimate", TypeInfo::Object { name: "VsanHostClusterStatusStateCompletionEstimate", builder_fn: || Box::new(VsanHostClusterStatusStateCompletionEstimateFields::new()) }),
        ("PerfMetricSeriesCSV", TypeInfo::Object { name: "PerfMetricSeriesCSV", builder_fn: || Box::new(PerfMetricSeriesCsvFields::new()) }),
        ("VchaClusterRuntimeInfo", TypeInfo::Object { name: "VchaClusterRuntimeInfo", builder_fn: || Box::new(VchaClusterRuntimeInfoFields::new()) }),
        ("CryptoManagerKmipServerCertInfo", TypeInfo::Object { name: "CryptoManagerKmipServerCertInfo", builder_fn: || Box::new(CryptoManagerKmipServerCertInfoFields::new()) }),
        ("ExtendedFault", TypeInfo::Object { name: "ExtendedFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ExtendedFault))) }),
        ("ArrayOfHostNvmeOverRdmaParameters", TypeInfo::Value { name: "ArrayOfHostNvmeOverRdmaParameters", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeOverRdmaParameters>>(wrap_array_of_host_nvme_over_rdma_parameters), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeOverRdmaParameters>>(v, wrap_array_of_host_nvme_over_rdma_parameters) }),
        ("GuestRegValueMultiStringSpec", TypeInfo::Object { name: "GuestRegValueMultiStringSpec", builder_fn: || Box::new(GuestRegValueMultiStringSpecFields::new()) }),
        ("ArrayOfHostProxySwitchSpec", TypeInfo::Value { name: "ArrayOfHostProxySwitchSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostProxySwitchSpec>>(wrap_array_of_host_proxy_switch_spec), from_value: |v| from_val_with::<Vec<super::structs::HostProxySwitchSpec>>(v, wrap_array_of_host_proxy_switch_spec) }),
        ("ArrayOfCustomizationGlobalIPSettings", TypeInfo::Value { name: "ArrayOfCustomizationGlobalIPSettings", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationGlobalIpSettings>>(wrap_array_of_customization_global_ip_settings), from_value: |v| from_val_with::<Vec<super::structs::CustomizationGlobalIpSettings>>(v, wrap_array_of_customization_global_ip_settings) }),
        ("ArrayOfDatabaseSizeEstimate", TypeInfo::Value { name: "ArrayOfDatabaseSizeEstimate", make_deserializer: || make_deser_with::<Vec<super::structs::DatabaseSizeEstimate>>(wrap_array_of_database_size_estimate), from_value: |v| from_val_with::<Vec<super::structs::DatabaseSizeEstimate>>(v, wrap_array_of_database_size_estimate) }),
        ("ArrayOfAccountCreatedEvent", TypeInfo::Value { name: "ArrayOfAccountCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_account_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_account_created_event) }),
        ("ArrayOfNotSupportedHostInDvs", TypeInfo::Value { name: "ArrayOfNotSupportedHostInDvs", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_host_in_dvs), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_host_in_dvs) }),
        ("ArrayOfHostAdminDisableEvent", TypeInfo::Value { name: "ArrayOfHostAdminDisableEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_admin_disable_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_admin_disable_event) }),
        ("VmRemoteConsoleDisconnectedEvent", TypeInfo::Object { name: "VmRemoteConsoleDisconnectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRemoteConsoleDisconnectedEvent))) }),
        ("VmMonitorIncompatibleForFaultTolerance", TypeInfo::Object { name: "VmMonitorIncompatibleForFaultTolerance", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmMonitorIncompatibleForFaultTolerance))) }),
        ("HostConnectSpec", TypeInfo::Object { name: "HostConnectSpec", builder_fn: || Box::new(HostConnectSpecFields::new()) }),
        ("ArrayOfVmHealthMonitoringStateChangedEvent", TypeInfo::Value { name: "ArrayOfVmHealthMonitoringStateChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_health_monitoring_state_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_health_monitoring_state_changed_event) }),
        ("ClusterAgentHostInPartialMaintenanceMode", TypeInfo::Object { name: "ClusterAgentHostInPartialMaintenanceMode", builder_fn: || Box::new(ClusterAgentHostInPartialMaintenanceModeFields::new()) }),
        ("ArrayOfAutoStartPowerInfo", TypeInfo::Value { name: "ArrayOfAutoStartPowerInfo", make_deserializer: || make_deser_with::<Vec<super::structs::AutoStartPowerInfo>>(wrap_array_of_auto_start_power_info), from_value: |v| from_val_with::<Vec<super::structs::AutoStartPowerInfo>>(v, wrap_array_of_auto_start_power_info) }),
        ("ArrayOfVirtualMachineMoId", TypeInfo::Value { name: "ArrayOfVirtualMachineMoId", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineMoId>>(wrap_array_of_virtual_machine_mo_id), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineMoId>>(v, wrap_array_of_virtual_machine_mo_id) }),
        ("ArrayOfInsufficientGraphicsResourcesFault", TypeInfo::Value { name: "ArrayOfInsufficientGraphicsResourcesFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_graphics_resources_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_graphics_resources_fault) }),
        ("ArrayOfDiagnosticManagerLogDescriptor", TypeInfo::Value { name: "ArrayOfDiagnosticManagerLogDescriptor", make_deserializer: || make_deser_with::<Vec<super::structs::DiagnosticManagerLogDescriptor>>(wrap_array_of_diagnostic_manager_log_descriptor), from_value: |v| from_val_with::<Vec<super::structs::DiagnosticManagerLogDescriptor>>(v, wrap_array_of_diagnostic_manager_log_descriptor) }),
        ("DvsVNicProfile", TypeInfo::Object { name: "DvsVNicProfile", builder_fn: || Box::new(DvsVNicProfileFields::new()) }),
        ("ArrayOfVsanVumConfig", TypeInfo::Value { name: "ArrayOfVsanVumConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVumConfig>>(wrap_array_of_vsan_vum_config), from_value: |v| from_val_with::<Vec<super::structs::VsanVumConfig>>(v, wrap_array_of_vsan_vum_config) }),
        ("ArrayOfVirtualUSBRemoteHostBackingOption", TypeInfo::Value { name: "ArrayOfVirtualUSBRemoteHostBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbRemoteHostBackingOption>>(wrap_array_of_virtual_usb_remote_host_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbRemoteHostBackingOption>>(v, wrap_array_of_virtual_usb_remote_host_backing_option) }),
        ("ArrayOfAgentInstallFailed", TypeInfo::Value { name: "ArrayOfAgentInstallFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_agent_install_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_agent_install_failed) }),
        ("AndAlarmExpression", TypeInfo::Object { name: "AndAlarmExpression", builder_fn: || Box::new(AndAlarmExpressionFields::new()) }),
        ("VmPoweredOnEvent", TypeInfo::Object { name: "VmPoweredOnEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmPoweredOnEvent))) }),
        ("ClusterPowerOnVmResult", TypeInfo::Object { name: "ClusterPowerOnVmResult", builder_fn: || Box::new(ClusterPowerOnVmResultFields::new()) }),
        ("VirtualDiskRawDiskVer2BackingInfo", TypeInfo::Object { name: "VirtualDiskRawDiskVer2BackingInfo", builder_fn: || Box::new(VirtualDiskRawDiskVer2BackingInfoFields::new()) }),
        ("ArrayOfHostProfileManagerCompositionValidationResultResultElement", TypeInfo::Value { name: "ArrayOfHostProfileManagerCompositionValidationResultResultElement", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileManagerCompositionValidationResultResultElement>>(wrap_array_of_host_profile_manager_composition_validation_result_result_element), from_value: |v| from_val_with::<Vec<super::structs::HostProfileManagerCompositionValidationResultResultElement>>(v, wrap_array_of_host_profile_manager_composition_validation_result_result_element) }),
        ("OvfProperty", TypeInfo::Object { name: "OvfProperty", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfProperty))) }),
        ("MissingController", TypeInfo::Object { name: "MissingController", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MissingController))) }),
        ("ArrayOfHostBootDeviceInfo", TypeInfo::Value { name: "ArrayOfHostBootDeviceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostBootDeviceInfo>>(wrap_array_of_host_boot_device_info), from_value: |v| from_val_with::<Vec<super::structs::HostBootDeviceInfo>>(v, wrap_array_of_host_boot_device_info) }),
        ("ArrayOfVsanHostHwDeviceId", TypeInfo::Value { name: "ArrayOfVsanHostHwDeviceId", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostHwDeviceId>>(wrap_array_of_vsan_host_hw_device_id), from_value: |v| from_val_with::<Vec<super::structs::VsanHostHwDeviceId>>(v, wrap_array_of_vsan_host_hw_device_id) }),
        ("ArrayOfClusterHostInfraUpdateHaModeAction", TypeInfo::Value { name: "ArrayOfClusterHostInfraUpdateHaModeAction", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterHostInfraUpdateHaModeAction>>(wrap_array_of_cluster_host_infra_update_ha_mode_action), from_value: |v| from_val_with::<Vec<super::structs::ClusterHostInfraUpdateHaModeAction>>(v, wrap_array_of_cluster_host_infra_update_ha_mode_action) }),
        ("InvalidCertificate", TypeInfo::Object { name: "InvalidCertificate", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidCertificate))) }),
        ("ArrayOfVsanSnapshotQuerySpec", TypeInfo::Value { name: "ArrayOfVsanSnapshotQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSnapshotQuerySpec>>(wrap_array_of_vsan_snapshot_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanSnapshotQuerySpec>>(v, wrap_array_of_vsan_snapshot_query_spec) }),
        ("ArrayOfSnapshotIncompatibleDeviceInVm", TypeInfo::Value { name: "ArrayOfSnapshotIncompatibleDeviceInVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_incompatible_device_in_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_incompatible_device_in_vm) }),
        ("ArrayOfFullStorageVMotionNotSupported", TypeInfo::Value { name: "ArrayOfFullStorageVMotionNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_full_storage_v_motion_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_full_storage_v_motion_not_supported) }),
        ("VASAStorageArray", TypeInfo::Object { name: "VASAStorageArray", builder_fn: || Box::new(VasaStorageArrayFields::new()) }),
        ("ArrayOfVirtualMachineId", TypeInfo::Value { name: "ArrayOfVirtualMachineId", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_id_array)), from_value: |v| cast_to_virtual_machine_id_array(from_value(v)?) }),
        ("ProviderOutOfResource", TypeInfo::Object { name: "ProviderOutOfResource", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProviderOutOfResource))) }),
        ("ArrayOfVsanServerClusterInfo", TypeInfo::Value { name: "ArrayOfVsanServerClusterInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanServerClusterInfo>>(wrap_array_of_vsan_server_cluster_info), from_value: |v| from_val_with::<Vec<super::structs::VsanServerClusterInfo>>(v, wrap_array_of_vsan_server_cluster_info) }),
        ("HostLowLevelProvisioningManagerFileDeleteResult", TypeInfo::Object { name: "HostLowLevelProvisioningManagerFileDeleteResult", builder_fn: || Box::new(HostLowLevelProvisioningManagerFileDeleteResultFields::new()) }),
        ("VsanHistoricalHealthQuerySpec", TypeInfo::Object { name: "VsanHistoricalHealthQuerySpec", builder_fn: || Box::new(VsanHistoricalHealthQuerySpecFields::new()) }),
        ("HostOpaqueSwitchPhysicalNicZone", TypeInfo::Object { name: "HostOpaqueSwitchPhysicalNicZone", builder_fn: || Box::new(HostOpaqueSwitchPhysicalNicZoneFields::new()) }),
        ("ArrayOfVMwareDvsLagVlanConfig", TypeInfo::Value { name: "ArrayOfVMwareDvsLagVlanConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsLagVlanConfig>>(wrap_array_of_v_mware_dvs_lag_vlan_config), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsLagVlanConfig>>(v, wrap_array_of_v_mware_dvs_lag_vlan_config) }),
        ("ArrayOfKmipServerSpecWrappingRotationIntervalKeySpec", TypeInfo::Value { name: "ArrayOfKmipServerSpecWrappingRotationIntervalKeySpec", make_deserializer: || make_deser_with::<Vec<super::structs::KmipServerSpecWrappingRotationIntervalKeySpec>>(wrap_array_of_kmip_server_spec_wrapping_rotation_interval_key_spec), from_value: |v| from_val_with::<Vec<super::structs::KmipServerSpecWrappingRotationIntervalKeySpec>>(v, wrap_array_of_kmip_server_spec_wrapping_rotation_interval_key_spec) }),
        ("ArrayOfNotImplemented", TypeInfo::Value { name: "ArrayOfNotImplemented", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_implemented), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_implemented) }),
        ("CannotChangeDrsBehaviorForFtSecondary", TypeInfo::Object { name: "CannotChangeDrsBehaviorForFtSecondary", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotChangeDrsBehaviorForFtSecondary))) }),
        ("CertificateNotTrusted", TypeInfo::Object { name: "CertificateNotTrusted", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CertificateNotTrusted))) }),
        ("ArrayOfOvfDeploymentOption", TypeInfo::Value { name: "ArrayOfOvfDeploymentOption", make_deserializer: || make_deser_with::<Vec<super::structs::OvfDeploymentOption>>(wrap_array_of_ovf_deployment_option), from_value: |v| from_val_with::<Vec<super::structs::OvfDeploymentOption>>(v, wrap_array_of_ovf_deployment_option) }),
        ("ArrayOfSiteAffinityInfo", TypeInfo::Value { name: "ArrayOfSiteAffinityInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SiteAffinityInfo>>(wrap_array_of_site_affinity_info), from_value: |v| from_val_with::<Vec<super::structs::SiteAffinityInfo>>(v, wrap_array_of_site_affinity_info) }),
        ("GeneralVmInfoEvent", TypeInfo::Object { name: "GeneralVmInfoEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GeneralVmInfoEvent))) }),
        ("SyncInProgress", TypeInfo::Object { name: "SyncInProgress", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SyncInProgress))) }),
        ("ArrayOfInventoryHasStandardAloneHosts", TypeInfo::Value { name: "ArrayOfInventoryHasStandardAloneHosts", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_inventory_has_standard_alone_hosts), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_inventory_has_standard_alone_hosts) }),
        ("ArrayOfMethodAlreadyDisabledFault", TypeInfo::Value { name: "ArrayOfMethodAlreadyDisabledFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_method_already_disabled_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_method_already_disabled_fault) }),
        ("VsanSmartStatsHostSummary", TypeInfo::Object { name: "VsanSmartStatsHostSummary", builder_fn: || Box::new(VsanSmartStatsHostSummaryFields::new()) }),
        ("ComputeResourceConfigSpec", TypeInfo::Object { name: "ComputeResourceConfigSpec", builder_fn: || Box::new(ComputeResourceConfigSpecFields::new()) }),
        ("ArrayOfClusterComputeResourceHCIConfigInfo", TypeInfo::Value { name: "ArrayOfClusterComputeResourceHCIConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceHciConfigInfo>>(wrap_array_of_cluster_compute_resource_hci_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceHciConfigInfo>>(v, wrap_array_of_cluster_compute_resource_hci_config_info) }),
        ("HostFirewallRulesetIpNetwork", TypeInfo::Object { name: "HostFirewallRulesetIpNetwork", builder_fn: || Box::new(HostFirewallRulesetIpNetworkFields::new()) }),
        ("ArrayOfHostSriovInfo", TypeInfo::Value { name: "ArrayOfHostSriovInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSriovInfo>>(wrap_array_of_host_sriov_info), from_value: |v| from_val_with::<Vec<super::structs::HostSriovInfo>>(v, wrap_array_of_host_sriov_info) }),
        ("VirtualMachineVMotionStunTimeInfo", TypeInfo::Object { name: "VirtualMachineVMotionStunTimeInfo", builder_fn: || Box::new(VirtualMachineVMotionStunTimeInfoFields::new()) }),
        ("VsanClusterConfigInfoHostDefaultInfo", TypeInfo::Object { name: "VsanClusterConfigInfoHostDefaultInfo", builder_fn: || Box::new(VsanClusterConfigInfoHostDefaultInfoFields::new()) }),
        ("DesiredSoftwareSpec", TypeInfo::Object { name: "DesiredSoftwareSpec", builder_fn: || Box::new(DesiredSoftwareSpecFields::new()) }),
        ("ArrayOfHostNetStackInstance", TypeInfo::Value { name: "ArrayOfHostNetStackInstance", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetStackInstance>>(wrap_array_of_host_net_stack_instance), from_value: |v| from_val_with::<Vec<super::structs::HostNetStackInstance>>(v, wrap_array_of_host_net_stack_instance) }),
        ("ArrayOfDiskChangeExtent", TypeInfo::Value { name: "ArrayOfDiskChangeExtent", make_deserializer: || make_deser_with::<Vec<super::structs::DiskChangeExtent>>(wrap_array_of_disk_change_extent), from_value: |v| from_val_with::<Vec<super::structs::DiskChangeExtent>>(v, wrap_array_of_disk_change_extent) }),
        ("ArrayOfDVSVmVnicNetworkResourcePool", TypeInfo::Value { name: "ArrayOfDVSVmVnicNetworkResourcePool", make_deserializer: || make_deser_with::<Vec<super::structs::DvsVmVnicNetworkResourcePool>>(wrap_array_of_dvs_vm_vnic_network_resource_pool), from_value: |v| from_val_with::<Vec<super::structs::DvsVmVnicNetworkResourcePool>>(v, wrap_array_of_dvs_vm_vnic_network_resource_pool) }),
        ("VsanIOTripAnalyzerRecurrence", TypeInfo::Object { name: "VsanIOTripAnalyzerRecurrence", builder_fn: || Box::new(VsanIoTripAnalyzerRecurrenceFields::new()) }),
        ("PerfStatsType", TypeInfo::Value { name: "PerfStatsType", make_deserializer: || make_deser_with::<super::enums::PerfStatsTypeEnum>(wrap_perf_stats_type), from_value: |v| from_val_with::<super::enums::PerfStatsTypeEnum>(v, wrap_perf_stats_type) }),
        ("MissingObject", TypeInfo::Object { name: "MissingObject", builder_fn: || Box::new(MissingObjectFields::new()) }),
        ("VmConfigSpec", TypeInfo::Object { name: "VmConfigSpec", builder_fn: || Box::new(VmConfigSpecFields::new()) }),
        ("ArrayOfVsanSmartStatsHostSummary", TypeInfo::Value { name: "ArrayOfVsanSmartStatsHostSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSmartStatsHostSummary>>(wrap_array_of_vsan_smart_stats_host_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanSmartStatsHostSummary>>(v, wrap_array_of_vsan_smart_stats_host_summary) }),
        ("ArrayOfVmPowerOnDisabled", TypeInfo::Value { name: "ArrayOfVmPowerOnDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_power_on_disabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_power_on_disabled) }),
        ("VmTimedoutStartingSecondaryEvent", TypeInfo::Object { name: "VmTimedoutStartingSecondaryEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmTimedoutStartingSecondaryEvent))) }),
        ("StorageResourceManagerStorageProfileStatistics", TypeInfo::Object { name: "StorageResourceManagerStorageProfileStatistics", builder_fn: || Box::new(StorageResourceManagerStorageProfileStatisticsFields::new()) }),
        ("VirtualMachineVendorDeviceGroupInfo", TypeInfo::Object { name: "VirtualMachineVendorDeviceGroupInfo", builder_fn: || Box::new(VirtualMachineVendorDeviceGroupInfoFields::new()) }),
        ("StorageDrsCannotMoveIndependentDisk", TypeInfo::Object { name: "StorageDrsCannotMoveIndependentDisk", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsCannotMoveIndependentDisk))) }),
        ("ArrayOfVirtualTPM", TypeInfo::Value { name: "ArrayOfVirtualTPM", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualTpm>>(wrap_array_of_virtual_tpm), from_value: |v| from_val_with::<Vec<super::structs::VirtualTpm>>(v, wrap_array_of_virtual_tpm) }),
        ("ArrayOfVirtualCdromRemoteAtapiBackingOption", TypeInfo::Value { name: "ArrayOfVirtualCdromRemoteAtapiBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromRemoteAtapiBackingOption>>(wrap_array_of_virtual_cdrom_remote_atapi_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromRemoteAtapiBackingOption>>(v, wrap_array_of_virtual_cdrom_remote_atapi_backing_option) }),
        ("GeneralVmWarningEvent", TypeInfo::Object { name: "GeneralVmWarningEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GeneralVmWarningEvent))) }),
        ("HostPlacedVirtualNicIdentifier", TypeInfo::Object { name: "HostPlacedVirtualNicIdentifier", builder_fn: || Box::new(HostPlacedVirtualNicIdentifierFields::new()) }),
        ("EamIOFault", TypeInfo::Object { name: "EamIOFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EamIoFault))) }),
        ("DVPortSetting", TypeInfo::Object { name: "DVPortSetting", builder_fn: || Box::new(DvPortSettingFields::new()) }),
        ("HostInStandbyMode", TypeInfo::Object { name: "HostInStandbyMode", builder_fn: || Box::new(HostInStandbyModeFields::new()) }),
        ("BaseConfigInfoBackingInfo", TypeInfo::Object { name: "BaseConfigInfoBackingInfo", builder_fn: || Box::new(BaseConfigInfoBackingInfoFields::new()) }),
        ("VsanHclMemInfo", TypeInfo::Object { name: "VsanHclMemInfo", builder_fn: || Box::new(VsanHclMemInfoFields::new()) }),
        ("HostPlugStoreTopology", TypeInfo::Object { name: "HostPlugStoreTopology", builder_fn: || Box::new(HostPlugStoreTopologyFields::new()) }),
        ("ArrayOfDvsScopeViolated", TypeInfo::Value { name: "ArrayOfDvsScopeViolated", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_dvs_scope_violated), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_dvs_scope_violated) }),
        ("DirectPathProfileManagerCapacityQuerySpec", TypeInfo::Object { name: "DirectPathProfileManagerCapacityQuerySpec", builder_fn: || Box::new(DirectPathProfileManagerCapacityQuerySpecFields::new()) }),
        ("ArrayOfHostRuntimeInfoStateEncryptionInfo", TypeInfo::Value { name: "ArrayOfHostRuntimeInfoStateEncryptionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostRuntimeInfoStateEncryptionInfo>>(wrap_array_of_host_runtime_info_state_encryption_info), from_value: |v| from_val_with::<Vec<super::structs::HostRuntimeInfoStateEncryptionInfo>>(v, wrap_array_of_host_runtime_info_state_encryption_info) }),
        ("ArrayOfVmMarkedAsTemplate", TypeInfo::Value { name: "ArrayOfVmMarkedAsTemplate", make_deserializer: || make_deser_with::<Vec<super::structs::VmMarkedAsTemplate>>(wrap_array_of_vm_marked_as_template), from_value: |v| from_val_with::<Vec<super::structs::VmMarkedAsTemplate>>(v, wrap_array_of_vm_marked_as_template) }),
        ("CryptoManagerKmipGenerateKeySpec", TypeInfo::Object { name: "CryptoManagerKmipGenerateKeySpec", builder_fn: || Box::new(CryptoManagerKmipGenerateKeySpecFields::new()) }),
        ("ArrayOfHostVFlashManagerVFlashConfigInfo", TypeInfo::Value { name: "ArrayOfHostVFlashManagerVFlashConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostVFlashManagerVFlashConfigInfo>>(wrap_array_of_host_v_flash_manager_v_flash_config_info), from_value: |v| from_val_with::<Vec<super::structs::HostVFlashManagerVFlashConfigInfo>>(v, wrap_array_of_host_v_flash_manager_v_flash_config_info) }),
        ("ArrayOfHostFibreChannelOverEthernetHbaLinkInfo", TypeInfo::Value { name: "ArrayOfHostFibreChannelOverEthernetHbaLinkInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostFibreChannelOverEthernetHbaLinkInfo>>(wrap_array_of_host_fibre_channel_over_ethernet_hba_link_info), from_value: |v| from_val_with::<Vec<super::structs::HostFibreChannelOverEthernetHbaLinkInfo>>(v, wrap_array_of_host_fibre_channel_over_ethernet_hba_link_info) }),
        ("ArrayOfClusterDrsVmConfigSpec", TypeInfo::Value { name: "ArrayOfClusterDrsVmConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDrsVmConfigSpec>>(wrap_array_of_cluster_drs_vm_config_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterDrsVmConfigSpec>>(v, wrap_array_of_cluster_drs_vm_config_spec) }),
        ("IoFilterManagerSslTrust", TypeInfo::Object { name: "IoFilterManagerSslTrust", builder_fn: || Box::new(IoFilterManagerSslTrustFields::new()) }),
        ("ArrayOfVirtualFloppyRemoteDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualFloppyRemoteDeviceBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualFloppyRemoteDeviceBackingInfo>>(wrap_array_of_virtual_floppy_remote_device_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualFloppyRemoteDeviceBackingInfo>>(v, wrap_array_of_virtual_floppy_remote_device_backing_info) }),
        ("ArrayOfVirtualDeviceConnectOption", TypeInfo::Value { name: "ArrayOfVirtualDeviceConnectOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDeviceConnectOption>>(wrap_array_of_virtual_device_connect_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDeviceConnectOption>>(v, wrap_array_of_virtual_device_connect_option) }),
        ("ArrayOfVasaProviderInfo", TypeInfo::Value { name: "ArrayOfVasaProviderInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VasaProviderInfo>>(wrap_array_of_vasa_provider_info), from_value: |v| from_val_with::<Vec<super::structs::VasaProviderInfo>>(v, wrap_array_of_vasa_provider_info) }),
        ("DvsDropNetworkRuleAction", TypeInfo::Object { name: "DvsDropNetworkRuleAction", builder_fn: || Box::new(DvsDropNetworkRuleActionFields::new()) }),
        ("OvfPropertyType", TypeInfo::Object { name: "OvfPropertyType", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfPropertyType))) }),
        ("ArrayOfHostFibreChannelOverEthernetHba", TypeInfo::Value { name: "ArrayOfHostFibreChannelOverEthernetHba", make_deserializer: || make_deser_with::<Vec<super::structs::HostFibreChannelOverEthernetHba>>(wrap_array_of_host_fibre_channel_over_ethernet_hba), from_value: |v| from_val_with::<Vec<super::structs::HostFibreChannelOverEthernetHba>>(v, wrap_array_of_host_fibre_channel_over_ethernet_hba) }),
        ("HostProfileAppliedEvent", TypeInfo::Object { name: "HostProfileAppliedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostProfileAppliedEvent))) }),
        ("VsanHclDeviceConstraint", TypeInfo::Object { name: "VsanHclDeviceConstraint", builder_fn: || Box::new(VsanHclDeviceConstraintFields::new()) }),
        ("OvfCreateDescriptorParams", TypeInfo::Object { name: "OvfCreateDescriptorParams", builder_fn: || Box::new(OvfCreateDescriptorParamsFields::new()) }),
        ("ArrayOfVirtualVmxnet3OptionStrictLatencyConfigOption", TypeInfo::Value { name: "ArrayOfVirtualVmxnet3OptionStrictLatencyConfigOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualVmxnet3OptionStrictLatencyConfigOption>>(wrap_array_of_virtual_vmxnet_3_option_strict_latency_config_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualVmxnet3OptionStrictLatencyConfigOption>>(v, wrap_array_of_virtual_vmxnet_3_option_strict_latency_config_option) }),
        ("LAGInfo", TypeInfo::Object { name: "LAGInfo", builder_fn: || Box::new(LagInfoFields::new()) }),
        ("FcoeFaultPnicHasNoPortSet", TypeInfo::Object { name: "FcoeFaultPnicHasNoPortSet", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FcoeFaultPnicHasNoPortSet))) }),
        ("DvsVnicAllocatedResource", TypeInfo::Object { name: "DvsVnicAllocatedResource", builder_fn: || Box::new(DvsVnicAllocatedResourceFields::new()) }),
        ("ArrayOfHostRdmaDeviceCapability", TypeInfo::Value { name: "ArrayOfHostRdmaDeviceCapability", make_deserializer: || make_deser_with::<Vec<super::structs::HostRdmaDeviceCapability>>(wrap_array_of_host_rdma_device_capability), from_value: |v| from_val_with::<Vec<super::structs::HostRdmaDeviceCapability>>(v, wrap_array_of_host_rdma_device_capability) }),
        ("AlarmAction", TypeInfo::Object { name: "AlarmAction", builder_fn: || Box::new(AlarmActionFields::new()) }),
        ("PermissionUpdatedEvent", TypeInfo::Object { name: "PermissionUpdatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::PermissionUpdatedEvent))) }),
        ("UnsupportedVmxLocation", TypeInfo::Object { name: "UnsupportedVmxLocation", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnsupportedVmxLocation))) }),
        ("ArrayOfProfileRemovedEvent", TypeInfo::Value { name: "ArrayOfProfileRemovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_profile_removed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_profile_removed_event) }),
        ("ArrayOfVFlashModuleVersionIncompatible", TypeInfo::Value { name: "ArrayOfVFlashModuleVersionIncompatible", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_flash_module_version_incompatible), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_flash_module_version_incompatible) }),
        ("TooManyNativeClonesOnFile", TypeInfo::Object { name: "TooManyNativeClonesOnFile", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TooManyNativeClonesOnFile))) }),
        ("VirtualAppLinkInfo", TypeInfo::Object { name: "VirtualAppLinkInfo", builder_fn: || Box::new(VirtualAppLinkInfoFields::new()) }),
        ("ArrayOfNetworkInaccessible", TypeInfo::Value { name: "ArrayOfNetworkInaccessible", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_network_inaccessible), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_network_inaccessible) }),
        ("VsanQueryResultHostInfo", TypeInfo::Object { name: "VsanQueryResultHostInfo", builder_fn: || Box::new(VsanQueryResultHostInfoFields::new()) }),
        ("ArrayOfVmResumingEvent", TypeInfo::Value { name: "ArrayOfVmResumingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_resuming_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_resuming_event) }),
        ("InvalidIndexArgument", TypeInfo::Object { name: "InvalidIndexArgument", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidIndexArgument))) }),
        ("VsanIscsiTargetBasicInfo", TypeInfo::Object { name: "VsanIscsiTargetBasicInfo", builder_fn: || Box::new(VsanIscsiTargetBasicInfoFields::new()) }),
        ("ArrayOfVsanJsonFilterRule", TypeInfo::Value { name: "ArrayOfVsanJsonFilterRule", make_deserializer: || make_deser_with::<Vec<super::structs::VsanJsonFilterRule>>(wrap_array_of_vsan_json_filter_rule), from_value: |v| from_val_with::<Vec<super::structs::VsanJsonFilterRule>>(v, wrap_array_of_vsan_json_filter_rule) }),
        ("VsanClusterHealthGroup", TypeInfo::Object { name: "VsanClusterHealthGroup", builder_fn: || Box::new(VsanClusterHealthGroupFields::new()) }),
        ("AgentSslTrust", TypeInfo::Object { name: "AgentSslTrust", builder_fn: || Box::new(AgentSslTrustFields::new()) }),
        ("NetIpStackInfo", TypeInfo::Object { name: "NetIpStackInfo", builder_fn: || Box::new(NetIpStackInfoFields::new()) }),
        ("ArrayOfOvfConsumerUndefinedPrefix", TypeInfo::Value { name: "ArrayOfOvfConsumerUndefinedPrefix", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_consumer_undefined_prefix), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_consumer_undefined_prefix) }),
        ("ArrayOfVsanHealthTxtBasedAction", TypeInfo::Value { name: "ArrayOfVsanHealthTxtBasedAction", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthTxtBasedAction>>(wrap_array_of_vsan_health_txt_based_action), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthTxtBasedAction>>(v, wrap_array_of_vsan_health_txt_based_action) }),
        ("ArrayOfPatchSuperseded", TypeInfo::Value { name: "ArrayOfPatchSuperseded", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_patch_superseded), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_patch_superseded) }),
        ("ArrayOfOvfXmlFormat", TypeInfo::Value { name: "ArrayOfOvfXmlFormat", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_xml_format), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_xml_format) }),
        ("HostDiskDimensionsChs", TypeInfo::Object { name: "HostDiskDimensionsChs", builder_fn: || Box::new(HostDiskDimensionsChsFields::new()) }),
        ("ArrayOfVMwareDvsLacpGroupConfig", TypeInfo::Value { name: "ArrayOfVMwareDvsLacpGroupConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsLacpGroupConfig>>(wrap_array_of_v_mware_dvs_lacp_group_config), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsLacpGroupConfig>>(v, wrap_array_of_v_mware_dvs_lacp_group_config) }),
        ("ArrayOfClusterClusterInitialPlacementAction", TypeInfo::Value { name: "ArrayOfClusterClusterInitialPlacementAction", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterClusterInitialPlacementAction>>(wrap_array_of_cluster_cluster_initial_placement_action), from_value: |v| from_val_with::<Vec<super::structs::ClusterClusterInitialPlacementAction>>(v, wrap_array_of_cluster_cluster_initial_placement_action) }),
        ("ArrayOfProfileMetadataProfileSortSpec", TypeInfo::Value { name: "ArrayOfProfileMetadataProfileSortSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileMetadataProfileSortSpec>>(wrap_array_of_profile_metadata_profile_sort_spec), from_value: |v| from_val_with::<Vec<super::structs::ProfileMetadataProfileSortSpec>>(v, wrap_array_of_profile_metadata_profile_sort_spec) }),
        ("DuplicateEntry", TypeInfo::Object { name: "DuplicateEntry", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DuplicateEntry))) }),
        ("ArrayOfVsanClusterHealthSystemVersionResult", TypeInfo::Value { name: "ArrayOfVsanClusterHealthSystemVersionResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthSystemVersionResult>>(wrap_array_of_vsan_cluster_health_system_version_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthSystemVersionResult>>(v, wrap_array_of_vsan_cluster_health_system_version_result) }),
        ("ArrayOfVirtualMachineGuestSummary", TypeInfo::Value { name: "ArrayOfVirtualMachineGuestSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineGuestSummary>>(wrap_array_of_virtual_machine_guest_summary), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineGuestSummary>>(v, wrap_array_of_virtual_machine_guest_summary) }),
        ("ArrayOfVsanIscsiTargetAuthSpec", TypeInfo::Value { name: "ArrayOfVsanIscsiTargetAuthSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiTargetAuthSpec>>(wrap_array_of_vsan_iscsi_target_auth_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiTargetAuthSpec>>(v, wrap_array_of_vsan_iscsi_target_auth_spec) }),
        ("ArrayOfVibRequiresManualUninstallation", TypeInfo::Value { name: "ArrayOfVibRequiresManualUninstallation", make_deserializer: || make_deser_with::<Vec<super::structs::VibRequiresManualUninstallation>>(wrap_array_of_vib_requires_manual_uninstallation), from_value: |v| from_val_with::<Vec<super::structs::VibRequiresManualUninstallation>>(v, wrap_array_of_vib_requires_manual_uninstallation) }),
        ("ArrayOfStorageProfile", TypeInfo::Value { name: "ArrayOfStorageProfile", make_deserializer: || make_deser_with::<Vec<super::structs::StorageProfile>>(wrap_array_of_storage_profile), from_value: |v| from_val_with::<Vec<super::structs::StorageProfile>>(v, wrap_array_of_storage_profile) }),
        ("HostCnxFailedCcagentUpgradeEvent", TypeInfo::Object { name: "HostCnxFailedCcagentUpgradeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedCcagentUpgradeEvent))) }),
        ("ArrayOfPerfCompositeMetric", TypeInfo::Value { name: "ArrayOfPerfCompositeMetric", make_deserializer: || make_deser_with::<Vec<super::structs::PerfCompositeMetric>>(wrap_array_of_perf_composite_metric), from_value: |v| from_val_with::<Vec<super::structs::PerfCompositeMetric>>(v, wrap_array_of_perf_composite_metric) }),
        ("ArrayOfClusterIoFilterInfo", TypeInfo::Value { name: "ArrayOfClusterIoFilterInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterIoFilterInfo>>(wrap_array_of_cluster_io_filter_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterIoFilterInfo>>(v, wrap_array_of_cluster_io_filter_info) }),
        ("VslmTaskReasonSchedule", TypeInfo::Object { name: "VslmTaskReasonSchedule", builder_fn: || Box::new(VslmTaskReasonScheduleFields::new()) }),
        ("ArrayOfVirtualMachineConfigOption", TypeInfo::Value { name: "ArrayOfVirtualMachineConfigOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineConfigOption>>(wrap_array_of_virtual_machine_config_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineConfigOption>>(v, wrap_array_of_virtual_machine_config_option) }),
        ("NvdimmNamespaceCreateSpec", TypeInfo::Object { name: "NvdimmNamespaceCreateSpec", builder_fn: || Box::new(NvdimmNamespaceCreateSpecFields::new()) }),
        ("VirtualMachineIdeDiskDevicePartitionInfo", TypeInfo::Object { name: "VirtualMachineIdeDiskDevicePartitionInfo", builder_fn: || Box::new(VirtualMachineIdeDiskDevicePartitionInfoFields::new()) }),
        ("ScheduledTaskDetail", TypeInfo::Object { name: "ScheduledTaskDetail", builder_fn: || Box::new(ScheduledTaskDetailFields::new()) }),
        ("CnsAlreadyRegisteredFault", TypeInfo::Object { name: "CnsAlreadyRegisteredFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CnsAlreadyRegisteredFault))) }),
        ("VmVnicPoolReservationViolationClearEvent", TypeInfo::Object { name: "VmVnicPoolReservationViolationClearEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmVnicPoolReservationViolationClearEvent))) }),
        ("HostInternetScsiHbaIscsiIpv6Address", TypeInfo::Object { name: "HostInternetScsiHbaIscsiIpv6Address", builder_fn: || Box::new(HostInternetScsiHbaIscsiIpv6AddressFields::new()) }),
        ("Relation", TypeInfo::Object { name: "Relation", builder_fn: || Box::new(RelationFields::new()) }),
        ("VsanFileShareNetPermission", TypeInfo::Object { name: "VsanFileShareNetPermission", builder_fn: || Box::new(VsanFileShareNetPermissionFields::new()) }),
        ("VsanIperfClientSpec", TypeInfo::Object { name: "VsanIperfClientSpec", builder_fn: || Box::new(VsanIperfClientSpecFields::new()) }),
        ("ArrayOfSolutionsVMSource", TypeInfo::Value { name: "ArrayOfSolutionsVMSource", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_solutions_vm_source_array)), from_value: |v| cast_to_solutions_vm_source_array(from_value(v)?) }),
        ("ArrayOfVMwareDvsMtuCapability", TypeInfo::Value { name: "ArrayOfVMwareDvsMtuCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsMtuCapability>>(wrap_array_of_v_mware_dvs_mtu_capability), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsMtuCapability>>(v, wrap_array_of_v_mware_dvs_mtu_capability) }),
        ("ArrayOfNotSupportedHostForVFlash", TypeInfo::Value { name: "ArrayOfNotSupportedHostForVFlash", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_host_for_v_flash), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_host_for_v_flash) }),
        ("ArrayOfIndependentDiskVMotionNotSupported", TypeInfo::Value { name: "ArrayOfIndependentDiskVMotionNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_independent_disk_v_motion_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_independent_disk_v_motion_not_supported) }),
        ("DistributedVirtualSwitchPortConnectee", TypeInfo::Object { name: "DistributedVirtualSwitchPortConnectee", builder_fn: || Box::new(DistributedVirtualSwitchPortConnecteeFields::new()) }),
        ("DirectPathProfileManagerFilterSpec", TypeInfo::Object { name: "DirectPathProfileManagerFilterSpec", builder_fn: || Box::new(DirectPathProfileManagerFilterSpecFields::new()) }),
        ("CannotChangeHaSettingsForFtSecondary", TypeInfo::Object { name: "CannotChangeHaSettingsForFtSecondary", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotChangeHaSettingsForFtSecondary))) }),
        ("VsanUpdateItem", TypeInfo::Object { name: "VsanUpdateItem", builder_fn: || Box::new(VsanUpdateItemFields::new()) }),
        ("PhysicalNicHintInfo", TypeInfo::Object { name: "PhysicalNicHintInfo", builder_fn: || Box::new(PhysicalNicHintInfoFields::new()) }),
        ("ArrayOfHostPortGroupConfig", TypeInfo::Value { name: "ArrayOfHostPortGroupConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostPortGroupConfig>>(wrap_array_of_host_port_group_config), from_value: |v| from_val_with::<Vec<super::structs::HostPortGroupConfig>>(v, wrap_array_of_host_port_group_config) }),
        ("HostAuthenticationStoreInfo", TypeInfo::Object { name: "HostAuthenticationStoreInfo", builder_fn: || Box::new(HostAuthenticationStoreInfoFields::new()) }),
        ("VmFailoverFailed", TypeInfo::Object { name: "VmFailoverFailed", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailoverFailed))) }),
        ("RoleAddedEvent", TypeInfo::Object { name: "RoleAddedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::RoleAddedEvent))) }),
        ("ArrayOfResourcePoolResourceUsage", TypeInfo::Value { name: "ArrayOfResourcePoolResourceUsage", make_deserializer: || make_deser_with::<Vec<super::structs::ResourcePoolResourceUsage>>(wrap_array_of_resource_pool_resource_usage), from_value: |v| from_val_with::<Vec<super::structs::ResourcePoolResourceUsage>>(v, wrap_array_of_resource_pool_resource_usage) }),
        ("ArrayOfVsanServerHostUnicastInfo", TypeInfo::Value { name: "ArrayOfVsanServerHostUnicastInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanServerHostUnicastInfo>>(wrap_array_of_vsan_server_host_unicast_info), from_value: |v| from_val_with::<Vec<super::structs::VsanServerHostUnicastInfo>>(v, wrap_array_of_vsan_server_host_unicast_info) }),
        ("ArrayOfProfileExecuteError", TypeInfo::Value { name: "ArrayOfProfileExecuteError", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileExecuteError>>(wrap_array_of_profile_execute_error), from_value: |v| from_val_with::<Vec<super::structs::ProfileExecuteError>>(v, wrap_array_of_profile_execute_error) }),
        ("HostRdmaTargetTransport", TypeInfo::Object { name: "HostRdmaTargetTransport", builder_fn: || Box::new(HostRdmaTargetTransportFields::new()) }),
        ("LicenseExpired", TypeInfo::Object { name: "LicenseExpired", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LicenseExpired))) }),
        ("ArrayOfVmUuidConflictEvent", TypeInfo::Value { name: "ArrayOfVmUuidConflictEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_uuid_conflict_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_uuid_conflict_event) }),
        ("ArrayOfEntityResourceCheckDetails", TypeInfo::Value { name: "ArrayOfEntityResourceCheckDetails", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_entity_resource_check_details_array)), from_value: |v| cast_to_entity_resource_check_details_array(from_value(v)?) }),
        ("ArrayOfDvsVmVnicResourcePoolConfigSpec", TypeInfo::Value { name: "ArrayOfDvsVmVnicResourcePoolConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsVmVnicResourcePoolConfigSpec>>(wrap_array_of_dvs_vm_vnic_resource_pool_config_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsVmVnicResourcePoolConfigSpec>>(v, wrap_array_of_dvs_vm_vnic_resource_pool_config_spec) }),
        ("VsanMetricsConfig", TypeInfo::Object { name: "VsanMetricsConfig", builder_fn: || Box::new(VsanMetricsConfigFields::new()) }),
        ("PlacementResult", TypeInfo::Object { name: "PlacementResult", builder_fn: || Box::new(PlacementResultFields::new()) }),
        ("ArrayOfClusterProfileConfigServiceCreateSpec", TypeInfo::Value { name: "ArrayOfClusterProfileConfigServiceCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterProfileConfigServiceCreateSpec>>(wrap_array_of_cluster_profile_config_service_create_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterProfileConfigServiceCreateSpec>>(v, wrap_array_of_cluster_profile_config_service_create_spec) }),
        ("ArrayOfDistributedVirtualSwitchPortCriteria", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchPortCriteria", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchPortCriteria>>(wrap_array_of_distributed_virtual_switch_port_criteria), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchPortCriteria>>(v, wrap_array_of_distributed_virtual_switch_port_criteria) }),
        ("DvsServiceConsoleVNicProfile", TypeInfo::Object { name: "DvsServiceConsoleVNicProfile", builder_fn: || Box::new(DvsServiceConsoleVNicProfileFields::new()) }),
        ("ArrayOfIscsiPortInfo", TypeInfo::Value { name: "ArrayOfIscsiPortInfo", make_deserializer: || make_deser_with::<Vec<super::structs::IscsiPortInfo>>(wrap_array_of_iscsi_port_info), from_value: |v| from_val_with::<Vec<super::structs::IscsiPortInfo>>(v, wrap_array_of_iscsi_port_info) }),
        ("ArrayOfStorageDrsCannotMoveManuallyPlacedVm", TypeInfo::Value { name: "ArrayOfStorageDrsCannotMoveManuallyPlacedVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_cannot_move_manually_placed_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_cannot_move_manually_placed_vm) }),
        ("ArrayOfWarningUpgradeEvent", TypeInfo::Value { name: "ArrayOfWarningUpgradeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_warning_upgrade_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_warning_upgrade_event) }),
        ("OvfImport", TypeInfo::Object { name: "OvfImport", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfImport))) }),
        ("VsanPerfsvcHealthResult", TypeInfo::Object { name: "VsanPerfsvcHealthResult", builder_fn: || Box::new(VsanPerfsvcHealthResultFields::new()) }),
        ("DVSSelection", TypeInfo::Object { name: "DVSSelection", builder_fn: || Box::new(DvsSelectionFields::new()) }),
        ("ArrayOfPbmCapabilityNamespaceInfo", TypeInfo::Value { name: "ArrayOfPbmCapabilityNamespaceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityNamespaceInfo>>(wrap_array_of_pbm_capability_namespace_info), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityNamespaceInfo>>(v, wrap_array_of_pbm_capability_namespace_info) }),
        ("CpuCompatibilityUnknown", TypeInfo::Object { name: "CpuCompatibilityUnknown", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CpuCompatibilityUnknown))) }),
        ("ArrayOfVirtualMachineFlagInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineFlagInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFlagInfo>>(wrap_array_of_virtual_machine_flag_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFlagInfo>>(v, wrap_array_of_virtual_machine_flag_info) }),
        ("ArrayOfVsanNetworkConfigPortgroupWithNoRedundancyIssue", TypeInfo::Value { name: "ArrayOfVsanNetworkConfigPortgroupWithNoRedundancyIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkConfigPortgroupWithNoRedundancyIssue>>(wrap_array_of_vsan_network_config_portgroup_with_no_redundancy_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkConfigPortgroupWithNoRedundancyIssue>>(v, wrap_array_of_vsan_network_config_portgroup_with_no_redundancy_issue) }),
        ("ArrayOfSingleMac", TypeInfo::Value { name: "ArrayOfSingleMac", make_deserializer: || make_deser_with::<Vec<super::structs::SingleMac>>(wrap_array_of_single_mac), from_value: |v| from_val_with::<Vec<super::structs::SingleMac>>(v, wrap_array_of_single_mac) }),
        ("FaultToleranceCannotEditMem", TypeInfo::Object { name: "FaultToleranceCannotEditMem", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FaultToleranceCannotEditMem))) }),
        ("DisableAdminNotSupported", TypeInfo::Object { name: "DisableAdminNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DisableAdminNotSupported))) }),
        ("HostMonitoringStateChangedEvent", TypeInfo::Object { name: "HostMonitoringStateChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostMonitoringStateChangedEvent))) }),
        ("ArrayOfTaskFilterSpecTimeOption", TypeInfo::Value { name: "ArrayOfTaskFilterSpecTimeOption", make_deserializer: || make_deser_with::<Vec<super::enums::TaskFilterSpecTimeOptionEnum>>(wrap_array_of_task_filter_spec_time_option), from_value: |v| from_val_with::<Vec<super::enums::TaskFilterSpecTimeOptionEnum>>(v, wrap_array_of_task_filter_spec_time_option) }),
        ("ArrayOfInvalidBmcRole", TypeInfo::Value { name: "ArrayOfInvalidBmcRole", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_bmc_role), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_bmc_role) }),
        ("ArrayOfCannotPowerOffVmInCluster", TypeInfo::Value { name: "ArrayOfCannotPowerOffVmInCluster", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_power_off_vm_in_cluster), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_power_off_vm_in_cluster) }),
        ("ClusterFailoverResourcesAdmissionControlPolicy", TypeInfo::Object { name: "ClusterFailoverResourcesAdmissionControlPolicy", builder_fn: || Box::new(ClusterFailoverResourcesAdmissionControlPolicyFields::new()) }),
        ("OvfCpuCompatibility", TypeInfo::Object { name: "OvfCpuCompatibility", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfCpuCompatibility))) }),
        ("ArrayOfVirtualDiskPartitionedRawDiskVer2BackingOption", TypeInfo::Value { name: "ArrayOfVirtualDiskPartitionedRawDiskVer2BackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskPartitionedRawDiskVer2BackingOption>>(wrap_array_of_virtual_disk_partitioned_raw_disk_ver_2_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskPartitionedRawDiskVer2BackingOption>>(v, wrap_array_of_virtual_disk_partitioned_raw_disk_ver_2_backing_option) }),
        ("ArrayOfHostVffsSpec", TypeInfo::Value { name: "ArrayOfHostVffsSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostVffsSpec>>(wrap_array_of_host_vffs_spec), from_value: |v| from_val_with::<Vec<super::structs::HostVffsSpec>>(v, wrap_array_of_host_vffs_spec) }),
        ("ArrayOfLifecycleFaultDomainDetails", TypeInfo::Value { name: "ArrayOfLifecycleFaultDomainDetails", make_deserializer: || make_deser_with::<Vec<super::structs::LifecycleFaultDomainDetails>>(wrap_array_of_lifecycle_fault_domain_details), from_value: |v| from_val_with::<Vec<super::structs::LifecycleFaultDomainDetails>>(v, wrap_array_of_lifecycle_fault_domain_details) }),
        ("OvfUnsupportedSection", TypeInfo::Object { name: "OvfUnsupportedSection", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedSection))) }),
        ("ArrayOfVirtualSerialPortDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualSerialPortDeviceBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortDeviceBackingOption>>(wrap_array_of_virtual_serial_port_device_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortDeviceBackingOption>>(v, wrap_array_of_virtual_serial_port_device_backing_option) }),
        ("ArrayOfNoConnectedDatastore", TypeInfo::Value { name: "ArrayOfNoConnectedDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_connected_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_connected_datastore) }),
        ("ArrayOfVMFSDatastoreExtendedEvent", TypeInfo::Value { name: "ArrayOfVMFSDatastoreExtendedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vmfs_datastore_extended_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vmfs_datastore_extended_event) }),
        ("DistributedVirtualSwitchHostMemberPnicSpec", TypeInfo::Object { name: "DistributedVirtualSwitchHostMemberPnicSpec", builder_fn: || Box::new(DistributedVirtualSwitchHostMemberPnicSpecFields::new()) }),
        ("HostPartialMaintenanceModeRuntimeInfo", TypeInfo::Object { name: "HostPartialMaintenanceModeRuntimeInfo", builder_fn: || Box::new(HostPartialMaintenanceModeRuntimeInfoFields::new()) }),
        ("VirtualMachineTicket", TypeInfo::Object { name: "VirtualMachineTicket", builder_fn: || Box::new(VirtualMachineTicketFields::new()) }),
        ("OvfConnectedDeviceIso", TypeInfo::Object { name: "OvfConnectedDeviceIso", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConnectedDeviceIso))) }),
        ("LicenseReservationInfo", TypeInfo::Object { name: "LicenseReservationInfo", builder_fn: || Box::new(LicenseReservationInfoFields::new()) }),
        ("VirtualCdromPassthroughBackingInfo", TypeInfo::Object { name: "VirtualCdromPassthroughBackingInfo", builder_fn: || Box::new(VirtualCdromPassthroughBackingInfoFields::new()) }),
        ("ArrayOfLicenseAvailabilityInfo", TypeInfo::Value { name: "ArrayOfLicenseAvailabilityInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LicenseAvailabilityInfo>>(wrap_array_of_license_availability_info), from_value: |v| from_val_with::<Vec<super::structs::LicenseAvailabilityInfo>>(v, wrap_array_of_license_availability_info) }),
        ("HostConnectedEvent", TypeInfo::Object { name: "HostConnectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostConnectedEvent))) }),
        ("ArrayOfPolicyAssociation", TypeInfo::Value { name: "ArrayOfPolicyAssociation", make_deserializer: || make_deser_with::<Vec<super::structs::PolicyAssociation>>(wrap_array_of_policy_association), from_value: |v| from_val_with::<Vec<super::structs::PolicyAssociation>>(v, wrap_array_of_policy_association) }),
        ("VsanXvcClientInfoSpec", TypeInfo::Object { name: "VsanXvcClientInfoSpec", builder_fn: || Box::new(VsanXvcClientInfoSpecFields::new()) }),
        ("ArrayOfVmotionInterfaceNotEnabled", TypeInfo::Value { name: "ArrayOfVmotionInterfaceNotEnabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vmotion_interface_not_enabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vmotion_interface_not_enabled) }),
        ("VasaProviderSpec", TypeInfo::Object { name: "VasaProviderSpec", builder_fn: || Box::new(VasaProviderSpecFields::new()) }),
        ("VsanIODiagnosticsInstanceQuerySpec", TypeInfo::Object { name: "VsanIODiagnosticsInstanceQuerySpec", builder_fn: || Box::new(VsanIoDiagnosticsInstanceQuerySpecFields::new()) }),
        ("ArrayOfHostFirewallRuleDirection", TypeInfo::Value { name: "ArrayOfHostFirewallRuleDirection", make_deserializer: || make_deser_with::<Vec<super::enums::HostFirewallRuleDirectionEnum>>(wrap_array_of_host_firewall_rule_direction), from_value: |v| from_val_with::<Vec<super::enums::HostFirewallRuleDirectionEnum>>(v, wrap_array_of_host_firewall_rule_direction) }),
        ("ExitStandbyModeFailedEvent", TypeInfo::Object { name: "ExitStandbyModeFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ExitStandbyModeFailedEvent))) }),
        ("AgentIssue", TypeInfo::Object { name: "AgentIssue", builder_fn: || Box::new(AgentIssueFields::new()) }),
        ("ClusterRuleSpec", TypeInfo::Object { name: "ClusterRuleSpec", builder_fn: || Box::new(ClusterRuleSpecFields::new()) }),
        ("ClusterAgentTransitionFailed", TypeInfo::Object { name: "ClusterAgentTransitionFailed", builder_fn: || Box::new(ClusterAgentTransitionFailedFields::new()) }),
        ("VMotionProtocolIncompatible", TypeInfo::Object { name: "VMotionProtocolIncompatible", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VMotionProtocolIncompatible))) }),
        ("ArrayOfVmRestartedOnAlternateHostEvent", TypeInfo::Value { name: "ArrayOfVmRestartedOnAlternateHostEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_restarted_on_alternate_host_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_restarted_on_alternate_host_event) }),
        ("ArrayOfCustomFieldDef", TypeInfo::Value { name: "ArrayOfCustomFieldDef", make_deserializer: || make_deser_with::<Vec<super::structs::CustomFieldDef>>(wrap_array_of_custom_field_def), from_value: |v| from_val_with::<Vec<super::structs::CustomFieldDef>>(v, wrap_array_of_custom_field_def) }),
        ("ArrayOfHostNvmeOpaqueTransportParameters", TypeInfo::Value { name: "ArrayOfHostNvmeOpaqueTransportParameters", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeOpaqueTransportParameters>>(wrap_array_of_host_nvme_opaque_transport_parameters), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeOpaqueTransportParameters>>(v, wrap_array_of_host_nvme_opaque_transport_parameters) }),
        ("StorageProcessor", TypeInfo::Object { name: "StorageProcessor", builder_fn: || Box::new(StorageProcessorFields::new()) }),
        ("HostSpbmPolicyBlobInfo", TypeInfo::Object { name: "HostSpbmPolicyBlobInfo", builder_fn: || Box::new(HostSpbmPolicyBlobInfoFields::new()) }),
        ("DeltaDiskFormatNotSupported", TypeInfo::Object { name: "DeltaDiskFormatNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DeltaDiskFormatNotSupported))) }),
        ("ArrayOfVsanXvcQueryCriteria", TypeInfo::Value { name: "ArrayOfVsanXvcQueryCriteria", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcQueryCriteria>>(wrap_array_of_vsan_xvc_query_criteria), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcQueryCriteria>>(v, wrap_array_of_vsan_xvc_query_criteria) }),
        ("ArrayOfUnsupportedGuest", TypeInfo::Value { name: "ArrayOfUnsupportedGuest", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_unsupported_guest), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_unsupported_guest) }),
        ("ArrayOfCannotAddHostWithFTVmToDifferentCluster", TypeInfo::Value { name: "ArrayOfCannotAddHostWithFTVmToDifferentCluster", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_add_host_with_ft_vm_to_different_cluster), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_add_host_with_ft_vm_to_different_cluster) }),
        ("ArrayOfOvfFileItem", TypeInfo::Value { name: "ArrayOfOvfFileItem", make_deserializer: || make_deser_with::<Vec<super::structs::OvfFileItem>>(wrap_array_of_ovf_file_item), from_value: |v| from_val_with::<Vec<super::structs::OvfFileItem>>(v, wrap_array_of_ovf_file_item) }),
        ("ArrayOfGroupOperationResult", TypeInfo::Value { name: "ArrayOfGroupOperationResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_group_operation_result_array)), from_value: |v| cast_to_group_operation_result_array(from_value(v)?) }),
        ("VsanStorageWorkloadType", TypeInfo::Object { name: "VsanStorageWorkloadType", builder_fn: || Box::new(VsanStorageWorkloadTypeFields::new()) }),
        ("ArrayOfVsanNetworkVMotionVmknicNotFountIssue", TypeInfo::Value { name: "ArrayOfVsanNetworkVMotionVmknicNotFountIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkVMotionVmknicNotFountIssue>>(wrap_array_of_vsan_network_v_motion_vmknic_not_fount_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkVMotionVmknicNotFountIssue>>(v, wrap_array_of_vsan_network_v_motion_vmknic_not_fount_issue) }),
        ("ArrayOfHostShortNameToIpFailedEvent", TypeInfo::Value { name: "ArrayOfHostShortNameToIpFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_short_name_to_ip_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_short_name_to_ip_failed_event) }),
        ("OvfConnectedDeviceFloppy", TypeInfo::Object { name: "OvfConnectedDeviceFloppy", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConnectedDeviceFloppy))) }),
        ("VsanSslVerifyCertFault", TypeInfo::Object { name: "VsanSslVerifyCertFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VsanSslVerifyCertFault))) }),
        ("HostFirewallConfigRuleSetConfig", TypeInfo::Object { name: "HostFirewallConfigRuleSetConfig", builder_fn: || Box::new(HostFirewallConfigRuleSetConfigFields::new()) }),
        ("VirtualIDEControllerOption", TypeInfo::Object { name: "VirtualIDEControllerOption", builder_fn: || Box::new(VirtualIdeControllerOptionFields::new()) }),
        ("ArrayOfVsanConfigBaseIssue", TypeInfo::Value { name: "ArrayOfVsanConfigBaseIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_config_base_issue_array)), from_value: |v| cast_to_vsan_config_base_issue_array(from_value(v)?) }),
        ("ArrayOfVmRelocateSpecEvent", TypeInfo::Value { name: "ArrayOfVmRelocateSpecEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_relocate_spec_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_relocate_spec_event) }),
        ("ArrayOfVAppPropertyInfo", TypeInfo::Value { name: "ArrayOfVAppPropertyInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VAppPropertyInfo>>(wrap_array_of_v_app_property_info), from_value: |v| from_val_with::<Vec<super::structs::VAppPropertyInfo>>(v, wrap_array_of_v_app_property_info) }),
        ("ArrayOfHooksMarkAsProcessedSpec", TypeInfo::Value { name: "ArrayOfHooksMarkAsProcessedSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HooksMarkAsProcessedSpec>>(wrap_array_of_hooks_mark_as_processed_spec), from_value: |v| from_val_with::<Vec<super::structs::HooksMarkAsProcessedSpec>>(v, wrap_array_of_hooks_mark_as_processed_spec) }),
        ("InvalidArgument", TypeInfo::Object { name: "InvalidArgument", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidArgument))) }),
        ("ArrayUpdateOperation", TypeInfo::Value { name: "ArrayUpdateOperation", make_deserializer: || make_deser_with::<super::enums::ArrayUpdateOperationEnum>(wrap_array_update_operation), from_value: |v| from_val_with::<super::enums::ArrayUpdateOperationEnum>(v, wrap_array_update_operation) }),
        ("PlacementAffinityRule", TypeInfo::Object { name: "PlacementAffinityRule", builder_fn: || Box::new(PlacementAffinityRuleFields::new()) }),
        ("ArrayOfUnexpectedCustomizationFault", TypeInfo::Value { name: "ArrayOfUnexpectedCustomizationFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_unexpected_customization_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_unexpected_customization_fault) }),
        ("VirtualMachineVMCIDeviceOptionFilterSpecOption", TypeInfo::Object { name: "VirtualMachineVMCIDeviceOptionFilterSpecOption", builder_fn: || Box::new(VirtualMachineVmciDeviceOptionFilterSpecOptionFields::new()) }),
        ("ArrayOfLicenseManagerLicenseInfo", TypeInfo::Value { name: "ArrayOfLicenseManagerLicenseInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LicenseManagerLicenseInfo>>(wrap_array_of_license_manager_license_info), from_value: |v| from_val_with::<Vec<super::structs::LicenseManagerLicenseInfo>>(v, wrap_array_of_license_manager_license_info) }),
        ("ArrayOfStorageDrsCannotMoveVmWithMountedCDROM", TypeInfo::Value { name: "ArrayOfStorageDrsCannotMoveVmWithMountedCDROM", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_cannot_move_vm_with_mounted_cdrom), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_cannot_move_vm_with_mounted_cdrom) }),
        ("CnsVolumeOperationBatchResult", TypeInfo::Object { name: "CnsVolumeOperationBatchResult", builder_fn: || Box::new(CnsVolumeOperationBatchResultFields::new()) }),
        ("ArrayOfNetDnsConfigInfo", TypeInfo::Value { name: "ArrayOfNetDnsConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NetDnsConfigInfo>>(wrap_array_of_net_dns_config_info), from_value: |v| from_val_with::<Vec<super::structs::NetDnsConfigInfo>>(v, wrap_array_of_net_dns_config_info) }),
        ("VirtualDiskConfigSpec", TypeInfo::Object { name: "VirtualDiskConfigSpec", builder_fn: || Box::new(VirtualDiskConfigSpecFields::new()) }),
        ("VmEmigratingEvent", TypeInfo::Object { name: "VmEmigratingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmEmigratingEvent))) }),
        ("ManagedObjectNotFound", TypeInfo::Object { name: "ManagedObjectNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ManagedObjectNotFound))) }),
        ("ArrayOfVirtualDiskMoId", TypeInfo::Value { name: "ArrayOfVirtualDiskMoId", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskMoId>>(wrap_array_of_virtual_disk_mo_id), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskMoId>>(v, wrap_array_of_virtual_disk_mo_id) }),
        ("ArrayOfInvalidReplicationState", TypeInfo::Value { name: "ArrayOfInvalidReplicationState", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_replication_state), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_replication_state) }),
        ("AlreadyBeingManaged", TypeInfo::Object { name: "AlreadyBeingManaged", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AlreadyBeingManaged))) }),
        ("VolumeEditorError", TypeInfo::Object { name: "VolumeEditorError", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VolumeEditorError))) }),
        ("ArrayOfVsanPerfMetricSeriesCSV", TypeInfo::Value { name: "ArrayOfVsanPerfMetricSeriesCSV", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfMetricSeriesCsv>>(wrap_array_of_vsan_perf_metric_series_csv), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfMetricSeriesCsv>>(v, wrap_array_of_vsan_perf_metric_series_csv) }),
        ("ArrayOfCnsVolumeMetadataUpdateSpec", TypeInfo::Value { name: "ArrayOfCnsVolumeMetadataUpdateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumeMetadataUpdateSpec>>(wrap_array_of_cns_volume_metadata_update_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumeMetadataUpdateSpec>>(v, wrap_array_of_cns_volume_metadata_update_spec) }),
        ("ArrayOfGuestRegKeySpec", TypeInfo::Value { name: "ArrayOfGuestRegKeySpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegKeySpec>>(wrap_array_of_guest_reg_key_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegKeySpec>>(v, wrap_array_of_guest_reg_key_spec) }),
        ("ArrayOfNoAccessUserEvent", TypeInfo::Value { name: "ArrayOfNoAccessUserEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_no_access_user_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_no_access_user_event) }),
        ("ArrayOfClusterCryptoConfigInfo", TypeInfo::Value { name: "ArrayOfClusterCryptoConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterCryptoConfigInfo>>(wrap_array_of_cluster_crypto_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterCryptoConfigInfo>>(v, wrap_array_of_cluster_crypto_config_info) }),
        ("ArrayOfHostRuntimeInfo", TypeInfo::Value { name: "ArrayOfHostRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostRuntimeInfo>>(wrap_array_of_host_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::HostRuntimeInfo>>(v, wrap_array_of_host_runtime_info) }),
        ("NetworkProfile", TypeInfo::Object { name: "NetworkProfile", builder_fn: || Box::new(NetworkProfileFields::new()) }),
        ("ArrayOfLicenseReservationInfo", TypeInfo::Value { name: "ArrayOfLicenseReservationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LicenseReservationInfo>>(wrap_array_of_license_reservation_info), from_value: |v| from_val_with::<Vec<super::structs::LicenseReservationInfo>>(v, wrap_array_of_license_reservation_info) }),
        ("ArrayOfHostTpmDigestInfo", TypeInfo::Value { name: "ArrayOfHostTpmDigestInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmDigestInfo>>(wrap_array_of_host_tpm_digest_info), from_value: |v| from_val_with::<Vec<super::structs::HostTpmDigestInfo>>(v, wrap_array_of_host_tpm_digest_info) }),
        ("ArrayOfHostConfigSummary", TypeInfo::Value { name: "ArrayOfHostConfigSummary", make_deserializer: || make_deser_with::<Vec<super::structs::HostConfigSummary>>(wrap_array_of_host_config_summary), from_value: |v| from_val_with::<Vec<super::structs::HostConfigSummary>>(v, wrap_array_of_host_config_summary) }),
        ("ArrayOfTaskFilterSpecByUsername", TypeInfo::Value { name: "ArrayOfTaskFilterSpecByUsername", make_deserializer: || make_deser_with::<Vec<super::structs::TaskFilterSpecByUsername>>(wrap_array_of_task_filter_spec_by_username), from_value: |v| from_val_with::<Vec<super::structs::TaskFilterSpecByUsername>>(v, wrap_array_of_task_filter_spec_by_username) }),
        ("VirtualNVDIMMOption", TypeInfo::Object { name: "VirtualNVDIMMOption", builder_fn: || Box::new(VirtualNvdimmOptionFields::new()) }),
        ("ArrayOfVibInvalidFormat", TypeInfo::Value { name: "ArrayOfVibInvalidFormat", make_deserializer: || make_deser_with::<Vec<super::structs::VibInvalidFormat>>(wrap_array_of_vib_invalid_format), from_value: |v| from_val_with::<Vec<super::structs::VibInvalidFormat>>(v, wrap_array_of_vib_invalid_format) }),
        ("UnlicensedVirtualMachinesEvent", TypeInfo::Object { name: "UnlicensedVirtualMachinesEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UnlicensedVirtualMachinesEvent))) }),
        ("ArrayOfHostMemorySpec", TypeInfo::Value { name: "ArrayOfHostMemorySpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostMemorySpec>>(wrap_array_of_host_memory_spec), from_value: |v| from_val_with::<Vec<super::structs::HostMemorySpec>>(v, wrap_array_of_host_memory_spec) }),
        ("ArrayOfIncorrectFileType", TypeInfo::Value { name: "ArrayOfIncorrectFileType", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_incorrect_file_type), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_incorrect_file_type) }),
        ("DVSMacManagementPolicy", TypeInfo::Object { name: "DVSMacManagementPolicy", builder_fn: || Box::new(DvsMacManagementPolicyFields::new()) }),
        ("ArrayOfHostSevInfo", TypeInfo::Value { name: "ArrayOfHostSevInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSevInfo>>(wrap_array_of_host_sev_info), from_value: |v| from_val_with::<Vec<super::structs::HostSevInfo>>(v, wrap_array_of_host_sev_info) }),
        ("ArrayOfSAMLTokenAuthentication", TypeInfo::Value { name: "ArrayOfSAMLTokenAuthentication", make_deserializer: || make_deser_with::<Vec<super::structs::SamlTokenAuthentication>>(wrap_array_of_saml_token_authentication), from_value: |v| from_val_with::<Vec<super::structs::SamlTokenAuthentication>>(v, wrap_array_of_saml_token_authentication) }),
        ("ArrayOfComplianceFailureComplianceFailureValues", TypeInfo::Value { name: "ArrayOfComplianceFailureComplianceFailureValues", make_deserializer: || make_deser_with::<Vec<super::structs::ComplianceFailureComplianceFailureValues>>(wrap_array_of_compliance_failure_compliance_failure_values), from_value: |v| from_val_with::<Vec<super::structs::ComplianceFailureComplianceFailureValues>>(v, wrap_array_of_compliance_failure_compliance_failure_values) }),
        ("ArrayOfDVSFailureCriteria", TypeInfo::Value { name: "ArrayOfDVSFailureCriteria", make_deserializer: || make_deser_with::<Vec<super::structs::DvsFailureCriteria>>(wrap_array_of_dvs_failure_criteria), from_value: |v| from_val_with::<Vec<super::structs::DvsFailureCriteria>>(v, wrap_array_of_dvs_failure_criteria) }),
        ("ArrayOfNvdimmSummary", TypeInfo::Value { name: "ArrayOfNvdimmSummary", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmSummary>>(wrap_array_of_nvdimm_summary), from_value: |v| from_val_with::<Vec<super::structs::NvdimmSummary>>(v, wrap_array_of_nvdimm_summary) }),
        ("DatastoreHostMount", TypeInfo::Object { name: "DatastoreHostMount", builder_fn: || Box::new(DatastoreHostMountFields::new()) }),
        ("GroupOperationResult", TypeInfo::Object { name: "GroupOperationResult", builder_fn: || Box::new(GroupOperationResultFields::new()) }),
        ("ArrayOfCompositePolicyOption", TypeInfo::Value { name: "ArrayOfCompositePolicyOption", make_deserializer: || make_deser_with::<Vec<super::structs::CompositePolicyOption>>(wrap_array_of_composite_policy_option), from_value: |v| from_val_with::<Vec<super::structs::CompositePolicyOption>>(v, wrap_array_of_composite_policy_option) }),
        ("ScheduledTaskFailedEvent", TypeInfo::Object { name: "ScheduledTaskFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ScheduledTaskFailedEvent))) }),
        ("SolutionsClusterBoundSolutionConfig", TypeInfo::Object { name: "SolutionsClusterBoundSolutionConfig", builder_fn: || Box::new(SolutionsClusterBoundSolutionConfigFields::new()) }),
        ("ArrayOfDatastoreFileCopiedEvent", TypeInfo::Value { name: "ArrayOfDatastoreFileCopiedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_file_copied_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_file_copied_event) }),
        ("ArrayOfHostInternetScsiHbaSendTarget", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaSendTarget", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaSendTarget>>(wrap_array_of_host_internet_scsi_hba_send_target), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaSendTarget>>(v, wrap_array_of_host_internet_scsi_hba_send_target) }),
        ("ArrayOfVsanClusterHostVmknicMapping", TypeInfo::Value { name: "ArrayOfVsanClusterHostVmknicMapping", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHostVmknicMapping>>(wrap_array_of_vsan_cluster_host_vmknic_mapping), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHostVmknicMapping>>(v, wrap_array_of_vsan_cluster_host_vmknic_mapping) }),
        ("VStorageObjectSnapshotInfoVStorageObjectSnapshot", TypeInfo::Object { name: "VStorageObjectSnapshotInfoVStorageObjectSnapshot", builder_fn: || Box::new(VStorageObjectSnapshotInfoVStorageObjectSnapshotFields::new()) }),
        ("ArrayOfPbmIncompatibleVendorSpecificRuleSet", TypeInfo::Value { name: "ArrayOfPbmIncompatibleVendorSpecificRuleSet", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_incompatible_vendor_specific_rule_set), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_incompatible_vendor_specific_rule_set) }),
        ("ArrayOfReplicationIncompatibleWithFT", TypeInfo::Value { name: "ArrayOfReplicationIncompatibleWithFT", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_replication_incompatible_with_ft), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_replication_incompatible_with_ft) }),
        ("ClusterDasAamNodeState", TypeInfo::Object { name: "ClusterDasAamNodeState", builder_fn: || Box::new(ClusterDasAamNodeStateFields::new()) }),
        ("TemplateBeingUpgradedEvent", TypeInfo::Object { name: "TemplateBeingUpgradedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::TemplateBeingUpgradedEvent))) }),
        ("ArrayOfVirtualSoundCard", TypeInfo::Value { name: "ArrayOfVirtualSoundCard", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_sound_card_array)), from_value: |v| cast_to_virtual_sound_card_array(from_value(v)?) }),
        ("ScheduledHardwareUpgradeInfo", TypeInfo::Object { name: "ScheduledHardwareUpgradeInfo", builder_fn: || Box::new(ScheduledHardwareUpgradeInfoFields::new()) }),
        ("ArrayOfVmwareDistributedVirtualSwitchNetworkOffloadConfig", TypeInfo::Value { name: "ArrayOfVmwareDistributedVirtualSwitchNetworkOffloadConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VmwareDistributedVirtualSwitchNetworkOffloadConfig>>(wrap_array_of_vmware_distributed_virtual_switch_network_offload_config), from_value: |v| from_val_with::<Vec<super::structs::VmwareDistributedVirtualSwitchNetworkOffloadConfig>>(v, wrap_array_of_vmware_distributed_virtual_switch_network_offload_config) }),
        ("BadUsernameSessionEvent", TypeInfo::Object { name: "BadUsernameSessionEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::BadUsernameSessionEvent))) }),
        ("VsanHostConfigInfoStorageInfo", TypeInfo::Object { name: "VsanHostConfigInfoStorageInfo", builder_fn: || Box::new(VsanHostConfigInfoStorageInfoFields::new()) }),
        ("VsanHostFwComponent", TypeInfo::Object { name: "VsanHostFwComponent", builder_fn: || Box::new(VsanHostFwComponentFields::new()) }),
        ("HostNotReachable", TypeInfo::Object { name: "HostNotReachable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostNotReachable))) }),
        ("ArrayOfInvalidNetworkResource", TypeInfo::Value { name: "ArrayOfInvalidNetworkResource", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_network_resource), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_network_resource) }),
        ("ArrayOfVsanPerfTopQuerySpec", TypeInfo::Value { name: "ArrayOfVsanPerfTopQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfTopQuerySpec>>(wrap_array_of_vsan_perf_top_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfTopQuerySpec>>(v, wrap_array_of_vsan_perf_top_query_spec) }),
        ("ExtendedDescription", TypeInfo::Object { name: "ExtendedDescription", builder_fn: || Box::new(ExtendedDescriptionFields::new()) }),
        ("ArrayOfVsanClusterVmdkLoadTestResult", TypeInfo::Value { name: "ArrayOfVsanClusterVmdkLoadTestResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterVmdkLoadTestResult>>(wrap_array_of_vsan_cluster_vmdk_load_test_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterVmdkLoadTestResult>>(v, wrap_array_of_vsan_cluster_vmdk_load_test_result) }),
        ("ArrayOfLocalDatastoreCreatedEvent", TypeInfo::Value { name: "ArrayOfLocalDatastoreCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_local_datastore_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_local_datastore_created_event) }),
        ("ComputeResourceHostSPBMLicenseInfoHostSPBMLicenseState", TypeInfo::Value { name: "ComputeResourceHostSPBMLicenseInfoHostSPBMLicenseState", make_deserializer: || make_deser_with::<super::enums::ComputeResourceHostSpbmLicenseInfoHostSpbmLicenseStateEnum>(wrap_compute_resource_host_spbm_license_info_host_spbm_license_state), from_value: |v| from_val_with::<super::enums::ComputeResourceHostSpbmLicenseInfoHostSpbmLicenseStateEnum>(v, wrap_compute_resource_host_spbm_license_info_host_spbm_license_state) }),
        ("ArrayOfDVSNetworkResourcePoolAllocationInfo", TypeInfo::Value { name: "ArrayOfDVSNetworkResourcePoolAllocationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DvsNetworkResourcePoolAllocationInfo>>(wrap_array_of_dvs_network_resource_pool_allocation_info), from_value: |v| from_val_with::<Vec<super::structs::DvsNetworkResourcePoolAllocationInfo>>(v, wrap_array_of_dvs_network_resource_pool_allocation_info) }),
        ("PerfMetricIntSeries", TypeInfo::Object { name: "PerfMetricIntSeries", builder_fn: || Box::new(PerfMetricIntSeriesFields::new()) }),
        ("VsanMountPrecheckNetworkLatencyResult", TypeInfo::Object { name: "VsanMountPrecheckNetworkLatencyResult", builder_fn: || Box::new(VsanMountPrecheckNetworkLatencyResultFields::new()) }),
        ("ExtendedElementDescription", TypeInfo::Object { name: "ExtendedElementDescription", builder_fn: || Box::new(ExtendedElementDescriptionFields::new()) }),
        ("HostDvxClass", TypeInfo::Object { name: "HostDvxClass", builder_fn: || Box::new(HostDvxClassFields::new()) }),
        ("ArrayOfHostNumaInfo", TypeInfo::Value { name: "ArrayOfHostNumaInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostNumaInfo>>(wrap_array_of_host_numa_info), from_value: |v| from_val_with::<Vec<super::structs::HostNumaInfo>>(v, wrap_array_of_host_numa_info) }),
        ("ArrayOfVirtualDiskSeSparseBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDiskSeSparseBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskSeSparseBackingInfo>>(wrap_array_of_virtual_disk_se_sparse_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskSeSparseBackingInfo>>(v, wrap_array_of_virtual_disk_se_sparse_backing_info) }),
        ("ArrayOfIsoImageFileInfo", TypeInfo::Value { name: "ArrayOfIsoImageFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::IsoImageFileInfo>>(wrap_array_of_iso_image_file_info), from_value: |v| from_val_with::<Vec<super::structs::IsoImageFileInfo>>(v, wrap_array_of_iso_image_file_info) }),
        ("ArrayOfVmStoppingEvent", TypeInfo::Value { name: "ArrayOfVmStoppingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_stopping_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_stopping_event) }),
        ("VirtualAppImportSpec", TypeInfo::Object { name: "VirtualAppImportSpec", builder_fn: || Box::new(VirtualAppImportSpecFields::new()) }),
        ("ArrayOfVsanIODiagnosticsInstance", TypeInfo::Value { name: "ArrayOfVsanIODiagnosticsInstance", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoDiagnosticsInstance>>(wrap_array_of_vsan_io_diagnostics_instance), from_value: |v| from_val_with::<Vec<super::structs::VsanIoDiagnosticsInstance>>(v, wrap_array_of_vsan_io_diagnostics_instance) }),
        ("ArrayOfHostVirtualNicConnection", TypeInfo::Value { name: "ArrayOfHostVirtualNicConnection", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualNicConnection>>(wrap_array_of_host_virtual_nic_connection), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualNicConnection>>(v, wrap_array_of_host_virtual_nic_connection) }),
        ("NodeNetworkSpec", TypeInfo::Object { name: "NodeNetworkSpec", builder_fn: || Box::new(NodeNetworkSpecFields::new()) }),
        ("ArrayOfHostForceMountedInfo", TypeInfo::Value { name: "ArrayOfHostForceMountedInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostForceMountedInfo>>(wrap_array_of_host_force_mounted_info), from_value: |v| from_val_with::<Vec<super::structs::HostForceMountedInfo>>(v, wrap_array_of_host_force_mounted_info) }),
        ("VirtualCdromAtapiBackingInfo", TypeInfo::Object { name: "VirtualCdromAtapiBackingInfo", builder_fn: || Box::new(VirtualCdromAtapiBackingInfoFields::new()) }),
        ("ArrayOfVirtualDiskId", TypeInfo::Value { name: "ArrayOfVirtualDiskId", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskId>>(wrap_array_of_virtual_disk_id), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskId>>(v, wrap_array_of_virtual_disk_id) }),
        ("VmMacChangedEvent", TypeInfo::Object { name: "VmMacChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmMacChangedEvent))) }),
        ("ArrayOfNotSupportedHostForVmcp", TypeInfo::Value { name: "ArrayOfNotSupportedHostForVmcp", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_host_for_vmcp), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_host_for_vmcp) }),
        ("AlarmSnmpFailedEvent", TypeInfo::Object { name: "AlarmSnmpFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmSnmpFailedEvent))) }),
        ("ArrayOfClusterFailoverHostAdmissionControlPolicy", TypeInfo::Value { name: "ArrayOfClusterFailoverHostAdmissionControlPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterFailoverHostAdmissionControlPolicy>>(wrap_array_of_cluster_failover_host_admission_control_policy), from_value: |v| from_val_with::<Vec<super::structs::ClusterFailoverHostAdmissionControlPolicy>>(v, wrap_array_of_cluster_failover_host_admission_control_policy) }),
        ("ArrayOfScheduledTaskEventArgument", TypeInfo::Value { name: "ArrayOfScheduledTaskEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::ScheduledTaskEventArgument>>(wrap_array_of_scheduled_task_event_argument), from_value: |v| from_val_with::<Vec<super::structs::ScheduledTaskEventArgument>>(v, wrap_array_of_scheduled_task_event_argument) }),
        ("CannotCreateFile", TypeInfo::Object { name: "CannotCreateFile", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotCreateFile))) }),
        ("ServiceConsolePortGroupProfile", TypeInfo::Object { name: "ServiceConsolePortGroupProfile", builder_fn: || Box::new(ServiceConsolePortGroupProfileFields::new()) }),
        ("ArrayOfVsanFaultDomainDestroySpec", TypeInfo::Value { name: "ArrayOfVsanFaultDomainDestroySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFaultDomainDestroySpec>>(wrap_array_of_vsan_fault_domain_destroy_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanFaultDomainDestroySpec>>(v, wrap_array_of_vsan_fault_domain_destroy_spec) }),
        ("GuestOperationsUnavailable", TypeInfo::Object { name: "GuestOperationsUnavailable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestOperationsUnavailable))) }),
        ("VirtualSCSIPassthrough", TypeInfo::Object { name: "VirtualSCSIPassthrough", builder_fn: || Box::new(VirtualScsiPassthroughFields::new()) }),
        ("DatastoreIORMReconfiguredEvent", TypeInfo::Object { name: "DatastoreIORMReconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreIormReconfiguredEvent))) }),
        ("ArrayOfVirtualMachineConfigInfoNpivWwnType", TypeInfo::Value { name: "ArrayOfVirtualMachineConfigInfoNpivWwnType", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualMachineConfigInfoNpivWwnTypeEnum>>(wrap_array_of_virtual_machine_config_info_npiv_wwn_type), from_value: |v| from_val_with::<Vec<super::enums::VirtualMachineConfigInfoNpivWwnTypeEnum>>(v, wrap_array_of_virtual_machine_config_info_npiv_wwn_type) }),
        ("UserNotFound", TypeInfo::Object { name: "UserNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UserNotFound))) }),
        ("VimClusterVsanWitnessSpec", TypeInfo::Object { name: "VimClusterVsanWitnessSpec", builder_fn: || Box::new(VimClusterVsanWitnessSpecFields::new()) }),
        ("HostIncompatibleForRecordReplay", TypeInfo::Object { name: "HostIncompatibleForRecordReplay", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostIncompatibleForRecordReplay))) }),
        ("ArrayOfVsanStoragePolicyStatus", TypeInfo::Value { name: "ArrayOfVsanStoragePolicyStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VsanStoragePolicyStatus>>(wrap_array_of_vsan_storage_policy_status), from_value: |v| from_val_with::<Vec<super::structs::VsanStoragePolicyStatus>>(v, wrap_array_of_vsan_storage_policy_status) }),
        ("ArrayOfHostDeploymentInfo", TypeInfo::Value { name: "ArrayOfHostDeploymentInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostDeploymentInfo>>(wrap_array_of_host_deployment_info), from_value: |v| from_val_with::<Vec<super::structs::HostDeploymentInfo>>(v, wrap_array_of_host_deployment_info) }),
        ("ArrayOfVirtualMachinePowerState", TypeInfo::Value { name: "ArrayOfVirtualMachinePowerState", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualMachinePowerStateEnum>>(wrap_array_of_virtual_machine_power_state), from_value: |v| from_val_with::<Vec<super::enums::VirtualMachinePowerStateEnum>>(v, wrap_array_of_virtual_machine_power_state) }),
        ("StructuredCustomizations", TypeInfo::Object { name: "StructuredCustomizations", builder_fn: || Box::new(StructuredCustomizationsFields::new()) }),
        ("VirtualSoundBlaster16Option", TypeInfo::Object { name: "VirtualSoundBlaster16Option", builder_fn: || Box::new(VirtualSoundBlaster16OptionFields::new()) }),
        ("CpuIncompatible81EDX", TypeInfo::Object { name: "CpuIncompatible81EDX", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CpuIncompatible81Edx))) }),
        ("ArrayOfHostHbaCreateSpec", TypeInfo::Value { name: "ArrayOfHostHbaCreateSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_hba_create_spec_array)), from_value: |v| cast_to_host_hba_create_spec_array(from_value(v)?) }),
        ("ArrayOfClusterStatusChangedEvent", TypeInfo::Value { name: "ArrayOfClusterStatusChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_cluster_status_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_cluster_status_changed_event) }),
        ("KeyProviderId", TypeInfo::Object { name: "KeyProviderId", builder_fn: || Box::new(KeyProviderIdFields::new()) }),
        ("DVSFilterSpecPvlanSpec", TypeInfo::Object { name: "DVSFilterSpecPvlanSpec", builder_fn: || Box::new(DvsFilterSpecPvlanSpecFields::new()) }),
        ("ArrayOfCustomizationEvent", TypeInfo::Value { name: "ArrayOfCustomizationEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_customization_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_customization_event) }),
        ("CannotUseNetwork", TypeInfo::Object { name: "CannotUseNetwork", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotUseNetwork))) }),
        ("ArrayOfHostAuthenticationStoreInfo", TypeInfo::Value { name: "ArrayOfHostAuthenticationStoreInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_authentication_store_info_array)), from_value: |v| cast_to_host_authentication_store_info_array(from_value(v)?) }),
        ("ArrayOfHostDiskDimensions", TypeInfo::Value { name: "ArrayOfHostDiskDimensions", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskDimensions>>(wrap_array_of_host_disk_dimensions), from_value: |v| from_val_with::<Vec<super::structs::HostDiskDimensions>>(v, wrap_array_of_host_disk_dimensions) }),
        ("HostAuthenticationInfo", TypeInfo::Object { name: "HostAuthenticationInfo", builder_fn: || Box::new(HostAuthenticationInfoFields::new()) }),
        ("VirtualE1000Option", TypeInfo::Object { name: "VirtualE1000Option", builder_fn: || Box::new(VirtualE1000OptionFields::new()) }),
        ("VirtualSoundBlaster16", TypeInfo::Object { name: "VirtualSoundBlaster16", builder_fn: || Box::new(VirtualSoundBlaster16Fields::new()) }),
        ("VirtualMachineVirtualDeviceGroupsDeviceGroup", TypeInfo::Object { name: "VirtualMachineVirtualDeviceGroupsDeviceGroup", builder_fn: || Box::new(VirtualMachineVirtualDeviceGroupsDeviceGroupFields::new()) }),
        ("ArrayOfDvsPortCreatedEvent", TypeInfo::Value { name: "ArrayOfDvsPortCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_created_event) }),
        ("StorageDrsConfigInfo", TypeInfo::Object { name: "StorageDrsConfigInfo", builder_fn: || Box::new(StorageDrsConfigInfoFields::new()) }),
        ("ProviderBusy", TypeInfo::Object { name: "ProviderBusy", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProviderBusy))) }),
        ("VsanClusterAdvCfgSyncHostResult", TypeInfo::Object { name: "VsanClusterAdvCfgSyncHostResult", builder_fn: || Box::new(VsanClusterAdvCfgSyncHostResultFields::new()) }),
        ("ArrayOfLinkLayerDiscoveryProtocolInfo", TypeInfo::Value { name: "ArrayOfLinkLayerDiscoveryProtocolInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LinkLayerDiscoveryProtocolInfo>>(wrap_array_of_link_layer_discovery_protocol_info), from_value: |v| from_val_with::<Vec<super::structs::LinkLayerDiscoveryProtocolInfo>>(v, wrap_array_of_link_layer_discovery_protocol_info) }),
        ("VsanVcKmipServersHealth", TypeInfo::Object { name: "VsanVcKmipServersHealth", builder_fn: || Box::new(VsanVcKmipServersHealthFields::new()) }),
        ("HostAssignableHardwareConfigAttributeOverride", TypeInfo::Object { name: "HostAssignableHardwareConfigAttributeOverride", builder_fn: || Box::new(HostAssignableHardwareConfigAttributeOverrideFields::new()) }),
        ("VirtualMachineMksConnection", TypeInfo::Object { name: "VirtualMachineMksConnection", builder_fn: || Box::new(VirtualMachineMksConnectionFields::new()) }),
        ("ArrayOfHostDasEnablingEvent", TypeInfo::Value { name: "ArrayOfHostDasEnablingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_das_enabling_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_das_enabling_event) }),
        ("ArrayOfPbmCapabilityInstance", TypeInfo::Value { name: "ArrayOfPbmCapabilityInstance", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityInstance>>(wrap_array_of_pbm_capability_instance), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityInstance>>(v, wrap_array_of_pbm_capability_instance) }),
        ("VirtualSoundCard", TypeInfo::Object { name: "VirtualSoundCard", builder_fn: || Box::new(VirtualSoundCardFields::new()) }),
        ("VMotionInterfaceIssue", TypeInfo::Object { name: "VMotionInterfaceIssue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VMotionInterfaceIssue))) }),
        ("ArrayOfVsanIODiagnosticsStats", TypeInfo::Value { name: "ArrayOfVsanIODiagnosticsStats", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoDiagnosticsStats>>(wrap_array_of_vsan_io_diagnostics_stats), from_value: |v| from_val_with::<Vec<super::structs::VsanIoDiagnosticsStats>>(v, wrap_array_of_vsan_io_diagnostics_stats) }),
        ("DvsCreatedEvent", TypeInfo::Object { name: "DvsCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsCreatedEvent))) }),
        ("ArrayOfHostOpaqueNetworkInfo", TypeInfo::Value { name: "ArrayOfHostOpaqueNetworkInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostOpaqueNetworkInfo>>(wrap_array_of_host_opaque_network_info), from_value: |v| from_val_with::<Vec<super::structs::HostOpaqueNetworkInfo>>(v, wrap_array_of_host_opaque_network_info) }),
        ("ClusterInfraUpdateHaConfigInfo", TypeInfo::Object { name: "ClusterInfraUpdateHaConfigInfo", builder_fn: || Box::new(ClusterInfraUpdateHaConfigInfoFields::new()) }),
        ("ArrayOfLicenseDiagnostics", TypeInfo::Value { name: "ArrayOfLicenseDiagnostics", make_deserializer: || make_deser_with::<Vec<super::structs::LicenseDiagnostics>>(wrap_array_of_license_diagnostics), from_value: |v| from_val_with::<Vec<super::structs::LicenseDiagnostics>>(v, wrap_array_of_license_diagnostics) }),
        ("ArrayOfConnectedIso", TypeInfo::Value { name: "ArrayOfConnectedIso", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_connected_iso), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_connected_iso) }),
        ("ArrayOfVsanClusterHealthSystemStatusResult", TypeInfo::Value { name: "ArrayOfVsanClusterHealthSystemStatusResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthSystemStatusResult>>(wrap_array_of_vsan_cluster_health_system_status_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthSystemStatusResult>>(v, wrap_array_of_vsan_cluster_health_system_status_result) }),
        ("ArrayOfEventManagerViewByStartId", TypeInfo::Value { name: "ArrayOfEventManagerViewByStartId", make_deserializer: || make_deser_with::<Vec<super::structs::EventManagerViewByStartId>>(wrap_array_of_event_manager_view_by_start_id), from_value: |v| from_val_with::<Vec<super::structs::EventManagerViewByStartId>>(v, wrap_array_of_event_manager_view_by_start_id) }),
        ("DVSNetworkResourceManagementCapability", TypeInfo::Object { name: "DVSNetworkResourceManagementCapability", builder_fn: || Box::new(DvsNetworkResourceManagementCapabilityFields::new()) }),
        ("WinNetBIOSConfigInfo", TypeInfo::Object { name: "WinNetBIOSConfigInfo", builder_fn: || Box::new(WinNetBiosConfigInfoFields::new()) }),
        ("PbmCapabilityPropertyMetadata", TypeInfo::Object { name: "PbmCapabilityPropertyMetadata", builder_fn: || Box::new(PbmCapabilityPropertyMetadataFields::new()) }),
        ("CnsFileCreateSpec", TypeInfo::Object { name: "CnsFileCreateSpec", builder_fn: || Box::new(CnsFileCreateSpecFields::new()) }),
        ("OvfManagerCommonParams", TypeInfo::Object { name: "OvfManagerCommonParams", builder_fn: || Box::new(OvfManagerCommonParamsFields::new()) }),
        ("VsanIscsiLUNCommonInfo", TypeInfo::Object { name: "VsanIscsiLUNCommonInfo", builder_fn: || Box::new(VsanIscsiLunCommonInfoFields::new()) }),
        ("ClusterHostGroup", TypeInfo::Object { name: "ClusterHostGroup", builder_fn: || Box::new(ClusterHostGroupFields::new()) }),
        ("ArrayOfGeneralUserEvent", TypeInfo::Value { name: "ArrayOfGeneralUserEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_general_user_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_general_user_event) }),
        ("ArrayOfKeyProviderId", TypeInfo::Value { name: "ArrayOfKeyProviderId", make_deserializer: || make_deser_with::<Vec<super::structs::KeyProviderId>>(wrap_array_of_key_provider_id), from_value: |v| from_val_with::<Vec<super::structs::KeyProviderId>>(v, wrap_array_of_key_provider_id) }),
        ("ArrayOfOvfConsumerPowerOnFault", TypeInfo::Value { name: "ArrayOfOvfConsumerPowerOnFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_consumer_power_on_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_consumer_power_on_fault) }),
        ("ArrayOfVsanXvcResultItem", TypeInfo::Value { name: "ArrayOfVsanXvcResultItem", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcResultItem>>(wrap_array_of_vsan_xvc_result_item), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcResultItem>>(v, wrap_array_of_vsan_xvc_result_item) }),
        ("HostPlugStoreTopologyPath", TypeInfo::Object { name: "HostPlugStoreTopologyPath", builder_fn: || Box::new(HostPlugStoreTopologyPathFields::new()) }),
        ("ArrayOfHostProfileManagerCompositionValidationResult", TypeInfo::Value { name: "ArrayOfHostProfileManagerCompositionValidationResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileManagerCompositionValidationResult>>(wrap_array_of_host_profile_manager_composition_validation_result), from_value: |v| from_val_with::<Vec<super::structs::HostProfileManagerCompositionValidationResult>>(v, wrap_array_of_host_profile_manager_composition_validation_result) }),
        ("ArrayOfVsanHealthActionSteps", TypeInfo::Value { name: "ArrayOfVsanHealthActionSteps", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthActionSteps>>(wrap_array_of_vsan_health_action_steps), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthActionSteps>>(v, wrap_array_of_vsan_health_action_steps) }),
        ("ArrayOfPbmRollupComplianceResult", TypeInfo::Value { name: "ArrayOfPbmRollupComplianceResult", make_deserializer: || make_deser_with::<Vec<super::structs::PbmRollupComplianceResult>>(wrap_array_of_pbm_rollup_compliance_result), from_value: |v| from_val_with::<Vec<super::structs::PbmRollupComplianceResult>>(v, wrap_array_of_pbm_rollup_compliance_result) }),
        ("HostVirtualSwitchSpec", TypeInfo::Object { name: "HostVirtualSwitchSpec", builder_fn: || Box::new(HostVirtualSwitchSpecFields::new()) }),
        ("PbmCapabilityProfile", TypeInfo::Object { name: "PbmCapabilityProfile", builder_fn: || Box::new(PbmCapabilityProfileFields::new()) }),
        ("PerfProviderSummary", TypeInfo::Object { name: "PerfProviderSummary", builder_fn: || Box::new(PerfProviderSummaryFields::new()) }),
        ("ArrayOfEamInvalidState", TypeInfo::Value { name: "ArrayOfEamInvalidState", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eam_invalid_state), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eam_invalid_state) }),
        ("CnsBlockBackingDetails", TypeInfo::Object { name: "CnsBlockBackingDetails", builder_fn: || Box::new(CnsBlockBackingDetailsFields::new()) }),
        ("ArrayOfVirtualDiskFlatVer1BackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDiskFlatVer1BackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskFlatVer1BackingInfo>>(wrap_array_of_virtual_disk_flat_ver_1_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskFlatVer1BackingInfo>>(v, wrap_array_of_virtual_disk_flat_ver_1_backing_info) }),
        ("VirtualMachineFlagInfo", TypeInfo::Object { name: "VirtualMachineFlagInfo", builder_fn: || Box::new(VirtualMachineFlagInfoFields::new()) }),
        ("ArrayOfVirtualDiskRawDiskVer2BackingOption", TypeInfo::Value { name: "ArrayOfVirtualDiskRawDiskVer2BackingOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_disk_raw_disk_ver_2_backing_option_array)), from_value: |v| cast_to_virtual_disk_raw_disk_ver_2_backing_option_array(from_value(v)?) }),
        ("ArrayOfVirtualWDTOption", TypeInfo::Value { name: "ArrayOfVirtualWDTOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualWdtOption>>(wrap_array_of_virtual_wdt_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualWdtOption>>(v, wrap_array_of_virtual_wdt_option) }),
        ("ArrayOfClusterFtVmHostRuleInfo", TypeInfo::Value { name: "ArrayOfClusterFtVmHostRuleInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterFtVmHostRuleInfo>>(wrap_array_of_cluster_ft_vm_host_rule_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterFtVmHostRuleInfo>>(v, wrap_array_of_cluster_ft_vm_host_rule_info) }),
        ("ArrayOfRequestCanceled", TypeInfo::Value { name: "ArrayOfRequestCanceled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_request_canceled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_request_canceled) }),
        ("ArrayOfHostPnicNetworkResourceInfo", TypeInfo::Value { name: "ArrayOfHostPnicNetworkResourceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostPnicNetworkResourceInfo>>(wrap_array_of_host_pnic_network_resource_info), from_value: |v| from_val_with::<Vec<super::structs::HostPnicNetworkResourceInfo>>(v, wrap_array_of_host_pnic_network_resource_info) }),
        ("GuestComponentsOutOfDate", TypeInfo::Object { name: "GuestComponentsOutOfDate", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestComponentsOutOfDate))) }),
        ("ArrayOfGeneralVmErrorEvent", TypeInfo::Value { name: "ArrayOfGeneralVmErrorEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_general_vm_error_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_general_vm_error_event) }),
        ("EVCModeIllegalByVendor", TypeInfo::Object { name: "EVCModeIllegalByVendor", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcModeIllegalByVendor))) }),
        ("VirtualMachineSriovInfo", TypeInfo::Object { name: "VirtualMachineSriovInfo", builder_fn: || Box::new(VirtualMachineSriovInfoFields::new()) }),
        ("EVCAdmissionFailedCPUModel", TypeInfo::Object { name: "EVCAdmissionFailedCPUModel", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcAdmissionFailedCpuModel))) }),
        ("VirtualVmxnet3", TypeInfo::Object { name: "VirtualVmxnet3", builder_fn: || Box::new(VirtualVmxnet3Fields::new()) }),
        ("ArrayOfHostPowerOpFailed", TypeInfo::Value { name: "ArrayOfHostPowerOpFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_power_op_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_power_op_failed) }),
        ("HostCompliantEvent", TypeInfo::Object { name: "HostCompliantEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCompliantEvent))) }),
        ("ArrayOfHostDasOkEvent", TypeInfo::Value { name: "ArrayOfHostDasOkEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_das_ok_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_das_ok_event) }),
        ("FaultDomainId", TypeInfo::Object { name: "FaultDomainId", builder_fn: || Box::new(FaultDomainIdFields::new()) }),
        ("ArrayOfDVSHostLocalPortInfo", TypeInfo::Value { name: "ArrayOfDVSHostLocalPortInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DvsHostLocalPortInfo>>(wrap_array_of_dvs_host_local_port_info), from_value: |v| from_val_with::<Vec<super::structs::DvsHostLocalPortInfo>>(v, wrap_array_of_dvs_host_local_port_info) }),
        ("OutOfBounds", TypeInfo::Object { name: "OutOfBounds", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OutOfBounds))) }),
        ("ImportOperationBulkFault", TypeInfo::Object { name: "ImportOperationBulkFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ImportOperationBulkFault))) }),
        ("VmShutdownOnIsolationEvent", TypeInfo::Object { name: "VmShutdownOnIsolationEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmShutdownOnIsolationEvent))) }),
        ("ArrayOfVsanObjIdentityQuerySpec", TypeInfo::Value { name: "ArrayOfVsanObjIdentityQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjIdentityQuerySpec>>(wrap_array_of_vsan_obj_identity_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanObjIdentityQuerySpec>>(v, wrap_array_of_vsan_obj_identity_query_spec) }),
        ("ArrayOfVirtualDiskOptionVFlashCacheConfigOption", TypeInfo::Value { name: "ArrayOfVirtualDiskOptionVFlashCacheConfigOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskOptionVFlashCacheConfigOption>>(wrap_array_of_virtual_disk_option_v_flash_cache_config_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskOptionVFlashCacheConfigOption>>(v, wrap_array_of_virtual_disk_option_v_flash_cache_config_option) }),
        ("DistributedVirtualPortgroupInfo", TypeInfo::Object { name: "DistributedVirtualPortgroupInfo", builder_fn: || Box::new(DistributedVirtualPortgroupInfoFields::new()) }),
        ("ArrayOfNetworkSummary", TypeInfo::Value { name: "ArrayOfNetworkSummary", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_network_summary_array)), from_value: |v| cast_to_network_summary_array(from_value(v)?) }),
        ("ArrayOfVirtualMachineSgxTargetInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineSgxTargetInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineSgxTargetInfo>>(wrap_array_of_virtual_machine_sgx_target_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineSgxTargetInfo>>(v, wrap_array_of_virtual_machine_sgx_target_info) }),
        ("VmReloadFromPathFailedEvent", TypeInfo::Object { name: "VmReloadFromPathFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmReloadFromPathFailedEvent))) }),
        ("ArrayOfDvsOperationBulkFault", TypeInfo::Value { name: "ArrayOfDvsOperationBulkFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_dvs_operation_bulk_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_dvs_operation_bulk_fault) }),
        ("VirtualMachineMemoryReservationInfo", TypeInfo::Object { name: "VirtualMachineMemoryReservationInfo", builder_fn: || Box::new(VirtualMachineMemoryReservationInfoFields::new()) }),
        ("VirtualDeviceBackingOption", TypeInfo::Object { name: "VirtualDeviceBackingOption", builder_fn: || Box::new(VirtualDeviceBackingOptionFields::new()) }),
        ("ArrayOfHostNetCapabilities", TypeInfo::Value { name: "ArrayOfHostNetCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetCapabilities>>(wrap_array_of_host_net_capabilities), from_value: |v| from_val_with::<Vec<super::structs::HostNetCapabilities>>(v, wrap_array_of_host_net_capabilities) }),
        ("HostSpecificationOperationFailed", TypeInfo::Object { name: "HostSpecificationOperationFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostSpecificationOperationFailed))) }),
        ("HostConfigFailed", TypeInfo::Object { name: "HostConfigFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostConfigFailed))) }),
        ("ArrayOfObjectSpec", TypeInfo::Value { name: "ArrayOfObjectSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ObjectSpec>>(wrap_array_of_object_spec), from_value: |v| from_val_with::<Vec<super::structs::ObjectSpec>>(v, wrap_array_of_object_spec) }),
        ("ArrayOfDisallowedMigrationDeviceAttached", TypeInfo::Value { name: "ArrayOfDisallowedMigrationDeviceAttached", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disallowed_migration_device_attached), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disallowed_migration_device_attached) }),
        ("ArrayOfDvsTrafficFilterConfig", TypeInfo::Value { name: "ArrayOfDvsTrafficFilterConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_traffic_filter_config_array)), from_value: |v| cast_to_dvs_traffic_filter_config_array(from_value(v)?) }),
        ("ArrayOfHostGraphicsConfig", TypeInfo::Value { name: "ArrayOfHostGraphicsConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostGraphicsConfig>>(wrap_array_of_host_graphics_config), from_value: |v| from_val_with::<Vec<super::structs::HostGraphicsConfig>>(v, wrap_array_of_host_graphics_config) }),
        ("ArrayOfVmResourcePoolMovedEvent", TypeInfo::Value { name: "ArrayOfVmResourcePoolMovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_resource_pool_moved_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_resource_pool_moved_event) }),
        ("ArrayOfVsanClusterUuidMismatch", TypeInfo::Value { name: "ArrayOfVsanClusterUuidMismatch", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vsan_cluster_uuid_mismatch), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vsan_cluster_uuid_mismatch) }),
        ("ArrayOfScheduledTaskEmailCompletedEvent", TypeInfo::Value { name: "ArrayOfScheduledTaskEmailCompletedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_scheduled_task_email_completed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_scheduled_task_email_completed_event) }),
        ("HostProxySwitch", TypeInfo::Object { name: "HostProxySwitch", builder_fn: || Box::new(HostProxySwitchFields::new()) }),
        ("VmSuspendingEvent", TypeInfo::Object { name: "VmSuspendingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmSuspendingEvent))) }),
        ("ArrayOfHostIssue", TypeInfo::Value { name: "ArrayOfHostIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_issue_array)), from_value: |v| cast_to_host_issue_array(from_value(v)?) }),
        ("VmRelayoutSuccessfulEvent", TypeInfo::Object { name: "VmRelayoutSuccessfulEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRelayoutSuccessfulEvent))) }),
        ("StorageDrsVmConfigSpec", TypeInfo::Object { name: "StorageDrsVmConfigSpec", builder_fn: || Box::new(StorageDrsVmConfigSpecFields::new()) }),
        ("HostExtraNetworksEvent", TypeInfo::Object { name: "HostExtraNetworksEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostExtraNetworksEvent))) }),
        ("ID", TypeInfo::Object { name: "ID", builder_fn: || Box::new(IdFields::new()) }),
        ("ArrayOfHostPtpConfig", TypeInfo::Value { name: "ArrayOfHostPtpConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostPtpConfig>>(wrap_array_of_host_ptp_config), from_value: |v| from_val_with::<Vec<super::structs::HostPtpConfig>>(v, wrap_array_of_host_ptp_config) }),
        ("VirtualEthernetCardNetworkBackingOption", TypeInfo::Object { name: "VirtualEthernetCardNetworkBackingOption", builder_fn: || Box::new(VirtualEthernetCardNetworkBackingOptionFields::new()) }),
        ("ArrayOfHostNoRedundantManagementNetworkEvent", TypeInfo::Value { name: "ArrayOfHostNoRedundantManagementNetworkEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_no_redundant_management_network_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_no_redundant_management_network_event) }),
        ("ArrayOfVsanPerfDiagnosticResult", TypeInfo::Value { name: "ArrayOfVsanPerfDiagnosticResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfDiagnosticResult>>(wrap_array_of_vsan_perf_diagnostic_result), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfDiagnosticResult>>(v, wrap_array_of_vsan_perf_diagnostic_result) }),
        ("VsanServerHostUnicastInfo", TypeInfo::Object { name: "VsanServerHostUnicastInfo", builder_fn: || Box::new(VsanServerHostUnicastInfoFields::new()) }),
        ("ClusterAffinityRuleSpec", TypeInfo::Object { name: "ClusterAffinityRuleSpec", builder_fn: || Box::new(ClusterAffinityRuleSpecFields::new()) }),
        ("ArrayOfCustomizationNetBIOSMode", TypeInfo::Value { name: "ArrayOfCustomizationNetBIOSMode", make_deserializer: || make_deser_with::<Vec<super::enums::CustomizationNetBiosModeEnum>>(wrap_array_of_customization_net_bios_mode), from_value: |v| from_val_with::<Vec<super::enums::CustomizationNetBiosModeEnum>>(v, wrap_array_of_customization_net_bios_mode) }),
        ("VirtualMachineDeviceRuntimeInfo", TypeInfo::Object { name: "VirtualMachineDeviceRuntimeInfo", builder_fn: || Box::new(VirtualMachineDeviceRuntimeInfoFields::new()) }),
        ("ArrayOfVirtualPCIControllerOption", TypeInfo::Value { name: "ArrayOfVirtualPCIControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciControllerOption>>(wrap_array_of_virtual_pci_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciControllerOption>>(v, wrap_array_of_virtual_pci_controller_option) }),
        ("ArrayOfSessionManagerHttpServiceRequestSpec", TypeInfo::Value { name: "ArrayOfSessionManagerHttpServiceRequestSpec", make_deserializer: || make_deser_with::<Vec<super::structs::SessionManagerHttpServiceRequestSpec>>(wrap_array_of_session_manager_http_service_request_spec), from_value: |v| from_val_with::<Vec<super::structs::SessionManagerHttpServiceRequestSpec>>(v, wrap_array_of_session_manager_http_service_request_spec) }),
        ("NoPermissionEntityPrivileges", TypeInfo::Object { name: "NoPermissionEntityPrivileges", builder_fn: || Box::new(NoPermissionEntityPrivilegesFields::new()) }),
        ("HostIpRouteConfig", TypeInfo::Object { name: "HostIpRouteConfig", builder_fn: || Box::new(HostIpRouteConfigFields::new()) }),
        ("ArrayOfDiagnosticManagerBundleInfo", TypeInfo::Value { name: "ArrayOfDiagnosticManagerBundleInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DiagnosticManagerBundleInfo>>(wrap_array_of_diagnostic_manager_bundle_info), from_value: |v| from_val_with::<Vec<super::structs::DiagnosticManagerBundleInfo>>(v, wrap_array_of_diagnostic_manager_bundle_info) }),
        ("VsanHwToVcgInfoMapping", TypeInfo::Object { name: "VsanHwToVcgInfoMapping", builder_fn: || Box::new(VsanHwToVcgInfoMappingFields::new()) }),
        ("ArrayOfVirtualMachineBootOptionsBootableDevice", TypeInfo::Value { name: "ArrayOfVirtualMachineBootOptionsBootableDevice", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_boot_options_bootable_device_array)), from_value: |v| cast_to_virtual_machine_boot_options_bootable_device_array(from_value(v)?) }),
        ("ArrayOfCustomFieldValueChangedEvent", TypeInfo::Value { name: "ArrayOfCustomFieldValueChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_custom_field_value_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_custom_field_value_changed_event) }),
        ("ArrayOfVirtualPCIPassthroughDynamicBackingOption", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughDynamicBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthroughDynamicBackingOption>>(wrap_array_of_virtual_pci_passthrough_dynamic_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthroughDynamicBackingOption>>(v, wrap_array_of_virtual_pci_passthrough_dynamic_backing_option) }),
        ("ArrayOfVmSecondaryDisabledBySystemEvent", TypeInfo::Value { name: "ArrayOfVmSecondaryDisabledBySystemEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_secondary_disabled_by_system_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_secondary_disabled_by_system_event) }),
        ("OvfInvalidFormat", TypeInfo::Object { name: "OvfInvalidFormat", builder_fn: || Box::new(OvfInvalidFormatFields::new()) }),
        ("ArrayOfMetricAlarmOperator", TypeInfo::Value { name: "ArrayOfMetricAlarmOperator", make_deserializer: || make_deser_with::<Vec<super::enums::MetricAlarmOperatorEnum>>(wrap_array_of_metric_alarm_operator), from_value: |v| from_val_with::<Vec<super::enums::MetricAlarmOperatorEnum>>(v, wrap_array_of_metric_alarm_operator) }),
        ("ArrayOfVsanUpgradeSystemUpgradeHistoryPreflightFail", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemUpgradeHistoryPreflightFail", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemUpgradeHistoryPreflightFail>>(wrap_array_of_vsan_upgrade_system_upgrade_history_preflight_fail), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemUpgradeHistoryPreflightFail>>(v, wrap_array_of_vsan_upgrade_system_upgrade_history_preflight_fail) }),
        ("ArrayOfCryptoManagerKmipGenerateKeySpec", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipGenerateKeySpec", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerKmipGenerateKeySpec>>(wrap_array_of_crypto_manager_kmip_generate_key_spec), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerKmipGenerateKeySpec>>(v, wrap_array_of_crypto_manager_kmip_generate_key_spec) }),
        ("VsanMountPrecheckNetworkConnectivityResult", TypeInfo::Object { name: "VsanMountPrecheckNetworkConnectivityResult", builder_fn: || Box::new(VsanMountPrecheckNetworkConnectivityResultFields::new()) }),
        ("ArrayOfGatewayHostNotReachable", TypeInfo::Value { name: "ArrayOfGatewayHostNotReachable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_gateway_host_not_reachable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_gateway_host_not_reachable) }),
        ("ArrayOfInvalidDasConfigArgument", TypeInfo::Value { name: "ArrayOfInvalidDasConfigArgument", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_das_config_argument), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_das_config_argument) }),
        ("HostIncompatibleForFaultTolerance", TypeInfo::Object { name: "HostIncompatibleForFaultTolerance", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostIncompatibleForFaultTolerance))) }),
        ("ArrayOfCustomizationCustomIpGenerator", TypeInfo::Value { name: "ArrayOfCustomizationCustomIpGenerator", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationCustomIpGenerator>>(wrap_array_of_customization_custom_ip_generator), from_value: |v| from_val_with::<Vec<super::structs::CustomizationCustomIpGenerator>>(v, wrap_array_of_customization_custom_ip_generator) }),
        ("ArrayOfVmPortGroupProfile", TypeInfo::Value { name: "ArrayOfVmPortGroupProfile", make_deserializer: || make_deser_with::<Vec<super::structs::VmPortGroupProfile>>(wrap_array_of_vm_port_group_profile), from_value: |v| from_val_with::<Vec<super::structs::VmPortGroupProfile>>(v, wrap_array_of_vm_port_group_profile) }),
        ("Capability", TypeInfo::Object { name: "Capability", builder_fn: || Box::new(CapabilityFields::new()) }),
        ("HostLocalPortCreatedEvent", TypeInfo::Object { name: "HostLocalPortCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostLocalPortCreatedEvent))) }),
        ("VirtualSerialPortDeviceBackingOption", TypeInfo::Object { name: "VirtualSerialPortDeviceBackingOption", builder_fn: || Box::new(VirtualSerialPortDeviceBackingOptionFields::new()) }),
        ("ArrayOfHostLicenseExpiredEvent", TypeInfo::Value { name: "ArrayOfHostLicenseExpiredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_license_expired_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_license_expired_event) }),
        ("ArrayOfHostFibreChannelHba", TypeInfo::Value { name: "ArrayOfHostFibreChannelHba", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_fibre_channel_hba_array)), from_value: |v| cast_to_host_fibre_channel_hba_array(from_value(v)?) }),
        ("ArrayOfNumVirtualCoresPerSocketNotSupported", TypeInfo::Value { name: "ArrayOfNumVirtualCoresPerSocketNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_num_virtual_cores_per_socket_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_num_virtual_cores_per_socket_not_supported) }),
        ("ArrayOfVsanDiskDataEvacuationResourceCheckTaskDetails", TypeInfo::Value { name: "ArrayOfVsanDiskDataEvacuationResourceCheckTaskDetails", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDiskDataEvacuationResourceCheckTaskDetails>>(wrap_array_of_vsan_disk_data_evacuation_resource_check_task_details), from_value: |v| from_val_with::<Vec<super::structs::VsanDiskDataEvacuationResourceCheckTaskDetails>>(v, wrap_array_of_vsan_disk_data_evacuation_resource_check_task_details) }),
        ("ArrayOfCustomFieldDefEvent", TypeInfo::Value { name: "ArrayOfCustomFieldDefEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_custom_field_def_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_custom_field_def_event) }),
        ("ArrayOfPbmLoggingConfiguration", TypeInfo::Value { name: "ArrayOfPbmLoggingConfiguration", make_deserializer: || make_deser_with::<Vec<super::structs::PbmLoggingConfiguration>>(wrap_array_of_pbm_logging_configuration), from_value: |v| from_val_with::<Vec<super::structs::PbmLoggingConfiguration>>(v, wrap_array_of_pbm_logging_configuration) }),
        ("ArrayOfHostSnmpDestination", TypeInfo::Value { name: "ArrayOfHostSnmpDestination", make_deserializer: || make_deser_with::<Vec<super::structs::HostSnmpDestination>>(wrap_array_of_host_snmp_destination), from_value: |v| from_val_with::<Vec<super::structs::HostSnmpDestination>>(v, wrap_array_of_host_snmp_destination) }),
        ("QueryNotSupported", TypeInfo::Object { name: "QueryNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::QueryNotSupported))) }),
        ("ArrayOfSessionManagerVmomiServiceRequestSpec", TypeInfo::Value { name: "ArrayOfSessionManagerVmomiServiceRequestSpec", make_deserializer: || make_deser_with::<Vec<super::structs::SessionManagerVmomiServiceRequestSpec>>(wrap_array_of_session_manager_vmomi_service_request_spec), from_value: |v| from_val_with::<Vec<super::structs::SessionManagerVmomiServiceRequestSpec>>(v, wrap_array_of_session_manager_vmomi_service_request_spec) }),
        ("ArrayOfPbmCapabilitySchema", TypeInfo::Value { name: "ArrayOfPbmCapabilitySchema", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilitySchema>>(wrap_array_of_pbm_capability_schema), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilitySchema>>(v, wrap_array_of_pbm_capability_schema) }),
        ("HealthSystemRuntime", TypeInfo::Object { name: "HealthSystemRuntime", builder_fn: || Box::new(HealthSystemRuntimeFields::new()) }),
        ("ArrayOfNotEnoughResourcesToStartVmEvent", TypeInfo::Value { name: "ArrayOfNotEnoughResourcesToStartVmEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_not_enough_resources_to_start_vm_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_not_enough_resources_to_start_vm_event) }),
        ("CustomizationAdapterMapping", TypeInfo::Object { name: "CustomizationAdapterMapping", builder_fn: || Box::new(CustomizationAdapterMappingFields::new()) }),
        ("VirtualHdAudioCardOption", TypeInfo::Object { name: "VirtualHdAudioCardOption", builder_fn: || Box::new(VirtualHdAudioCardOptionFields::new()) }),
        ("ArrayOfCustomizationCustomIpV6Generator", TypeInfo::Value { name: "ArrayOfCustomizationCustomIpV6Generator", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationCustomIpV6Generator>>(wrap_array_of_customization_custom_ip_v_6_generator), from_value: |v| from_val_with::<Vec<super::structs::CustomizationCustomIpV6Generator>>(v, wrap_array_of_customization_custom_ip_v_6_generator) }),
        ("ArrayOfAlarmAction", TypeInfo::Value { name: "ArrayOfAlarmAction", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_alarm_action_array)), from_value: |v| cast_to_alarm_action_array(from_value(v)?) }),
        ("ArrayOfCustomizationFixedName", TypeInfo::Value { name: "ArrayOfCustomizationFixedName", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationFixedName>>(wrap_array_of_customization_fixed_name), from_value: |v| from_val_with::<Vec<super::structs::CustomizationFixedName>>(v, wrap_array_of_customization_fixed_name) }),
        ("ArrayOfHostFileSystemVolume", TypeInfo::Value { name: "ArrayOfHostFileSystemVolume", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_file_system_volume_array)), from_value: |v| cast_to_host_file_system_volume_array(from_value(v)?) }),
        ("VirtualMachineVendorDeviceGroupInfoComponentDeviceInfo", TypeInfo::Object { name: "VirtualMachineVendorDeviceGroupInfoComponentDeviceInfo", builder_fn: || Box::new(VirtualMachineVendorDeviceGroupInfoComponentDeviceInfoFields::new()) }),
        ("VirtualMachineVideoCard", TypeInfo::Object { name: "VirtualMachineVideoCard", builder_fn: || Box::new(VirtualMachineVideoCardFields::new()) }),
        ("ArrayOfSoftRuleVioCorrectionImpact", TypeInfo::Value { name: "ArrayOfSoftRuleVioCorrectionImpact", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_soft_rule_vio_correction_impact), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_soft_rule_vio_correction_impact) }),
        ("VirtualHardwareCompatibilityIssue", TypeInfo::Object { name: "VirtualHardwareCompatibilityIssue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VirtualHardwareCompatibilityIssue))) }),
        ("VirtualDeviceConnectInfo", TypeInfo::Object { name: "VirtualDeviceConnectInfo", builder_fn: || Box::new(VirtualDeviceConnectInfoFields::new()) }),
        ("PassiveNodeNetworkSpec", TypeInfo::Object { name: "PassiveNodeNetworkSpec", builder_fn: || Box::new(PassiveNodeNetworkSpecFields::new()) }),
        ("ArrayOfLicenseFeatureInfo", TypeInfo::Value { name: "ArrayOfLicenseFeatureInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LicenseFeatureInfo>>(wrap_array_of_license_feature_info), from_value: |v| from_val_with::<Vec<super::structs::LicenseFeatureInfo>>(v, wrap_array_of_license_feature_info) }),
        ("ArrayOfVirtualSerialPortThinPrintBackingOption", TypeInfo::Value { name: "ArrayOfVirtualSerialPortThinPrintBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortThinPrintBackingOption>>(wrap_array_of_virtual_serial_port_thin_print_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortThinPrintBackingOption>>(v, wrap_array_of_virtual_serial_port_thin_print_backing_option) }),
        ("VStorageObjectStateInfo", TypeInfo::Object { name: "VStorageObjectStateInfo", builder_fn: || Box::new(VStorageObjectStateInfoFields::new()) }),
        ("FaultToleranceCpuIncompatible", TypeInfo::Object { name: "FaultToleranceCpuIncompatible", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FaultToleranceCpuIncompatible))) }),
        ("PbmCapabilityVendorNamespaceInfo", TypeInfo::Object { name: "PbmCapabilityVendorNamespaceInfo", builder_fn: || Box::new(PbmCapabilityVendorNamespaceInfoFields::new()) }),
        ("DvpgRestoreEvent", TypeInfo::Object { name: "DvpgRestoreEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvpgRestoreEvent))) }),
        ("ArrayOfVirtualSwitchSelectionProfile", TypeInfo::Value { name: "ArrayOfVirtualSwitchSelectionProfile", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSwitchSelectionProfile>>(wrap_array_of_virtual_switch_selection_profile), from_value: |v| from_val_with::<Vec<super::structs::VirtualSwitchSelectionProfile>>(v, wrap_array_of_virtual_switch_selection_profile) }),
        ("RemoveFailed", TypeInfo::Object { name: "RemoveFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RemoveFailed))) }),
        ("GuestWindowsFileAttributes", TypeInfo::Object { name: "GuestWindowsFileAttributes", builder_fn: || Box::new(GuestWindowsFileAttributesFields::new()) }),
        ("SolutionsProfileIdStoragePolicy", TypeInfo::Object { name: "SolutionsProfileIdStoragePolicy", builder_fn: || Box::new(SolutionsProfileIdStoragePolicyFields::new()) }),
        ("ArrayOfVsanVcStretchedClusterConfigSpec", TypeInfo::Value { name: "ArrayOfVsanVcStretchedClusterConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVcStretchedClusterConfigSpec>>(wrap_array_of_vsan_vc_stretched_cluster_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanVcStretchedClusterConfigSpec>>(v, wrap_array_of_vsan_vc_stretched_cluster_config_spec) }),
        ("LifecycleWitnessDetails", TypeInfo::Object { name: "LifecycleWitnessDetails", builder_fn: || Box::new(LifecycleWitnessDetailsFields::new()) }),
        ("ArrayOfIscsiMigrationDependency", TypeInfo::Value { name: "ArrayOfIscsiMigrationDependency", make_deserializer: || make_deser_with::<Vec<super::structs::IscsiMigrationDependency>>(wrap_array_of_iscsi_migration_dependency), from_value: |v| from_val_with::<Vec<super::structs::IscsiMigrationDependency>>(v, wrap_array_of_iscsi_migration_dependency) }),
        ("VirtualVmxnet2Option", TypeInfo::Object { name: "VirtualVmxnet2Option", builder_fn: || Box::new(VirtualVmxnet2OptionFields::new()) }),
        ("ArrayOfVmMacChangedEvent", TypeInfo::Value { name: "ArrayOfVmMacChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_mac_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_mac_changed_event) }),
        ("ArrayOfFaultTolerancePrimaryPowerOnNotAttempted", TypeInfo::Value { name: "ArrayOfFaultTolerancePrimaryPowerOnNotAttempted", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fault_tolerance_primary_power_on_not_attempted), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fault_tolerance_primary_power_on_not_attempted) }),
        ("UplinkPortMtuNotSupportEvent", TypeInfo::Object { name: "UplinkPortMtuNotSupportEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UplinkPortMtuNotSupportEvent))) }),
        ("VirtualMachineBootOptionsBootableDevice", TypeInfo::Object { name: "VirtualMachineBootOptionsBootableDevice", builder_fn: || Box::new(VirtualMachineBootOptionsBootableDeviceFields::new()) }),
        ("HostWwnConflictEvent", TypeInfo::Object { name: "HostWwnConflictEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostWwnConflictEvent))) }),
        ("ArrayOfClusterAntiAffinityRuleSpec", TypeInfo::Value { name: "ArrayOfClusterAntiAffinityRuleSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAntiAffinityRuleSpec>>(wrap_array_of_cluster_anti_affinity_rule_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterAntiAffinityRuleSpec>>(v, wrap_array_of_cluster_anti_affinity_rule_spec) }),
        ("ArrayOfVmfsAlreadyMounted", TypeInfo::Value { name: "ArrayOfVmfsAlreadyMounted", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vmfs_already_mounted), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vmfs_already_mounted) }),
        ("ArrayOfHostIpRouteTableInfo", TypeInfo::Value { name: "ArrayOfHostIpRouteTableInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostIpRouteTableInfo>>(wrap_array_of_host_ip_route_table_info), from_value: |v| from_val_with::<Vec<super::structs::HostIpRouteTableInfo>>(v, wrap_array_of_host_ip_route_table_info) }),
        ("IntExpression", TypeInfo::Object { name: "IntExpression", builder_fn: || Box::new(IntExpressionFields::new()) }),
        ("VMwareDVSPvlanConfigSpec", TypeInfo::Object { name: "VMwareDVSPvlanConfigSpec", builder_fn: || Box::new(VMwareDvsPvlanConfigSpecFields::new()) }),
        ("ArrayOfRunScriptAction", TypeInfo::Value { name: "ArrayOfRunScriptAction", make_deserializer: || make_deser_with::<Vec<super::structs::RunScriptAction>>(wrap_array_of_run_script_action), from_value: |v| from_val_with::<Vec<super::structs::RunScriptAction>>(v, wrap_array_of_run_script_action) }),
        ("NoPeerHostFound", TypeInfo::Object { name: "NoPeerHostFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoPeerHostFound))) }),
        ("IoFilterQueryIssueResult", TypeInfo::Object { name: "IoFilterQueryIssueResult", builder_fn: || Box::new(IoFilterQueryIssueResultFields::new()) }),
        ("VmFaultToleranceConfigIssue", TypeInfo::Object { name: "VmFaultToleranceConfigIssue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmFaultToleranceConfigIssue))) }),
        ("IScsiBootFailureEvent", TypeInfo::Object { name: "IScsiBootFailureEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::IScsiBootFailureEvent))) }),
        ("HostTcpHba", TypeInfo::Object { name: "HostTcpHba", builder_fn: || Box::new(HostTcpHbaFields::new()) }),
        ("ArrayOfOvfConnectedDeviceFloppy", TypeInfo::Value { name: "ArrayOfOvfConnectedDeviceFloppy", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_connected_device_floppy), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_connected_device_floppy) }),
        ("ArrayOfGuestAuthentication", TypeInfo::Value { name: "ArrayOfGuestAuthentication", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_guest_authentication_array)), from_value: |v| cast_to_guest_authentication_array(from_value(v)?) }),
        ("HostInPartialMaintenanceMode", TypeInfo::Object { name: "HostInPartialMaintenanceMode", builder_fn: || Box::new(HostInPartialMaintenanceModeFields::new()) }),
        ("ArrayOfClusterDestroyedEvent", TypeInfo::Value { name: "ArrayOfClusterDestroyedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_cluster_destroyed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_cluster_destroyed_event) }),
        ("ArrayOfStoragePort", TypeInfo::Value { name: "ArrayOfStoragePort", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_storage_port_array)), from_value: |v| cast_to_storage_port_array(from_value(v)?) }),
        ("VcRemoteVsanServerClusterConfig", TypeInfo::Object { name: "VcRemoteVsanServerClusterConfig", builder_fn: || Box::new(VcRemoteVsanServerClusterConfigFields::new()) }),
        ("LinkDiscoveryProtocolConfig", TypeInfo::Object { name: "LinkDiscoveryProtocolConfig", builder_fn: || Box::new(LinkDiscoveryProtocolConfigFields::new()) }),
        ("OrphanedAgency", TypeInfo::Object { name: "OrphanedAgency", builder_fn: || Box::new(OrphanedAgencyFields::new()) }),
        ("ArrayOfIncompatibleHostForVmReplication", TypeInfo::Value { name: "ArrayOfIncompatibleHostForVmReplication", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_incompatible_host_for_vm_replication), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_incompatible_host_for_vm_replication) }),
        ("StateAlarmExpression", TypeInfo::Object { name: "StateAlarmExpression", builder_fn: || Box::new(StateAlarmExpressionFields::new()) }),
        ("ArrayOfInvalidFolder", TypeInfo::Value { name: "ArrayOfInvalidFolder", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_folder), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_folder) }),
        ("ClusterDependencyRuleInfo", TypeInfo::Object { name: "ClusterDependencyRuleInfo", builder_fn: || Box::new(ClusterDependencyRuleInfoFields::new()) }),
        ("ArrayOfHostNatServiceConfig", TypeInfo::Value { name: "ArrayOfHostNatServiceConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostNatServiceConfig>>(wrap_array_of_host_nat_service_config), from_value: |v| from_val_with::<Vec<super::structs::HostNatServiceConfig>>(v, wrap_array_of_host_nat_service_config) }),
        ("GuestRegValueDataSpec", TypeInfo::Object { name: "GuestRegValueDataSpec", builder_fn: || Box::new(GuestRegValueDataSpecFields::new()) }),
        ("ArrayOfVirtualE1000eOption", TypeInfo::Value { name: "ArrayOfVirtualE1000eOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualE1000EOption>>(wrap_array_of_virtual_e_1000_e_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualE1000EOption>>(v, wrap_array_of_virtual_e_1000_e_option) }),
        ("CnsKubernetesEntityMetadata", TypeInfo::Object { name: "CnsKubernetesEntityMetadata", builder_fn: || Box::new(CnsKubernetesEntityMetadataFields::new()) }),
        ("SolutionsTransitionSpec", TypeInfo::Object { name: "SolutionsTransitionSpec", builder_fn: || Box::new(SolutionsTransitionSpecFields::new()) }),
        ("ArrayOfInvalidUrl", TypeInfo::Value { name: "ArrayOfInvalidUrl", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_url), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_url) }),
        ("ArrayOfHostInternetScsiHba", TypeInfo::Value { name: "ArrayOfHostInternetScsiHba", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHba>>(wrap_array_of_host_internet_scsi_hba), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHba>>(v, wrap_array_of_host_internet_scsi_hba) }),
        ("ArrayOfScheduledHardwareUpgradeInfo", TypeInfo::Value { name: "ArrayOfScheduledHardwareUpgradeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ScheduledHardwareUpgradeInfo>>(wrap_array_of_scheduled_hardware_upgrade_info), from_value: |v| from_val_with::<Vec<super::structs::ScheduledHardwareUpgradeInfo>>(v, wrap_array_of_scheduled_hardware_upgrade_info) }),
        ("ArrayOfDvsPortUnblockedEvent", TypeInfo::Value { name: "ArrayOfDvsPortUnblockedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_unblocked_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_unblocked_event) }),
        ("FtIssuesOnHost", TypeInfo::Object { name: "FtIssuesOnHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FtIssuesOnHost))) }),
        ("VMwareDVSPvlanMapEntry", TypeInfo::Object { name: "VMwareDVSPvlanMapEntry", builder_fn: || Box::new(VMwareDvsPvlanMapEntryFields::new()) }),
        ("ReplicationGroupId", TypeInfo::Object { name: "ReplicationGroupId", builder_fn: || Box::new(ReplicationGroupIdFields::new()) }),
        ("InvalidDasRestartPriorityForFtVm", TypeInfo::Object { name: "InvalidDasRestartPriorityForFtVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidDasRestartPriorityForFtVm))) }),
        ("HostUpgradeFailedEvent", TypeInfo::Object { name: "HostUpgradeFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostUpgradeFailedEvent))) }),
        ("ArrayOfExtExtendedProductInfo", TypeInfo::Value { name: "ArrayOfExtExtendedProductInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtExtendedProductInfo>>(wrap_array_of_ext_extended_product_info), from_value: |v| from_val_with::<Vec<super::structs::ExtExtendedProductInfo>>(v, wrap_array_of_ext_extended_product_info) }),
        ("HostInDomain", TypeInfo::Object { name: "HostInDomain", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostInDomain))) }),
        ("ArrayOfDasAgentUnavailableEvent", TypeInfo::Value { name: "ArrayOfDasAgentUnavailableEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_das_agent_unavailable_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_das_agent_unavailable_event) }),
        ("ClusterAttemptedVmInfo", TypeInfo::Object { name: "ClusterAttemptedVmInfo", builder_fn: || Box::new(ClusterAttemptedVmInfoFields::new()) }),
        ("ArrayOfVASAProviderUpgradeSpec", TypeInfo::Value { name: "ArrayOfVASAProviderUpgradeSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VasaProviderUpgradeSpec>>(wrap_array_of_vasa_provider_upgrade_spec), from_value: |v| from_val_with::<Vec<super::structs::VasaProviderUpgradeSpec>>(v, wrap_array_of_vasa_provider_upgrade_spec) }),
        ("VirtualHardwareOption", TypeInfo::Object { name: "VirtualHardwareOption", builder_fn: || Box::new(VirtualHardwareOptionFields::new()) }),
        ("ArrayOfHostDiskMappingOption", TypeInfo::Value { name: "ArrayOfHostDiskMappingOption", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskMappingOption>>(wrap_array_of_host_disk_mapping_option), from_value: |v| from_val_with::<Vec<super::structs::HostDiskMappingOption>>(v, wrap_array_of_host_disk_mapping_option) }),
        ("ArrayOfCnsAlreadyRegisteredFault", TypeInfo::Value { name: "ArrayOfCnsAlreadyRegisteredFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cns_already_registered_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cns_already_registered_fault) }),
        ("ArrayOfResyncIopsInfo", TypeInfo::Value { name: "ArrayOfResyncIopsInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ResyncIopsInfo>>(wrap_array_of_resync_iops_info), from_value: |v| from_val_with::<Vec<super::structs::ResyncIopsInfo>>(v, wrap_array_of_resync_iops_info) }),
        ("ArrayOfVmfsDatastoreBaseOption", TypeInfo::Value { name: "ArrayOfVmfsDatastoreBaseOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vmfs_datastore_base_option_array)), from_value: |v| cast_to_vmfs_datastore_base_option_array(from_value(v)?) }),
        ("HbrManagerReplicationVmInfo", TypeInfo::Object { name: "HbrManagerReplicationVmInfo", builder_fn: || Box::new(HbrManagerReplicationVmInfoFields::new()) }),
        ("VmFailedToPowerOnEvent", TypeInfo::Object { name: "VmFailedToPowerOnEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedToPowerOnEvent))) }),
        ("ArrayOfGuestRegistryKeyParentVolatile", TypeInfo::Value { name: "ArrayOfGuestRegistryKeyParentVolatile", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_registry_key_parent_volatile), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_registry_key_parent_volatile) }),
        ("ArrayOfSnapshotFault", TypeInfo::Value { name: "ArrayOfSnapshotFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_fault) }),
        ("OvfUnknownDevice", TypeInfo::Object { name: "OvfUnknownDevice", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnknownDevice))) }),
        ("ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots", TypeInfo::Value { name: "ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots>>(wrap_array_of_cluster_das_failover_level_advanced_runtime_info_host_slots), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfoHostSlots>>(v, wrap_array_of_cluster_das_failover_level_advanced_runtime_info_host_slots) }),
        ("ArrayOfSendSNMPAction", TypeInfo::Value { name: "ArrayOfSendSNMPAction", make_deserializer: || make_deser_with::<Vec<super::structs::SendSnmpAction>>(wrap_array_of_send_snmp_action), from_value: |v| from_val_with::<Vec<super::structs::SendSnmpAction>>(v, wrap_array_of_send_snmp_action) }),
        ("EamInvalidVibPackage", TypeInfo::Object { name: "EamInvalidVibPackage", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EamInvalidVibPackage))) }),
        ("ArrayOfFaultTolerancePrimaryConfigInfo", TypeInfo::Value { name: "ArrayOfFaultTolerancePrimaryConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::FaultTolerancePrimaryConfigInfo>>(wrap_array_of_fault_tolerance_primary_config_info), from_value: |v| from_val_with::<Vec<super::structs::FaultTolerancePrimaryConfigInfo>>(v, wrap_array_of_fault_tolerance_primary_config_info) }),
        ("DatabaseError", TypeInfo::Object { name: "DatabaseError", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DatabaseError))) }),
        ("ArrayOfVirtualMachineVMCIDevice", TypeInfo::Value { name: "ArrayOfVirtualMachineVMCIDevice", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVmciDevice>>(wrap_array_of_virtual_machine_vmci_device), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVmciDevice>>(v, wrap_array_of_virtual_machine_vmci_device) }),
        ("IncorrectHostInformationEvent", TypeInfo::Object { name: "IncorrectHostInformationEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::IncorrectHostInformationEvent))) }),
        ("DvsPortConnectedEvent", TypeInfo::Object { name: "DvsPortConnectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortConnectedEvent))) }),
        ("CannotAddHostWithFTVmAsStandalone", TypeInfo::Object { name: "CannotAddHostWithFTVmAsStandalone", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotAddHostWithFtVmAsStandalone))) }),
        ("VspanPortgroupTypeChangeFault", TypeInfo::Object { name: "VspanPortgroupTypeChangeFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VspanPortgroupTypeChangeFault))) }),
        ("ClusterComputeResourceDVSConfigurationValidation", TypeInfo::Object { name: "ClusterComputeResourceDVSConfigurationValidation", builder_fn: || Box::new(ClusterComputeResourceDvsConfigurationValidationFields::new()) }),
        ("VsanNetworkConfigBaseIssue", TypeInfo::Object { name: "VsanNetworkConfigBaseIssue", builder_fn: || Box::new(VsanNetworkConfigBaseIssueFields::new()) }),
        ("ArrayOfVsanIscsiLUNSpec", TypeInfo::Value { name: "ArrayOfVsanIscsiLUNSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiLunSpec>>(wrap_array_of_vsan_iscsi_lun_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiLunSpec>>(v, wrap_array_of_vsan_iscsi_lun_spec) }),
        ("TeamingMisMatchEvent", TypeInfo::Object { name: "TeamingMisMatchEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::TeamingMisMatchEvent))) }),
        ("ArrayOfHostDevice", TypeInfo::Value { name: "ArrayOfHostDevice", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_device_array)), from_value: |v| cast_to_host_device_array(from_value(v)?) }),
        ("ArrayOfClusterDependencyRuleInfo", TypeInfo::Value { name: "ArrayOfClusterDependencyRuleInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDependencyRuleInfo>>(wrap_array_of_cluster_dependency_rule_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDependencyRuleInfo>>(v, wrap_array_of_cluster_dependency_rule_info) }),
        ("VsanDaemonHealth", TypeInfo::Object { name: "VsanDaemonHealth", builder_fn: || Box::new(VsanDaemonHealthFields::new()) }),
        ("ArrayOfVspanPortgroupTypeChangeFault", TypeInfo::Value { name: "ArrayOfVspanPortgroupTypeChangeFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vspan_portgroup_type_change_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vspan_portgroup_type_change_fault) }),
        ("ArrayOfVMwareDVSTeamingHealthCheckConfig", TypeInfo::Value { name: "ArrayOfVMwareDVSTeamingHealthCheckConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsTeamingHealthCheckConfig>>(wrap_array_of_v_mware_dvs_teaming_health_check_config), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsTeamingHealthCheckConfig>>(v, wrap_array_of_v_mware_dvs_teaming_health_check_config) }),
        ("ArrayOfVirtualPrecisionClockSystemClockBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualPrecisionClockSystemClockBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPrecisionClockSystemClockBackingInfo>>(wrap_array_of_virtual_precision_clock_system_clock_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualPrecisionClockSystemClockBackingInfo>>(v, wrap_array_of_virtual_precision_clock_system_clock_backing_info) }),
        ("ArrayOfPbmProfileType", TypeInfo::Value { name: "ArrayOfPbmProfileType", make_deserializer: || make_deser_with::<Vec<super::structs::PbmProfileType>>(wrap_array_of_pbm_profile_type), from_value: |v| from_val_with::<Vec<super::structs::PbmProfileType>>(v, wrap_array_of_pbm_profile_type) }),
        ("VsanIOLatencyMetrics", TypeInfo::Object { name: "VsanIOLatencyMetrics", builder_fn: || Box::new(VsanIoLatencyMetricsFields::new()) }),
        ("VirtualDeviceDeviceBackingOption", TypeInfo::Object { name: "VirtualDeviceDeviceBackingOption", builder_fn: || Box::new(VirtualDeviceDeviceBackingOptionFields::new()) }),
        ("ArrayOfReplicaId", TypeInfo::Value { name: "ArrayOfReplicaId", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicaId>>(wrap_array_of_replica_id), from_value: |v| from_val_with::<Vec<super::structs::ReplicaId>>(v, wrap_array_of_replica_id) }),
        ("ArrayOfAlarmEventArgument", TypeInfo::Value { name: "ArrayOfAlarmEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::AlarmEventArgument>>(wrap_array_of_alarm_event_argument), from_value: |v| from_val_with::<Vec<super::structs::AlarmEventArgument>>(v, wrap_array_of_alarm_event_argument) }),
        ("PropertyFilterUpdate", TypeInfo::Object { name: "PropertyFilterUpdate", builder_fn: || Box::new(PropertyFilterUpdateFields::new()) }),
        ("VmRegisteredEvent", TypeInfo::Object { name: "VmRegisteredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRegisteredEvent))) }),
        ("NoReplicationTarget", TypeInfo::Object { name: "NoReplicationTarget", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoReplicationTarget))) }),
        ("DvsPuntNetworkRuleAction", TypeInfo::Object { name: "DvsPuntNetworkRuleAction", builder_fn: || Box::new(DvsPuntNetworkRuleActionFields::new()) }),
        ("ClusterEvent", TypeInfo::Object { name: "ClusterEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ClusterEvent))) }),
        ("VsanDiskGroupResourceCheckResult", TypeInfo::Object { name: "VsanDiskGroupResourceCheckResult", builder_fn: || Box::new(VsanDiskGroupResourceCheckResultFields::new()) }),
        ("ArrayOfCpuHotPlugNotSupported", TypeInfo::Value { name: "ArrayOfCpuHotPlugNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cpu_hot_plug_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cpu_hot_plug_not_supported) }),
        ("ArrayOfVirtualMachineTicket", TypeInfo::Value { name: "ArrayOfVirtualMachineTicket", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineTicket>>(wrap_array_of_virtual_machine_ticket), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineTicket>>(v, wrap_array_of_virtual_machine_ticket) }),
        ("ArrayOfVirtualDeviceConfigSpecFileOperation", TypeInfo::Value { name: "ArrayOfVirtualDeviceConfigSpecFileOperation", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualDeviceConfigSpecFileOperationEnum>>(wrap_array_of_virtual_device_config_spec_file_operation), from_value: |v| from_val_with::<Vec<super::enums::VirtualDeviceConfigSpecFileOperationEnum>>(v, wrap_array_of_virtual_device_config_spec_file_operation) }),
        ("ArrayOfVsanClusterHealthResultRow", TypeInfo::Value { name: "ArrayOfVsanClusterHealthResultRow", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthResultRow>>(wrap_array_of_vsan_cluster_health_result_row), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthResultRow>>(v, wrap_array_of_vsan_cluster_health_result_row) }),
        ("HostCnxFailedBadUsernameEvent", TypeInfo::Object { name: "HostCnxFailedBadUsernameEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedBadUsernameEvent))) }),
        ("IntegrityAgencyVUMUnavailable", TypeInfo::Object { name: "IntegrityAgencyVUMUnavailable", builder_fn: || Box::new(IntegrityAgencyVumUnavailableFields::new()) }),
        ("ArrayOfExtensibleIssue", TypeInfo::Value { name: "ArrayOfExtensibleIssue", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensibleIssue>>(wrap_array_of_extensible_issue), from_value: |v| from_val_with::<Vec<super::structs::ExtensibleIssue>>(v, wrap_array_of_extensible_issue) }),
        ("ArrayOfDistributedVirtualSwitchHostMemberTransportZoneInfo", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchHostMemberTransportZoneInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberTransportZoneInfo>>(wrap_array_of_distributed_virtual_switch_host_member_transport_zone_info), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberTransportZoneInfo>>(v, wrap_array_of_distributed_virtual_switch_host_member_transport_zone_info) }),
        ("ArrayOfGuestRegValueDataSpec", TypeInfo::Value { name: "ArrayOfGuestRegValueDataSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_guest_reg_value_data_spec_array)), from_value: |v| cast_to_guest_reg_value_data_spec_array(from_value(v)?) }),
        ("VsanFault", TypeInfo::Object { name: "VsanFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VsanFault))) }),
        ("ArrayOfVsanIscsiTargetServiceConfig", TypeInfo::Value { name: "ArrayOfVsanIscsiTargetServiceConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_iscsi_target_service_config_array)), from_value: |v| cast_to_vsan_iscsi_target_service_config_array(from_value(v)?) }),
        ("ArrayOfvslmInfrastructureObjectPolicy", TypeInfo::Value { name: "ArrayOfvslmInfrastructureObjectPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::VslmInfrastructureObjectPolicy>>(wrap_array_ofvslm_infrastructure_object_policy), from_value: |v| from_val_with::<Vec<super::structs::VslmInfrastructureObjectPolicy>>(v, wrap_array_ofvslm_infrastructure_object_policy) }),
        ("HostMaintenanceSpec", TypeInfo::Object { name: "HostMaintenanceSpec", builder_fn: || Box::new(HostMaintenanceSpecFields::new()) }),
        ("ArrayOfPnicTSOInfo", TypeInfo::Value { name: "ArrayOfPnicTSOInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PnicTsoInfo>>(wrap_array_of_pnic_tso_info), from_value: |v| from_val_with::<Vec<super::structs::PnicTsoInfo>>(v, wrap_array_of_pnic_tso_info) }),
        ("VMwareUplinkPortOrderPolicy", TypeInfo::Object { name: "VMwareUplinkPortOrderPolicy", builder_fn: || Box::new(VMwareUplinkPortOrderPolicyFields::new()) }),
        ("ArrayOfTargetToSourceInfo", TypeInfo::Value { name: "ArrayOfTargetToSourceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::TargetToSourceInfo>>(wrap_array_of_target_to_source_info), from_value: |v| from_val_with::<Vec<super::structs::TargetToSourceInfo>>(v, wrap_array_of_target_to_source_info) }),
        ("ArrayOfVimVsanHostVsanManagedPMemInfo", TypeInfo::Value { name: "ArrayOfVimVsanHostVsanManagedPMemInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostVsanManagedPMemInfo>>(wrap_array_of_vim_vsan_host_vsan_managed_p_mem_info), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostVsanManagedPMemInfo>>(v, wrap_array_of_vim_vsan_host_vsan_managed_p_mem_info) }),
        ("short", TypeInfo::Value { name: "short", make_deserializer: || make_deser_with::<i16>(wrap_primitive_short), from_value: |v| from_val_with::<i16>(v, wrap_primitive_short) }),
        ("HostDiagnosticPartitionCreateSpec", TypeInfo::Object { name: "HostDiagnosticPartitionCreateSpec", builder_fn: || Box::new(HostDiagnosticPartitionCreateSpecFields::new()) }),
        ("ArrayOfEventFilterSpecRecursionOption", TypeInfo::Value { name: "ArrayOfEventFilterSpecRecursionOption", make_deserializer: || make_deser_with::<Vec<super::enums::EventFilterSpecRecursionOptionEnum>>(wrap_array_of_event_filter_spec_recursion_option), from_value: |v| from_val_with::<Vec<super::enums::EventFilterSpecRecursionOptionEnum>>(v, wrap_array_of_event_filter_spec_recursion_option) }),
        ("HostListSummaryQuickStats", TypeInfo::Object { name: "HostListSummaryQuickStats", builder_fn: || Box::new(HostListSummaryQuickStatsFields::new()) }),
        ("ArrayOfCnsAccessControlSpec", TypeInfo::Value { name: "ArrayOfCnsAccessControlSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cns_access_control_spec_array)), from_value: |v| cast_to_cns_access_control_spec_array(from_value(v)?) }),
        ("ArrayOfVmwareDistributedVirtualSwitchRealTimeLanAnnotation", TypeInfo::Value { name: "ArrayOfVmwareDistributedVirtualSwitchRealTimeLanAnnotation", make_deserializer: || make_deser_with::<Vec<super::structs::VmwareDistributedVirtualSwitchRealTimeLanAnnotation>>(wrap_array_of_vmware_distributed_virtual_switch_real_time_lan_annotation), from_value: |v| from_val_with::<Vec<super::structs::VmwareDistributedVirtualSwitchRealTimeLanAnnotation>>(v, wrap_array_of_vmware_distributed_virtual_switch_real_time_lan_annotation) }),
        ("ArrayOfVsanConfigGeneration", TypeInfo::Value { name: "ArrayOfVsanConfigGeneration", make_deserializer: || make_deser_with::<Vec<super::structs::VsanConfigGeneration>>(wrap_array_of_vsan_config_generation), from_value: |v| from_val_with::<Vec<super::structs::VsanConfigGeneration>>(v, wrap_array_of_vsan_config_generation) }),
        ("ArrayOfPbmProfileId", TypeInfo::Value { name: "ArrayOfPbmProfileId", make_deserializer: || make_deser_with::<Vec<super::structs::PbmProfileId>>(wrap_array_of_pbm_profile_id), from_value: |v| from_val_with::<Vec<super::structs::PbmProfileId>>(v, wrap_array_of_pbm_profile_id) }),
        ("ArrayOfDiskNotSupported", TypeInfo::Value { name: "ArrayOfDiskNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disk_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disk_not_supported) }),
        ("ArrayOfReplicationSpec", TypeInfo::Value { name: "ArrayOfReplicationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicationSpec>>(wrap_array_of_replication_spec), from_value: |v| from_val_with::<Vec<super::structs::ReplicationSpec>>(v, wrap_array_of_replication_spec) }),
        ("ArrayOfCollectorAddressUnset", TypeInfo::Value { name: "ArrayOfCollectorAddressUnset", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_collector_address_unset), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_collector_address_unset) }),
        ("ArrayOfPbmLegacyHubsNotSupported", TypeInfo::Value { name: "ArrayOfPbmLegacyHubsNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_legacy_hubs_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_legacy_hubs_not_supported) }),
        ("EnteringStandbyModeEvent", TypeInfo::Object { name: "EnteringStandbyModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::EnteringStandbyModeEvent))) }),
        ("ArrayOfPbmPlacementRequirement", TypeInfo::Value { name: "ArrayOfPbmPlacementRequirement", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_pbm_placement_requirement_array)), from_value: |v| cast_to_pbm_placement_requirement_array(from_value(v)?) }),
        ("HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption", TypeInfo::Object { name: "HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption", builder_fn: || Box::new(HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOptionFields::new()) }),
        ("PropertyPath", TypeInfo::Value { name: "PropertyPath", make_deserializer: || make_deser_with::<String>(wrap_primitive_prop_path), from_value: |v| from_val_with::<String>(v, wrap_primitive_prop_path) }),
        ("ArrayOfNoCommonProviderForAllBackings", TypeInfo::Value { name: "ArrayOfNoCommonProviderForAllBackings", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_common_provider_for_all_backings), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_common_provider_for_all_backings) }),
        ("NoGuestHeartbeat", TypeInfo::Object { name: "NoGuestHeartbeat", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoGuestHeartbeat))) }),
        ("ArrayOfVsanResourceCheckComponentResult", TypeInfo::Value { name: "ArrayOfVsanResourceCheckComponentResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_resource_check_component_result_array)), from_value: |v| cast_to_vsan_resource_check_component_result_array(from_value(v)?) }),
        ("RemoteVsanSiteAffinity", TypeInfo::Object { name: "RemoteVsanSiteAffinity", builder_fn: || Box::new(RemoteVsanSiteAffinityFields::new()) }),
        ("ShrinkDiskFault", TypeInfo::Object { name: "ShrinkDiskFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ShrinkDiskFault))) }),
        ("ArrayOfOptionProfile", TypeInfo::Value { name: "ArrayOfOptionProfile", make_deserializer: || make_deser_with::<Vec<super::structs::OptionProfile>>(wrap_array_of_option_profile), from_value: |v| from_val_with::<Vec<super::structs::OptionProfile>>(v, wrap_array_of_option_profile) }),
        ("VsanFileServiceShareHealthSummary", TypeInfo::Object { name: "VsanFileServiceShareHealthSummary", builder_fn: || Box::new(VsanFileServiceShareHealthSummaryFields::new()) }),
        ("ArrayOfHostNetworkPolicy", TypeInfo::Value { name: "ArrayOfHostNetworkPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetworkPolicy>>(wrap_array_of_host_network_policy), from_value: |v| from_val_with::<Vec<super::structs::HostNetworkPolicy>>(v, wrap_array_of_host_network_policy) }),
        ("VsanPolicyChangeBatch", TypeInfo::Object { name: "VsanPolicyChangeBatch", builder_fn: || Box::new(VsanPolicyChangeBatchFields::new()) }),
        ("ToolsImageSignatureCheckFailed", TypeInfo::Object { name: "ToolsImageSignatureCheckFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ToolsImageSignatureCheckFailed))) }),
        ("SwapDatastoreNotWritableOnHost", TypeInfo::Object { name: "SwapDatastoreNotWritableOnHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SwapDatastoreNotWritableOnHost))) }),
        ("ArrayOfHostVmfsSpec", TypeInfo::Value { name: "ArrayOfHostVmfsSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostVmfsSpec>>(wrap_array_of_host_vmfs_spec), from_value: |v| from_val_with::<Vec<super::structs::HostVmfsSpec>>(v, wrap_array_of_host_vmfs_spec) }),
        ("VsanBrokenDiskChainIssue", TypeInfo::Object { name: "VsanBrokenDiskChainIssue", builder_fn: || Box::new(VsanBrokenDiskChainIssueFields::new()) }),
        ("NetIpRouteConfigSpecIpRouteSpec", TypeInfo::Object { name: "NetIpRouteConfigSpecIpRouteSpec", builder_fn: || Box::new(NetIpRouteConfigSpecIpRouteSpecFields::new()) }),
        ("VibRequiresManualInstallation", TypeInfo::Object { name: "VibRequiresManualInstallation", builder_fn: || Box::new(VibRequiresManualInstallationFields::new()) }),
        ("ArrayOfNotAuthorized", TypeInfo::Value { name: "ArrayOfNotAuthorized", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_authorized), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_authorized) }),
        ("ArrayOfVsanLimitHealthResult", TypeInfo::Value { name: "ArrayOfVsanLimitHealthResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanLimitHealthResult>>(wrap_array_of_vsan_limit_health_result), from_value: |v| from_val_with::<Vec<super::structs::VsanLimitHealthResult>>(v, wrap_array_of_vsan_limit_health_result) }),
        ("InsufficientHostCpuCapacityFault", TypeInfo::Object { name: "InsufficientHostCpuCapacityFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientHostCpuCapacityFault))) }),
        ("ArrayOfVmEmigratingEvent", TypeInfo::Value { name: "ArrayOfVmEmigratingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_emigrating_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_emigrating_event) }),
        ("VsanSyncingObjectFilter", TypeInfo::Object { name: "VsanSyncingObjectFilter", builder_fn: || Box::new(VsanSyncingObjectFilterFields::new()) }),
        ("HostSystemSwapConfiguration", TypeInfo::Object { name: "HostSystemSwapConfiguration", builder_fn: || Box::new(HostSystemSwapConfigurationFields::new()) }),
        ("DatastoreNotWritableOnHost", TypeInfo::Object { name: "DatastoreNotWritableOnHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DatastoreNotWritableOnHost))) }),
        ("ArrayOfVsanHostVsanObjectSyncQueryResult", TypeInfo::Value { name: "ArrayOfVsanHostVsanObjectSyncQueryResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostVsanObjectSyncQueryResult>>(wrap_array_of_vsan_host_vsan_object_sync_query_result), from_value: |v| from_val_with::<Vec<super::structs::VsanHostVsanObjectSyncQueryResult>>(v, wrap_array_of_vsan_host_vsan_object_sync_query_result) }),
        ("HostConfigManager", TypeInfo::Object { name: "HostConfigManager", builder_fn: || Box::new(HostConfigManagerFields::new()) }),
        ("DisallowedDiskModeChange", TypeInfo::Object { name: "DisallowedDiskModeChange", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DisallowedDiskModeChange))) }),
        ("VsanClusterHealthAction", TypeInfo::Object { name: "VsanClusterHealthAction", builder_fn: || Box::new(VsanClusterHealthActionFields::new()) }),
        ("ArrayOfRoleAddedEvent", TypeInfo::Value { name: "ArrayOfRoleAddedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_role_added_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_role_added_event) }),
        ("ArrayOfVmFaultToleranceConfigIssueWrapper", TypeInfo::Value { name: "ArrayOfVmFaultToleranceConfigIssueWrapper", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_fault_tolerance_config_issue_wrapper), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_fault_tolerance_config_issue_wrapper) }),
        ("ArrayOfVsanHistoricalHealthTest", TypeInfo::Value { name: "ArrayOfVsanHistoricalHealthTest", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHistoricalHealthTest>>(wrap_array_of_vsan_historical_health_test), from_value: |v| from_val_with::<Vec<super::structs::VsanHistoricalHealthTest>>(v, wrap_array_of_vsan_historical_health_test) }),
        ("ArrayOfHostBIOSInfo", TypeInfo::Value { name: "ArrayOfHostBIOSInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostBiosInfo>>(wrap_array_of_host_bios_info), from_value: |v| from_val_with::<Vec<super::structs::HostBiosInfo>>(v, wrap_array_of_host_bios_info) }),
        ("VsanInternalExtendedConfig", TypeInfo::Object { name: "VsanInternalExtendedConfig", builder_fn: || Box::new(VsanInternalExtendedConfigFields::new()) }),
        ("HAErrorsAtDest", TypeInfo::Object { name: "HAErrorsAtDest", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HaErrorsAtDest))) }),
        ("ArrayOfOvfElementInvalidValue", TypeInfo::Value { name: "ArrayOfOvfElementInvalidValue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_element_invalid_value), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_element_invalid_value) }),
        ("ArrayOfVirtualMachineCloneSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineCloneSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineCloneSpec>>(wrap_array_of_virtual_machine_clone_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineCloneSpec>>(v, wrap_array_of_virtual_machine_clone_spec) }),
        ("ArrayOfVsanDaemonHealth", TypeInfo::Value { name: "ArrayOfVsanDaemonHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDaemonHealth>>(wrap_array_of_vsan_daemon_health), from_value: |v| from_val_with::<Vec<super::structs::VsanDaemonHealth>>(v, wrap_array_of_vsan_daemon_health) }),
        ("ArrayOfHostCnxFailedEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_event) }),
        ("ArrayOfComputeResourceEventArgument", TypeInfo::Value { name: "ArrayOfComputeResourceEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::ComputeResourceEventArgument>>(wrap_array_of_compute_resource_event_argument), from_value: |v| from_val_with::<Vec<super::structs::ComputeResourceEventArgument>>(v, wrap_array_of_compute_resource_event_argument) }),
        ("OvfMissingHardware", TypeInfo::Object { name: "OvfMissingHardware", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfMissingHardware))) }),
        ("FaultDomainProviderMapping", TypeInfo::Object { name: "FaultDomainProviderMapping", builder_fn: || Box::new(FaultDomainProviderMappingFields::new()) }),
        ("VmDeployFailedEvent", TypeInfo::Object { name: "VmDeployFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDeployFailedEvent))) }),
        ("ArrayOfPersonalityAgencyPMUnavailable", TypeInfo::Value { name: "ArrayOfPersonalityAgencyPMUnavailable", make_deserializer: || make_deser_with::<Vec<super::structs::PersonalityAgencyPmUnavailable>>(wrap_array_of_personality_agency_pm_unavailable), from_value: |v| from_val_with::<Vec<super::structs::PersonalityAgencyPmUnavailable>>(v, wrap_array_of_personality_agency_pm_unavailable) }),
        ("VirtualPrecisionClockSystemClockBackingInfo", TypeInfo::Object { name: "VirtualPrecisionClockSystemClockBackingInfo", builder_fn: || Box::new(VirtualPrecisionClockSystemClockBackingInfoFields::new()) }),
        ("ArrayOfIscsiFaultVnicNotBound", TypeInfo::Value { name: "ArrayOfIscsiFaultVnicNotBound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_vnic_not_bound), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_vnic_not_bound) }),
        ("ClusterFailoverHostAdmissionControlInfoHostStatus", TypeInfo::Object { name: "ClusterFailoverHostAdmissionControlInfoHostStatus", builder_fn: || Box::new(ClusterFailoverHostAdmissionControlInfoHostStatusFields::new()) }),
        ("ArrayOfClusterConfigInfoEx", TypeInfo::Value { name: "ArrayOfClusterConfigInfoEx", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterConfigInfoEx>>(wrap_array_of_cluster_config_info_ex), from_value: |v| from_val_with::<Vec<super::structs::ClusterConfigInfoEx>>(v, wrap_array_of_cluster_config_info_ex) }),
        ("ArrayOfVmDiskFileInfo", TypeInfo::Value { name: "ArrayOfVmDiskFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VmDiskFileInfo>>(wrap_array_of_vm_disk_file_info), from_value: |v| from_val_with::<Vec<super::structs::VmDiskFileInfo>>(v, wrap_array_of_vm_disk_file_info) }),
        ("ArrayOfVmEvent", TypeInfo::Value { name: "ArrayOfVmEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_event) }),
        ("HostVnicConnectedToCustomizedDVPortEvent", TypeInfo::Object { name: "HostVnicConnectedToCustomizedDVPortEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostVnicConnectedToCustomizedDvPortEvent))) }),
        ("ArrayOfExtension", TypeInfo::Value { name: "ArrayOfExtension", make_deserializer: || make_deser_with::<Vec<super::structs::Extension>>(wrap_array_of_extension), from_value: |v| from_val_with::<Vec<super::structs::Extension>>(v, wrap_array_of_extension) }),
        ("ArrayOfLicenseEvent", TypeInfo::Value { name: "ArrayOfLicenseEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_license_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_license_event) }),
        ("StringPolicy", TypeInfo::Object { name: "StringPolicy", builder_fn: || Box::new(StringPolicyFields::new()) }),
        ("HostVirtualNicIpRouteSpec", TypeInfo::Object { name: "HostVirtualNicIpRouteSpec", builder_fn: || Box::new(HostVirtualNicIpRouteSpecFields::new()) }),
        ("ArrayOfDirectPathProfileManagerDvxDirectPathConfig", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerDvxDirectPathConfig", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerDvxDirectPathConfig>>(wrap_array_of_direct_path_profile_manager_dvx_direct_path_config), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerDvxDirectPathConfig>>(v, wrap_array_of_direct_path_profile_manager_dvx_direct_path_config) }),
        ("HostImageProfileSummary", TypeInfo::Object { name: "HostImageProfileSummary", builder_fn: || Box::new(HostImageProfileSummaryFields::new()) }),
        ("ArrayOfPbmPlacementCompatibilityResult", TypeInfo::Value { name: "ArrayOfPbmPlacementCompatibilityResult", make_deserializer: || make_deser_with::<Vec<super::structs::PbmPlacementCompatibilityResult>>(wrap_array_of_pbm_placement_compatibility_result), from_value: |v| from_val_with::<Vec<super::structs::PbmPlacementCompatibilityResult>>(v, wrap_array_of_pbm_placement_compatibility_result) }),
        ("ArrayOfVimAccountPasswordChangedEvent", TypeInfo::Value { name: "ArrayOfVimAccountPasswordChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vim_account_password_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vim_account_password_changed_event) }),
        ("GuestProcessNotFound", TypeInfo::Object { name: "GuestProcessNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestProcessNotFound))) }),
        ("VirtualSriovEthernetCardOption", TypeInfo::Object { name: "VirtualSriovEthernetCardOption", builder_fn: || Box::new(VirtualSriovEthernetCardOptionFields::new()) }),
        ("DatastoreRemovedOnHostEvent", TypeInfo::Object { name: "DatastoreRemovedOnHostEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreRemovedOnHostEvent))) }),
        ("VirtualPCIPassthrough", TypeInfo::Object { name: "VirtualPCIPassthrough", builder_fn: || Box::new(VirtualPciPassthroughFields::new()) }),
        ("VsanClusterCoreConfig", TypeInfo::Object { name: "VsanClusterCoreConfig", builder_fn: || Box::new(VsanClusterCoreConfigFields::new()) }),
        ("VsanFileShareSnapshotQuerySpec", TypeInfo::Object { name: "VsanFileShareSnapshotQuerySpec", builder_fn: || Box::new(VsanFileShareSnapshotQuerySpecFields::new()) }),
        ("ArrayOfIncompatibleSetting", TypeInfo::Value { name: "ArrayOfIncompatibleSetting", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_incompatible_setting), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_incompatible_setting) }),
        ("TooManyGuestLogons", TypeInfo::Object { name: "TooManyGuestLogons", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TooManyGuestLogons))) }),
        ("ArrayOfVsanHostRuntimeInfoDiskIssue", TypeInfo::Value { name: "ArrayOfVsanHostRuntimeInfoDiskIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostRuntimeInfoDiskIssue>>(wrap_array_of_vsan_host_runtime_info_disk_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanHostRuntimeInfoDiskIssue>>(v, wrap_array_of_vsan_host_runtime_info_disk_issue) }),
        ("ArrayOfSSPIAuthentication", TypeInfo::Value { name: "ArrayOfSSPIAuthentication", make_deserializer: || make_deser_with::<Vec<super::structs::SspiAuthentication>>(wrap_array_of_sspi_authentication), from_value: |v| from_val_with::<Vec<super::structs::SspiAuthentication>>(v, wrap_array_of_sspi_authentication) }),
        ("ArrayOfHostSerialAttachedTargetTransport", TypeInfo::Value { name: "ArrayOfHostSerialAttachedTargetTransport", make_deserializer: || make_deser_with::<Vec<super::structs::HostSerialAttachedTargetTransport>>(wrap_array_of_host_serial_attached_target_transport), from_value: |v| from_val_with::<Vec<super::structs::HostSerialAttachedTargetTransport>>(v, wrap_array_of_host_serial_attached_target_transport) }),
        ("ClusterDasAamHostInfo", TypeInfo::Object { name: "ClusterDasAamHostInfo", builder_fn: || Box::new(ClusterDasAamHostInfoFields::new()) }),
        ("ArrayOfVirtualFloppyImageBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualFloppyImageBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualFloppyImageBackingInfo>>(wrap_array_of_virtual_floppy_image_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualFloppyImageBackingInfo>>(v, wrap_array_of_virtual_floppy_image_backing_info) }),
        ("ArrayOfToolsConfigInfo", TypeInfo::Value { name: "ArrayOfToolsConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ToolsConfigInfo>>(wrap_array_of_tools_config_info), from_value: |v| from_val_with::<Vec<super::structs::ToolsConfigInfo>>(v, wrap_array_of_tools_config_info) }),
        ("ArrayOfVirtualIDEController", TypeInfo::Value { name: "ArrayOfVirtualIDEController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualIdeController>>(wrap_array_of_virtual_ide_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualIdeController>>(v, wrap_array_of_virtual_ide_controller) }),
        ("CustomFieldDefEvent", TypeInfo::Object { name: "CustomFieldDefEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomFieldDefEvent))) }),
        ("PermissionRemovedEvent", TypeInfo::Object { name: "PermissionRemovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::PermissionRemovedEvent))) }),
        ("ArrayOfOvfProperty", TypeInfo::Value { name: "ArrayOfOvfProperty", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_property), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_property) }),
        ("VmConfigFileQuery", TypeInfo::Object { name: "VmConfigFileQuery", builder_fn: || Box::new(VmConfigFileQueryFields::new()) }),
        ("ArrayOfIntPolicy", TypeInfo::Value { name: "ArrayOfIntPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::IntPolicy>>(wrap_array_of_int_policy), from_value: |v| from_val_with::<Vec<super::structs::IntPolicy>>(v, wrap_array_of_int_policy) }),
        ("OvfNetworkMapping", TypeInfo::Object { name: "OvfNetworkMapping", builder_fn: || Box::new(OvfNetworkMappingFields::new()) }),
        ("CustomizationSpec", TypeInfo::Object { name: "CustomizationSpec", builder_fn: || Box::new(CustomizationSpecFields::new()) }),
        ("ArrayOfVirtualMachineForkConfigInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineForkConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineForkConfigInfo>>(wrap_array_of_virtual_machine_fork_config_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineForkConfigInfo>>(v, wrap_array_of_virtual_machine_fork_config_info) }),
        ("ConcurrentAccess", TypeInfo::Object { name: "ConcurrentAccess", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ConcurrentAccess))) }),
        ("ArrayOfDirectPathProfileManagerCreateSpec", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerCreateSpec>>(wrap_array_of_direct_path_profile_manager_create_spec), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerCreateSpec>>(v, wrap_array_of_direct_path_profile_manager_create_spec) }),
        ("VirtualSerialPortPipeBackingOption", TypeInfo::Object { name: "VirtualSerialPortPipeBackingOption", builder_fn: || Box::new(VirtualSerialPortPipeBackingOptionFields::new()) }),
        ("FaultToleranceNotSameBuild", TypeInfo::Object { name: "FaultToleranceNotSameBuild", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FaultToleranceNotSameBuild))) }),
        ("PbmPlacementHub", TypeInfo::Object { name: "PbmPlacementHub", builder_fn: || Box::new(PbmPlacementHubFields::new()) }),
        ("ArrayOfClusterComputeResourceDvsProfileDVPortgroupSpecToServiceMapping", TypeInfo::Value { name: "ArrayOfClusterComputeResourceDvsProfileDVPortgroupSpecToServiceMapping", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceDvsProfileDvPortgroupSpecToServiceMapping>>(wrap_array_of_cluster_compute_resource_dvs_profile_dv_portgroup_spec_to_service_mapping), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceDvsProfileDvPortgroupSpecToServiceMapping>>(v, wrap_array_of_cluster_compute_resource_dvs_profile_dv_portgroup_spec_to_service_mapping) }),
        ("ArrayOfAlarmFilterSpec", TypeInfo::Value { name: "ArrayOfAlarmFilterSpec", make_deserializer: || make_deser_with::<Vec<super::structs::AlarmFilterSpec>>(wrap_array_of_alarm_filter_spec), from_value: |v| from_val_with::<Vec<super::structs::AlarmFilterSpec>>(v, wrap_array_of_alarm_filter_spec) }),
        ("VsanFileServiceDomainConfig", TypeInfo::Object { name: "VsanFileServiceDomainConfig", builder_fn: || Box::new(VsanFileServiceDomainConfigFields::new()) }),
        ("ArrayOfNetworkProfileDnsConfigProfile", TypeInfo::Value { name: "ArrayOfNetworkProfileDnsConfigProfile", make_deserializer: || make_deser_with::<Vec<super::structs::NetworkProfileDnsConfigProfile>>(wrap_array_of_network_profile_dns_config_profile), from_value: |v| from_val_with::<Vec<super::structs::NetworkProfileDnsConfigProfile>>(v, wrap_array_of_network_profile_dns_config_profile) }),
        ("ArrayOfVirtualUSBOption", TypeInfo::Value { name: "ArrayOfVirtualUSBOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbOption>>(wrap_array_of_virtual_usb_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbOption>>(v, wrap_array_of_virtual_usb_option) }),
        ("PbmPlacementCompatibilityResult", TypeInfo::Object { name: "PbmPlacementCompatibilityResult", builder_fn: || Box::new(PbmPlacementCompatibilityResultFields::new()) }),
        ("StorageDrsCannotMoveManuallyPlacedVm", TypeInfo::Object { name: "StorageDrsCannotMoveManuallyPlacedVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsCannotMoveManuallyPlacedVm))) }),
        ("HostVirtualNicManagerInfo", TypeInfo::Object { name: "HostVirtualNicManagerInfo", builder_fn: || Box::new(HostVirtualNicManagerInfoFields::new()) }),
        ("ArrayOfClusterAgentVmNotRemoved", TypeInfo::Value { name: "ArrayOfClusterAgentVmNotRemoved", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentVmNotRemoved>>(wrap_array_of_cluster_agent_vm_not_removed), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentVmNotRemoved>>(v, wrap_array_of_cluster_agent_vm_not_removed) }),
        ("CustomizationSysprepRebootOption", TypeInfo::Value { name: "CustomizationSysprepRebootOption", make_deserializer: || make_deser_with::<super::enums::CustomizationSysprepRebootOptionEnum>(wrap_customization_sysprep_reboot_option), from_value: |v| from_val_with::<super::enums::CustomizationSysprepRebootOptionEnum>(v, wrap_customization_sysprep_reboot_option) }),
        ("VirtualVmxnet", TypeInfo::Object { name: "VirtualVmxnet", builder_fn: || Box::new(VirtualVmxnetFields::new()) }),
        ("CustomFieldValue", TypeInfo::Object { name: "CustomFieldValue", builder_fn: || Box::new(CustomFieldValueFields::new()) }),
        ("VimVsanHostTrimDiskSpec", TypeInfo::Object { name: "VimVsanHostTrimDiskSpec", builder_fn: || Box::new(VimVsanHostTrimDiskSpecFields::new()) }),
        ("ArrayOfClusterAgentVmInaccessible", TypeInfo::Value { name: "ArrayOfClusterAgentVmInaccessible", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentVmInaccessible>>(wrap_array_of_cluster_agent_vm_inaccessible), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentVmInaccessible>>(v, wrap_array_of_cluster_agent_vm_inaccessible) }),
        ("ArrayOfNamespaceLimitReached", TypeInfo::Value { name: "ArrayOfNamespaceLimitReached", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_namespace_limit_reached), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_namespace_limit_reached) }),
        ("ArrayOfHostVMotionConfig", TypeInfo::Value { name: "ArrayOfHostVMotionConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostVMotionConfig>>(wrap_array_of_host_v_motion_config), from_value: |v| from_val_with::<Vec<super::structs::HostVMotionConfig>>(v, wrap_array_of_host_v_motion_config) }),
        ("InvalidIpmiLoginInfo", TypeInfo::Object { name: "InvalidIpmiLoginInfo", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidIpmiLoginInfo))) }),
        ("VibRequiresHostReboot", TypeInfo::Object { name: "VibRequiresHostReboot", builder_fn: || Box::new(VibRequiresHostRebootFields::new()) }),
        ("ArrayOfOvfDuplicatedPropertyIdImport", TypeInfo::Value { name: "ArrayOfOvfDuplicatedPropertyIdImport", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_duplicated_property_id_import), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_duplicated_property_id_import) }),
        ("PropertySpec", TypeInfo::Object { name: "PropertySpec", builder_fn: || Box::new(PropertySpecFields::new()) }),
        ("ArrayOfProfileCompositeExpression", TypeInfo::Value { name: "ArrayOfProfileCompositeExpression", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileCompositeExpression>>(wrap_array_of_profile_composite_expression), from_value: |v| from_val_with::<Vec<super::structs::ProfileCompositeExpression>>(v, wrap_array_of_profile_composite_expression) }),
        ("VmResourceReallocatedEvent", TypeInfo::Object { name: "VmResourceReallocatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmResourceReallocatedEvent))) }),
        ("QueryPointInTimeReplicaSuccessResult", TypeInfo::Object { name: "QueryPointInTimeReplicaSuccessResult", builder_fn: || Box::new(QueryPointInTimeReplicaSuccessResultFields::new()) }),
        ("ArrayOfVStorageObjectReconcileResultInvalidDiskPath", TypeInfo::Value { name: "ArrayOfVStorageObjectReconcileResultInvalidDiskPath", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectReconcileResultInvalidDiskPath>>(wrap_array_of_v_storage_object_reconcile_result_invalid_disk_path), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectReconcileResultInvalidDiskPath>>(v, wrap_array_of_v_storage_object_reconcile_result_invalid_disk_path) }),
        ("ClusterDasAdvancedRuntimeInfoVmcpCapabilityInfo", TypeInfo::Object { name: "ClusterDasAdvancedRuntimeInfoVmcpCapabilityInfo", builder_fn: || Box::new(ClusterDasAdvancedRuntimeInfoVmcpCapabilityInfoFields::new()) }),
        ("BaseConfigInfoRawDiskMappingBackingInfo", TypeInfo::Object { name: "BaseConfigInfoRawDiskMappingBackingInfo", builder_fn: || Box::new(BaseConfigInfoRawDiskMappingBackingInfoFields::new()) }),
        ("IncompatibleHostForFtSecondary", TypeInfo::Object { name: "IncompatibleHostForFtSecondary", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IncompatibleHostForFtSecondary))) }),
        ("SoftwarePackage", TypeInfo::Object { name: "SoftwarePackage", builder_fn: || Box::new(SoftwarePackageFields::new()) }),
        ("ArrayOfFileTooLarge", TypeInfo::Value { name: "ArrayOfFileTooLarge", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_file_too_large), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_file_too_large) }),
        ("SelectionSpec", TypeInfo::Object { name: "SelectionSpec", builder_fn: || Box::new(SelectionSpecFields::new()) }),
        ("ArrayOfClusterDasHostInfo", TypeInfo::Value { name: "ArrayOfClusterDasHostInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_das_host_info_array)), from_value: |v| cast_to_cluster_das_host_info_array(from_value(v)?) }),
        ("ArrayOfHostDiagnosticPartitionCreateDescription", TypeInfo::Value { name: "ArrayOfHostDiagnosticPartitionCreateDescription", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiagnosticPartitionCreateDescription>>(wrap_array_of_host_diagnostic_partition_create_description), from_value: |v| from_val_with::<Vec<super::structs::HostDiagnosticPartitionCreateDescription>>(v, wrap_array_of_host_diagnostic_partition_create_description) }),
        ("ArrayOfVirtualDeviceFileBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDeviceFileBackingInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_file_backing_info_array)), from_value: |v| cast_to_virtual_device_file_backing_info_array(from_value(v)?) }),
        ("ArrayOfHostStorageArrayTypePolicyOption", TypeInfo::Value { name: "ArrayOfHostStorageArrayTypePolicyOption", make_deserializer: || make_deser_with::<Vec<super::structs::HostStorageArrayTypePolicyOption>>(wrap_array_of_host_storage_array_type_policy_option), from_value: |v| from_val_with::<Vec<super::structs::HostStorageArrayTypePolicyOption>>(v, wrap_array_of_host_storage_array_type_policy_option) }),
        ("ArrayOfFeatureRequirementsNotMet", TypeInfo::Value { name: "ArrayOfFeatureRequirementsNotMet", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_feature_requirements_not_met), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_feature_requirements_not_met) }),
        ("ArrayOfStorageDrsCannotMoveManuallyPlacedSwapFile", TypeInfo::Value { name: "ArrayOfStorageDrsCannotMoveManuallyPlacedSwapFile", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_cannot_move_manually_placed_swap_file), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_cannot_move_manually_placed_swap_file) }),
        ("NamespaceLimitReached", TypeInfo::Object { name: "NamespaceLimitReached", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NamespaceLimitReached))) }),
        ("ArrayOfWeekOfMonth", TypeInfo::Value { name: "ArrayOfWeekOfMonth", make_deserializer: || make_deser_with::<Vec<super::enums::WeekOfMonthEnum>>(wrap_array_of_week_of_month), from_value: |v| from_val_with::<Vec<super::enums::WeekOfMonthEnum>>(v, wrap_array_of_week_of_month) }),
        ("VirtualUSBUSBBackingInfo", TypeInfo::Object { name: "VirtualUSBUSBBackingInfo", builder_fn: || Box::new(VirtualUsbusbBackingInfoFields::new()) }),
        ("NoGateway", TypeInfo::Object { name: "NoGateway", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoGateway))) }),
        ("DestinationSwitchFull", TypeInfo::Object { name: "DestinationSwitchFull", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DestinationSwitchFull))) }),
        ("LicenseManagerEvaluationInfo", TypeInfo::Object { name: "LicenseManagerEvaluationInfo", builder_fn: || Box::new(LicenseManagerEvaluationInfoFields::new()) }),
        ("NvdimmNamespaceDeleteSpec", TypeInfo::Object { name: "NvdimmNamespaceDeleteSpec", builder_fn: || Box::new(NvdimmNamespaceDeleteSpecFields::new()) }),
        ("ArrayOfHostPlugStoreTopologyAdapter", TypeInfo::Value { name: "ArrayOfHostPlugStoreTopologyAdapter", make_deserializer: || make_deser_with::<Vec<super::structs::HostPlugStoreTopologyAdapter>>(wrap_array_of_host_plug_store_topology_adapter), from_value: |v| from_val_with::<Vec<super::structs::HostPlugStoreTopologyAdapter>>(v, wrap_array_of_host_plug_store_topology_adapter) }),
        ("ArrayOfOvfStorageProfileMapping", TypeInfo::Value { name: "ArrayOfOvfStorageProfileMapping", make_deserializer: || make_deser_with::<Vec<super::structs::OvfStorageProfileMapping>>(wrap_array_of_ovf_storage_profile_mapping), from_value: |v| from_val_with::<Vec<super::structs::OvfStorageProfileMapping>>(v, wrap_array_of_ovf_storage_profile_mapping) }),
        ("ArrayOfVimVasaProviderInfo", TypeInfo::Value { name: "ArrayOfVimVasaProviderInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VimVasaProviderInfo>>(wrap_array_of_vim_vasa_provider_info), from_value: |v| from_val_with::<Vec<super::structs::VimVasaProviderInfo>>(v, wrap_array_of_vim_vasa_provider_info) }),
        ("ArrayOfHostPatchManagerStatusPrerequisitePatch", TypeInfo::Value { name: "ArrayOfHostPatchManagerStatusPrerequisitePatch", make_deserializer: || make_deser_with::<Vec<super::structs::HostPatchManagerStatusPrerequisitePatch>>(wrap_array_of_host_patch_manager_status_prerequisite_patch), from_value: |v| from_val_with::<Vec<super::structs::HostPatchManagerStatusPrerequisitePatch>>(v, wrap_array_of_host_patch_manager_status_prerequisite_patch) }),
        ("ArrayOfHostTdxInfo", TypeInfo::Value { name: "ArrayOfHostTdxInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostTdxInfo>>(wrap_array_of_host_tdx_info), from_value: |v| from_val_with::<Vec<super::structs::HostTdxInfo>>(v, wrap_array_of_host_tdx_info) }),
        ("ArrayOfCryptoSpecRegister", TypeInfo::Value { name: "ArrayOfCryptoSpecRegister", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoSpecRegister>>(wrap_array_of_crypto_spec_register), from_value: |v| from_val_with::<Vec<super::structs::CryptoSpecRegister>>(v, wrap_array_of_crypto_spec_register) }),
        ("ArrayOfClusterAgentCertificateNotTrusted", TypeInfo::Value { name: "ArrayOfClusterAgentCertificateNotTrusted", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentCertificateNotTrusted>>(wrap_array_of_cluster_agent_certificate_not_trusted), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentCertificateNotTrusted>>(v, wrap_array_of_cluster_agent_certificate_not_trusted) }),
        ("VsanObjectInaccessibleIssue", TypeInfo::Object { name: "VsanObjectInaccessibleIssue", builder_fn: || Box::new(VsanObjectInaccessibleIssueFields::new()) }),
        ("VsanIncompatibleDiskMapping", TypeInfo::Object { name: "VsanIncompatibleDiskMapping", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VsanIncompatibleDiskMapping))) }),
        ("PbmAlreadyExists", TypeInfo::Object { name: "PbmAlreadyExists", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmAlreadyExists))) }),
        ("VirtualMachineMetadataManagerVmMetadataOp", TypeInfo::Value { name: "VirtualMachineMetadataManagerVmMetadataOp", make_deserializer: || make_deser_with::<super::enums::VirtualMachineMetadataManagerVmMetadataOpEnum>(wrap_virtual_machine_metadata_manager_vm_metadata_op), from_value: |v| from_val_with::<super::enums::VirtualMachineMetadataManagerVmMetadataOpEnum>(v, wrap_virtual_machine_metadata_manager_vm_metadata_op) }),
        ("VsanFileShareSnapshot", TypeInfo::Object { name: "VsanFileShareSnapshot", builder_fn: || Box::new(VsanFileShareSnapshotFields::new()) }),
        ("ArrayOfSnapshotLocked", TypeInfo::Value { name: "ArrayOfSnapshotLocked", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_locked), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_locked) }),
        ("OvfCreateImportSpecParams", TypeInfo::Object { name: "OvfCreateImportSpecParams", builder_fn: || Box::new(OvfCreateImportSpecParamsFields::new()) }),
        ("HostPatchManagerStatusPrerequisitePatch", TypeInfo::Object { name: "HostPatchManagerStatusPrerequisitePatch", builder_fn: || Box::new(HostPatchManagerStatusPrerequisitePatchFields::new()) }),
        ("ArrayOfClusterAgentOvfInvalidProperty", TypeInfo::Value { name: "ArrayOfClusterAgentOvfInvalidProperty", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentOvfInvalidProperty>>(wrap_array_of_cluster_agent_ovf_invalid_property), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentOvfInvalidProperty>>(v, wrap_array_of_cluster_agent_ovf_invalid_property) }),
        ("ClusterProfileConfigInfo", TypeInfo::Object { name: "ClusterProfileConfigInfo", builder_fn: || Box::new(ClusterProfileConfigInfoFields::new()) }),
        ("ReplicationGroupFilter", TypeInfo::Object { name: "ReplicationGroupFilter", builder_fn: || Box::new(ReplicationGroupFilterFields::new()) }),
        ("DatastoreCapability", TypeInfo::Object { name: "DatastoreCapability", builder_fn: || Box::new(DatastoreCapabilityFields::new()) }),
        ("ArrayOfVsanGenericClusterBaseIssue", TypeInfo::Value { name: "ArrayOfVsanGenericClusterBaseIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanGenericClusterBaseIssue>>(wrap_array_of_vsan_generic_cluster_base_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanGenericClusterBaseIssue>>(v, wrap_array_of_vsan_generic_cluster_base_issue) }),
        ("ArrayOfVirtualMachineVMIROM", TypeInfo::Value { name: "ArrayOfVirtualMachineVMIROM", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVmirom>>(wrap_array_of_virtual_machine_vmirom), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVmirom>>(v, wrap_array_of_virtual_machine_vmirom) }),
        ("VsanVibScanResult", TypeInfo::Object { name: "VsanVibScanResult", builder_fn: || Box::new(VsanVibScanResultFields::new()) }),
        ("VsanHealthCorrelation", TypeInfo::Object { name: "VsanHealthCorrelation", builder_fn: || Box::new(VsanHealthCorrelationFields::new()) }),
        ("HostNumaNode", TypeInfo::Object { name: "HostNumaNode", builder_fn: || Box::new(HostNumaNodeFields::new()) }),
        ("ArrayOfEvaluationLicenseSource", TypeInfo::Value { name: "ArrayOfEvaluationLicenseSource", make_deserializer: || make_deser_with::<Vec<super::structs::EvaluationLicenseSource>>(wrap_array_of_evaluation_license_source), from_value: |v| from_val_with::<Vec<super::structs::EvaluationLicenseSource>>(v, wrap_array_of_evaluation_license_source) }),
        ("GuestInfoNamespaceGenerationInfo", TypeInfo::Object { name: "GuestInfoNamespaceGenerationInfo", builder_fn: || Box::new(GuestInfoNamespaceGenerationInfoFields::new()) }),
        ("ArrayOfImmediateHostRebootRequired", TypeInfo::Value { name: "ArrayOfImmediateHostRebootRequired", make_deserializer: || make_deser_with::<Vec<super::structs::ImmediateHostRebootRequired>>(wrap_array_of_immediate_host_reboot_required), from_value: |v| from_val_with::<Vec<super::structs::ImmediateHostRebootRequired>>(v, wrap_array_of_immediate_host_reboot_required) }),
        ("ArrayOfVsanHostCimProviderInfo", TypeInfo::Value { name: "ArrayOfVsanHostCimProviderInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostCimProviderInfo>>(wrap_array_of_vsan_host_cim_provider_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostCimProviderInfo>>(v, wrap_array_of_vsan_host_cim_provider_info) }),
        ("CustomizationLicenseDataMode", TypeInfo::Value { name: "CustomizationLicenseDataMode", make_deserializer: || make_deser_with::<super::enums::CustomizationLicenseDataModeEnum>(wrap_customization_license_data_mode), from_value: |v| from_val_with::<super::enums::CustomizationLicenseDataModeEnum>(v, wrap_customization_license_data_mode) }),
        ("ArrayOfVibRequiresHostInMaintenanceMode", TypeInfo::Value { name: "ArrayOfVibRequiresHostInMaintenanceMode", make_deserializer: || make_deser_with::<Vec<super::structs::VibRequiresHostInMaintenanceMode>>(wrap_array_of_vib_requires_host_in_maintenance_mode), from_value: |v| from_val_with::<Vec<super::structs::VibRequiresHostInMaintenanceMode>>(v, wrap_array_of_vib_requires_host_in_maintenance_mode) }),
        ("ArrayOfNumVirtualCpusExceedsLimit", TypeInfo::Value { name: "ArrayOfNumVirtualCpusExceedsLimit", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_num_virtual_cpus_exceeds_limit), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_num_virtual_cpus_exceeds_limit) }),
        ("ArrayOfUserSession", TypeInfo::Value { name: "ArrayOfUserSession", make_deserializer: || make_deser_with::<Vec<super::structs::UserSession>>(wrap_array_of_user_session), from_value: |v| from_val_with::<Vec<super::structs::UserSession>>(v, wrap_array_of_user_session) }),
        ("ExpiredAddonLicense", TypeInfo::Object { name: "ExpiredAddonLicense", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ExpiredAddonLicense))) }),
        ("ArrayOfFolderBatchAddHostsToClusterResult", TypeInfo::Value { name: "ArrayOfFolderBatchAddHostsToClusterResult", make_deserializer: || make_deser_with::<Vec<super::structs::FolderBatchAddHostsToClusterResult>>(wrap_array_of_folder_batch_add_hosts_to_cluster_result), from_value: |v| from_val_with::<Vec<super::structs::FolderBatchAddHostsToClusterResult>>(v, wrap_array_of_folder_batch_add_hosts_to_cluster_result) }),
        ("ArrayOfPbmCapabilityProfilePropertyMismatchFault", TypeInfo::Value { name: "ArrayOfPbmCapabilityProfilePropertyMismatchFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_capability_profile_property_mismatch_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_capability_profile_property_mismatch_fault) }),
        ("ArrayOfTemplateBeingUpgradedEvent", TypeInfo::Value { name: "ArrayOfTemplateBeingUpgradedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_template_being_upgraded_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_template_being_upgraded_event) }),
        ("ArrayOfVmfsConfigOption", TypeInfo::Value { name: "ArrayOfVmfsConfigOption", make_deserializer: || make_deser_with::<Vec<super::structs::VmfsConfigOption>>(wrap_array_of_vmfs_config_option), from_value: |v| from_val_with::<Vec<super::structs::VmfsConfigOption>>(v, wrap_array_of_vmfs_config_option) }),
        ("PbmPersistenceBasedDataServiceInfo", TypeInfo::Object { name: "PbmPersistenceBasedDataServiceInfo", builder_fn: || Box::new(PbmPersistenceBasedDataServiceInfoFields::new()) }),
        ("ArrayOfHostConfigFault", TypeInfo::Value { name: "ArrayOfHostConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_config_fault) }),
        ("ArrayOfVsanVcsaDeploymentProgress", TypeInfo::Value { name: "ArrayOfVsanVcsaDeploymentProgress", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVcsaDeploymentProgress>>(wrap_array_of_vsan_vcsa_deployment_progress), from_value: |v| from_val_with::<Vec<super::structs::VsanVcsaDeploymentProgress>>(v, wrap_array_of_vsan_vcsa_deployment_progress) }),
        ("VMwareVspanSession", TypeInfo::Object { name: "VMwareVspanSession", builder_fn: || Box::new(VMwareVspanSessionFields::new()) }),
        ("ArrayOfInvalidClientCertificate", TypeInfo::Value { name: "ArrayOfInvalidClientCertificate", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_client_certificate), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_client_certificate) }),
        ("VsanUnknownScanIssue", TypeInfo::Object { name: "VsanUnknownScanIssue", builder_fn: || Box::new(VsanUnknownScanIssueFields::new()) }),
        ("DatastoreFileEvent", TypeInfo::Object { name: "DatastoreFileEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreFileEvent))) }),
        ("ArrayOfHostHardwareElementInfo", TypeInfo::Value { name: "ArrayOfHostHardwareElementInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_hardware_element_info_array)), from_value: |v| cast_to_host_hardware_element_info_array(from_value(v)?) }),
        ("HostMountInfo", TypeInfo::Object { name: "HostMountInfo", builder_fn: || Box::new(HostMountInfoFields::new()) }),
        ("ArrayOfCannotMoveVmWithNativeDeltaDisk", TypeInfo::Value { name: "ArrayOfCannotMoveVmWithNativeDeltaDisk", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_move_vm_with_native_delta_disk), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_move_vm_with_native_delta_disk) }),
        ("ArrayOfOvfExport", TypeInfo::Value { name: "ArrayOfOvfExport", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_export), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_export) }),
        ("ArrayOfVMotionAcrossNetworkNotSupported", TypeInfo::Value { name: "ArrayOfVMotionAcrossNetworkNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_motion_across_network_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_motion_across_network_not_supported) }),
        ("ArrayOfVchaNodeRuntimeInfo", TypeInfo::Value { name: "ArrayOfVchaNodeRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VchaNodeRuntimeInfo>>(wrap_array_of_vcha_node_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::VchaNodeRuntimeInfo>>(v, wrap_array_of_vcha_node_runtime_info) }),
        ("VsanHostDiskMapping", TypeInfo::Object { name: "VsanHostDiskMapping", builder_fn: || Box::new(VsanHostDiskMappingFields::new()) }),
        ("LocalTSMEnabledEvent", TypeInfo::Object { name: "LocalTSMEnabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::LocalTsmEnabledEvent))) }),
        ("VirtualHdAudioCard", TypeInfo::Object { name: "VirtualHdAudioCard", builder_fn: || Box::new(VirtualHdAudioCardFields::new()) }),
        ("float", TypeInfo::Value { name: "float", make_deserializer: || make_deser_with::<f32>(wrap_primitive_float), from_value: |v| from_val_with::<f32>(v, wrap_primitive_float) }),
        ("ArrayOfClusterComputeResourceHCIConfigSpec", TypeInfo::Value { name: "ArrayOfClusterComputeResourceHCIConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceHciConfigSpec>>(wrap_array_of_cluster_compute_resource_hci_config_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceHciConfigSpec>>(v, wrap_array_of_cluster_compute_resource_hci_config_spec) }),
        ("ArrayOfVmValidateMaxDevice", TypeInfo::Value { name: "ArrayOfVmValidateMaxDevice", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_validate_max_device), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_validate_max_device) }),
        ("ArrayOfPermissionProfile", TypeInfo::Value { name: "ArrayOfPermissionProfile", make_deserializer: || make_deser_with::<Vec<super::structs::PermissionProfile>>(wrap_array_of_permission_profile), from_value: |v| from_val_with::<Vec<super::structs::PermissionProfile>>(v, wrap_array_of_permission_profile) }),
        ("ArrayOfVsanAddStoragePoolDiskSpec", TypeInfo::Value { name: "ArrayOfVsanAddStoragePoolDiskSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanAddStoragePoolDiskSpec>>(wrap_array_of_vsan_add_storage_pool_disk_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanAddStoragePoolDiskSpec>>(v, wrap_array_of_vsan_add_storage_pool_disk_spec) }),
        ("DVSFilterSpecConnecteeSpec", TypeInfo::Object { name: "DVSFilterSpecConnecteeSpec", builder_fn: || Box::new(DvsFilterSpecConnecteeSpecFields::new()) }),
        ("PatchMetadataInvalid", TypeInfo::Object { name: "PatchMetadataInvalid", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PatchMetadataInvalid))) }),
        ("LocalDatastoreInfo", TypeInfo::Object { name: "LocalDatastoreInfo", builder_fn: || Box::new(LocalDatastoreInfoFields::new()) }),
        ("ArrayOfHostVirtualSwitchAutoBridge", TypeInfo::Value { name: "ArrayOfHostVirtualSwitchAutoBridge", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualSwitchAutoBridge>>(wrap_array_of_host_virtual_switch_auto_bridge), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualSwitchAutoBridge>>(v, wrap_array_of_host_virtual_switch_auto_bridge) }),
        ("ArrayOfIpPoolIpPoolConfigInfo", TypeInfo::Value { name: "ArrayOfIpPoolIpPoolConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::IpPoolIpPoolConfigInfo>>(wrap_array_of_ip_pool_ip_pool_config_info), from_value: |v| from_val_with::<Vec<super::structs::IpPoolIpPoolConfigInfo>>(v, wrap_array_of_ip_pool_ip_pool_config_info) }),
        ("ArrayOfPbmDuplicateName", TypeInfo::Value { name: "ArrayOfPbmDuplicateName", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_duplicate_name), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_duplicate_name) }),
        ("ArrayOfPerfCounterInfo", TypeInfo::Value { name: "ArrayOfPerfCounterInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PerfCounterInfo>>(wrap_array_of_perf_counter_info), from_value: |v| from_val_with::<Vec<super::structs::PerfCounterInfo>>(v, wrap_array_of_perf_counter_info) }),
        ("ArrayOfFirewallProfileRulesetProfile", TypeInfo::Value { name: "ArrayOfFirewallProfileRulesetProfile", make_deserializer: || make_deser_with::<Vec<super::structs::FirewallProfileRulesetProfile>>(wrap_array_of_firewall_profile_ruleset_profile), from_value: |v| from_val_with::<Vec<super::structs::FirewallProfileRulesetProfile>>(v, wrap_array_of_firewall_profile_ruleset_profile) }),
        ("TaskManagerTaskViewSpec", TypeInfo::Object { name: "TaskManagerTaskViewSpec", builder_fn: || Box::new(TaskManagerTaskViewSpecFields::new()) }),
        ("HostDiskMappingPartitionOption", TypeInfo::Object { name: "HostDiskMappingPartitionOption", builder_fn: || Box::new(HostDiskMappingPartitionOptionFields::new()) }),
        ("ArrayOfVMwareIpfixConfig", TypeInfo::Value { name: "ArrayOfVMwareIpfixConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareIpfixConfig>>(wrap_array_of_v_mware_ipfix_config), from_value: |v| from_val_with::<Vec<super::structs::VMwareIpfixConfig>>(v, wrap_array_of_v_mware_ipfix_config) }),
        ("ArrayOfDVSPolicy", TypeInfo::Value { name: "ArrayOfDVSPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::DvsPolicy>>(wrap_array_of_dvs_policy), from_value: |v| from_val_with::<Vec<super::structs::DvsPolicy>>(v, wrap_array_of_dvs_policy) }),
        ("ArrayOfHostNvmeDiscoveryLogEntry", TypeInfo::Value { name: "ArrayOfHostNvmeDiscoveryLogEntry", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeDiscoveryLogEntry>>(wrap_array_of_host_nvme_discovery_log_entry), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeDiscoveryLogEntry>>(v, wrap_array_of_host_nvme_discovery_log_entry) }),
        ("ArrayOfHostDateTimeSystemServiceTestResult", TypeInfo::Value { name: "ArrayOfHostDateTimeSystemServiceTestResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostDateTimeSystemServiceTestResult>>(wrap_array_of_host_date_time_system_service_test_result), from_value: |v| from_val_with::<Vec<super::structs::HostDateTimeSystemServiceTestResult>>(v, wrap_array_of_host_date_time_system_service_test_result) }),
        ("EnvironmentBrowserConfigOptionQuerySpec", TypeInfo::Object { name: "EnvironmentBrowserConfigOptionQuerySpec", builder_fn: || Box::new(EnvironmentBrowserConfigOptionQuerySpecFields::new()) }),
        ("ArrayOfAdminDisabled", TypeInfo::Value { name: "ArrayOfAdminDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_admin_disabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_admin_disabled) }),
        ("ArrayOfVirtualMachineMessage", TypeInfo::Value { name: "ArrayOfVirtualMachineMessage", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineMessage>>(wrap_array_of_virtual_machine_message), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineMessage>>(v, wrap_array_of_virtual_machine_message) }),
        ("NsxHostVNicProfile", TypeInfo::Object { name: "NsxHostVNicProfile", builder_fn: || Box::new(NsxHostVNicProfileFields::new()) }),
        ("ArrayOfClusterVmGroup", TypeInfo::Value { name: "ArrayOfClusterVmGroup", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterVmGroup>>(wrap_array_of_cluster_vm_group), from_value: |v| from_val_with::<Vec<super::structs::ClusterVmGroup>>(v, wrap_array_of_cluster_vm_group) }),
        ("ArrayOfVirtualDeviceRemoteDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDeviceRemoteDeviceBackingInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_remote_device_backing_info_array)), from_value: |v| cast_to_virtual_device_remote_device_backing_info_array(from_value(v)?) }),
        ("ArrayOfTemplateUpgradeEvent", TypeInfo::Value { name: "ArrayOfTemplateUpgradeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_template_upgrade_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_template_upgrade_event) }),
        ("VirtualEthernetCardNetworkBackingInfo", TypeInfo::Object { name: "VirtualEthernetCardNetworkBackingInfo", builder_fn: || Box::new(VirtualEthernetCardNetworkBackingInfoFields::new()) }),
        ("VMwareDvsLagVlanConfig", TypeInfo::Object { name: "VMwareDvsLagVlanConfig", builder_fn: || Box::new(VMwareDvsLagVlanConfigFields::new()) }),
        ("ArrayOfVirtualMachineImportSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineImportSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineImportSpec>>(wrap_array_of_virtual_machine_import_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineImportSpec>>(v, wrap_array_of_virtual_machine_import_spec) }),
        ("DvsApplyOperationFaultFaultOnObject", TypeInfo::Object { name: "DvsApplyOperationFaultFaultOnObject", builder_fn: || Box::new(DvsApplyOperationFaultFaultOnObjectFields::new()) }),
        ("ArrayOfOvfUnsupportedAttributeValue", TypeInfo::Value { name: "ArrayOfOvfUnsupportedAttributeValue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_attribute_value), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_attribute_value) }),
        ("ArrayOfHooksHookListSpec", TypeInfo::Value { name: "ArrayOfHooksHookListSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HooksHookListSpec>>(wrap_array_of_hooks_hook_list_spec), from_value: |v| from_val_with::<Vec<super::structs::HooksHookListSpec>>(v, wrap_array_of_hooks_hook_list_spec) }),
        ("ArrayOfNoPermissionOnHost", TypeInfo::Value { name: "ArrayOfNoPermissionOnHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_permission_on_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_permission_on_host) }),
        ("ArrayOfVsanDatastoreDefaultPolicySelectionConfig", TypeInfo::Value { name: "ArrayOfVsanDatastoreDefaultPolicySelectionConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDatastoreDefaultPolicySelectionConfig>>(wrap_array_of_vsan_datastore_default_policy_selection_config), from_value: |v| from_val_with::<Vec<super::structs::VsanDatastoreDefaultPolicySelectionConfig>>(v, wrap_array_of_vsan_datastore_default_policy_selection_config) }),
        ("ArrayOfVmRequirementsExceedCurrentEVCModeEvent", TypeInfo::Value { name: "ArrayOfVmRequirementsExceedCurrentEVCModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_requirements_exceed_current_evc_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_requirements_exceed_current_evc_mode_event) }),
        ("ArrayOfHostLocalAuthenticationInfo", TypeInfo::Value { name: "ArrayOfHostLocalAuthenticationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostLocalAuthenticationInfo>>(wrap_array_of_host_local_authentication_info), from_value: |v| from_val_with::<Vec<super::structs::HostLocalAuthenticationInfo>>(v, wrap_array_of_host_local_authentication_info) }),
        ("ArrayOfHostEnterMaintenanceResult", TypeInfo::Value { name: "ArrayOfHostEnterMaintenanceResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostEnterMaintenanceResult>>(wrap_array_of_host_enter_maintenance_result), from_value: |v| from_val_with::<Vec<super::structs::HostEnterMaintenanceResult>>(v, wrap_array_of_host_enter_maintenance_result) }),
        ("VirtualIDEController", TypeInfo::Object { name: "VirtualIDEController", builder_fn: || Box::new(VirtualIdeControllerFields::new()) }),
        ("ArrayOfPhysicalNicCdpInfo", TypeInfo::Value { name: "ArrayOfPhysicalNicCdpInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PhysicalNicCdpInfo>>(wrap_array_of_physical_nic_cdp_info), from_value: |v| from_val_with::<Vec<super::structs::PhysicalNicCdpInfo>>(v, wrap_array_of_physical_nic_cdp_info) }),
        ("ArrayOfVmMacAssignedEvent", TypeInfo::Value { name: "ArrayOfVmMacAssignedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_mac_assigned_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_mac_assigned_event) }),
        ("StorageProfile", TypeInfo::Object { name: "StorageProfile", builder_fn: || Box::new(StorageProfileFields::new()) }),
        ("ArrayOfSmsProviderInfo", TypeInfo::Value { name: "ArrayOfSmsProviderInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_sms_provider_info_array)), from_value: |v| cast_to_sms_provider_info_array(from_value(v)?) }),
        ("ArrayOfDirectPathProfileManagerDynamicDirectPathConfig", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerDynamicDirectPathConfig", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerDynamicDirectPathConfig>>(wrap_array_of_direct_path_profile_manager_dynamic_direct_path_config), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerDynamicDirectPathConfig>>(v, wrap_array_of_direct_path_profile_manager_dynamic_direct_path_config) }),
        ("DvsUpgradeRejectedEvent", TypeInfo::Object { name: "DvsUpgradeRejectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsUpgradeRejectedEvent))) }),
        ("ComplianceResult", TypeInfo::Object { name: "ComplianceResult", builder_fn: || Box::new(ComplianceResultFields::new()) }),
        ("ArrayOfUncommittedUndoableDisk", TypeInfo::Value { name: "ArrayOfUncommittedUndoableDisk", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_uncommitted_undoable_disk), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_uncommitted_undoable_disk) }),
        ("ArrayOfNoVmInVApp", TypeInfo::Value { name: "ArrayOfNoVmInVApp", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_vm_in_v_app), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_vm_in_v_app) }),
        ("ArrayOfCustomizationAutoIpV6Generator", TypeInfo::Value { name: "ArrayOfCustomizationAutoIpV6Generator", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationAutoIpV6Generator>>(wrap_array_of_customization_auto_ip_v_6_generator), from_value: |v| from_val_with::<Vec<super::structs::CustomizationAutoIpV6Generator>>(v, wrap_array_of_customization_auto_ip_v_6_generator) }),
        ("ArrayOfVirtualMachineSgxInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineSgxInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineSgxInfo>>(wrap_array_of_virtual_machine_sgx_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineSgxInfo>>(v, wrap_array_of_virtual_machine_sgx_info) }),
        ("ArrayOfDefaultDatastorePolicySelectionInfo", TypeInfo::Value { name: "ArrayOfDefaultDatastorePolicySelectionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DefaultDatastorePolicySelectionInfo>>(wrap_array_of_default_datastore_policy_selection_info), from_value: |v| from_val_with::<Vec<super::structs::DefaultDatastorePolicySelectionInfo>>(v, wrap_array_of_default_datastore_policy_selection_info) }),
        ("ArrayOfVsanClusterHealthAction", TypeInfo::Value { name: "ArrayOfVsanClusterHealthAction", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthAction>>(wrap_array_of_vsan_cluster_health_action), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthAction>>(v, wrap_array_of_vsan_cluster_health_action) }),
        ("ArrayOfResourcePoolRuntimeInfo", TypeInfo::Value { name: "ArrayOfResourcePoolRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ResourcePoolRuntimeInfo>>(wrap_array_of_resource_pool_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::ResourcePoolRuntimeInfo>>(v, wrap_array_of_resource_pool_runtime_info) }),
        ("ExtensionServerInfo", TypeInfo::Object { name: "ExtensionServerInfo", builder_fn: || Box::new(ExtensionServerInfoFields::new()) }),
        ("NotSupportedHostInCluster", TypeInfo::Object { name: "NotSupportedHostInCluster", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedHostInCluster))) }),
        ("PatchAlreadyInstalled", TypeInfo::Object { name: "PatchAlreadyInstalled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PatchAlreadyInstalled))) }),
        ("CreateTaskAction", TypeInfo::Object { name: "CreateTaskAction", builder_fn: || Box::new(CreateTaskActionFields::new()) }),
        ("ClusterProactiveDrsConfigInfo", TypeInfo::Object { name: "ClusterProactiveDrsConfigInfo", builder_fn: || Box::new(ClusterProactiveDrsConfigInfoFields::new()) }),
        ("DvsPortLinkDownEvent", TypeInfo::Object { name: "DvsPortLinkDownEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortLinkDownEvent))) }),
        ("PointInTimeReplicaInfo", TypeInfo::Object { name: "PointInTimeReplicaInfo", builder_fn: || Box::new(PointInTimeReplicaInfoFields::new()) }),
        ("DistributedVirtualSwitchManagerHostArrayFilter", TypeInfo::Object { name: "DistributedVirtualSwitchManagerHostArrayFilter", builder_fn: || Box::new(DistributedVirtualSwitchManagerHostArrayFilterFields::new()) }),
        ("OvfPropertyQualifierIgnored", TypeInfo::Object { name: "OvfPropertyQualifierIgnored", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfPropertyQualifierIgnored))) }),
        ("VmNvramFileQuery", TypeInfo::Object { name: "VmNvramFileQuery", builder_fn: || Box::new(VmNvramFileQueryFields::new()) }),
        ("ArrayOfVsanDataEfficiencyConfig", TypeInfo::Value { name: "ArrayOfVsanDataEfficiencyConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_data_efficiency_config_array)), from_value: |v| cast_to_vsan_data_efficiency_config_array(from_value(v)?) }),
        ("ArrayOfNoCompatibleHardAffinityHost", TypeInfo::Value { name: "ArrayOfNoCompatibleHardAffinityHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_compatible_hard_affinity_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_compatible_hard_affinity_host) }),
        ("GuestDiskInfo", TypeInfo::Object { name: "GuestDiskInfo", builder_fn: || Box::new(GuestDiskInfoFields::new()) }),
        ("HostVMotionInfo", TypeInfo::Object { name: "HostVMotionInfo", builder_fn: || Box::new(HostVMotionInfoFields::new()) }),
        ("HostEvent", TypeInfo::Object { name: "HostEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostEvent))) }),
        ("ArrayOfVimFault", TypeInfo::Value { name: "ArrayOfVimFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vim_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vim_fault) }),
        ("ArrayOfHostCertificateManagerCertificateSpec", TypeInfo::Value { name: "ArrayOfHostCertificateManagerCertificateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostCertificateManagerCertificateSpec>>(wrap_array_of_host_certificate_manager_certificate_spec), from_value: |v| from_val_with::<Vec<super::structs::HostCertificateManagerCertificateSpec>>(v, wrap_array_of_host_certificate_manager_certificate_spec) }),
        ("ArrayOfVirtualMachineConnectionState", TypeInfo::Value { name: "ArrayOfVirtualMachineConnectionState", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualMachineConnectionStateEnum>>(wrap_array_of_virtual_machine_connection_state), from_value: |v| from_val_with::<Vec<super::enums::VirtualMachineConnectionStateEnum>>(v, wrap_array_of_virtual_machine_connection_state) }),
        ("ArrayOfVmFailedToPowerOnEvent", TypeInfo::Value { name: "ArrayOfVmFailedToPowerOnEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_to_power_on_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_to_power_on_event) }),
        ("ArrayOfVsanHostHealthState", TypeInfo::Value { name: "ArrayOfVsanHostHealthState", make_deserializer: || make_deser_with::<Vec<super::enums::VsanHostHealthStateEnum>>(wrap_array_of_vsan_host_health_state), from_value: |v| from_val_with::<Vec<super::enums::VsanHostHealthStateEnum>>(v, wrap_array_of_vsan_host_health_state) }),
        ("OvfInvalidValueEmpty", TypeInfo::Object { name: "OvfInvalidValueEmpty", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfInvalidValueEmpty))) }),
        ("IpRouteProfile", TypeInfo::Object { name: "IpRouteProfile", builder_fn: || Box::new(IpRouteProfileFields::new()) }),
        ("ArrayOfPerfSummaryType", TypeInfo::Value { name: "ArrayOfPerfSummaryType", make_deserializer: || make_deser_with::<Vec<super::enums::PerfSummaryTypeEnum>>(wrap_array_of_perf_summary_type), from_value: |v| from_val_with::<Vec<super::enums::PerfSummaryTypeEnum>>(v, wrap_array_of_perf_summary_type) }),
        ("VirtualEthernetCardResourceAllocation", TypeInfo::Object { name: "VirtualEthernetCardResourceAllocation", builder_fn: || Box::new(VirtualEthernetCardResourceAllocationFields::new()) }),
        ("VsanServerClusterInfo", TypeInfo::Object { name: "VsanServerClusterInfo", builder_fn: || Box::new(VsanServerClusterInfoFields::new()) }),
        ("HostLowLevelProvisioningManagerFileReserveResult", TypeInfo::Object { name: "HostLowLevelProvisioningManagerFileReserveResult", builder_fn: || Box::new(HostLowLevelProvisioningManagerFileReserveResultFields::new()) }),
        ("ClusterDasFailoverLevelAdvancedRuntimeInfo", TypeInfo::Object { name: "ClusterDasFailoverLevelAdvancedRuntimeInfo", builder_fn: || Box::new(ClusterDasFailoverLevelAdvancedRuntimeInfoFields::new()) }),
        ("ArrayOfPhysicalNic", TypeInfo::Value { name: "ArrayOfPhysicalNic", make_deserializer: || make_deser_with::<Vec<super::structs::PhysicalNic>>(wrap_array_of_physical_nic), from_value: |v| from_val_with::<Vec<super::structs::PhysicalNic>>(v, wrap_array_of_physical_nic) }),
        ("ArrayOfHostDateTimeConfig", TypeInfo::Value { name: "ArrayOfHostDateTimeConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostDateTimeConfig>>(wrap_array_of_host_date_time_config), from_value: |v| from_val_with::<Vec<super::structs::HostDateTimeConfig>>(v, wrap_array_of_host_date_time_config) }),
        ("OvfDiskOrderConstraint", TypeInfo::Object { name: "OvfDiskOrderConstraint", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfDiskOrderConstraint))) }),
        ("DVPortNotSupported", TypeInfo::Object { name: "DVPortNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DvPortNotSupported))) }),
        ("GuestWindowsProgramSpec", TypeInfo::Object { name: "GuestWindowsProgramSpec", builder_fn: || Box::new(GuestWindowsProgramSpecFields::new()) }),
        ("VsanHostConfigInfoNetworkInfoPortConfig", TypeInfo::Object { name: "VsanHostConfigInfoNetworkInfoPortConfig", builder_fn: || Box::new(VsanHostConfigInfoNetworkInfoPortConfigFields::new()) }),
        ("NumVirtualCpusExceedsLimit", TypeInfo::Object { name: "NumVirtualCpusExceedsLimit", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NumVirtualCpusExceedsLimit))) }),
        ("ArrayOfVirtualDeviceBusSlotOption", TypeInfo::Value { name: "ArrayOfVirtualDeviceBusSlotOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDeviceBusSlotOption>>(wrap_array_of_virtual_device_bus_slot_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDeviceBusSlotOption>>(v, wrap_array_of_virtual_device_bus_slot_option) }),
        ("HostAdminDisableEvent", TypeInfo::Object { name: "HostAdminDisableEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostAdminDisableEvent))) }),
        ("VsanClusterHealthQuerySpec", TypeInfo::Object { name: "VsanClusterHealthQuerySpec", builder_fn: || Box::new(VsanClusterHealthQuerySpecFields::new()) }),
        ("VirtualMachineConfigInfoNpivWwnType", TypeInfo::Value { name: "VirtualMachineConfigInfoNpivWwnType", make_deserializer: || make_deser_with::<super::enums::VirtualMachineConfigInfoNpivWwnTypeEnum>(wrap_virtual_machine_config_info_npiv_wwn_type), from_value: |v| from_val_with::<super::enums::VirtualMachineConfigInfoNpivWwnTypeEnum>(v, wrap_virtual_machine_config_info_npiv_wwn_type) }),
        ("ArrayOfVsanClusterHealthResultKeyValuePair", TypeInfo::Value { name: "ArrayOfVsanClusterHealthResultKeyValuePair", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthResultKeyValuePair>>(wrap_array_of_vsan_cluster_health_result_key_value_pair), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthResultKeyValuePair>>(v, wrap_array_of_vsan_cluster_health_result_key_value_pair) }),
        ("ArrayOfStorageDrsRelocateDisabled", TypeInfo::Value { name: "ArrayOfStorageDrsRelocateDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_relocate_disabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_relocate_disabled) }),
        ("VmFaultToleranceVmTerminatedEvent", TypeInfo::Object { name: "VmFaultToleranceVmTerminatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFaultToleranceVmTerminatedEvent))) }),
        ("ArrayOfVsanIODiagnosticsObjectLayout", TypeInfo::Value { name: "ArrayOfVsanIODiagnosticsObjectLayout", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoDiagnosticsObjectLayout>>(wrap_array_of_vsan_io_diagnostics_object_layout), from_value: |v| from_val_with::<Vec<super::structs::VsanIoDiagnosticsObjectLayout>>(v, wrap_array_of_vsan_io_diagnostics_object_layout) }),
        ("ArrayOfIpAddress", TypeInfo::Value { name: "ArrayOfIpAddress", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_ip_address_array)), from_value: |v| cast_to_ip_address_array(from_value(v)?) }),
        ("HostPortGroupConfig", TypeInfo::Object { name: "HostPortGroupConfig", builder_fn: || Box::new(HostPortGroupConfigFields::new()) }),
        ("ArrayOfBaseConfigInfoFileBackingInfo", TypeInfo::Value { name: "ArrayOfBaseConfigInfoFileBackingInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_base_config_info_file_backing_info_array)), from_value: |v| cast_to_base_config_info_file_backing_info_array(from_value(v)?) }),
        ("PowerSystemCapability", TypeInfo::Object { name: "PowerSystemCapability", builder_fn: || Box::new(PowerSystemCapabilityFields::new()) }),
        ("HostParallelScsiHba", TypeInfo::Object { name: "HostParallelScsiHba", builder_fn: || Box::new(HostParallelScsiHbaFields::new()) }),
        ("ArrayOfStorageDrsCannotMoveDiskInMultiWriterMode", TypeInfo::Value { name: "ArrayOfStorageDrsCannotMoveDiskInMultiWriterMode", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_cannot_move_disk_in_multi_writer_mode), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_cannot_move_disk_in_multi_writer_mode) }),
        ("ArrayOfGuestProcessNotFound", TypeInfo::Value { name: "ArrayOfGuestProcessNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_process_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_process_not_found) }),
        ("ProfileDescriptionSection", TypeInfo::Object { name: "ProfileDescriptionSection", builder_fn: || Box::new(ProfileDescriptionSectionFields::new()) }),
        ("ArrayOfPhysCompatRDMNotSupported", TypeInfo::Value { name: "ArrayOfPhysCompatRDMNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_phys_compat_rdm_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_phys_compat_rdm_not_supported) }),
        ("DVSUplinkPortPolicy", TypeInfo::Object { name: "DVSUplinkPortPolicy", builder_fn: || Box::new(DvsUplinkPortPolicyFields::new()) }),
        ("ArrayOfRemoteVsanSiteAffinity", TypeInfo::Value { name: "ArrayOfRemoteVsanSiteAffinity", make_deserializer: || make_deser_with::<Vec<super::structs::RemoteVsanSiteAffinity>>(wrap_array_of_remote_vsan_site_affinity), from_value: |v| from_val_with::<Vec<super::structs::RemoteVsanSiteAffinity>>(v, wrap_array_of_remote_vsan_site_affinity) }),
        ("ArrayOfVibIssue", TypeInfo::Value { name: "ArrayOfVibIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vib_issue_array)), from_value: |v| cast_to_vib_issue_array(from_value(v)?) }),
        ("VsanHclDriverInfo", TypeInfo::Object { name: "VsanHclDriverInfo", builder_fn: || Box::new(VsanHclDriverInfoFields::new()) }),
        ("MigrationResourceWarningEvent", TypeInfo::Object { name: "MigrationResourceWarningEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::MigrationResourceWarningEvent))) }),
        ("ArrayOfWillResetSnapshotDirectory", TypeInfo::Value { name: "ArrayOfWillResetSnapshotDirectory", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_will_reset_snapshot_directory), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_will_reset_snapshot_directory) }),
        ("ArrayOfNetIpStackInfoNetToMedia", TypeInfo::Value { name: "ArrayOfNetIpStackInfoNetToMedia", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpStackInfoNetToMedia>>(wrap_array_of_net_ip_stack_info_net_to_media), from_value: |v| from_val_with::<Vec<super::structs::NetIpStackInfoNetToMedia>>(v, wrap_array_of_net_ip_stack_info_net_to_media) }),
        ("ArrayOfVsanVsanClusterPcapGroup", TypeInfo::Value { name: "ArrayOfVsanVsanClusterPcapGroup", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVsanClusterPcapGroup>>(wrap_array_of_vsan_vsan_cluster_pcap_group), from_value: |v| from_val_with::<Vec<super::structs::VsanVsanClusterPcapGroup>>(v, wrap_array_of_vsan_vsan_cluster_pcap_group) }),
        ("EVCAdmissionFailedCPUModelForMode", TypeInfo::Object { name: "EVCAdmissionFailedCPUModelForMode", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcAdmissionFailedCpuModelForMode))) }),
        ("StorageDrsPodSelectionSpec", TypeInfo::Object { name: "StorageDrsPodSelectionSpec", builder_fn: || Box::new(StorageDrsPodSelectionSpecFields::new()) }),
        ("ArrayOfCpuCompatibilityUnknown", TypeInfo::Value { name: "ArrayOfCpuCompatibilityUnknown", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cpu_compatibility_unknown), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cpu_compatibility_unknown) }),
        ("StorageDrsHmsMoveInProgress", TypeInfo::Object { name: "StorageDrsHmsMoveInProgress", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsHmsMoveInProgress))) }),
        ("HostVMotionManagerDstInstantCloneResult", TypeInfo::Object { name: "HostVMotionManagerDstInstantCloneResult", builder_fn: || Box::new(HostVMotionManagerDstInstantCloneResultFields::new()) }),
        ("StorageDrsDisabledOnVm", TypeInfo::Object { name: "StorageDrsDisabledOnVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsDisabledOnVm))) }),
        ("ArrayOfCryptoManagerKmipClusterStatus", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipClusterStatus", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerKmipClusterStatus>>(wrap_array_of_crypto_manager_kmip_cluster_status), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerKmipClusterStatus>>(v, wrap_array_of_crypto_manager_kmip_cluster_status) }),
        ("AgentInstallFailed", TypeInfo::Object { name: "AgentInstallFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AgentInstallFailed))) }),
        ("ArrayOfVirtualNVDIMMControllerOption", TypeInfo::Value { name: "ArrayOfVirtualNVDIMMControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualNvdimmControllerOption>>(wrap_array_of_virtual_nvdimm_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualNvdimmControllerOption>>(v, wrap_array_of_virtual_nvdimm_controller_option) }),
        ("ArrayOfHostDiskDimensionsLba", TypeInfo::Value { name: "ArrayOfHostDiskDimensionsLba", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskDimensionsLba>>(wrap_array_of_host_disk_dimensions_lba), from_value: |v| from_val_with::<Vec<super::structs::HostDiskDimensionsLba>>(v, wrap_array_of_host_disk_dimensions_lba) }),
        ("ArrayOfIpHostnameGeneratorError", TypeInfo::Value { name: "ArrayOfIpHostnameGeneratorError", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ip_hostname_generator_error), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ip_hostname_generator_error) }),
        ("NoActiveHostInCluster", TypeInfo::Object { name: "NoActiveHostInCluster", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoActiveHostInCluster))) }),
        ("DirectPathProfileManagerVirtualDeviceGroupDirectPathConfig", TypeInfo::Object { name: "DirectPathProfileManagerVirtualDeviceGroupDirectPathConfig", builder_fn: || Box::new(DirectPathProfileManagerVirtualDeviceGroupDirectPathConfigFields::new()) }),
        ("ArrayOfVmfsDatastoreSpec", TypeInfo::Value { name: "ArrayOfVmfsDatastoreSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vmfs_datastore_spec_array)), from_value: |v| cast_to_vmfs_datastore_spec_array(from_value(v)?) }),
        ("FaultDomainInfo", TypeInfo::Object { name: "FaultDomainInfo", builder_fn: || Box::new(FaultDomainInfoFields::new()) }),
        ("AgencyDisabled", TypeInfo::Object { name: "AgencyDisabled", builder_fn: || Box::new(AgencyDisabledFields::new()) }),
        ("ArrayOfVsanHostHealthSystemStatusResult", TypeInfo::Value { name: "ArrayOfVsanHostHealthSystemStatusResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostHealthSystemStatusResult>>(wrap_array_of_vsan_host_health_system_status_result), from_value: |v| from_val_with::<Vec<super::structs::VsanHostHealthSystemStatusResult>>(v, wrap_array_of_vsan_host_health_system_status_result) }),
        ("HostServiceTicket", TypeInfo::Object { name: "HostServiceTicket", builder_fn: || Box::new(HostServiceTicketFields::new()) }),
        ("VirtualDiskOptionVFlashCacheConfigOption", TypeInfo::Object { name: "VirtualDiskOptionVFlashCacheConfigOption", builder_fn: || Box::new(VirtualDiskOptionVFlashCacheConfigOptionFields::new()) }),
        ("ArrayOfVsanClusterMembershipInfo", TypeInfo::Value { name: "ArrayOfVsanClusterMembershipInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterMembershipInfo>>(wrap_array_of_vsan_cluster_membership_info), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterMembershipInfo>>(v, wrap_array_of_vsan_cluster_membership_info) }),
        ("ArrayOfVsanHistoricalHealthQuerySpec", TypeInfo::Value { name: "ArrayOfVsanHistoricalHealthQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHistoricalHealthQuerySpec>>(wrap_array_of_vsan_historical_health_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanHistoricalHealthQuerySpec>>(v, wrap_array_of_vsan_historical_health_query_spec) }),
        ("ArrayOfVsanHostFwComponent", TypeInfo::Value { name: "ArrayOfVsanHostFwComponent", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostFwComponent>>(wrap_array_of_vsan_host_fw_component), from_value: |v| from_val_with::<Vec<super::structs::VsanHostFwComponent>>(v, wrap_array_of_vsan_host_fw_component) }),
        ("ArrayOfPropertyFilterUpdate", TypeInfo::Value { name: "ArrayOfPropertyFilterUpdate", make_deserializer: || make_deser_with::<Vec<super::structs::PropertyFilterUpdate>>(wrap_array_of_property_filter_update), from_value: |v| from_val_with::<Vec<super::structs::PropertyFilterUpdate>>(v, wrap_array_of_property_filter_update) }),
        ("KmipServerSpecWrappingKeyIdKeySpec", TypeInfo::Object { name: "KmipServerSpecWrappingKeyIdKeySpec", builder_fn: || Box::new(KmipServerSpecWrappingKeyIdKeySpecFields::new()) }),
        ("SolutionsClusterSolutionComplianceResult", TypeInfo::Object { name: "SolutionsClusterSolutionComplianceResult", builder_fn: || Box::new(SolutionsClusterSolutionComplianceResultFields::new()) }),
        ("ArrayOfCustomizationUnknownIpV6Generator", TypeInfo::Value { name: "ArrayOfCustomizationUnknownIpV6Generator", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationUnknownIpV6Generator>>(wrap_array_of_customization_unknown_ip_v_6_generator), from_value: |v| from_val_with::<Vec<super::structs::CustomizationUnknownIpV6Generator>>(v, wrap_array_of_customization_unknown_ip_v_6_generator) }),
        ("ArrayOfCnsVolumeOperationResult", TypeInfo::Value { name: "ArrayOfCnsVolumeOperationResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cns_volume_operation_result_array)), from_value: |v| cast_to_cns_volume_operation_result_array(from_value(v)?) }),
        ("ArrayOfVmCreatedEvent", TypeInfo::Value { name: "ArrayOfVmCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_created_event) }),
        ("ArrayOfVsanClusterHealthCheckInfo", TypeInfo::Value { name: "ArrayOfVsanClusterHealthCheckInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthCheckInfo>>(wrap_array_of_vsan_cluster_health_check_info), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthCheckInfo>>(v, wrap_array_of_vsan_cluster_health_check_info) }),
        ("VsanFileShareQueryProperties", TypeInfo::Object { name: "VsanFileShareQueryProperties", builder_fn: || Box::new(VsanFileShareQueryPropertiesFields::new()) }),
        ("VmCloneEvent", TypeInfo::Object { name: "VmCloneEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmCloneEvent))) }),
        ("ArrayOfDVSNetworkResourcePool", TypeInfo::Value { name: "ArrayOfDVSNetworkResourcePool", make_deserializer: || make_deser_with::<Vec<super::structs::DvsNetworkResourcePool>>(wrap_array_of_dvs_network_resource_pool), from_value: |v| from_val_with::<Vec<super::structs::DvsNetworkResourcePool>>(v, wrap_array_of_dvs_network_resource_pool) }),
        ("ArrayOfVMwareDVSMtuHealthCheckResult", TypeInfo::Value { name: "ArrayOfVMwareDVSMtuHealthCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsMtuHealthCheckResult>>(wrap_array_of_v_mware_dvs_mtu_health_check_result), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsMtuHealthCheckResult>>(v, wrap_array_of_v_mware_dvs_mtu_health_check_result) }),
        ("DisallowedMigrationDeviceAttached", TypeInfo::Object { name: "DisallowedMigrationDeviceAttached", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DisallowedMigrationDeviceAttached))) }),
        ("SessionTerminatedEvent", TypeInfo::Object { name: "SessionTerminatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::SessionTerminatedEvent))) }),
        ("ArrayOfVsanMassCollectorSpec", TypeInfo::Value { name: "ArrayOfVsanMassCollectorSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMassCollectorSpec>>(wrap_array_of_vsan_mass_collector_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanMassCollectorSpec>>(v, wrap_array_of_vsan_mass_collector_spec) }),
        ("CustomizationLinuxPrep", TypeInfo::Object { name: "CustomizationLinuxPrep", builder_fn: || Box::new(CustomizationLinuxPrepFields::new()) }),
        ("VmMessageWarningEvent", TypeInfo::Object { name: "VmMessageWarningEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmMessageWarningEvent))) }),
        ("VsanXvcQueryCriteria", TypeInfo::Object { name: "VsanXvcQueryCriteria", builder_fn: || Box::new(VsanXvcQueryCriteriaFields::new()) }),
        ("ArrayOfPowerOnFtSecondaryFailed", TypeInfo::Value { name: "ArrayOfPowerOnFtSecondaryFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_power_on_ft_secondary_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_power_on_ft_secondary_failed) }),
        ("DirectPathProfileManagerCapacityInfo", TypeInfo::Object { name: "DirectPathProfileManagerCapacityInfo", builder_fn: || Box::new(DirectPathProfileManagerCapacityInfoFields::new()) }),
        ("ArrayOfPbmProfileOperationOutcome", TypeInfo::Value { name: "ArrayOfPbmProfileOperationOutcome", make_deserializer: || make_deser_with::<Vec<super::structs::PbmProfileOperationOutcome>>(wrap_array_of_pbm_profile_operation_outcome), from_value: |v| from_val_with::<Vec<super::structs::PbmProfileOperationOutcome>>(v, wrap_array_of_pbm_profile_operation_outcome) }),
        ("InvalidHostName", TypeInfo::Object { name: "InvalidHostName", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidHostName))) }),
        ("CustomizationGlobalIPSettings", TypeInfo::Object { name: "CustomizationGlobalIPSettings", builder_fn: || Box::new(CustomizationGlobalIpSettingsFields::new()) }),
        ("OvfDuplicatedElementBoundary", TypeInfo::Object { name: "OvfDuplicatedElementBoundary", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfDuplicatedElementBoundary))) }),
        ("ArrayOfLatencySensitivitySensitivityLevel", TypeInfo::Value { name: "ArrayOfLatencySensitivitySensitivityLevel", make_deserializer: || make_deser_with::<Vec<super::enums::LatencySensitivitySensitivityLevelEnum>>(wrap_array_of_latency_sensitivity_sensitivity_level), from_value: |v| from_val_with::<Vec<super::enums::LatencySensitivitySensitivityLevelEnum>>(v, wrap_array_of_latency_sensitivity_sensitivity_level) }),
        ("ArrayOfInvalidArgument", TypeInfo::Value { name: "ArrayOfInvalidArgument", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_argument), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_argument) }),
        ("VsanHostRuntimeInfo", TypeInfo::Object { name: "VsanHostRuntimeInfo", builder_fn: || Box::new(VsanHostRuntimeInfoFields::new()) }),
        ("HostNetworkPolicy", TypeInfo::Object { name: "HostNetworkPolicy", builder_fn: || Box::new(HostNetworkPolicyFields::new()) }),
        ("VirtualMachineCloneSpec", TypeInfo::Object { name: "VirtualMachineCloneSpec", builder_fn: || Box::new(VirtualMachineCloneSpecFields::new()) }),
        ("HostNetOffloadCapabilities", TypeInfo::Object { name: "HostNetOffloadCapabilities", builder_fn: || Box::new(HostNetOffloadCapabilitiesFields::new()) }),
        ("ArrayOfOvfMissingElementNormalBoundary", TypeInfo::Value { name: "ArrayOfOvfMissingElementNormalBoundary", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_missing_element_normal_boundary), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_missing_element_normal_boundary) }),
        ("FaultToleranceConfigSpec", TypeInfo::Object { name: "FaultToleranceConfigSpec", builder_fn: || Box::new(FaultToleranceConfigSpecFields::new()) }),
        ("DeviceNotFound", TypeInfo::Object { name: "DeviceNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DeviceNotFound))) }),
        ("VsanPerfHotspotQuerySpec", TypeInfo::Object { name: "VsanPerfHotspotQuerySpec", builder_fn: || Box::new(VsanPerfHotspotQuerySpecFields::new()) }),
        ("ArrayOfVsanDatastoreSpec", TypeInfo::Value { name: "ArrayOfVsanDatastoreSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_datastore_spec_array)), from_value: |v| cast_to_vsan_datastore_spec_array(from_value(v)?) }),
        ("StorageContainer", TypeInfo::Object { name: "StorageContainer", builder_fn: || Box::new(StorageContainerFields::new()) }),
        ("VmInstanceUuidAssignedEvent", TypeInfo::Object { name: "VmInstanceUuidAssignedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmInstanceUuidAssignedEvent))) }),
        ("VchaClusterConfigSpec", TypeInfo::Object { name: "VchaClusterConfigSpec", builder_fn: || Box::new(VchaClusterConfigSpecFields::new()) }),
        ("ArrayOfNoSubjectName", TypeInfo::Value { name: "ArrayOfNoSubjectName", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_subject_name), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_subject_name) }),
        ("ArrayOfCloneFromSnapshotNotSupported", TypeInfo::Value { name: "ArrayOfCloneFromSnapshotNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_clone_from_snapshot_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_clone_from_snapshot_not_supported) }),
        ("OvfHardwareExport", TypeInfo::Object { name: "OvfHardwareExport", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfHardwareExport))) }),
        ("Event", TypeInfo::Object { name: "Event", builder_fn: || Box::new(EventFields::new(None)) }),
        ("ArrayOfSSLDisabledFault", TypeInfo::Value { name: "ArrayOfSSLDisabledFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ssl_disabled_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ssl_disabled_fault) }),
        ("ArrayOfVMwareDVSPvlanMapEntry", TypeInfo::Value { name: "ArrayOfVMwareDVSPvlanMapEntry", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsPvlanMapEntry>>(wrap_array_of_v_mware_dvs_pvlan_map_entry), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsPvlanMapEntry>>(v, wrap_array_of_v_mware_dvs_pvlan_map_entry) }),
        ("ArrayOfDayOfWeek", TypeInfo::Value { name: "ArrayOfDayOfWeek", make_deserializer: || make_deser_with::<Vec<super::enums::DayOfWeekEnum>>(wrap_array_of_day_of_week), from_value: |v| from_val_with::<Vec<super::enums::DayOfWeekEnum>>(v, wrap_array_of_day_of_week) }),
        ("SolutionsComplianceSpec", TypeInfo::Object { name: "SolutionsComplianceSpec", builder_fn: || Box::new(SolutionsComplianceSpecFields::new()) }),
        ("ArrayOfVsanClusterHealthResultBase", TypeInfo::Value { name: "ArrayOfVsanClusterHealthResultBase", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_cluster_health_result_base_array)), from_value: |v| cast_to_vsan_cluster_health_result_base_array(from_value(v)?) }),
        ("ArrayOfProfilePropertyPath", TypeInfo::Value { name: "ArrayOfProfilePropertyPath", make_deserializer: || make_deser_with::<Vec<super::structs::ProfilePropertyPath>>(wrap_array_of_profile_property_path), from_value: |v| from_val_with::<Vec<super::structs::ProfilePropertyPath>>(v, wrap_array_of_profile_property_path) }),
        ("ArrayOfHbrDiskMigrationAction", TypeInfo::Value { name: "ArrayOfHbrDiskMigrationAction", make_deserializer: || make_deser_with::<Vec<super::structs::HbrDiskMigrationAction>>(wrap_array_of_hbr_disk_migration_action), from_value: |v| from_val_with::<Vec<super::structs::HbrDiskMigrationAction>>(v, wrap_array_of_hbr_disk_migration_action) }),
        ("ArrayOfPatchNotApplicable", TypeInfo::Value { name: "ArrayOfPatchNotApplicable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_patch_not_applicable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_patch_not_applicable) }),
        ("OvfUnsupportedDeviceBackingOption", TypeInfo::Object { name: "OvfUnsupportedDeviceBackingOption", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedDeviceBackingOption))) }),
        ("ArrayOfTaskDescription", TypeInfo::Value { name: "ArrayOfTaskDescription", make_deserializer: || make_deser_with::<Vec<super::structs::TaskDescription>>(wrap_array_of_task_description), from_value: |v| from_val_with::<Vec<super::structs::TaskDescription>>(v, wrap_array_of_task_description) }),
        ("ArrayOfVAppConfigInfo", TypeInfo::Value { name: "ArrayOfVAppConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VAppConfigInfo>>(wrap_array_of_v_app_config_info), from_value: |v| from_val_with::<Vec<super::structs::VAppConfigInfo>>(v, wrap_array_of_v_app_config_info) }),
        ("ArrayOfOvfHardwareCheck", TypeInfo::Value { name: "ArrayOfOvfHardwareCheck", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_hardware_check), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_hardware_check) }),
        ("ArrayOfDisableAdminNotSupported", TypeInfo::Value { name: "ArrayOfDisableAdminNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disable_admin_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disable_admin_not_supported) }),
        ("VsanAdvancedDatastoreConfig", TypeInfo::Object { name: "VsanAdvancedDatastoreConfig", builder_fn: || Box::new(VsanAdvancedDatastoreConfigFields::new()) }),
        ("ArrayOfInvalidEvent", TypeInfo::Value { name: "ArrayOfInvalidEvent", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_event), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_event) }),
        ("MultipleCertificatesVerifyFaultThumbprintData", TypeInfo::Object { name: "MultipleCertificatesVerifyFaultThumbprintData", builder_fn: || Box::new(MultipleCertificatesVerifyFaultThumbprintDataFields::new()) }),
        ("NoDiskFound", TypeInfo::Object { name: "NoDiskFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoDiskFound))) }),
        ("SwitchNotInUpgradeMode", TypeInfo::Object { name: "SwitchNotInUpgradeMode", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SwitchNotInUpgradeMode))) }),
        ("DatastoreAccessible", TypeInfo::Value { name: "DatastoreAccessible", make_deserializer: || make_deser_with::<super::enums::DatastoreAccessibleEnum>(wrap_datastore_accessible), from_value: |v| from_val_with::<super::enums::DatastoreAccessibleEnum>(v, wrap_datastore_accessible) }),
        ("VmSecondaryDisabledBySystemEvent", TypeInfo::Object { name: "VmSecondaryDisabledBySystemEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmSecondaryDisabledBySystemEvent))) }),
        ("HostDiskPartitionInfo", TypeInfo::Object { name: "HostDiskPartitionInfo", builder_fn: || Box::new(HostDiskPartitionInfoFields::new()) }),
        ("ArrayOfDVPortgroupReconfiguredEvent", TypeInfo::Value { name: "ArrayOfDVPortgroupReconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dv_portgroup_reconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dv_portgroup_reconfigured_event) }),
        ("PbmCapabilityPropertyInstance", TypeInfo::Object { name: "PbmCapabilityPropertyInstance", builder_fn: || Box::new(PbmCapabilityPropertyInstanceFields::new()) }),
        ("OvfResourceMap", TypeInfo::Object { name: "OvfResourceMap", builder_fn: || Box::new(OvfResourceMapFields::new()) }),
        ("VsanClusterHealthSystemStatusResult", TypeInfo::Object { name: "VsanClusterHealthSystemStatusResult", builder_fn: || Box::new(VsanClusterHealthSystemStatusResultFields::new()) }),
        ("ArrayOfClusterDasData", TypeInfo::Value { name: "ArrayOfClusterDasData", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_das_data_array)), from_value: |v| cast_to_cluster_das_data_array(from_value(v)?) }),
        ("ArrayOfLicenseKeyEntityMismatch", TypeInfo::Value { name: "ArrayOfLicenseKeyEntityMismatch", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_license_key_entity_mismatch), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_license_key_entity_mismatch) }),
        ("DVSRollbackCapability", TypeInfo::Object { name: "DVSRollbackCapability", builder_fn: || Box::new(DvsRollbackCapabilityFields::new()) }),
        ("StorageDrsCannotMoveTemplate", TypeInfo::Object { name: "StorageDrsCannotMoveTemplate", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsCannotMoveTemplate))) }),
        ("ArrayOfHostVirtualNicSpec", TypeInfo::Value { name: "ArrayOfHostVirtualNicSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualNicSpec>>(wrap_array_of_host_virtual_nic_spec), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualNicSpec>>(v, wrap_array_of_host_virtual_nic_spec) }),
        ("ArrayOfClusterDrsFaultsFaultsByVirtualDisk", TypeInfo::Value { name: "ArrayOfClusterDrsFaultsFaultsByVirtualDisk", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDrsFaultsFaultsByVirtualDisk>>(wrap_array_of_cluster_drs_faults_faults_by_virtual_disk), from_value: |v| from_val_with::<Vec<super::structs::ClusterDrsFaultsFaultsByVirtualDisk>>(v, wrap_array_of_cluster_drs_faults_faults_by_virtual_disk) }),
        ("ArrayOfDrsSoftRuleViolationEvent", TypeInfo::Value { name: "ArrayOfDrsSoftRuleViolationEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_soft_rule_violation_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_soft_rule_violation_event) }),
        ("VsanMountPrecheckResult", TypeInfo::Object { name: "VsanMountPrecheckResult", builder_fn: || Box::new(VsanMountPrecheckResultFields::new()) }),
        ("VslmVsoVStorageObjectSnapshotResult", TypeInfo::Object { name: "VslmVsoVStorageObjectSnapshotResult", builder_fn: || Box::new(VslmVsoVStorageObjectSnapshotResultFields::new()) }),
        ("ArrayOfStorageMigrationAction", TypeInfo::Value { name: "ArrayOfStorageMigrationAction", make_deserializer: || make_deser_with::<Vec<super::structs::StorageMigrationAction>>(wrap_array_of_storage_migration_action), from_value: |v| from_val_with::<Vec<super::structs::StorageMigrationAction>>(v, wrap_array_of_storage_migration_action) }),
        ("FileShareQueryResult", TypeInfo::Object { name: "FileShareQueryResult", builder_fn: || Box::new(FileShareQueryResultFields::new()) }),
        ("VmFailedUpdatingSecondaryConfig", TypeInfo::Object { name: "VmFailedUpdatingSecondaryConfig", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedUpdatingSecondaryConfig))) }),
        ("InsufficientStandbyResource", TypeInfo::Object { name: "InsufficientStandbyResource", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientStandbyResource))) }),
        ("PosixUserSearchResult", TypeInfo::Object { name: "PosixUserSearchResult", builder_fn: || Box::new(PosixUserSearchResultFields::new()) }),
        ("ArrayOfReplicationFault", TypeInfo::Value { name: "ArrayOfReplicationFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_replication_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_replication_fault) }),
        ("ArrayOfInvalidNasCredentials", TypeInfo::Value { name: "ArrayOfInvalidNasCredentials", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_nas_credentials), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_nas_credentials) }),
        ("ArrayOfVcAgentUninstallFailedEvent", TypeInfo::Value { name: "ArrayOfVcAgentUninstallFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vc_agent_uninstall_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vc_agent_uninstall_failed_event) }),
        ("LogBundlingFailed", TypeInfo::Object { name: "LogBundlingFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LogBundlingFailed))) }),
        ("ArrayOfLunHbaAssociation", TypeInfo::Value { name: "ArrayOfLunHbaAssociation", make_deserializer: || make_deser_with::<Vec<super::structs::LunHbaAssociation>>(wrap_array_of_lun_hba_association), from_value: |v| from_val_with::<Vec<super::structs::LunHbaAssociation>>(v, wrap_array_of_lun_hba_association) }),
        ("ArrayOfClusterAgentVmIssue", TypeInfo::Value { name: "ArrayOfClusterAgentVmIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_agent_vm_issue_array)), from_value: |v| cast_to_cluster_agent_vm_issue_array(from_value(v)?) }),
        ("ArrayOfNetworkCopyFault", TypeInfo::Value { name: "ArrayOfNetworkCopyFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_network_copy_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_network_copy_fault) }),
        ("KmipClusterInfoKeyInfo", TypeInfo::Object { name: "KmipClusterInfoKeyInfo", builder_fn: || Box::new(KmipClusterInfoKeyInfoFields::new()) }),
        ("HostInternetScsiHbaAuthenticationCapabilities", TypeInfo::Object { name: "HostInternetScsiHbaAuthenticationCapabilities", builder_fn: || Box::new(HostInternetScsiHbaAuthenticationCapabilitiesFields::new()) }),
        ("ArrayOfSnapshotCopyNotSupported", TypeInfo::Value { name: "ArrayOfSnapshotCopyNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_copy_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_copy_not_supported) }),
        ("OvfConsumerValidationFault", TypeInfo::Object { name: "OvfConsumerValidationFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConsumerValidationFault))) }),
        ("ArrayOfCertificateNotImported", TypeInfo::Value { name: "ArrayOfCertificateNotImported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_certificate_not_imported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_certificate_not_imported) }),
        ("ArrayOfDvsRenamedEvent", TypeInfo::Value { name: "ArrayOfDvsRenamedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_renamed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_renamed_event) }),
        ("ArrayOfPhysicalNicIpHint", TypeInfo::Value { name: "ArrayOfPhysicalNicIpHint", make_deserializer: || make_deser_with::<Vec<super::structs::PhysicalNicIpHint>>(wrap_array_of_physical_nic_ip_hint), from_value: |v| from_val_with::<Vec<super::structs::PhysicalNicIpHint>>(v, wrap_array_of_physical_nic_ip_hint) }),
        ("ArrayOfDiskHasPartitions", TypeInfo::Value { name: "ArrayOfDiskHasPartitions", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disk_has_partitions), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disk_has_partitions) }),
        ("VirtualDevicePciBusSlotInfo", TypeInfo::Object { name: "VirtualDevicePciBusSlotInfo", builder_fn: || Box::new(VirtualDevicePciBusSlotInfoFields::new()) }),
        ("ClusterProfileConfigServiceCreateSpec", TypeInfo::Object { name: "ClusterProfileConfigServiceCreateSpec", builder_fn: || Box::new(ClusterProfileConfigServiceCreateSpecFields::new()) }),
        ("ArrayOfHostNvmeConnectSpec", TypeInfo::Value { name: "ArrayOfHostNvmeConnectSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeConnectSpec>>(wrap_array_of_host_nvme_connect_spec), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeConnectSpec>>(v, wrap_array_of_host_nvme_connect_spec) }),
        ("ArrayOfPbmVaioDataServiceInfo", TypeInfo::Value { name: "ArrayOfPbmVaioDataServiceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PbmVaioDataServiceInfo>>(wrap_array_of_pbm_vaio_data_service_info), from_value: |v| from_val_with::<Vec<super::structs::PbmVaioDataServiceInfo>>(v, wrap_array_of_pbm_vaio_data_service_info) }),
        ("ArrayOfInvalidFormat", TypeInfo::Value { name: "ArrayOfInvalidFormat", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_format), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_format) }),
        ("ArrayOfVirtualMachineDeviceRuntimeInfoDeviceRuntimeState", TypeInfo::Value { name: "ArrayOfVirtualMachineDeviceRuntimeInfoDeviceRuntimeState", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_device_runtime_info_device_runtime_state_array)), from_value: |v| cast_to_virtual_machine_device_runtime_info_device_runtime_state_array(from_value(v)?) }),
        ("VmRenamedEvent", TypeInfo::Object { name: "VmRenamedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRenamedEvent))) }),
        ("ArrayOfCnsSnapshotCreateSpec", TypeInfo::Value { name: "ArrayOfCnsSnapshotCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsSnapshotCreateSpec>>(wrap_array_of_cns_snapshot_create_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsSnapshotCreateSpec>>(v, wrap_array_of_cns_snapshot_create_spec) }),
        ("HostDasEnabledEvent", TypeInfo::Object { name: "HostDasEnabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostDasEnabledEvent))) }),
        ("VAppCloneSpecResourceMap", TypeInfo::Object { name: "VAppCloneSpecResourceMap", builder_fn: || Box::new(VAppCloneSpecResourceMapFields::new()) }),
        ("ArrayOfGuestRegistryKeyInvalid", TypeInfo::Value { name: "ArrayOfGuestRegistryKeyInvalid", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_registry_key_invalid), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_registry_key_invalid) }),
        ("ArrayOfDatastoreNotWritableOnHost", TypeInfo::Value { name: "ArrayOfDatastoreNotWritableOnHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_datastore_not_writable_on_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_datastore_not_writable_on_host) }),
        ("ArrayOfManagedObjectNotFound", TypeInfo::Value { name: "ArrayOfManagedObjectNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_managed_object_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_managed_object_not_found) }),
        ("ArrayOfHostProfileManagerHostToConfigSpecMap", TypeInfo::Value { name: "ArrayOfHostProfileManagerHostToConfigSpecMap", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileManagerHostToConfigSpecMap>>(wrap_array_of_host_profile_manager_host_to_config_spec_map), from_value: |v| from_val_with::<Vec<super::structs::HostProfileManagerHostToConfigSpecMap>>(v, wrap_array_of_host_profile_manager_host_to_config_spec_map) }),
        ("ArrayOfIscsiFaultPnicInUse", TypeInfo::Value { name: "ArrayOfIscsiFaultPnicInUse", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_pnic_in_use), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_pnic_in_use) }),
        ("ArrayOfVsanRegexBasedRule", TypeInfo::Value { name: "ArrayOfVsanRegexBasedRule", make_deserializer: || make_deser_with::<Vec<super::structs::VsanRegexBasedRule>>(wrap_array_of_vsan_regex_based_rule), from_value: |v| from_val_with::<Vec<super::structs::VsanRegexBasedRule>>(v, wrap_array_of_vsan_regex_based_rule) }),
        ("LicenseReservationInfoState", TypeInfo::Value { name: "LicenseReservationInfoState", make_deserializer: || make_deser_with::<super::enums::LicenseReservationInfoStateEnum>(wrap_license_reservation_info_state), from_value: |v| from_val_with::<super::enums::LicenseReservationInfoStateEnum>(v, wrap_license_reservation_info_state) }),
        ("VmResumingEvent", TypeInfo::Object { name: "VmResumingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmResumingEvent))) }),
        ("VsanHostFaultDomainInfo", TypeInfo::Object { name: "VsanHostFaultDomainInfo", builder_fn: || Box::new(VsanHostFaultDomainInfoFields::new()) }),
        ("vslmVClockInfo", TypeInfo::Object { name: "vslmVClockInfo", builder_fn: || Box::new(VslmVClockInfoFields::new()) }),
        ("ArrayOfProfileDeferredPolicyOptionParameter", TypeInfo::Value { name: "ArrayOfProfileDeferredPolicyOptionParameter", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileDeferredPolicyOptionParameter>>(wrap_array_of_profile_deferred_policy_option_parameter), from_value: |v| from_val_with::<Vec<super::structs::ProfileDeferredPolicyOptionParameter>>(v, wrap_array_of_profile_deferred_policy_option_parameter) }),
        ("ArrayOfPersonalityAgentPMIssue", TypeInfo::Value { name: "ArrayOfPersonalityAgentPMIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_personality_agent_pm_issue_array)), from_value: |v| cast_to_personality_agent_pm_issue_array(from_value(v)?) }),
        ("ArrayOfClusterSlotPolicy", TypeInfo::Value { name: "ArrayOfClusterSlotPolicy", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_slot_policy_array)), from_value: |v| cast_to_cluster_slot_policy_array(from_value(v)?) }),
        ("VirtualMachineDvxClassInfo", TypeInfo::Object { name: "VirtualMachineDvxClassInfo", builder_fn: || Box::new(VirtualMachineDvxClassInfoFields::new()) }),
        ("ArrayOfVsanClusterEncryptionHealthSummary", TypeInfo::Value { name: "ArrayOfVsanClusterEncryptionHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterEncryptionHealthSummary>>(wrap_array_of_vsan_cluster_encryption_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterEncryptionHealthSummary>>(v, wrap_array_of_vsan_cluster_encryption_health_summary) }),
        ("HostVmfsVolume", TypeInfo::Object { name: "HostVmfsVolume", builder_fn: || Box::new(HostVmfsVolumeFields::new()) }),
        ("HostRuntimeInfo", TypeInfo::Object { name: "HostRuntimeInfo", builder_fn: || Box::new(HostRuntimeInfoFields::new()) }),
        ("HostProxySwitchHostLagConfig", TypeInfo::Object { name: "HostProxySwitchHostLagConfig", builder_fn: || Box::new(HostProxySwitchHostLagConfigFields::new()) }),
        ("HostPatchManagerResult", TypeInfo::Object { name: "HostPatchManagerResult", builder_fn: || Box::new(HostPatchManagerResultFields::new()) }),
        ("ArrayOfHostTpmAttestationInfo", TypeInfo::Value { name: "ArrayOfHostTpmAttestationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmAttestationInfo>>(wrap_array_of_host_tpm_attestation_info), from_value: |v| from_val_with::<Vec<super::structs::HostTpmAttestationInfo>>(v, wrap_array_of_host_tpm_attestation_info) }),
        ("ArrayOfVsanXvcQuerySpec", TypeInfo::Value { name: "ArrayOfVsanXvcQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcQuerySpec>>(wrap_array_of_vsan_xvc_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcQuerySpec>>(v, wrap_array_of_vsan_xvc_query_spec) }),
        ("ArrayOfVsanClusterAdvCfgSyncHostResult", TypeInfo::Value { name: "ArrayOfVsanClusterAdvCfgSyncHostResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterAdvCfgSyncHostResult>>(wrap_array_of_vsan_cluster_adv_cfg_sync_host_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterAdvCfgSyncHostResult>>(v, wrap_array_of_vsan_cluster_adv_cfg_sync_host_result) }),
        ("VsanHealthDataDrivenAction", TypeInfo::Object { name: "VsanHealthDataDrivenAction", builder_fn: || Box::new(VsanHealthDataDrivenActionFields::new()) }),
        ("ArrayOfTooMany", TypeInfo::Value { name: "ArrayOfTooMany", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_too_many), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_too_many) }),
        ("ArrayOfHostTpmVersionEventDetails", TypeInfo::Value { name: "ArrayOfHostTpmVersionEventDetails", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmVersionEventDetails>>(wrap_array_of_host_tpm_version_event_details), from_value: |v| from_val_with::<Vec<super::structs::HostTpmVersionEventDetails>>(v, wrap_array_of_host_tpm_version_event_details) }),
        ("VirtualEthernetCardLegacyNetworkBackingInfo", TypeInfo::Object { name: "VirtualEthernetCardLegacyNetworkBackingInfo", builder_fn: || Box::new(VirtualEthernetCardLegacyNetworkBackingInfoFields::new()) }),
        ("GlobalMessageChangedEvent", TypeInfo::Object { name: "GlobalMessageChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GlobalMessageChangedEvent))) }),
        ("ArrayOfCustomizationNetworkSetupFailed", TypeInfo::Value { name: "ArrayOfCustomizationNetworkSetupFailed", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_customization_network_setup_failed), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_customization_network_setup_failed) }),
        ("InvalidDeviceOperation", TypeInfo::Object { name: "InvalidDeviceOperation", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidDeviceOperation))) }),
        ("ClusterConfigInfo", TypeInfo::Object { name: "ClusterConfigInfo", builder_fn: || Box::new(ClusterConfigInfoFields::new()) }),
        ("OvfConsumerUndeclaredSection", TypeInfo::Object { name: "OvfConsumerUndeclaredSection", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConsumerUndeclaredSection))) }),
        ("ArrayOfLongPolicy", TypeInfo::Value { name: "ArrayOfLongPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::LongPolicy>>(wrap_array_of_long_policy), from_value: |v| from_val_with::<Vec<super::structs::LongPolicy>>(v, wrap_array_of_long_policy) }),
        ("VirtualDiskKey", TypeInfo::Object { name: "VirtualDiskKey", builder_fn: || Box::new(VirtualDiskKeyFields::new()) }),
        ("ArrayOfAgentVibMatchingRule", TypeInfo::Value { name: "ArrayOfAgentVibMatchingRule", make_deserializer: || make_deser_with::<Vec<super::structs::AgentVibMatchingRule>>(wrap_array_of_agent_vib_matching_rule), from_value: |v| from_val_with::<Vec<super::structs::AgentVibMatchingRule>>(v, wrap_array_of_agent_vib_matching_rule) }),
        ("ArrayOfInt", TypeInfo::Value { name: "ArrayOfInt", make_deserializer: || make_deser_with::<Vec<i32>>(wrap_array_of_int), from_value: |v| from_val_with::<Vec<i32>>(v, wrap_array_of_int) }),
        ("ArrayOfSoftwarePackage", TypeInfo::Value { name: "ArrayOfSoftwarePackage", make_deserializer: || make_deser_with::<Vec<super::structs::SoftwarePackage>>(wrap_array_of_software_package), from_value: |v| from_val_with::<Vec<super::structs::SoftwarePackage>>(v, wrap_array_of_software_package) }),
        ("CustomizationGuiUnattended", TypeInfo::Object { name: "CustomizationGuiUnattended", builder_fn: || Box::new(CustomizationGuiUnattendedFields::new()) }),
        ("ArrayOfVsanHostHclInfo", TypeInfo::Value { name: "ArrayOfVsanHostHclInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostHclInfo>>(wrap_array_of_vsan_host_hcl_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostHclInfo>>(v, wrap_array_of_vsan_host_hcl_info) }),
        ("VmStartingEvent", TypeInfo::Object { name: "VmStartingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmStartingEvent))) }),
        ("ArrayOfDatastoreDiscoveredEvent", TypeInfo::Value { name: "ArrayOfDatastoreDiscoveredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_discovered_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_discovered_event) }),
        ("ArrayOfGuestFileAttributes", TypeInfo::Value { name: "ArrayOfGuestFileAttributes", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_guest_file_attributes_array)), from_value: |v| cast_to_guest_file_attributes_array(from_value(v)?) }),
        ("ArrayOfCustomizationName", TypeInfo::Value { name: "ArrayOfCustomizationName", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_customization_name_array)), from_value: |v| cast_to_customization_name_array(from_value(v)?) }),
        ("ArrayOfVsanExtendedConfig", TypeInfo::Value { name: "ArrayOfVsanExtendedConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanExtendedConfig>>(wrap_array_of_vsan_extended_config), from_value: |v| from_val_with::<Vec<super::structs::VsanExtendedConfig>>(v, wrap_array_of_vsan_extended_config) }),
        ("ArrayOfScsiLunDurableName", TypeInfo::Value { name: "ArrayOfScsiLunDurableName", make_deserializer: || make_deser_with::<Vec<super::structs::ScsiLunDurableName>>(wrap_array_of_scsi_lun_durable_name), from_value: |v| from_val_with::<Vec<super::structs::ScsiLunDurableName>>(v, wrap_array_of_scsi_lun_durable_name) }),
        ("ClusterVmGroup", TypeInfo::Object { name: "ClusterVmGroup", builder_fn: || Box::new(ClusterVmGroupFields::new()) }),
        ("ArrayOfVchaClusterDeploymentSpec", TypeInfo::Value { name: "ArrayOfVchaClusterDeploymentSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VchaClusterDeploymentSpec>>(wrap_array_of_vcha_cluster_deployment_spec), from_value: |v| from_val_with::<Vec<super::structs::VchaClusterDeploymentSpec>>(v, wrap_array_of_vcha_cluster_deployment_spec) }),
        ("VirtualMachineFileLayoutDiskLayout", TypeInfo::Object { name: "VirtualMachineFileLayoutDiskLayout", builder_fn: || Box::new(VirtualMachineFileLayoutDiskLayoutFields::new()) }),
        ("DvsVmVnicNetworkResourcePoolRuntimeInfo", TypeInfo::Object { name: "DvsVmVnicNetworkResourcePoolRuntimeInfo", builder_fn: || Box::new(DvsVmVnicNetworkResourcePoolRuntimeInfoFields::new()) }),
        ("ArrayOfCannotAccessAgentVib", TypeInfo::Value { name: "ArrayOfCannotAccessAgentVib", make_deserializer: || make_deser_with::<Vec<super::structs::CannotAccessAgentVib>>(wrap_array_of_cannot_access_agent_vib), from_value: |v| from_val_with::<Vec<super::structs::CannotAccessAgentVib>>(v, wrap_array_of_cannot_access_agent_vib) }),
        ("ArrayOfVMFSDatastoreCreatedEvent", TypeInfo::Value { name: "ArrayOfVMFSDatastoreCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vmfs_datastore_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vmfs_datastore_created_event) }),
        ("ArrayOfDrsMigrationCapabilityResult", TypeInfo::Value { name: "ArrayOfDrsMigrationCapabilityResult", make_deserializer: || make_deser_with::<Vec<super::structs::DrsMigrationCapabilityResult>>(wrap_array_of_drs_migration_capability_result), from_value: |v| from_val_with::<Vec<super::structs::DrsMigrationCapabilityResult>>(v, wrap_array_of_drs_migration_capability_result) }),
        ("InsufficientPerCpuCapacity", TypeInfo::Object { name: "InsufficientPerCpuCapacity", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientPerCpuCapacity))) }),
        ("ArrayOfOvfCpuCompatibility", TypeInfo::Value { name: "ArrayOfOvfCpuCompatibility", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_cpu_compatibility), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_cpu_compatibility) }),
        ("ArrayOfEamAppFault", TypeInfo::Value { name: "ArrayOfEamAppFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eam_app_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eam_app_fault) }),
        ("HostPrimaryAgentNotShortNameEvent", TypeInfo::Object { name: "HostPrimaryAgentNotShortNameEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostPrimaryAgentNotShortNameEvent))) }),
        ("ArrayOfDrsVmPoweredOnEvent", TypeInfo::Value { name: "ArrayOfDrsVmPoweredOnEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_vm_powered_on_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_vm_powered_on_event) }),
        ("ArrayOfHostMultipathInfoLogicalUnit", TypeInfo::Value { name: "ArrayOfHostMultipathInfoLogicalUnit", make_deserializer: || make_deser_with::<Vec<super::structs::HostMultipathInfoLogicalUnit>>(wrap_array_of_host_multipath_info_logical_unit), from_value: |v| from_val_with::<Vec<super::structs::HostMultipathInfoLogicalUnit>>(v, wrap_array_of_host_multipath_info_logical_unit) }),
        ("ArrayOfHostIoFilterInfo", TypeInfo::Value { name: "ArrayOfHostIoFilterInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostIoFilterInfo>>(wrap_array_of_host_io_filter_info), from_value: |v| from_val_with::<Vec<super::structs::HostIoFilterInfo>>(v, wrap_array_of_host_io_filter_info) }),
        ("ArrayOfDVSBackupRestoreCapability", TypeInfo::Value { name: "ArrayOfDVSBackupRestoreCapability", make_deserializer: || make_deser_with::<Vec<super::structs::DvsBackupRestoreCapability>>(wrap_array_of_dvs_backup_restore_capability), from_value: |v| from_val_with::<Vec<super::structs::DvsBackupRestoreCapability>>(v, wrap_array_of_dvs_backup_restore_capability) }),
        ("VirtualMachineVMCIDeviceFilterInfo", TypeInfo::Object { name: "VirtualMachineVMCIDeviceFilterInfo", builder_fn: || Box::new(VirtualMachineVmciDeviceFilterInfoFields::new()) }),
        ("ArrayOfVimVsanHostVsanDirectStorage", TypeInfo::Value { name: "ArrayOfVimVsanHostVsanDirectStorage", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostVsanDirectStorage>>(wrap_array_of_vim_vsan_host_vsan_direct_storage), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostVsanDirectStorage>>(v, wrap_array_of_vim_vsan_host_vsan_direct_storage) }),
        ("ArrayOfPersonalityAgencyInaccessibleDepot", TypeInfo::Value { name: "ArrayOfPersonalityAgencyInaccessibleDepot", make_deserializer: || make_deser_with::<Vec<super::structs::PersonalityAgencyInaccessibleDepot>>(wrap_array_of_personality_agency_inaccessible_depot), from_value: |v| from_val_with::<Vec<super::structs::PersonalityAgencyInaccessibleDepot>>(v, wrap_array_of_personality_agency_inaccessible_depot) }),
        ("ArrayOfHostScsiTopology", TypeInfo::Value { name: "ArrayOfHostScsiTopology", make_deserializer: || make_deser_with::<Vec<super::structs::HostScsiTopology>>(wrap_array_of_host_scsi_topology), from_value: |v| from_val_with::<Vec<super::structs::HostScsiTopology>>(v, wrap_array_of_host_scsi_topology) }),
        ("ArrayOfAgentConfigInfo", TypeInfo::Value { name: "ArrayOfAgentConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::AgentConfigInfo>>(wrap_array_of_agent_config_info), from_value: |v| from_val_with::<Vec<super::structs::AgentConfigInfo>>(v, wrap_array_of_agent_config_info) }),
        ("HostDatastoreBrowserSearchResults", TypeInfo::Object { name: "HostDatastoreBrowserSearchResults", builder_fn: || Box::new(HostDatastoreBrowserSearchResultsFields::new()) }),
        ("DVSFilterSpecVlanIdSpec", TypeInfo::Object { name: "DVSFilterSpecVlanIdSpec", builder_fn: || Box::new(DvsFilterSpecVlanIdSpecFields::new()) }),
        ("ArrayOfIpPool", TypeInfo::Value { name: "ArrayOfIpPool", make_deserializer: || make_deser_with::<Vec<super::structs::IpPool>>(wrap_array_of_ip_pool), from_value: |v| from_val_with::<Vec<super::structs::IpPool>>(v, wrap_array_of_ip_pool) }),
        ("ArrayOfHostDatastoreExistsConnectInfo", TypeInfo::Value { name: "ArrayOfHostDatastoreExistsConnectInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostDatastoreExistsConnectInfo>>(wrap_array_of_host_datastore_exists_connect_info), from_value: |v| from_val_with::<Vec<super::structs::HostDatastoreExistsConnectInfo>>(v, wrap_array_of_host_datastore_exists_connect_info) }),
        ("PerformanceManagerCounterLevelMapping", TypeInfo::Object { name: "PerformanceManagerCounterLevelMapping", builder_fn: || Box::new(PerformanceManagerCounterLevelMappingFields::new()) }),
        ("VsanHostConfigInfo", TypeInfo::Object { name: "VsanHostConfigInfo", builder_fn: || Box::new(VsanHostConfigInfoFields::new()) }),
        ("ArrayOfVsanCloudHealthStatus", TypeInfo::Value { name: "ArrayOfVsanCloudHealthStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VsanCloudHealthStatus>>(wrap_array_of_vsan_cloud_health_status), from_value: |v| from_val_with::<Vec<super::structs::VsanCloudHealthStatus>>(v, wrap_array_of_vsan_cloud_health_status) }),
        ("ArrayOfVsanPerfGraph", TypeInfo::Value { name: "ArrayOfVsanPerfGraph", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfGraph>>(wrap_array_of_vsan_perf_graph), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfGraph>>(v, wrap_array_of_vsan_perf_graph) }),
        ("SendSNMPAction", TypeInfo::Object { name: "SendSNMPAction", builder_fn: || Box::new(SendSnmpActionFields::new()) }),
        ("HostCnxFailedNoConnectionEvent", TypeInfo::Object { name: "HostCnxFailedNoConnectionEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedNoConnectionEvent))) }),
        ("StorageIOAllocationInfo", TypeInfo::Object { name: "StorageIOAllocationInfo", builder_fn: || Box::new(StorageIoAllocationInfoFields::new()) }),
        ("ArrayOfPerformanceStatisticsDescription", TypeInfo::Value { name: "ArrayOfPerformanceStatisticsDescription", make_deserializer: || make_deser_with::<Vec<super::structs::PerformanceStatisticsDescription>>(wrap_array_of_performance_statistics_description), from_value: |v| from_val_with::<Vec<super::structs::PerformanceStatisticsDescription>>(v, wrap_array_of_performance_statistics_description) }),
        ("VsanClusterHclInfo", TypeInfo::Object { name: "VsanClusterHclInfo", builder_fn: || Box::new(VsanClusterHclInfoFields::new()) }),
        ("ArrayOfHostSyncFailedEvent", TypeInfo::Value { name: "ArrayOfHostSyncFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_sync_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_sync_failed_event) }),
        ("NotSupportedHostInDvs", TypeInfo::Object { name: "NotSupportedHostInDvs", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedHostInDvs))) }),
        ("ArrayOfVsanNetworkHealthResult", TypeInfo::Value { name: "ArrayOfVsanNetworkHealthResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkHealthResult>>(wrap_array_of_vsan_network_health_result), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkHealthResult>>(v, wrap_array_of_vsan_network_health_result) }),
        ("ArrayOfCryptoManagerKmipCertificateInfo", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipCertificateInfo", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerKmipCertificateInfo>>(wrap_array_of_crypto_manager_kmip_certificate_info), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerKmipCertificateInfo>>(v, wrap_array_of_crypto_manager_kmip_certificate_info) }),
        ("EventFilterSpecByEntity", TypeInfo::Object { name: "EventFilterSpecByEntity", builder_fn: || Box::new(EventFilterSpecByEntityFields::new()) }),
        ("ArrayOfHostProxySwitchEnsInfo", TypeInfo::Value { name: "ArrayOfHostProxySwitchEnsInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostProxySwitchEnsInfo>>(wrap_array_of_host_proxy_switch_ens_info), from_value: |v| from_val_with::<Vec<super::structs::HostProxySwitchEnsInfo>>(v, wrap_array_of_host_proxy_switch_ens_info) }),
        ("OvfDatastoreMapping", TypeInfo::Object { name: "OvfDatastoreMapping", builder_fn: || Box::new(OvfDatastoreMappingFields::new()) }),
        ("PbmCapabilityProfileUpdateSpec", TypeInfo::Object { name: "PbmCapabilityProfileUpdateSpec", builder_fn: || Box::new(PbmCapabilityProfileUpdateSpecFields::new()) }),
        ("ArrayOfHostVirtualNic", TypeInfo::Value { name: "ArrayOfHostVirtualNic", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualNic>>(wrap_array_of_host_virtual_nic), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualNic>>(v, wrap_array_of_host_virtual_nic) }),
        ("ArrayOfHostFileAccess", TypeInfo::Value { name: "ArrayOfHostFileAccess", make_deserializer: || make_deser_with::<Vec<super::structs::HostFileAccess>>(wrap_array_of_host_file_access), from_value: |v| from_val_with::<Vec<super::structs::HostFileAccess>>(v, wrap_array_of_host_file_access) }),
        ("MultipleSnapshotsNotSupported", TypeInfo::Object { name: "MultipleSnapshotsNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MultipleSnapshotsNotSupported))) }),
        ("HostDevice", TypeInfo::Object { name: "HostDevice", builder_fn: || Box::new(HostDeviceFields::new()) }),
        ("ArrayOfVsanStorageOperationalStatus", TypeInfo::Value { name: "ArrayOfVsanStorageOperationalStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VsanStorageOperationalStatus>>(wrap_array_of_vsan_storage_operational_status), from_value: |v| from_val_with::<Vec<super::structs::VsanStorageOperationalStatus>>(v, wrap_array_of_vsan_storage_operational_status) }),
        ("ArrayOfClusterHostRecommendation", TypeInfo::Value { name: "ArrayOfClusterHostRecommendation", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterHostRecommendation>>(wrap_array_of_cluster_host_recommendation), from_value: |v| from_val_with::<Vec<super::structs::ClusterHostRecommendation>>(v, wrap_array_of_cluster_host_recommendation) }),
        ("HostAccessRestrictedToManagementServer", TypeInfo::Object { name: "HostAccessRestrictedToManagementServer", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostAccessRestrictedToManagementServer))) }),
        ("DateTimeProfile", TypeInfo::Object { name: "DateTimeProfile", builder_fn: || Box::new(DateTimeProfileFields::new()) }),
        ("VsanHostMembershipInfo", TypeInfo::Object { name: "VsanHostMembershipInfo", builder_fn: || Box::new(VsanHostMembershipInfoFields::new()) }),
        ("VibNotInstalled", TypeInfo::Object { name: "VibNotInstalled", builder_fn: || Box::new(VibNotInstalledFields::new()) }),
        ("ArrayOfVmOrphanedEvent", TypeInfo::Value { name: "ArrayOfVmOrphanedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_orphaned_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_orphaned_event) }),
        ("VirtualMachineDefinedProfileSpec", TypeInfo::Object { name: "VirtualMachineDefinedProfileSpec", builder_fn: || Box::new(VirtualMachineDefinedProfileSpecFields::new()) }),
        ("ArrayOfVsanClusterConfigPrecheckItem", TypeInfo::Value { name: "ArrayOfVsanClusterConfigPrecheckItem", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterConfigPrecheckItem>>(wrap_array_of_vsan_cluster_config_precheck_item), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterConfigPrecheckItem>>(v, wrap_array_of_vsan_cluster_config_precheck_item) }),
        ("ArrayOfProfileConfigInfo", TypeInfo::Value { name: "ArrayOfProfileConfigInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_profile_config_info_array)), from_value: |v| cast_to_profile_config_info_array(from_value(v)?) }),
        ("ArrayOfDpmBehavior", TypeInfo::Value { name: "ArrayOfDpmBehavior", make_deserializer: || make_deser_with::<Vec<super::enums::DpmBehaviorEnum>>(wrap_array_of_dpm_behavior), from_value: |v| from_val_with::<Vec<super::enums::DpmBehaviorEnum>>(v, wrap_array_of_dpm_behavior) }),
        ("ArrayOfDvsTrafficRule", TypeInfo::Value { name: "ArrayOfDvsTrafficRule", make_deserializer: || make_deser_with::<Vec<super::structs::DvsTrafficRule>>(wrap_array_of_dvs_traffic_rule), from_value: |v| from_val_with::<Vec<super::structs::DvsTrafficRule>>(v, wrap_array_of_dvs_traffic_rule) }),
        ("VmWwnAssignedEvent", TypeInfo::Object { name: "VmWwnAssignedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmWwnAssignedEvent))) }),
        ("ClusterFtVmHostRuleInfo", TypeInfo::Object { name: "ClusterFtVmHostRuleInfo", builder_fn: || Box::new(ClusterFtVmHostRuleInfoFields::new()) }),
        ("KeyNotFound", TypeInfo::Object { name: "KeyNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::KeyNotFound))) }),
        ("PbmDuplicateName", TypeInfo::Object { name: "PbmDuplicateName", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmDuplicateName))) }),
        ("ArrayOfVmDisconnectedEvent", TypeInfo::Value { name: "ArrayOfVmDisconnectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_disconnected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_disconnected_event) }),
        ("ArrayOfVmMaxFTRestartCountReached", TypeInfo::Value { name: "ArrayOfVmMaxFTRestartCountReached", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_max_ft_restart_count_reached), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_max_ft_restart_count_reached) }),
        ("ArrayOfTransitionFailed", TypeInfo::Value { name: "ArrayOfTransitionFailed", make_deserializer: || make_deser_with::<Vec<super::structs::TransitionFailed>>(wrap_array_of_transition_failed), from_value: |v| from_val_with::<Vec<super::structs::TransitionFailed>>(v, wrap_array_of_transition_failed) }),
        ("HostBlockHba", TypeInfo::Object { name: "HostBlockHba", builder_fn: || Box::new(HostBlockHbaFields::new()) }),
        ("HostMemberHealthCheckResult", TypeInfo::Object { name: "HostMemberHealthCheckResult", builder_fn: || Box::new(HostMemberHealthCheckResultFields::new()) }),
        ("PinnedCertificate", TypeInfo::Object { name: "PinnedCertificate", builder_fn: || Box::new(PinnedCertificateFields::new()) }),
        ("ArrayOfVimVsanHostUpdateStoragePoolDiskSpec", TypeInfo::Value { name: "ArrayOfVimVsanHostUpdateStoragePoolDiskSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostUpdateStoragePoolDiskSpec>>(wrap_array_of_vim_vsan_host_update_storage_pool_disk_spec), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostUpdateStoragePoolDiskSpec>>(v, wrap_array_of_vim_vsan_host_update_storage_pool_disk_spec) }),
        ("StorageDrsHmsUnreachable", TypeInfo::Object { name: "StorageDrsHmsUnreachable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsHmsUnreachable))) }),
        ("ArrayOfConflictingConfiguration", TypeInfo::Value { name: "ArrayOfConflictingConfiguration", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_conflicting_configuration), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_conflicting_configuration) }),
        ("VmNvramFileInfo", TypeInfo::Object { name: "VmNvramFileInfo", builder_fn: || Box::new(VmNvramFileInfoFields::new()) }),
        ("ProfileChangedEvent", TypeInfo::Object { name: "ProfileChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ProfileChangedEvent))) }),
        ("ArrayOfAlarmScriptFailedEvent", TypeInfo::Value { name: "ArrayOfAlarmScriptFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_script_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_script_failed_event) }),
        ("OvfCreateImportSpecResult", TypeInfo::Object { name: "OvfCreateImportSpecResult", builder_fn: || Box::new(OvfCreateImportSpecResultFields::new()) }),
        ("VsanComparator", TypeInfo::Object { name: "VsanComparator", builder_fn: || Box::new(VsanComparatorFields::new()) }),
        ("ArrayOfHostFileSystemVolumeInfo", TypeInfo::Value { name: "ArrayOfHostFileSystemVolumeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostFileSystemVolumeInfo>>(wrap_array_of_host_file_system_volume_info), from_value: |v| from_val_with::<Vec<super::structs::HostFileSystemVolumeInfo>>(v, wrap_array_of_host_file_system_volume_info) }),
        ("VmConfigFileInfo", TypeInfo::Object { name: "VmConfigFileInfo", builder_fn: || Box::new(VmConfigFileInfoFields::new()) }),
        ("ExtManagedEntityInfo", TypeInfo::Object { name: "ExtManagedEntityInfo", builder_fn: || Box::new(ExtManagedEntityInfoFields::new()) }),
        ("VirtualMachineConnection", TypeInfo::Object { name: "VirtualMachineConnection", builder_fn: || Box::new(VirtualMachineConnectionFields::new()) }),
        ("ArrayOfVsanResourceCheckDataPersistenceResult", TypeInfo::Value { name: "ArrayOfVsanResourceCheckDataPersistenceResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanResourceCheckDataPersistenceResult>>(wrap_array_of_vsan_resource_check_data_persistence_result), from_value: |v| from_val_with::<Vec<super::structs::VsanResourceCheckDataPersistenceResult>>(v, wrap_array_of_vsan_resource_check_data_persistence_result) }),
        ("EventFilterSpec", TypeInfo::Object { name: "EventFilterSpec", builder_fn: || Box::new(EventFilterSpecFields::new()) }),
        ("ArrayOfVirtualPrecisionClock", TypeInfo::Value { name: "ArrayOfVirtualPrecisionClock", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPrecisionClock>>(wrap_array_of_virtual_precision_clock), from_value: |v| from_val_with::<Vec<super::structs::VirtualPrecisionClock>>(v, wrap_array_of_virtual_precision_clock) }),
        ("ArrayOfVsanResourceCheckTaskDetails", TypeInfo::Value { name: "ArrayOfVsanResourceCheckTaskDetails", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_resource_check_task_details_array)), from_value: |v| cast_to_vsan_resource_check_task_details_array(from_value(v)?) }),
        ("ArrayOfVmwareUplinkPortTeamingPolicy", TypeInfo::Value { name: "ArrayOfVmwareUplinkPortTeamingPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::VmwareUplinkPortTeamingPolicy>>(wrap_array_of_vmware_uplink_port_teaming_policy), from_value: |v| from_val_with::<Vec<super::structs::VmwareUplinkPortTeamingPolicy>>(v, wrap_array_of_vmware_uplink_port_teaming_policy) }),
        ("ArrayOfNoDisksToCustomize", TypeInfo::Value { name: "ArrayOfNoDisksToCustomize", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_disks_to_customize), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_disks_to_customize) }),
        ("ComputeResourceHostSeedSpecSingleHostSpec", TypeInfo::Object { name: "ComputeResourceHostSeedSpecSingleHostSpec", builder_fn: || Box::new(ComputeResourceHostSeedSpecSingleHostSpecFields::new()) }),
        ("VmConfigIncompatibleForFaultTolerance", TypeInfo::Object { name: "VmConfigIncompatibleForFaultTolerance", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmConfigIncompatibleForFaultTolerance))) }),
        ("ArrayOfCnsInCompatibleFault", TypeInfo::Value { name: "ArrayOfCnsInCompatibleFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cns_in_compatible_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cns_in_compatible_fault) }),
        ("CertificateRefreshFailed", TypeInfo::Object { name: "CertificateRefreshFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CertificateRefreshFailed))) }),
        ("VmSecondaryEnabledEvent", TypeInfo::Object { name: "VmSecondaryEnabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmSecondaryEnabledEvent))) }),
        ("ArrayOfClusterFailoverResourcesAdmissionControlPolicy", TypeInfo::Value { name: "ArrayOfClusterFailoverResourcesAdmissionControlPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterFailoverResourcesAdmissionControlPolicy>>(wrap_array_of_cluster_failover_resources_admission_control_policy), from_value: |v| from_val_with::<Vec<super::structs::ClusterFailoverResourcesAdmissionControlPolicy>>(v, wrap_array_of_cluster_failover_resources_admission_control_policy) }),
        ("ArrayOfVmFailedToPowerOffEvent", TypeInfo::Value { name: "ArrayOfVmFailedToPowerOffEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_to_power_off_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_to_power_off_event) }),
        ("ArrayOfVirtualDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualDeviceBackingOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_backing_option_array)), from_value: |v| cast_to_virtual_device_backing_option_array(from_value(v)?) }),
        ("VibDependenciesNotMetByHost", TypeInfo::Object { name: "VibDependenciesNotMetByHost", builder_fn: || Box::new(VibDependenciesNotMetByHostFields::new()) }),
        ("HostListSummaryGatewaySummary", TypeInfo::Object { name: "HostListSummaryGatewaySummary", builder_fn: || Box::new(HostListSummaryGatewaySummaryFields::new()) }),
        ("ArrayOfNetDhcpConfigInfoDhcpOptions", TypeInfo::Value { name: "ArrayOfNetDhcpConfigInfoDhcpOptions", make_deserializer: || make_deser_with::<Vec<super::structs::NetDhcpConfigInfoDhcpOptions>>(wrap_array_of_net_dhcp_config_info_dhcp_options), from_value: |v| from_val_with::<Vec<super::structs::NetDhcpConfigInfoDhcpOptions>>(v, wrap_array_of_net_dhcp_config_info_dhcp_options) }),
        ("ArrayOfVsanXVCClientInfo", TypeInfo::Value { name: "ArrayOfVsanXVCClientInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcClientInfo>>(wrap_array_of_vsan_xvc_client_info), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcClientInfo>>(v, wrap_array_of_vsan_xvc_client_info) }),
        ("NetIpConfigSpec", TypeInfo::Object { name: "NetIpConfigSpec", builder_fn: || Box::new(NetIpConfigSpecFields::new()) }),
        ("ArrayOfDvsApplyOperationFault", TypeInfo::Value { name: "ArrayOfDvsApplyOperationFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_dvs_apply_operation_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_dvs_apply_operation_fault) }),
        ("GeneralUserEvent", TypeInfo::Object { name: "GeneralUserEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GeneralUserEvent))) }),
        ("CustomFieldDefAddedEvent", TypeInfo::Object { name: "CustomFieldDefAddedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomFieldDefAddedEvent))) }),
        ("VMotionLicenseExpiredEvent", TypeInfo::Object { name: "VMotionLicenseExpiredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VMotionLicenseExpiredEvent))) }),
        ("ArrayOfVsanClusterBalancePerDiskInfo", TypeInfo::Value { name: "ArrayOfVsanClusterBalancePerDiskInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterBalancePerDiskInfo>>(wrap_array_of_vsan_cluster_balance_per_disk_info), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterBalancePerDiskInfo>>(v, wrap_array_of_vsan_cluster_balance_per_disk_info) }),
        ("ArrayOfFileTransferInformation", TypeInfo::Value { name: "ArrayOfFileTransferInformation", make_deserializer: || make_deser_with::<Vec<super::structs::FileTransferInformation>>(wrap_array_of_file_transfer_information), from_value: |v| from_val_with::<Vec<super::structs::FileTransferInformation>>(v, wrap_array_of_file_transfer_information) }),
        ("VMwareDVSVspanConfigSpec", TypeInfo::Object { name: "VMwareDVSVspanConfigSpec", builder_fn: || Box::new(VMwareDvsVspanConfigSpecFields::new()) }),
        ("ExpiredFeatureLicense", TypeInfo::Object { name: "ExpiredFeatureLicense", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ExpiredFeatureLicense))) }),
        ("ExtensionResourceInfo", TypeInfo::Object { name: "ExtensionResourceInfo", builder_fn: || Box::new(ExtensionResourceInfoFields::new()) }),
        ("ArrayOfResourcePoolReconfiguredEvent", TypeInfo::Value { name: "ArrayOfResourcePoolReconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_resource_pool_reconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_resource_pool_reconfigured_event) }),
        ("ArrayOfVirtualVmxnetOption", TypeInfo::Value { name: "ArrayOfVirtualVmxnetOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_vmxnet_option_array)), from_value: |v| cast_to_virtual_vmxnet_option_array(from_value(v)?) }),
        ("ArrayOfDeviceControllerNotSupported", TypeInfo::Value { name: "ArrayOfDeviceControllerNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_device_controller_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_device_controller_not_supported) }),
        ("CustomizationUnknownIpGenerator", TypeInfo::Object { name: "CustomizationUnknownIpGenerator", builder_fn: || Box::new(CustomizationUnknownIpGeneratorFields::new()) }),
        ("ArrayOfHostNetworkSecurityPolicy", TypeInfo::Value { name: "ArrayOfHostNetworkSecurityPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetworkSecurityPolicy>>(wrap_array_of_host_network_security_policy), from_value: |v| from_val_with::<Vec<super::structs::HostNetworkSecurityPolicy>>(v, wrap_array_of_host_network_security_policy) }),
        ("WeeklyTaskScheduler", TypeInfo::Object { name: "WeeklyTaskScheduler", builder_fn: || Box::new(WeeklyTaskSchedulerFields::new()) }),
        ("ArrayOfVmRenamedEvent", TypeInfo::Value { name: "ArrayOfVmRenamedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_renamed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_renamed_event) }),
        ("ArrayOfMultipleSnapshotsNotSupported", TypeInfo::Value { name: "ArrayOfMultipleSnapshotsNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_multiple_snapshots_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_multiple_snapshots_not_supported) }),
        ("ArrayOfVsanIncompatibleDiskMapping", TypeInfo::Value { name: "ArrayOfVsanIncompatibleDiskMapping", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vsan_incompatible_disk_mapping), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vsan_incompatible_disk_mapping) }),
        ("VsanConfigGeneration", TypeInfo::Object { name: "VsanConfigGeneration", builder_fn: || Box::new(VsanConfigGenerationFields::new()) }),
        ("DirectPathProfileManagerDynamicDirectPathConfig", TypeInfo::Object { name: "DirectPathProfileManagerDynamicDirectPathConfig", builder_fn: || Box::new(DirectPathProfileManagerDynamicDirectPathConfigFields::new()) }),
        ("ArrayOfDvsFilterPolicy", TypeInfo::Value { name: "ArrayOfDvsFilterPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::DvsFilterPolicy>>(wrap_array_of_dvs_filter_policy), from_value: |v| from_val_with::<Vec<super::structs::DvsFilterPolicy>>(v, wrap_array_of_dvs_filter_policy) }),
        ("HostDeploymentInfo", TypeInfo::Object { name: "HostDeploymentInfo", builder_fn: || Box::new(HostDeploymentInfoFields::new()) }),
        ("HostSnmpDestination", TypeInfo::Object { name: "HostSnmpDestination", builder_fn: || Box::new(HostSnmpDestinationFields::new()) }),
        ("VsanClusterNetworkPartitionInfo", TypeInfo::Object { name: "VsanClusterNetworkPartitionInfo", builder_fn: || Box::new(VsanClusterNetworkPartitionInfoFields::new()) }),
        ("IsoImageFileQuery", TypeInfo::Object { name: "IsoImageFileQuery", builder_fn: || Box::new(IsoImageFileQueryFields::new()) }),
        ("DvsPortReconfiguredEvent", TypeInfo::Object { name: "DvsPortReconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortReconfiguredEvent))) }),
        ("TooManySnapshotLevels", TypeInfo::Object { name: "TooManySnapshotLevels", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TooManySnapshotLevels))) }),
        ("VMotionLinkCapacityLow", TypeInfo::Object { name: "VMotionLinkCapacityLow", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VMotionLinkCapacityLow))) }),
        ("ArrayOfVsanClusterHealthLink", TypeInfo::Value { name: "ArrayOfVsanClusterHealthLink", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthLink>>(wrap_array_of_vsan_cluster_health_link), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthLink>>(v, wrap_array_of_vsan_cluster_health_link) }),
        ("ArrayOfNoHost", TypeInfo::Value { name: "ArrayOfNoHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_host) }),
        ("VmFailedToStandbyGuestEvent", TypeInfo::Object { name: "VmFailedToStandbyGuestEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedToStandbyGuestEvent))) }),
        ("ArrayOfImportHostAddFailure", TypeInfo::Value { name: "ArrayOfImportHostAddFailure", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_import_host_add_failure), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_import_host_add_failure) }),
        ("RoleUpdatedEvent", TypeInfo::Object { name: "RoleUpdatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::RoleUpdatedEvent))) }),
        ("ArrayOfCustomizationGuiUnattended", TypeInfo::Value { name: "ArrayOfCustomizationGuiUnattended", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationGuiUnattended>>(wrap_array_of_customization_gui_unattended), from_value: |v| from_val_with::<Vec<super::structs::CustomizationGuiUnattended>>(v, wrap_array_of_customization_gui_unattended) }),
        ("ArrayOfNvdimmRegionInfo", TypeInfo::Value { name: "ArrayOfNvdimmRegionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmRegionInfo>>(wrap_array_of_nvdimm_region_info), from_value: |v| from_val_with::<Vec<super::structs::NvdimmRegionInfo>>(v, wrap_array_of_nvdimm_region_info) }),
        ("ArrayOfOptionType", TypeInfo::Value { name: "ArrayOfOptionType", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_option_type_array)), from_value: |v| cast_to_option_type_array(from_value(v)?) }),
        ("HostDiagnosticPartitionCreateOption", TypeInfo::Object { name: "HostDiagnosticPartitionCreateOption", builder_fn: || Box::new(HostDiagnosticPartitionCreateOptionFields::new()) }),
        ("ArrayOfVsanIOTripAnalyzerRecurrence", TypeInfo::Value { name: "ArrayOfVsanIOTripAnalyzerRecurrence", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoTripAnalyzerRecurrence>>(wrap_array_of_vsan_io_trip_analyzer_recurrence), from_value: |v| from_val_with::<Vec<super::structs::VsanIoTripAnalyzerRecurrence>>(v, wrap_array_of_vsan_io_trip_analyzer_recurrence) }),
        ("ArrayOfNotSupportedDeviceForFT", TypeInfo::Value { name: "ArrayOfNotSupportedDeviceForFT", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_device_for_ft), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_device_for_ft) }),
        ("EamRuntimeFault", TypeInfo::Object { name: "EamRuntimeFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EamRuntimeFault))) }),
        ("ArrayOfSmsProviderSpec", TypeInfo::Value { name: "ArrayOfSmsProviderSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_sms_provider_spec_array)), from_value: |v| cast_to_sms_provider_spec_array(from_value(v)?) }),
        ("ReplicationInvalidOptions", TypeInfo::Object { name: "ReplicationInvalidOptions", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReplicationInvalidOptions))) }),
        ("ArrayOfVsanVcKmipServersHealth", TypeInfo::Value { name: "ArrayOfVsanVcKmipServersHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVcKmipServersHealth>>(wrap_array_of_vsan_vc_kmip_servers_health), from_value: |v| from_val_with::<Vec<super::structs::VsanVcKmipServersHealth>>(v, wrap_array_of_vsan_vc_kmip_servers_health) }),
        ("ArrayOfHostNumaNode", TypeInfo::Value { name: "ArrayOfHostNumaNode", make_deserializer: || make_deser_with::<Vec<super::structs::HostNumaNode>>(wrap_array_of_host_numa_node), from_value: |v| from_val_with::<Vec<super::structs::HostNumaNode>>(v, wrap_array_of_host_numa_node) }),
        ("DirectPathProfileManagerCapacityQueryByDeviceConfig", TypeInfo::Object { name: "DirectPathProfileManagerCapacityQueryByDeviceConfig", builder_fn: || Box::new(DirectPathProfileManagerCapacityQueryByDeviceConfigFields::new()) }),
        ("ArrayOfUpdatedAgentBeingRestartedEvent", TypeInfo::Value { name: "ArrayOfUpdatedAgentBeingRestartedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_updated_agent_being_restarted_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_updated_agent_being_restarted_event) }),
        ("HostStorageSystemDiskLocatorLedResult", TypeInfo::Object { name: "HostStorageSystemDiskLocatorLedResult", builder_fn: || Box::new(HostStorageSystemDiskLocatorLedResultFields::new()) }),
        ("VmHostAffinityRuleViolation", TypeInfo::Object { name: "VmHostAffinityRuleViolation", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmHostAffinityRuleViolation))) }),
        ("ArrayOfVMwareDVSHealthCheckConfig", TypeInfo::Value { name: "ArrayOfVMwareDVSHealthCheckConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_v_mware_dvs_health_check_config_array)), from_value: |v| cast_to_v_mware_dvs_health_check_config_array(from_value(v)?) }),
        ("NotEnoughResourcesToStartVmEvent", TypeInfo::Object { name: "NotEnoughResourcesToStartVmEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::NotEnoughResourcesToStartVmEvent))) }),
        ("VsanClusterHealthResultBase", TypeInfo::Object { name: "VsanClusterHealthResultBase", builder_fn: || Box::new(VsanClusterHealthResultBaseFields::new()) }),
        ("GuestOsDescriptor", TypeInfo::Object { name: "GuestOsDescriptor", builder_fn: || Box::new(GuestOsDescriptorFields::new()) }),
        ("NvdimmNamespaceInfo", TypeInfo::Object { name: "NvdimmNamespaceInfo", builder_fn: || Box::new(NvdimmNamespaceInfoFields::new()) }),
        ("ArrayOfOvfInternalError", TypeInfo::Value { name: "ArrayOfOvfInternalError", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_internal_error), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_internal_error) }),
        ("TaskReasonUser", TypeInfo::Object { name: "TaskReasonUser", builder_fn: || Box::new(TaskReasonUserFields::new()) }),
        ("ArrayOfProfileCreatedEvent", TypeInfo::Value { name: "ArrayOfProfileCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_profile_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_profile_created_event) }),
        ("ArrayOfDVSVendorSpecificConfig", TypeInfo::Value { name: "ArrayOfDVSVendorSpecificConfig", make_deserializer: || make_deser_with::<Vec<super::structs::DvsVendorSpecificConfig>>(wrap_array_of_dvs_vendor_specific_config), from_value: |v| from_val_with::<Vec<super::structs::DvsVendorSpecificConfig>>(v, wrap_array_of_dvs_vendor_specific_config) }),
        ("ArrayOfStorageDrsCannotMoveTemplate", TypeInfo::Value { name: "ArrayOfStorageDrsCannotMoveTemplate", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_cannot_move_template), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_cannot_move_template) }),
        ("ArrayOfVmSmpFaultToleranceTooManyVMsOnHost", TypeInfo::Value { name: "ArrayOfVmSmpFaultToleranceTooManyVMsOnHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_smp_fault_tolerance_too_many_v_ms_on_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_smp_fault_tolerance_too_many_v_ms_on_host) }),
        ("DiskIsLastRemainingNonSSD", TypeInfo::Object { name: "DiskIsLastRemainingNonSSD", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DiskIsLastRemainingNonSsd))) }),
        ("VsanDitEncryptionHealthSummary", TypeInfo::Object { name: "VsanDitEncryptionHealthSummary", builder_fn: || Box::new(VsanDitEncryptionHealthSummaryFields::new()) }),
        ("ExtSolutionManagerInfo", TypeInfo::Object { name: "ExtSolutionManagerInfo", builder_fn: || Box::new(ExtSolutionManagerInfoFields::new()) }),
        ("ClusterAgentVmPoweredOff", TypeInfo::Object { name: "ClusterAgentVmPoweredOff", builder_fn: || Box::new(ClusterAgentVmPoweredOffFields::new()) }),
        ("ArrayOfHostNatService", TypeInfo::Value { name: "ArrayOfHostNatService", make_deserializer: || make_deser_with::<Vec<super::structs::HostNatService>>(wrap_array_of_host_nat_service), from_value: |v| from_val_with::<Vec<super::structs::HostNatService>>(v, wrap_array_of_host_nat_service) }),
        ("ArrayOfDvsApplyOperationFaultFaultOnObject", TypeInfo::Value { name: "ArrayOfDvsApplyOperationFaultFaultOnObject", make_deserializer: || make_deser_with::<Vec<super::structs::DvsApplyOperationFaultFaultOnObject>>(wrap_array_of_dvs_apply_operation_fault_fault_on_object), from_value: |v| from_val_with::<Vec<super::structs::DvsApplyOperationFaultFaultOnObject>>(v, wrap_array_of_dvs_apply_operation_fault_fault_on_object) }),
        ("UpdateVirtualMachineFilesResult", TypeInfo::Object { name: "UpdateVirtualMachineFilesResult", builder_fn: || Box::new(UpdateVirtualMachineFilesResultFields::new()) }),
        ("UnexpectedFault", TypeInfo::Object { name: "UnexpectedFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnexpectedFault))) }),
        ("InvalidNetworkInType", TypeInfo::Object { name: "InvalidNetworkInType", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidNetworkInType))) }),
        ("UplinkPortVlanUntrunkedEvent", TypeInfo::Object { name: "UplinkPortVlanUntrunkedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UplinkPortVlanUntrunkedEvent))) }),
        ("ArrayOfVmMessageEvent", TypeInfo::Value { name: "ArrayOfVmMessageEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_message_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_message_event) }),
        ("HostBootDevice", TypeInfo::Object { name: "HostBootDevice", builder_fn: || Box::new(HostBootDeviceFields::new()) }),
        ("ArrayOfHostProfileManagerCompositionResultResultElement", TypeInfo::Value { name: "ArrayOfHostProfileManagerCompositionResultResultElement", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileManagerCompositionResultResultElement>>(wrap_array_of_host_profile_manager_composition_result_result_element), from_value: |v| from_val_with::<Vec<super::structs::HostProfileManagerCompositionResultResultElement>>(v, wrap_array_of_host_profile_manager_composition_result_result_element) }),
        ("ArrayOfEventFilterSpecByEntity", TypeInfo::Value { name: "ArrayOfEventFilterSpecByEntity", make_deserializer: || make_deser_with::<Vec<super::structs::EventFilterSpecByEntity>>(wrap_array_of_event_filter_spec_by_entity), from_value: |v| from_val_with::<Vec<super::structs::EventFilterSpecByEntity>>(v, wrap_array_of_event_filter_spec_by_entity) }),
        ("CustomFieldStringValue", TypeInfo::Object { name: "CustomFieldStringValue", builder_fn: || Box::new(CustomFieldStringValueFields::new()) }),
        ("ArrayOfEntityEventArgument", TypeInfo::Value { name: "ArrayOfEntityEventArgument", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_entity_event_argument_array)), from_value: |v| cast_to_entity_event_argument_array(from_value(v)?) }),
        ("LicenseServerUnavailable", TypeInfo::Object { name: "LicenseServerUnavailable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LicenseServerUnavailable))) }),
        ("ArrayOfFaultToleranceSecondaryConfigInfo", TypeInfo::Value { name: "ArrayOfFaultToleranceSecondaryConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::FaultToleranceSecondaryConfigInfo>>(wrap_array_of_fault_tolerance_secondary_config_info), from_value: |v| from_val_with::<Vec<super::structs::FaultToleranceSecondaryConfigInfo>>(v, wrap_array_of_fault_tolerance_secondary_config_info) }),
        ("RestrictedVersion", TypeInfo::Object { name: "RestrictedVersion", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RestrictedVersion))) }),
        ("VirtualMachineSerialInfo", TypeInfo::Object { name: "VirtualMachineSerialInfo", builder_fn: || Box::new(VirtualMachineSerialInfoFields::new()) }),
        ("ApplicationQuiesceFault", TypeInfo::Object { name: "ApplicationQuiesceFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ApplicationQuiesceFault))) }),
        ("HostNvmeOverTcpParameters", TypeInfo::Object { name: "HostNvmeOverTcpParameters", builder_fn: || Box::new(HostNvmeOverTcpParametersFields::new()) }),
        ("ArrayOfHostMemoryTierInfo", TypeInfo::Value { name: "ArrayOfHostMemoryTierInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostMemoryTierInfo>>(wrap_array_of_host_memory_tier_info), from_value: |v| from_val_with::<Vec<super::structs::HostMemoryTierInfo>>(v, wrap_array_of_host_memory_tier_info) }),
        ("DiskNotSupported", TypeInfo::Object { name: "DiskNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DiskNotSupported))) }),
        ("ArrayOfIncorrectUsernamePassword", TypeInfo::Value { name: "ArrayOfIncorrectUsernamePassword", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_incorrect_username_password), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_incorrect_username_password) }),
        ("GuestInfoCustomizationInfo", TypeInfo::Object { name: "GuestInfoCustomizationInfo", builder_fn: || Box::new(GuestInfoCustomizationInfoFields::new()) }),
        ("VsanHealthTxtBasedAction", TypeInfo::Object { name: "VsanHealthTxtBasedAction", builder_fn: || Box::new(VsanHealthTxtBasedActionFields::new()) }),
        ("ClusterAgentOvfInvalidProperty", TypeInfo::Object { name: "ClusterAgentOvfInvalidProperty", builder_fn: || Box::new(ClusterAgentOvfInvalidPropertyFields::new()) }),
        ("ArrayOfDvsNetworkRuleAction", TypeInfo::Value { name: "ArrayOfDvsNetworkRuleAction", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_network_rule_action_array)), from_value: |v| cast_to_dvs_network_rule_action_array(from_value(v)?) }),
        ("ArrayOfStorageDrsHbrDiskNotMovable", TypeInfo::Value { name: "ArrayOfStorageDrsHbrDiskNotMovable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_hbr_disk_not_movable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_hbr_disk_not_movable) }),
        ("ArrayOfHostDirectoryStoreInfo", TypeInfo::Value { name: "ArrayOfHostDirectoryStoreInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_directory_store_info_array)), from_value: |v| cast_to_host_directory_store_info_array(from_value(v)?) }),
        ("ArrayOfVirtualMachineFileLayoutDiskLayout", TypeInfo::Value { name: "ArrayOfVirtualMachineFileLayoutDiskLayout", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFileLayoutDiskLayout>>(wrap_array_of_virtual_machine_file_layout_disk_layout), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFileLayoutDiskLayout>>(v, wrap_array_of_virtual_machine_file_layout_disk_layout) }),
        ("RetrieveVStorageObjSpec", TypeInfo::Object { name: "RetrieveVStorageObjSpec", builder_fn: || Box::new(RetrieveVStorageObjSpecFields::new()) }),
        ("ResyncIopsInfo", TypeInfo::Object { name: "ResyncIopsInfo", builder_fn: || Box::new(ResyncIopsInfoFields::new()) }),
        ("ArrayOfHostSystemReconnectSpec", TypeInfo::Value { name: "ArrayOfHostSystemReconnectSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemReconnectSpec>>(wrap_array_of_host_system_reconnect_spec), from_value: |v| from_val_with::<Vec<super::structs::HostSystemReconnectSpec>>(v, wrap_array_of_host_system_reconnect_spec) }),
        ("EventArgDesc", TypeInfo::Object { name: "EventArgDesc", builder_fn: || Box::new(EventArgDescFields::new()) }),
        ("ArrayOfHostTrustAuthorityAttestationInfo", TypeInfo::Value { name: "ArrayOfHostTrustAuthorityAttestationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostTrustAuthorityAttestationInfo>>(wrap_array_of_host_trust_authority_attestation_info), from_value: |v| from_val_with::<Vec<super::structs::HostTrustAuthorityAttestationInfo>>(v, wrap_array_of_host_trust_authority_attestation_info) }),
        ("DatastoreBackingPoolMapping", TypeInfo::Object { name: "DatastoreBackingPoolMapping", builder_fn: || Box::new(DatastoreBackingPoolMappingFields::new()) }),
        ("ArrayOfDvsReconfiguredEvent", TypeInfo::Value { name: "ArrayOfDvsReconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_reconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_reconfigured_event) }),
        ("ArrayOfLinuxVolumeNotClean", TypeInfo::Value { name: "ArrayOfLinuxVolumeNotClean", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_linux_volume_not_clean), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_linux_volume_not_clean) }),
        ("ArrayOfPodDiskLocator", TypeInfo::Value { name: "ArrayOfPodDiskLocator", make_deserializer: || make_deser_with::<Vec<super::structs::PodDiskLocator>>(wrap_array_of_pod_disk_locator), from_value: |v| from_val_with::<Vec<super::structs::PodDiskLocator>>(v, wrap_array_of_pod_disk_locator) }),
        ("ArrayOfClusterDasAdmissionControlInfo", TypeInfo::Value { name: "ArrayOfClusterDasAdmissionControlInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_das_admission_control_info_array)), from_value: |v| cast_to_cluster_das_admission_control_info_array(from_value(v)?) }),
        ("HostActiveDirectoryInfo", TypeInfo::Object { name: "HostActiveDirectoryInfo", builder_fn: || Box::new(HostActiveDirectoryInfoFields::new()) }),
        ("NvdimmInterleaveSetInfo", TypeInfo::Object { name: "NvdimmInterleaveSetInfo", builder_fn: || Box::new(NvdimmInterleaveSetInfoFields::new()) }),
        ("CnsQuerySelection", TypeInfo::Object { name: "CnsQuerySelection", builder_fn: || Box::new(CnsQuerySelectionFields::new()) }),
        ("ResourceInUse", TypeInfo::Object { name: "ResourceInUse", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ResourceInUse))) }),
        ("ArrayOfVmDiskFileQueryFlags", TypeInfo::Value { name: "ArrayOfVmDiskFileQueryFlags", make_deserializer: || make_deser_with::<Vec<super::structs::VmDiskFileQueryFlags>>(wrap_array_of_vm_disk_file_query_flags), from_value: |v| from_val_with::<Vec<super::structs::VmDiskFileQueryFlags>>(v, wrap_array_of_vm_disk_file_query_flags) }),
        ("ArrayOfHostLowLevelProvisioningManagerVmRecoveryInfo", TypeInfo::Value { name: "ArrayOfHostLowLevelProvisioningManagerVmRecoveryInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostLowLevelProvisioningManagerVmRecoveryInfo>>(wrap_array_of_host_low_level_provisioning_manager_vm_recovery_info), from_value: |v| from_val_with::<Vec<super::structs::HostLowLevelProvisioningManagerVmRecoveryInfo>>(v, wrap_array_of_host_low_level_provisioning_manager_vm_recovery_info) }),
        ("ArrayOfDvsImportEvent", TypeInfo::Value { name: "ArrayOfDvsImportEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_import_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_import_event) }),
        ("ArrayOfLocalizableMessage", TypeInfo::Value { name: "ArrayOfLocalizableMessage", make_deserializer: || make_deser_with::<Vec<super::structs::LocalizableMessage>>(wrap_array_of_localizable_message), from_value: |v| from_val_with::<Vec<super::structs::LocalizableMessage>>(v, wrap_array_of_localizable_message) }),
        ("DynamicArray", TypeInfo::Object { name: "DynamicArray", builder_fn: || Box::new(DynamicArrayFields::new()) }),
        ("HostDnsConfig", TypeInfo::Object { name: "HostDnsConfig", builder_fn: || Box::new(HostDnsConfigFields::new()) }),
        ("ArrayOfInvalidDeviceOperation", TypeInfo::Value { name: "ArrayOfInvalidDeviceOperation", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_device_operation), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_device_operation) }),
        ("ArrayOfDuplicateEntry", TypeInfo::Value { name: "ArrayOfDuplicateEntry", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_duplicate_entry), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_duplicate_entry) }),
        ("ComplianceFailureComplianceFailureValues", TypeInfo::Object { name: "ComplianceFailureComplianceFailureValues", builder_fn: || Box::new(ComplianceFailureComplianceFailureValuesFields::new()) }),
        ("DvsResourceRuntimeInfo", TypeInfo::Object { name: "DvsResourceRuntimeInfo", builder_fn: || Box::new(DvsResourceRuntimeInfoFields::new()) }),
        ("CnsVolumeNotFoundFault", TypeInfo::Object { name: "CnsVolumeNotFoundFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CnsVolumeNotFoundFault))) }),
        ("VmWwnConflict", TypeInfo::Object { name: "VmWwnConflict", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmWwnConflict))) }),
        ("ArrayOfOvfUnknownEntity", TypeInfo::Value { name: "ArrayOfOvfUnknownEntity", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unknown_entity), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unknown_entity) }),
        ("HostResignatureRescanResult", TypeInfo::Object { name: "HostResignatureRescanResult", builder_fn: || Box::new(HostResignatureRescanResultFields::new()) }),
        ("ArrayOfVsanHostDecommissionMode", TypeInfo::Value { name: "ArrayOfVsanHostDecommissionMode", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostDecommissionMode>>(wrap_array_of_vsan_host_decommission_mode), from_value: |v| from_val_with::<Vec<super::structs::VsanHostDecommissionMode>>(v, wrap_array_of_vsan_host_decommission_mode) }),
        ("HostMultipathStateInfo", TypeInfo::Object { name: "HostMultipathStateInfo", builder_fn: || Box::new(HostMultipathStateInfoFields::new()) }),
        ("ArrayOfHostNvmeNamespace", TypeInfo::Value { name: "ArrayOfHostNvmeNamespace", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeNamespace>>(wrap_array_of_host_nvme_namespace), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeNamespace>>(v, wrap_array_of_host_nvme_namespace) }),
        ("ClusterComputeResourceHostConfigurationInput", TypeInfo::Object { name: "ClusterComputeResourceHostConfigurationInput", builder_fn: || Box::new(ClusterComputeResourceHostConfigurationInputFields::new()) }),
        ("SolutionsValidationResult", TypeInfo::Object { name: "SolutionsValidationResult", builder_fn: || Box::new(SolutionsValidationResultFields::new()) }),
        ("ArrayOfVmPodConfigForPlacement", TypeInfo::Value { name: "ArrayOfVmPodConfigForPlacement", make_deserializer: || make_deser_with::<Vec<super::structs::VmPodConfigForPlacement>>(wrap_array_of_vm_pod_config_for_placement), from_value: |v| from_val_with::<Vec<super::structs::VmPodConfigForPlacement>>(v, wrap_array_of_vm_pod_config_for_placement) }),
        ("ArrayOfVchaClusterConfigInfo", TypeInfo::Value { name: "ArrayOfVchaClusterConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VchaClusterConfigInfo>>(wrap_array_of_vcha_cluster_config_info), from_value: |v| from_val_with::<Vec<super::structs::VchaClusterConfigInfo>>(v, wrap_array_of_vcha_cluster_config_info) }),
        ("ArrayOfStoragePlacementAction", TypeInfo::Value { name: "ArrayOfStoragePlacementAction", make_deserializer: || make_deser_with::<Vec<super::structs::StoragePlacementAction>>(wrap_array_of_storage_placement_action), from_value: |v| from_val_with::<Vec<super::structs::StoragePlacementAction>>(v, wrap_array_of_storage_placement_action) }),
        ("ArrayOfVibVibInfo", TypeInfo::Value { name: "ArrayOfVibVibInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VibVibInfo>>(wrap_array_of_vib_vib_info), from_value: |v| from_val_with::<Vec<super::structs::VibVibInfo>>(v, wrap_array_of_vib_vib_info) }),
        ("ClusterActionHistory", TypeInfo::Object { name: "ClusterActionHistory", builder_fn: || Box::new(ClusterActionHistoryFields::new()) }),
        ("ArrayOfDatastoreFileMovedEvent", TypeInfo::Value { name: "ArrayOfDatastoreFileMovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_file_moved_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_file_moved_event) }),
        ("ArrayOfCustomizationStartedEvent", TypeInfo::Value { name: "ArrayOfCustomizationStartedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_customization_started_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_customization_started_event) }),
        ("DirectPathProfileManagerUpdateSpec", TypeInfo::Object { name: "DirectPathProfileManagerUpdateSpec", builder_fn: || Box::new(DirectPathProfileManagerUpdateSpecFields::new()) }),
        ("IscsiMigrationDependency", TypeInfo::Object { name: "IscsiMigrationDependency", builder_fn: || Box::new(IscsiMigrationDependencyFields::new()) }),
        ("ArrayOfSecondaryVmAlreadyRegistered", TypeInfo::Value { name: "ArrayOfSecondaryVmAlreadyRegistered", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_secondary_vm_already_registered), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_secondary_vm_already_registered) }),
        ("GuestRegistryValueNotFound", TypeInfo::Object { name: "GuestRegistryValueNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestRegistryValueNotFound))) }),
        ("EamInvalidLogin", TypeInfo::Object { name: "EamInvalidLogin", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EamInvalidLogin))) }),
        ("EVCAdmissionFailedHostSoftware", TypeInfo::Object { name: "EVCAdmissionFailedHostSoftware", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcAdmissionFailedHostSoftware))) }),
        ("VirtualMachineUsbInfo", TypeInfo::Object { name: "VirtualMachineUsbInfo", builder_fn: || Box::new(VirtualMachineUsbInfoFields::new()) }),
        ("DatastorePair", TypeInfo::Object { name: "DatastorePair", builder_fn: || Box::new(DatastorePairFields::new()) }),
        ("NotImplemented", TypeInfo::Object { name: "NotImplemented", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotImplemented))) }),
        ("ArrayOfPbmCompliancePolicyStatus", TypeInfo::Value { name: "ArrayOfPbmCompliancePolicyStatus", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCompliancePolicyStatus>>(wrap_array_of_pbm_compliance_policy_status), from_value: |v| from_val_with::<Vec<super::structs::PbmCompliancePolicyStatus>>(v, wrap_array_of_pbm_compliance_policy_status) }),
        ("ArrayOfInvalidIpfixConfig", TypeInfo::Value { name: "ArrayOfInvalidIpfixConfig", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_ipfix_config), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_ipfix_config) }),
        ("ArrayOfHostUnresolvedVmfsVolume", TypeInfo::Value { name: "ArrayOfHostUnresolvedVmfsVolume", make_deserializer: || make_deser_with::<Vec<super::structs::HostUnresolvedVmfsVolume>>(wrap_array_of_host_unresolved_vmfs_volume), from_value: |v| from_val_with::<Vec<super::structs::HostUnresolvedVmfsVolume>>(v, wrap_array_of_host_unresolved_vmfs_volume) }),
        ("PbmDefaultProfileAppliesFault", TypeInfo::Object { name: "PbmDefaultProfileAppliesFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmDefaultProfileAppliesFault))) }),
        ("VAppEntityConfigInfo", TypeInfo::Object { name: "VAppEntityConfigInfo", builder_fn: || Box::new(VAppEntityConfigInfoFields::new()) }),
        ("ArrayOfVirtualEthernetCardDVPortBackingOption", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardDVPortBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEthernetCardDvPortBackingOption>>(wrap_array_of_virtual_ethernet_card_dv_port_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualEthernetCardDvPortBackingOption>>(v, wrap_array_of_virtual_ethernet_card_dv_port_backing_option) }),
        ("ArrayOfVirtualDiskDeltaDiskFormatsSupported", TypeInfo::Value { name: "ArrayOfVirtualDiskDeltaDiskFormatsSupported", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskDeltaDiskFormatsSupported>>(wrap_array_of_virtual_disk_delta_disk_formats_supported), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskDeltaDiskFormatsSupported>>(v, wrap_array_of_virtual_disk_delta_disk_formats_supported) }),
        ("ArrayOfGuestPermissionDenied", TypeInfo::Value { name: "ArrayOfGuestPermissionDenied", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_permission_denied), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_permission_denied) }),
        ("ArrayOfDvsPortConnectedEvent", TypeInfo::Value { name: "ArrayOfDvsPortConnectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_connected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_connected_event) }),
        ("InvalidConfig", TypeInfo::Object { name: "InvalidConfig", builder_fn: || Box::new(InvalidConfigFields::new()) }),
        ("VmFailedToShutdownGuestEvent", TypeInfo::Object { name: "VmFailedToShutdownGuestEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedToShutdownGuestEvent))) }),
        ("ArrayOfPbmDataServiceToPoliciesMap", TypeInfo::Value { name: "ArrayOfPbmDataServiceToPoliciesMap", make_deserializer: || make_deser_with::<Vec<super::structs::PbmDataServiceToPoliciesMap>>(wrap_array_of_pbm_data_service_to_policies_map), from_value: |v| from_val_with::<Vec<super::structs::PbmDataServiceToPoliciesMap>>(v, wrap_array_of_pbm_data_service_to_policies_map) }),
        ("VsanPerfTimeRangeQuerySpec", TypeInfo::Object { name: "VsanPerfTimeRangeQuerySpec", builder_fn: || Box::new(VsanPerfTimeRangeQuerySpecFields::new()) }),
        ("HostVfatVolume", TypeInfo::Object { name: "HostVfatVolume", builder_fn: || Box::new(HostVfatVolumeFields::new()) }),
        ("HostConfigAppliedEvent", TypeInfo::Object { name: "HostConfigAppliedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostConfigAppliedEvent))) }),
        ("HostServiceSourcePackage", TypeInfo::Object { name: "HostServiceSourcePackage", builder_fn: || Box::new(HostServiceSourcePackageFields::new()) }),
        ("ArrayOfVMotionLinkCapacityLow", TypeInfo::Value { name: "ArrayOfVMotionLinkCapacityLow", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_motion_link_capacity_low), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_motion_link_capacity_low) }),
        ("ArrayOfHostIpInconsistentEvent", TypeInfo::Value { name: "ArrayOfHostIpInconsistentEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_ip_inconsistent_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_ip_inconsistent_event) }),
        ("DVSHealthCheckConfig", TypeInfo::Object { name: "DVSHealthCheckConfig", builder_fn: || Box::new(DvsHealthCheckConfigFields::new()) }),
        ("ArrayOfKmipClusterInfo", TypeInfo::Value { name: "ArrayOfKmipClusterInfo", make_deserializer: || make_deser_with::<Vec<super::structs::KmipClusterInfo>>(wrap_array_of_kmip_cluster_info), from_value: |v| from_val_with::<Vec<super::structs::KmipClusterInfo>>(v, wrap_array_of_kmip_cluster_info) }),
        ("HostDateTimeInfo", TypeInfo::Object { name: "HostDateTimeInfo", builder_fn: || Box::new(HostDateTimeInfoFields::new()) }),
        ("PhysicalNicLinkInfo", TypeInfo::Object { name: "PhysicalNicLinkInfo", builder_fn: || Box::new(PhysicalNicLinkInfoFields::new()) }),
        ("VirtualPCIControllerOption", TypeInfo::Object { name: "VirtualPCIControllerOption", builder_fn: || Box::new(VirtualPciControllerOptionFields::new()) }),
        ("ArrayOfAlarmAcknowledgedEvent", TypeInfo::Value { name: "ArrayOfAlarmAcknowledgedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_acknowledged_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_acknowledged_event) }),
        ("CryptoManagerKmipCryptoKeyStatus", TypeInfo::Object { name: "CryptoManagerKmipCryptoKeyStatus", builder_fn: || Box::new(CryptoManagerKmipCryptoKeyStatusFields::new()) }),
        ("VsanUpgradeSystemNotEnoughFreeCapacityIssue", TypeInfo::Object { name: "VsanUpgradeSystemNotEnoughFreeCapacityIssue", builder_fn: || Box::new(VsanUpgradeSystemNotEnoughFreeCapacityIssueFields::new()) }),
        ("DrsEnteringStandbyModeEvent", TypeInfo::Object { name: "DrsEnteringStandbyModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsEnteringStandbyModeEvent))) }),
        ("VsanResourceConstraint", TypeInfo::Object { name: "VsanResourceConstraint", builder_fn: || Box::new(VsanResourceConstraintFields::new()) }),
        ("ArrayOfRelatedStorageArray", TypeInfo::Value { name: "ArrayOfRelatedStorageArray", make_deserializer: || make_deser_with::<Vec<super::structs::RelatedStorageArray>>(wrap_array_of_related_storage_array), from_value: |v| from_val_with::<Vec<super::structs::RelatedStorageArray>>(v, wrap_array_of_related_storage_array) }),
        ("AlreadyAuthenticatedSessionEvent", TypeInfo::Object { name: "AlreadyAuthenticatedSessionEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlreadyAuthenticatedSessionEvent))) }),
        ("ArrayOfClusterDasAamNodeState", TypeInfo::Value { name: "ArrayOfClusterDasAamNodeState", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasAamNodeState>>(wrap_array_of_cluster_das_aam_node_state), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasAamNodeState>>(v, wrap_array_of_cluster_das_aam_node_state) }),
        ("DvsPortDisconnectedEvent", TypeInfo::Object { name: "DvsPortDisconnectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortDisconnectedEvent))) }),
        ("HostNasVolume", TypeInfo::Object { name: "HostNasVolume", builder_fn: || Box::new(HostNasVolumeFields::new()) }),
        ("CustomizationFailed", TypeInfo::Object { name: "CustomizationFailed", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomizationFailed))) }),
        ("ArrayOfDeviceNotSupported", TypeInfo::Value { name: "ArrayOfDeviceNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_device_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_device_not_supported) }),
        ("VirtualAppSummary", TypeInfo::Object { name: "VirtualAppSummary", builder_fn: || Box::new(VirtualAppSummaryFields::new()) }),
        ("GatewayHostNotReachable", TypeInfo::Object { name: "GatewayHostNotReachable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GatewayHostNotReachable))) }),
        ("VirtualDeviceBackingInfo", TypeInfo::Object { name: "VirtualDeviceBackingInfo", builder_fn: || Box::new(VirtualDeviceBackingInfoFields::new()) }),
        ("EVCMode", TypeInfo::Object { name: "EVCMode", builder_fn: || Box::new(EvcModeFields::new()) }),
        ("VsanVmdkIOLoadSpec", TypeInfo::Object { name: "VsanVmdkIOLoadSpec", builder_fn: || Box::new(VsanVmdkIoLoadSpecFields::new()) }),
        ("CpuHotPlugNotSupported", TypeInfo::Object { name: "CpuHotPlugNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CpuHotPlugNotSupported))) }),
        ("ArrayOfShort", TypeInfo::Value { name: "ArrayOfShort", make_deserializer: || make_deser_with::<Vec<i16>>(wrap_array_of_short), from_value: |v| from_val_with::<Vec<i16>>(v, wrap_array_of_short) }),
        ("VmwareUplinkPortTeamingPolicy", TypeInfo::Object { name: "VmwareUplinkPortTeamingPolicy", builder_fn: || Box::new(VmwareUplinkPortTeamingPolicyFields::new()) }),
        ("ArrayOfOutOfSyncDvsHost", TypeInfo::Value { name: "ArrayOfOutOfSyncDvsHost", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_out_of_sync_dvs_host), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_out_of_sync_dvs_host) }),
        ("ArrayOfCannotAccessFile", TypeInfo::Value { name: "ArrayOfCannotAccessFile", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_access_file), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_access_file) }),
        ("InvalidLocale", TypeInfo::Object { name: "InvalidLocale", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidLocale))) }),
        ("ArrayOfNicSettingMismatch", TypeInfo::Value { name: "ArrayOfNicSettingMismatch", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_nic_setting_mismatch), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_nic_setting_mismatch) }),
        ("VirtualCdromOption", TypeInfo::Object { name: "VirtualCdromOption", builder_fn: || Box::new(VirtualCdromOptionFields::new()) }),
        ("anyURI", TypeInfo::Value { name: "anyURI", make_deserializer: || make_deser_with::<String>(wrap_primitive_uri), from_value: |v| from_val_with::<String>(v, wrap_primitive_uri) }),
        ("Issue", TypeInfo::Object { name: "Issue", builder_fn: || Box::new(IssueFields::new()) }),
        ("NotSupportedHost", TypeInfo::Object { name: "NotSupportedHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedHost))) }),
        ("IscsiFault", TypeInfo::Object { name: "IscsiFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFault))) }),
        ("ArrayOfPropertyFilterSpec", TypeInfo::Value { name: "ArrayOfPropertyFilterSpec", make_deserializer: || make_deser_with::<Vec<super::structs::PropertyFilterSpec>>(wrap_array_of_property_filter_spec), from_value: |v| from_val_with::<Vec<super::structs::PropertyFilterSpec>>(v, wrap_array_of_property_filter_spec) }),
        ("ArrayOfVsanHclFirmwareUpdateSpec", TypeInfo::Value { name: "ArrayOfVsanHclFirmwareUpdateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclFirmwareUpdateSpec>>(wrap_array_of_vsan_hcl_firmware_update_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanHclFirmwareUpdateSpec>>(v, wrap_array_of_vsan_hcl_firmware_update_spec) }),
        ("VsanVmdkLoadTestSpec", TypeInfo::Object { name: "VsanVmdkLoadTestSpec", builder_fn: || Box::new(VsanVmdkLoadTestSpecFields::new()) }),
        ("ArrayOfVmDiskFileQuery", TypeInfo::Value { name: "ArrayOfVmDiskFileQuery", make_deserializer: || make_deser_with::<Vec<super::structs::VmDiskFileQuery>>(wrap_array_of_vm_disk_file_query), from_value: |v| from_val_with::<Vec<super::structs::VmDiskFileQuery>>(v, wrap_array_of_vm_disk_file_query) }),
        ("ArrayOfHostDiskMappingPartitionOption", TypeInfo::Value { name: "ArrayOfHostDiskMappingPartitionOption", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskMappingPartitionOption>>(wrap_array_of_host_disk_mapping_partition_option), from_value: |v| from_val_with::<Vec<super::structs::HostDiskMappingPartitionOption>>(v, wrap_array_of_host_disk_mapping_partition_option) }),
        ("ArrayOfVsanHostGlobalDedupConfigHealthSummary", TypeInfo::Value { name: "ArrayOfVsanHostGlobalDedupConfigHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostGlobalDedupConfigHealthSummary>>(wrap_array_of_vsan_host_global_dedup_config_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanHostGlobalDedupConfigHealthSummary>>(v, wrap_array_of_vsan_host_global_dedup_config_health_summary) }),
        ("ArrayOfVsanVumSystemConfig", TypeInfo::Value { name: "ArrayOfVsanVumSystemConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVumSystemConfig>>(wrap_array_of_vsan_vum_system_config), from_value: |v| from_val_with::<Vec<super::structs::VsanVumSystemConfig>>(v, wrap_array_of_vsan_vum_system_config) }),
        ("ArrayOfProfileParameterMetadataParameterRelationMetadata", TypeInfo::Value { name: "ArrayOfProfileParameterMetadataParameterRelationMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileParameterMetadataParameterRelationMetadata>>(wrap_array_of_profile_parameter_metadata_parameter_relation_metadata), from_value: |v| from_val_with::<Vec<super::structs::ProfileParameterMetadataParameterRelationMetadata>>(v, wrap_array_of_profile_parameter_metadata_parameter_relation_metadata) }),
        ("ArrayOfMissingDvFilterSwitch", TypeInfo::Value { name: "ArrayOfMissingDvFilterSwitch", make_deserializer: || make_deser_with::<Vec<super::structs::MissingDvFilterSwitch>>(wrap_array_of_missing_dv_filter_switch), from_value: |v| from_val_with::<Vec<super::structs::MissingDvFilterSwitch>>(v, wrap_array_of_missing_dv_filter_switch) }),
        ("ArrayOfClusterRuleInfo", TypeInfo::Value { name: "ArrayOfClusterRuleInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_rule_info_array)), from_value: |v| cast_to_cluster_rule_info_array(from_value(v)?) }),
        ("ArrayOfOrAlarmExpression", TypeInfo::Value { name: "ArrayOfOrAlarmExpression", make_deserializer: || make_deser_with::<Vec<super::structs::OrAlarmExpression>>(wrap_array_of_or_alarm_expression), from_value: |v| from_val_with::<Vec<super::structs::OrAlarmExpression>>(v, wrap_array_of_or_alarm_expression) }),
        ("ArrayOfVsanDiskRebalanceResult", TypeInfo::Value { name: "ArrayOfVsanDiskRebalanceResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDiskRebalanceResult>>(wrap_array_of_vsan_disk_rebalance_result), from_value: |v| from_val_with::<Vec<super::structs::VsanDiskRebalanceResult>>(v, wrap_array_of_vsan_disk_rebalance_result) }),
        ("VirtualMachineMetadataManagerVmMetadataResult", TypeInfo::Object { name: "VirtualMachineMetadataManagerVmMetadataResult", builder_fn: || Box::new(VirtualMachineMetadataManagerVmMetadataResultFields::new()) }),
        ("VirtualDeviceDeviceBackingInfo", TypeInfo::Object { name: "VirtualDeviceDeviceBackingInfo", builder_fn: || Box::new(VirtualDeviceDeviceBackingInfoFields::new()) }),
        ("CustomizationUnknownFailure", TypeInfo::Object { name: "CustomizationUnknownFailure", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomizationUnknownFailure))) }),
        ("ArrayOfProviderUnregistrationFault", TypeInfo::Value { name: "ArrayOfProviderUnregistrationFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_provider_unregistration_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_provider_unregistration_fault) }),
        ("ArrayOfGuestRegistryKeyAlreadyExists", TypeInfo::Value { name: "ArrayOfGuestRegistryKeyAlreadyExists", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_registry_key_already_exists), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_registry_key_already_exists) }),
        ("FcoeConfigVlanRange", TypeInfo::Object { name: "FcoeConfigVlanRange", builder_fn: || Box::new(FcoeConfigVlanRangeFields::new()) }),
        ("ClusterProfileCreateSpec", TypeInfo::Object { name: "ClusterProfileCreateSpec", builder_fn: || Box::new(ClusterProfileCreateSpecFields::new()) }),
        ("VMwareDvsMtuCapability", TypeInfo::Object { name: "VMwareDvsMtuCapability", builder_fn: || Box::new(VMwareDvsMtuCapabilityFields::new()) }),
        ("ArrayOfHostAddedEvent", TypeInfo::Value { name: "ArrayOfHostAddedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_added_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_added_event) }),
        ("OvfConnectedDevice", TypeInfo::Object { name: "OvfConnectedDevice", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConnectedDevice))) }),
        ("ArrayOfVirtualMachineSriovInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineSriovInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineSriovInfo>>(wrap_array_of_virtual_machine_sriov_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineSriovInfo>>(v, wrap_array_of_virtual_machine_sriov_info) }),
        ("ArrayOfDirectPathProfileManagerCapacityInfo", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerCapacityInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerCapacityInfo>>(wrap_array_of_direct_path_profile_manager_capacity_info), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerCapacityInfo>>(v, wrap_array_of_direct_path_profile_manager_capacity_info) }),
        ("CustomizationPending", TypeInfo::Object { name: "CustomizationPending", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CustomizationPending))) }),
        ("ArrayOfCnsVolumeSource", TypeInfo::Value { name: "ArrayOfCnsVolumeSource", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cns_volume_source_array)), from_value: |v| cast_to_cns_volume_source_array(from_value(v)?) }),
        ("LinkProfile", TypeInfo::Object { name: "LinkProfile", builder_fn: || Box::new(LinkProfileFields::new()) }),
        ("ArrayOfResourceNotAvailable", TypeInfo::Value { name: "ArrayOfResourceNotAvailable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_resource_not_available), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_resource_not_available) }),
        ("GuestRegistryFault", TypeInfo::Object { name: "GuestRegistryFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestRegistryFault))) }),
        ("VirtualCdromIsoBackingInfo", TypeInfo::Object { name: "VirtualCdromIsoBackingInfo", builder_fn: || Box::new(VirtualCdromIsoBackingInfoFields::new()) }),
        ("VirtualMachineGuestMonitoringModeInfo", TypeInfo::Object { name: "VirtualMachineGuestMonitoringModeInfo", builder_fn: || Box::new(VirtualMachineGuestMonitoringModeInfoFields::new()) }),
        ("IncorrectFileType", TypeInfo::Object { name: "IncorrectFileType", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IncorrectFileType))) }),
        ("ArrayOfVirtualDevicePipeBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDevicePipeBackingInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_pipe_backing_info_array)), from_value: |v| cast_to_virtual_device_pipe_backing_info_array(from_value(v)?) }),
        ("ArrayOfDrsResourceConfigureFailedEvent", TypeInfo::Value { name: "ArrayOfDrsResourceConfigureFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_resource_configure_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_resource_configure_failed_event) }),
        ("ArrayOfVirtualSATAController", TypeInfo::Value { name: "ArrayOfVirtualSATAController", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_sata_controller_array)), from_value: |v| cast_to_virtual_sata_controller_array(from_value(v)?) }),
        ("VsanCompliantFirmware", TypeInfo::Object { name: "VsanCompliantFirmware", builder_fn: || Box::new(VsanCompliantFirmwareFields::new()) }),
        ("ArrayOfMtuMismatchEvent", TypeInfo::Value { name: "ArrayOfMtuMismatchEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_mtu_mismatch_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_mtu_mismatch_event) }),
        ("ArrayOfCnsBlockBackingDetails", TypeInfo::Value { name: "ArrayOfCnsBlockBackingDetails", make_deserializer: || make_deser_with::<Vec<super::structs::CnsBlockBackingDetails>>(wrap_array_of_cns_block_backing_details), from_value: |v| from_val_with::<Vec<super::structs::CnsBlockBackingDetails>>(v, wrap_array_of_cns_block_backing_details) }),
        ("ArrayOfAffinityConfigured", TypeInfo::Value { name: "ArrayOfAffinityConfigured", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_affinity_configured), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_affinity_configured) }),
        ("DistributedVirtualSwitchKeyedOpaqueBlob", TypeInfo::Object { name: "DistributedVirtualSwitchKeyedOpaqueBlob", builder_fn: || Box::new(DistributedVirtualSwitchKeyedOpaqueBlobFields::new()) }),
        ("ArrayOfVirtualMachineNetworkShaperInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineNetworkShaperInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineNetworkShaperInfo>>(wrap_array_of_virtual_machine_network_shaper_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineNetworkShaperInfo>>(v, wrap_array_of_virtual_machine_network_shaper_info) }),
        ("ArrayOfClusterUsageSummary", TypeInfo::Value { name: "ArrayOfClusterUsageSummary", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterUsageSummary>>(wrap_array_of_cluster_usage_summary), from_value: |v| from_val_with::<Vec<super::structs::ClusterUsageSummary>>(v, wrap_array_of_cluster_usage_summary) }),
        ("ClusterCreatedEvent", TypeInfo::Object { name: "ClusterCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ClusterCreatedEvent))) }),
        ("VimVsanHostVsanHostCapability", TypeInfo::Object { name: "VimVsanHostVsanHostCapability", builder_fn: || Box::new(VimVsanHostVsanHostCapabilityFields::new()) }),
        ("ArrayOfVStorageObjectAssociationsVmDiskAssociations", TypeInfo::Value { name: "ArrayOfVStorageObjectAssociationsVmDiskAssociations", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectAssociationsVmDiskAssociations>>(wrap_array_of_v_storage_object_associations_vm_disk_associations), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectAssociationsVmDiskAssociations>>(v, wrap_array_of_v_storage_object_associations_vm_disk_associations) }),
        ("ArrayOfReplicaIntervalQueryResult", TypeInfo::Value { name: "ArrayOfReplicaIntervalQueryResult", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicaIntervalQueryResult>>(wrap_array_of_replica_interval_query_result), from_value: |v| from_val_with::<Vec<super::structs::ReplicaIntervalQueryResult>>(v, wrap_array_of_replica_interval_query_result) }),
        ("DistributedVirtualSwitchHostMemberPnicBacking", TypeInfo::Object { name: "DistributedVirtualSwitchHostMemberPnicBacking", builder_fn: || Box::new(DistributedVirtualSwitchHostMemberPnicBackingFields::new()) }),
        ("ArrayOfVsanObjectTypeRule", TypeInfo::Value { name: "ArrayOfVsanObjectTypeRule", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectTypeRule>>(wrap_array_of_vsan_object_type_rule), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectTypeRule>>(v, wrap_array_of_vsan_object_type_rule) }),
        ("ArrayOfNetDnsConfigSpec", TypeInfo::Value { name: "ArrayOfNetDnsConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::NetDnsConfigSpec>>(wrap_array_of_net_dns_config_spec), from_value: |v| from_val_with::<Vec<super::structs::NetDnsConfigSpec>>(v, wrap_array_of_net_dns_config_spec) }),
        ("HostFibreChannelOverEthernetHba", TypeInfo::Object { name: "HostFibreChannelOverEthernetHba", builder_fn: || Box::new(HostFibreChannelOverEthernetHbaFields::new()) }),
        ("ArrayOfClusterConfigSpecEx", TypeInfo::Value { name: "ArrayOfClusterConfigSpecEx", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterConfigSpecEx>>(wrap_array_of_cluster_config_spec_ex), from_value: |v| from_val_with::<Vec<super::structs::ClusterConfigSpecEx>>(v, wrap_array_of_cluster_config_spec_ex) }),
        ("ArrayOfCustomizationUnknownIpGenerator", TypeInfo::Value { name: "ArrayOfCustomizationUnknownIpGenerator", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationUnknownIpGenerator>>(wrap_array_of_customization_unknown_ip_generator), from_value: |v| from_val_with::<Vec<super::structs::CustomizationUnknownIpGenerator>>(v, wrap_array_of_customization_unknown_ip_generator) }),
        ("ActiveDirectoryFault", TypeInfo::Object { name: "ActiveDirectoryFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ActiveDirectoryFault))) }),
        ("ArrayOfSDDCBase", TypeInfo::Value { name: "ArrayOfSDDCBase", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_sddc_base_array)), from_value: |v| cast_to_sddc_base_array(from_value(v)?) }),
        ("VirtualMachineRelocateSpecDiskLocatorBackingSpec", TypeInfo::Object { name: "VirtualMachineRelocateSpecDiskLocatorBackingSpec", builder_fn: || Box::new(VirtualMachineRelocateSpecDiskLocatorBackingSpecFields::new()) }),
        ("CryptoManagerKmipCryptoKeyStatusWrappingRotationIntervalKeyInfo", TypeInfo::Object { name: "CryptoManagerKmipCryptoKeyStatusWrappingRotationIntervalKeyInfo", builder_fn: || Box::new(CryptoManagerKmipCryptoKeyStatusWrappingRotationIntervalKeyInfoFields::new()) }),
        ("ArrayOfDvsHostWentOutOfSyncEvent", TypeInfo::Value { name: "ArrayOfDvsHostWentOutOfSyncEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_host_went_out_of_sync_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_host_went_out_of_sync_event) }),
        ("VirtualParallelPort", TypeInfo::Object { name: "VirtualParallelPort", builder_fn: || Box::new(VirtualParallelPortFields::new()) }),
        ("DatastoreFileMovedEvent", TypeInfo::Object { name: "DatastoreFileMovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreFileMovedEvent))) }),
        ("ArrayOfVMotionNotConfigured", TypeInfo::Value { name: "ArrayOfVMotionNotConfigured", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_motion_not_configured), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_motion_not_configured) }),
        ("ArrayOfVirtualLsiLogicController", TypeInfo::Value { name: "ArrayOfVirtualLsiLogicController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualLsiLogicController>>(wrap_array_of_virtual_lsi_logic_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualLsiLogicController>>(v, wrap_array_of_virtual_lsi_logic_controller) }),
        ("ArrayOfGeneralHostErrorEvent", TypeInfo::Value { name: "ArrayOfGeneralHostErrorEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_general_host_error_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_general_host_error_event) }),
        ("ArrayOfVsanClusterTelemetryProxyConfig", TypeInfo::Value { name: "ArrayOfVsanClusterTelemetryProxyConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterTelemetryProxyConfig>>(wrap_array_of_vsan_cluster_telemetry_proxy_config), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterTelemetryProxyConfig>>(v, wrap_array_of_vsan_cluster_telemetry_proxy_config) }),
        ("DatacenterBasicConnectInfo", TypeInfo::Object { name: "DatacenterBasicConnectInfo", builder_fn: || Box::new(DatacenterBasicConnectInfoFields::new()) }),
        ("ArrayOfOvfWrongElement", TypeInfo::Value { name: "ArrayOfOvfWrongElement", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_wrong_element), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_wrong_element) }),
        ("ProfileProfileStructureProperty", TypeInfo::Object { name: "ProfileProfileStructureProperty", builder_fn: || Box::new(ProfileProfileStructurePropertyFields::new()) }),
        ("OvfFault", TypeInfo::Object { name: "OvfFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfFault))) }),
        ("ArrayOfAlarmInfo", TypeInfo::Value { name: "ArrayOfAlarmInfo", make_deserializer: || make_deser_with::<Vec<super::structs::AlarmInfo>>(wrap_array_of_alarm_info), from_value: |v| from_val_with::<Vec<super::structs::AlarmInfo>>(v, wrap_array_of_alarm_info) }),
        ("ArrayOfNvdimmGuid", TypeInfo::Value { name: "ArrayOfNvdimmGuid", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmGuid>>(wrap_array_of_nvdimm_guid), from_value: |v| from_val_with::<Vec<super::structs::NvdimmGuid>>(v, wrap_array_of_nvdimm_guid) }),
        ("ArrayOfVsanResourceCheckSpec", TypeInfo::Value { name: "ArrayOfVsanResourceCheckSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanResourceCheckSpec>>(wrap_array_of_vsan_resource_check_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanResourceCheckSpec>>(v, wrap_array_of_vsan_resource_check_spec) }),
        ("EventDescriptionEventDetail", TypeInfo::Object { name: "EventDescriptionEventDetail", builder_fn: || Box::new(EventDescriptionEventDetailFields::new()) }),
        ("ArrayOfVirtualDiskFlatVer2BackingOption", TypeInfo::Value { name: "ArrayOfVirtualDiskFlatVer2BackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskFlatVer2BackingOption>>(wrap_array_of_virtual_disk_flat_ver_2_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskFlatVer2BackingOption>>(v, wrap_array_of_virtual_disk_flat_ver_2_backing_option) }),
        ("ArrayOfCustomizationGuiRunOnce", TypeInfo::Value { name: "ArrayOfCustomizationGuiRunOnce", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationGuiRunOnce>>(wrap_array_of_customization_gui_run_once), from_value: |v| from_val_with::<Vec<super::structs::CustomizationGuiRunOnce>>(v, wrap_array_of_customization_gui_run_once) }),
        ("VirtualPointingDeviceOption", TypeInfo::Object { name: "VirtualPointingDeviceOption", builder_fn: || Box::new(VirtualPointingDeviceOptionFields::new()) }),
        ("ArrayOfDuplicateVsanNetworkInterface", TypeInfo::Value { name: "ArrayOfDuplicateVsanNetworkInterface", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_duplicate_vsan_network_interface), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_duplicate_vsan_network_interface) }),
        ("VibVibInfoSoftwareTags", TypeInfo::Object { name: "VibVibInfoSoftwareTags", builder_fn: || Box::new(VibVibInfoSoftwareTagsFields::new()) }),
        ("ArrayOfVslmCreateSpec", TypeInfo::Value { name: "ArrayOfVslmCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VslmCreateSpec>>(wrap_array_of_vslm_create_spec), from_value: |v| from_val_with::<Vec<super::structs::VslmCreateSpec>>(v, wrap_array_of_vslm_create_spec) }),
        ("CustomizationLinuxOptions", TypeInfo::Object { name: "CustomizationLinuxOptions", builder_fn: || Box::new(CustomizationLinuxOptionsFields::new()) }),
        ("ArrayOfClusterAttemptedVmInfo", TypeInfo::Value { name: "ArrayOfClusterAttemptedVmInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAttemptedVmInfo>>(wrap_array_of_cluster_attempted_vm_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterAttemptedVmInfo>>(v, wrap_array_of_cluster_attempted_vm_info) }),
        ("HostCnxFailedTimeoutEvent", TypeInfo::Object { name: "HostCnxFailedTimeoutEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedTimeoutEvent))) }),
        ("ArrayOfDistributedVirtualSwitchProductSpec", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchProductSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchProductSpec>>(wrap_array_of_distributed_virtual_switch_product_spec), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchProductSpec>>(v, wrap_array_of_distributed_virtual_switch_product_spec) }),
        ("VsanPhysicalDiskHealth", TypeInfo::Object { name: "VsanPhysicalDiskHealth", builder_fn: || Box::new(VsanPhysicalDiskHealthFields::new()) }),
        ("OvfSystemFault", TypeInfo::Object { name: "OvfSystemFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfSystemFault))) }),
        ("PbmCompatibilityCheckFault", TypeInfo::Object { name: "PbmCompatibilityCheckFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmCompatibilityCheckFault))) }),
        ("ArrayOfVsanObjectHealth", TypeInfo::Value { name: "ArrayOfVsanObjectHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectHealth>>(wrap_array_of_vsan_object_health), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectHealth>>(v, wrap_array_of_vsan_object_health) }),
        ("ArrayOfVvolDatastoreInfo", TypeInfo::Value { name: "ArrayOfVvolDatastoreInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VvolDatastoreInfo>>(wrap_array_of_vvol_datastore_info), from_value: |v| from_val_with::<Vec<super::structs::VvolDatastoreInfo>>(v, wrap_array_of_vvol_datastore_info) }),
        ("VirtualMachinePciSharedGpuPassthroughInfo", TypeInfo::Object { name: "VirtualMachinePciSharedGpuPassthroughInfo", builder_fn: || Box::new(VirtualMachinePciSharedGpuPassthroughInfoFields::new()) }),
        ("VirtualPCIPassthroughDynamicBackingOption", TypeInfo::Object { name: "VirtualPCIPassthroughDynamicBackingOption", builder_fn: || Box::new(VirtualPciPassthroughDynamicBackingOptionFields::new()) }),
        ("DiagnosticManagerBundleInfo", TypeInfo::Object { name: "DiagnosticManagerBundleInfo", builder_fn: || Box::new(DiagnosticManagerBundleInfoFields::new()) }),
        ("ArrayOfHostNvmeController", TypeInfo::Value { name: "ArrayOfHostNvmeController", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeController>>(wrap_array_of_host_nvme_controller), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeController>>(v, wrap_array_of_host_nvme_controller) }),
        ("IscsiPortInfo", TypeInfo::Object { name: "IscsiPortInfo", builder_fn: || Box::new(IscsiPortInfoFields::new()) }),
        ("ArrayOfVsanResourceConstraint", TypeInfo::Value { name: "ArrayOfVsanResourceConstraint", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_resource_constraint_array)), from_value: |v| cast_to_vsan_resource_constraint_array(from_value(v)?) }),
        ("VslmTaskReason", TypeInfo::Object { name: "VslmTaskReason", builder_fn: || Box::new(VslmTaskReasonFields::new()) }),
        ("PbmCapabilityConstraints", TypeInfo::Object { name: "PbmCapabilityConstraints", builder_fn: || Box::new(PbmCapabilityConstraintsFields::new()) }),
        ("DvsMacRewriteNetworkRuleAction", TypeInfo::Object { name: "DvsMacRewriteNetworkRuleAction", builder_fn: || Box::new(DvsMacRewriteNetworkRuleActionFields::new()) }),
        ("DistributedVirtualSwitchManagerCompatibilityResult", TypeInfo::Object { name: "DistributedVirtualSwitchManagerCompatibilityResult", builder_fn: || Box::new(DistributedVirtualSwitchManagerCompatibilityResultFields::new()) }),
        ("VsanVdsPgMigrationHostInfo", TypeInfo::Object { name: "VsanVdsPgMigrationHostInfo", builder_fn: || Box::new(VsanVdsPgMigrationHostInfoFields::new()) }),
        ("ToolsConfigInfoToolsLastInstallInfo", TypeInfo::Object { name: "ToolsConfigInfoToolsLastInstallInfo", builder_fn: || Box::new(ToolsConfigInfoToolsLastInstallInfoFields::new()) }),
        ("ArrayOfHostUnresolvedVmfsResolutionSpec", TypeInfo::Value { name: "ArrayOfHostUnresolvedVmfsResolutionSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostUnresolvedVmfsResolutionSpec>>(wrap_array_of_host_unresolved_vmfs_resolution_spec), from_value: |v| from_val_with::<Vec<super::structs::HostUnresolvedVmfsResolutionSpec>>(v, wrap_array_of_host_unresolved_vmfs_resolution_spec) }),
        ("PeerNotReachable", TypeInfo::Object { name: "PeerNotReachable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PeerNotReachable))) }),
        ("ArrayOfHostMissingNetworksEvent", TypeInfo::Value { name: "ArrayOfHostMissingNetworksEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_missing_networks_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_missing_networks_event) }),
        ("ArrayOfLicenseSource", TypeInfo::Value { name: "ArrayOfLicenseSource", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_license_source_array)), from_value: |v| cast_to_license_source_array(from_value(v)?) }),
        ("ArrayOfRecoveredTargetGroupMemberInfo", TypeInfo::Value { name: "ArrayOfRecoveredTargetGroupMemberInfo", make_deserializer: || make_deser_with::<Vec<super::structs::RecoveredTargetGroupMemberInfo>>(wrap_array_of_recovered_target_group_member_info), from_value: |v| from_val_with::<Vec<super::structs::RecoveredTargetGroupMemberInfo>>(v, wrap_array_of_recovered_target_group_member_info) }),
        ("VsanSmartParameter", TypeInfo::Object { name: "VsanSmartParameter", builder_fn: || Box::new(VsanSmartParameterFields::new()) }),
        ("HostFeatureVersionInfo", TypeInfo::Object { name: "HostFeatureVersionInfo", builder_fn: || Box::new(HostFeatureVersionInfoFields::new()) }),
        ("OpaqueNetworkCapability", TypeInfo::Object { name: "OpaqueNetworkCapability", builder_fn: || Box::new(OpaqueNetworkCapabilityFields::new()) }),
        ("ArrayOfClusterComputeResourceSummary", TypeInfo::Value { name: "ArrayOfClusterComputeResourceSummary", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceSummary>>(wrap_array_of_cluster_compute_resource_summary), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceSummary>>(v, wrap_array_of_cluster_compute_resource_summary) }),
        ("ArrayOfNoValidReplica", TypeInfo::Value { name: "ArrayOfNoValidReplica", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_valid_replica), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_valid_replica) }),
        ("StorageDrsCannotMoveFTVm", TypeInfo::Object { name: "StorageDrsCannotMoveFTVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsCannotMoveFtVm))) }),
        ("ArrayOfVirtualMachineMemoryReservationSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineMemoryReservationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineMemoryReservationSpec>>(wrap_array_of_virtual_machine_memory_reservation_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineMemoryReservationSpec>>(v, wrap_array_of_virtual_machine_memory_reservation_spec) }),
        ("FileInfo", TypeInfo::Object { name: "FileInfo", builder_fn: || Box::new(FileInfoFields::new()) }),
        ("ArrayOfVirtualPrecisionClockOption", TypeInfo::Value { name: "ArrayOfVirtualPrecisionClockOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPrecisionClockOption>>(wrap_array_of_virtual_precision_clock_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPrecisionClockOption>>(v, wrap_array_of_virtual_precision_clock_option) }),
        ("VmSuspended", TypeInfo::Object { name: "VmSuspended", builder_fn: || Box::new(VmSuspendedFields::new()) }),
        ("EntityReference", TypeInfo::Object { name: "EntityReference", builder_fn: || Box::new(EntityReferenceFields::new()) }),
        ("ArrayOfVirtualSCSIControllerOption", TypeInfo::Value { name: "ArrayOfVirtualSCSIControllerOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_scsi_controller_option_array)), from_value: |v| cast_to_virtual_scsi_controller_option_array(from_value(v)?) }),
        ("VsanFileServiceRootFsHealth", TypeInfo::Object { name: "VsanFileServiceRootFsHealth", builder_fn: || Box::new(VsanFileServiceRootFsHealthFields::new()) }),
        ("ArrayOfOvfUnexpectedElement", TypeInfo::Value { name: "ArrayOfOvfUnexpectedElement", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unexpected_element), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unexpected_element) }),
        ("OvfPropertyQualifierDuplicate", TypeInfo::Object { name: "OvfPropertyQualifierDuplicate", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfPropertyQualifierDuplicate))) }),
        ("ArrayOfClusterComputeResourceHostConfigurationValidation", TypeInfo::Value { name: "ArrayOfClusterComputeResourceHostConfigurationValidation", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceHostConfigurationValidation>>(wrap_array_of_cluster_compute_resource_host_configuration_validation), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceHostConfigurationValidation>>(v, wrap_array_of_cluster_compute_resource_host_configuration_validation) }),
        ("ArrayOfVmwareDistributedVirtualSwitchPvlanSpec", TypeInfo::Value { name: "ArrayOfVmwareDistributedVirtualSwitchPvlanSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VmwareDistributedVirtualSwitchPvlanSpec>>(wrap_array_of_vmware_distributed_virtual_switch_pvlan_spec), from_value: |v| from_val_with::<Vec<super::structs::VmwareDistributedVirtualSwitchPvlanSpec>>(v, wrap_array_of_vmware_distributed_virtual_switch_pvlan_spec) }),
        ("ArrayOfTemplateUpgradedEvent", TypeInfo::Value { name: "ArrayOfTemplateUpgradedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_template_upgraded_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_template_upgraded_event) }),
        ("NoVcManagedIpConfigured", TypeInfo::Object { name: "NoVcManagedIpConfigured", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoVcManagedIpConfigured))) }),
        ("NvdimmDimmInfo", TypeInfo::Object { name: "NvdimmDimmInfo", builder_fn: || Box::new(NvdimmDimmInfoFields::new()) }),
        ("ArrayOfHostDatastoreSystemDatastoreResult", TypeInfo::Value { name: "ArrayOfHostDatastoreSystemDatastoreResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostDatastoreSystemDatastoreResult>>(wrap_array_of_host_datastore_system_datastore_result), from_value: |v| from_val_with::<Vec<super::structs::HostDatastoreSystemDatastoreResult>>(v, wrap_array_of_host_datastore_system_datastore_result) }),
        ("ArrayOfDistributedVirtualSwitchHostMemberRuntimeState", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchHostMemberRuntimeState", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberRuntimeState>>(wrap_array_of_distributed_virtual_switch_host_member_runtime_state), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberRuntimeState>>(v, wrap_array_of_distributed_virtual_switch_host_member_runtime_state) }),
        ("ArrayOfDVSHealthCheckCapability", TypeInfo::Value { name: "ArrayOfDVSHealthCheckCapability", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_health_check_capability_array)), from_value: |v| cast_to_dvs_health_check_capability_array(from_value(v)?) }),
        ("AutoStartWaitHeartbeatSetting", TypeInfo::Value { name: "AutoStartWaitHeartbeatSetting", make_deserializer: || make_deser_with::<super::enums::AutoStartWaitHeartbeatSettingEnum>(wrap_auto_start_wait_heartbeat_setting), from_value: |v| from_val_with::<super::enums::AutoStartWaitHeartbeatSettingEnum>(v, wrap_auto_start_wait_heartbeat_setting) }),
        ("ArrayOfIscsiStoragePort", TypeInfo::Value { name: "ArrayOfIscsiStoragePort", make_deserializer: || make_deser_with::<Vec<super::structs::IscsiStoragePort>>(wrap_array_of_iscsi_storage_port), from_value: |v| from_val_with::<Vec<super::structs::IscsiStoragePort>>(v, wrap_array_of_iscsi_storage_port) }),
        ("ArrayOfVsanUpgradeSystemNetworkPartitionInfo", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemNetworkPartitionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemNetworkPartitionInfo>>(wrap_array_of_vsan_upgrade_system_network_partition_info), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemNetworkPartitionInfo>>(v, wrap_array_of_vsan_upgrade_system_network_partition_info) }),
        ("VAppOperationInProgress", TypeInfo::Object { name: "VAppOperationInProgress", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VAppOperationInProgress))) }),
        ("ArrayOfOvfPropertyValue", TypeInfo::Value { name: "ArrayOfOvfPropertyValue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_property_value), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_property_value) }),
        ("ArrayOfVirtualDeviceConnectInfo", TypeInfo::Value { name: "ArrayOfVirtualDeviceConnectInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDeviceConnectInfo>>(wrap_array_of_virtual_device_connect_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDeviceConnectInfo>>(v, wrap_array_of_virtual_device_connect_info) }),
        ("VirtualMachineInstantCloneSpec", TypeInfo::Object { name: "VirtualMachineInstantCloneSpec", builder_fn: || Box::new(VirtualMachineInstantCloneSpecFields::new()) }),
        ("ArrayOfHostNvmeDiscoverSpec", TypeInfo::Value { name: "ArrayOfHostNvmeDiscoverSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeDiscoverSpec>>(wrap_array_of_host_nvme_discover_spec), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeDiscoverSpec>>(v, wrap_array_of_host_nvme_discover_spec) }),
        ("ArrayOfHostPMemVolume", TypeInfo::Value { name: "ArrayOfHostPMemVolume", make_deserializer: || make_deser_with::<Vec<super::structs::HostPMemVolume>>(wrap_array_of_host_p_mem_volume), from_value: |v| from_val_with::<Vec<super::structs::HostPMemVolume>>(v, wrap_array_of_host_p_mem_volume) }),
        ("ClusterTagCategoryUpdateSpec", TypeInfo::Object { name: "ClusterTagCategoryUpdateSpec", builder_fn: || Box::new(ClusterTagCategoryUpdateSpecFields::new()) }),
        ("ArrayOfHostInternetScsiHbaDigestProperties", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaDigestProperties", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaDigestProperties>>(wrap_array_of_host_internet_scsi_hba_digest_properties), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaDigestProperties>>(v, wrap_array_of_host_internet_scsi_hba_digest_properties) }),
        ("ArrayOfAlarmSnmpFailedEvent", TypeInfo::Value { name: "ArrayOfAlarmSnmpFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_snmp_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_snmp_failed_event) }),
        ("VirtualMachineSoundInfo", TypeInfo::Object { name: "VirtualMachineSoundInfo", builder_fn: || Box::new(VirtualMachineSoundInfoFields::new()) }),
        ("ArrayOfVsanSpaceEfficiencyMetadataSize", TypeInfo::Value { name: "ArrayOfVsanSpaceEfficiencyMetadataSize", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSpaceEfficiencyMetadataSize>>(wrap_array_of_vsan_space_efficiency_metadata_size), from_value: |v| from_val_with::<Vec<super::structs::VsanSpaceEfficiencyMetadataSize>>(v, wrap_array_of_vsan_space_efficiency_metadata_size) }),
        ("VsanComplianceResult", TypeInfo::Object { name: "VsanComplianceResult", builder_fn: || Box::new(VsanComplianceResultFields::new()) }),
        ("ArrayOfClusterInitialPlacementAction", TypeInfo::Value { name: "ArrayOfClusterInitialPlacementAction", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterInitialPlacementAction>>(wrap_array_of_cluster_initial_placement_action), from_value: |v| from_val_with::<Vec<super::structs::ClusterInitialPlacementAction>>(v, wrap_array_of_cluster_initial_placement_action) }),
        ("OvfPropertyValue", TypeInfo::Object { name: "OvfPropertyValue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfPropertyValue))) }),
        ("ArrayOfDatastoreHostMount", TypeInfo::Value { name: "ArrayOfDatastoreHostMount", make_deserializer: || make_deser_with::<Vec<super::structs::DatastoreHostMount>>(wrap_array_of_datastore_host_mount), from_value: |v| from_val_with::<Vec<super::structs::DatastoreHostMount>>(v, wrap_array_of_datastore_host_mount) }),
        ("CustomizationCustomIpGenerator", TypeInfo::Object { name: "CustomizationCustomIpGenerator", builder_fn: || Box::new(CustomizationCustomIpGeneratorFields::new()) }),
        ("ArrayOfExtManagedEntityInfo", TypeInfo::Value { name: "ArrayOfExtManagedEntityInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtManagedEntityInfo>>(wrap_array_of_ext_managed_entity_info), from_value: |v| from_val_with::<Vec<super::structs::ExtManagedEntityInfo>>(v, wrap_array_of_ext_managed_entity_info) }),
        ("ArrayOfVsanClusterHealthResultColumnInfo", TypeInfo::Value { name: "ArrayOfVsanClusterHealthResultColumnInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthResultColumnInfo>>(wrap_array_of_vsan_cluster_health_result_column_info), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthResultColumnInfo>>(v, wrap_array_of_vsan_cluster_health_result_column_info) }),
        ("ArrayOfDouble", TypeInfo::Value { name: "ArrayOfDouble", make_deserializer: || make_deser_with::<Vec<f64>>(wrap_array_of_double), from_value: |v| from_val_with::<Vec<f64>>(v, wrap_array_of_double) }),
        ("ArrayOfVirtualMachineQuickStatsMemoryTierStats", TypeInfo::Value { name: "ArrayOfVirtualMachineQuickStatsMemoryTierStats", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineQuickStatsMemoryTierStats>>(wrap_array_of_virtual_machine_quick_stats_memory_tier_stats), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineQuickStatsMemoryTierStats>>(v, wrap_array_of_virtual_machine_quick_stats_memory_tier_stats) }),
        ("VimClusterVsanFaultDomainsConfigSpec", TypeInfo::Object { name: "VimClusterVsanFaultDomainsConfigSpec", builder_fn: || Box::new(VimClusterVsanFaultDomainsConfigSpecFields::new()) }),
        ("ArrayOfClusterComputeResourceDVSSettingDVPortgroupToServiceMapping", TypeInfo::Value { name: "ArrayOfClusterComputeResourceDVSSettingDVPortgroupToServiceMapping", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceDvsSettingDvPortgroupToServiceMapping>>(wrap_array_of_cluster_compute_resource_dvs_setting_dv_portgroup_to_service_mapping), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceDvsSettingDvPortgroupToServiceMapping>>(v, wrap_array_of_cluster_compute_resource_dvs_setting_dv_portgroup_to_service_mapping) }),
        ("ArrayOfVirtualMachineFileLayoutExSnapshotLayout", TypeInfo::Value { name: "ArrayOfVirtualMachineFileLayoutExSnapshotLayout", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFileLayoutExSnapshotLayout>>(wrap_array_of_virtual_machine_file_layout_ex_snapshot_layout), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFileLayoutExSnapshotLayout>>(v, wrap_array_of_virtual_machine_file_layout_ex_snapshot_layout) }),
        ("ArrayOfVAppConfigFault", TypeInfo::Value { name: "ArrayOfVAppConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_app_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_app_config_fault) }),
        ("InvalidPropertyValue", TypeInfo::Object { name: "InvalidPropertyValue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidPropertyValue))) }),
        ("ArrayOfHostInternetScsiHbaNetworkBindingSupportType", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaNetworkBindingSupportType", make_deserializer: || make_deser_with::<Vec<super::enums::HostInternetScsiHbaNetworkBindingSupportTypeEnum>>(wrap_array_of_host_internet_scsi_hba_network_binding_support_type), from_value: |v| from_val_with::<Vec<super::enums::HostInternetScsiHbaNetworkBindingSupportTypeEnum>>(v, wrap_array_of_host_internet_scsi_hba_network_binding_support_type) }),
        ("VsanUpgradeSystemAPIBrokenIssue", TypeInfo::Object { name: "VsanUpgradeSystemAPIBrokenIssue", builder_fn: || Box::new(VsanUpgradeSystemApiBrokenIssueFields::new()) }),
        ("VMINotSupported", TypeInfo::Object { name: "VMINotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmiNotSupported))) }),
        ("ArrayOfVirtualMachineRelocateTransformation", TypeInfo::Value { name: "ArrayOfVirtualMachineRelocateTransformation", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualMachineRelocateTransformationEnum>>(wrap_array_of_virtual_machine_relocate_transformation), from_value: |v| from_val_with::<Vec<super::enums::VirtualMachineRelocateTransformationEnum>>(v, wrap_array_of_virtual_machine_relocate_transformation) }),
        ("DatacenterEventArgument", TypeInfo::Object { name: "DatacenterEventArgument", builder_fn: || Box::new(DatacenterEventArgumentFields::new()) }),
        ("ArrayOfHostFirewallConfigRuleSetConfig", TypeInfo::Value { name: "ArrayOfHostFirewallConfigRuleSetConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostFirewallConfigRuleSetConfig>>(wrap_array_of_host_firewall_config_rule_set_config), from_value: |v| from_val_with::<Vec<super::structs::HostFirewallConfigRuleSetConfig>>(v, wrap_array_of_host_firewall_config_rule_set_config) }),
        ("VirtualMachineMemoryReservationSpec", TypeInfo::Object { name: "VirtualMachineMemoryReservationSpec", builder_fn: || Box::new(VirtualMachineMemoryReservationSpecFields::new()) }),
        ("ArrayOfStorageRequirement", TypeInfo::Value { name: "ArrayOfStorageRequirement", make_deserializer: || make_deser_with::<Vec<super::structs::StorageRequirement>>(wrap_array_of_storage_requirement), from_value: |v| from_val_with::<Vec<super::structs::StorageRequirement>>(v, wrap_array_of_storage_requirement) }),
        ("VFlashModuleVersionIncompatible", TypeInfo::Object { name: "VFlashModuleVersionIncompatible", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VFlashModuleVersionIncompatible))) }),
        ("PlacementRankSpec", TypeInfo::Object { name: "PlacementRankSpec", builder_fn: || Box::new(PlacementRankSpecFields::new()) }),
        ("ArrayOfHostNasVolumeSpec", TypeInfo::Value { name: "ArrayOfHostNasVolumeSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostNasVolumeSpec>>(wrap_array_of_host_nas_volume_spec), from_value: |v| from_val_with::<Vec<super::structs::HostNasVolumeSpec>>(v, wrap_array_of_host_nas_volume_spec) }),
        ("HostScsiDisk", TypeInfo::Object { name: "HostScsiDisk", builder_fn: || Box::new(HostScsiDiskFields::new()) }),
        ("ArrayOfVirtualDeviceConfigSpec", TypeInfo::Value { name: "ArrayOfVirtualDeviceConfigSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_config_spec_array)), from_value: |v| cast_to_virtual_device_config_spec_array(from_value(v)?) }),
        ("RoleRemovedEvent", TypeInfo::Object { name: "RoleRemovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::RoleRemovedEvent))) }),
        ("ArrayOfCnsQueryFilter", TypeInfo::Value { name: "ArrayOfCnsQueryFilter", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cns_query_filter_array)), from_value: |v| cast_to_cns_query_filter_array(from_value(v)?) }),
        ("ArrayOfHostSriovDevicePoolInfo", TypeInfo::Value { name: "ArrayOfHostSriovDevicePoolInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_sriov_device_pool_info_array)), from_value: |v| cast_to_host_sriov_device_pool_info_array(from_value(v)?) }),
        ("AlarmScriptFailedEvent", TypeInfo::Object { name: "AlarmScriptFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmScriptFailedEvent))) }),
        ("ArrayOfVslmRelocateSpec", TypeInfo::Value { name: "ArrayOfVslmRelocateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VslmRelocateSpec>>(wrap_array_of_vslm_relocate_spec), from_value: |v| from_val_with::<Vec<super::structs::VslmRelocateSpec>>(v, wrap_array_of_vslm_relocate_spec) }),
        ("VsanPerfTimeRange", TypeInfo::Object { name: "VsanPerfTimeRange", builder_fn: || Box::new(VsanPerfTimeRangeFields::new()) }),
        ("ArrayOfOvfConsumerUndeclaredSection", TypeInfo::Value { name: "ArrayOfOvfConsumerUndeclaredSection", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_consumer_undeclared_section), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_consumer_undeclared_section) }),
        ("AlarmEventArgument", TypeInfo::Object { name: "AlarmEventArgument", builder_fn: || Box::new(AlarmEventArgumentFields::new()) }),
        ("CryptoSpecRegister", TypeInfo::Object { name: "CryptoSpecRegister", builder_fn: || Box::new(CryptoSpecRegisterFields::new()) }),
        ("ArrayOfScheduledTaskRemovedEvent", TypeInfo::Value { name: "ArrayOfScheduledTaskRemovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_scheduled_task_removed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_scheduled_task_removed_event) }),
        ("ArrayOfHostRemovedEvent", TypeInfo::Value { name: "ArrayOfHostRemovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_removed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_removed_event) }),
        ("ArrayOfVirtualParallelPortFileBackingOption", TypeInfo::Value { name: "ArrayOfVirtualParallelPortFileBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualParallelPortFileBackingOption>>(wrap_array_of_virtual_parallel_port_file_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualParallelPortFileBackingOption>>(v, wrap_array_of_virtual_parallel_port_file_backing_option) }),
        ("PhysCompatRDMNotSupported", TypeInfo::Object { name: "PhysCompatRDMNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PhysCompatRdmNotSupported))) }),
        ("ArrayOfSwapDatastoreUnset", TypeInfo::Value { name: "ArrayOfSwapDatastoreUnset", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_swap_datastore_unset), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_swap_datastore_unset) }),
        ("ArrayOfClusterEvent", TypeInfo::Value { name: "ArrayOfClusterEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_cluster_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_cluster_event) }),
        ("ArrayOfExtensionServerInfo", TypeInfo::Value { name: "ArrayOfExtensionServerInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensionServerInfo>>(wrap_array_of_extension_server_info), from_value: |v| from_val_with::<Vec<super::structs::ExtensionServerInfo>>(v, wrap_array_of_extension_server_info) }),
        ("HostAccessMode", TypeInfo::Value { name: "HostAccessMode", make_deserializer: || make_deser_with::<super::enums::HostAccessModeEnum>(wrap_host_access_mode), from_value: |v| from_val_with::<super::enums::HostAccessModeEnum>(v, wrap_host_access_mode) }),
        ("VirtualPrecisionClockSystemClockBackingOption", TypeInfo::Object { name: "VirtualPrecisionClockSystemClockBackingOption", builder_fn: || Box::new(VirtualPrecisionClockSystemClockBackingOptionFields::new()) }),
        ("VirtualMachineConfigSpec", TypeInfo::Object { name: "VirtualMachineConfigSpec", builder_fn: || Box::new(VirtualMachineConfigSpecFields::new()) }),
        ("ArrayOfPrivilegePolicyDef", TypeInfo::Value { name: "ArrayOfPrivilegePolicyDef", make_deserializer: || make_deser_with::<Vec<super::structs::PrivilegePolicyDef>>(wrap_array_of_privilege_policy_def), from_value: |v| from_val_with::<Vec<super::structs::PrivilegePolicyDef>>(v, wrap_array_of_privilege_policy_def) }),
        ("VslmVsoVStorageObjectAssociationsVmDiskAssociation", TypeInfo::Object { name: "VslmVsoVStorageObjectAssociationsVmDiskAssociation", builder_fn: || Box::new(VslmVsoVStorageObjectAssociationsVmDiskAssociationFields::new()) }),
        ("ArrayOfSystemEventInfo", TypeInfo::Value { name: "ArrayOfSystemEventInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SystemEventInfo>>(wrap_array_of_system_event_info), from_value: |v| from_val_with::<Vec<super::structs::SystemEventInfo>>(v, wrap_array_of_system_event_info) }),
        ("VsanMountPrecheckNetworkConnectivityDetail", TypeInfo::Object { name: "VsanMountPrecheckNetworkConnectivityDetail", builder_fn: || Box::new(VsanMountPrecheckNetworkConnectivityDetailFields::new()) }),
        ("VmEndReplayingEvent", TypeInfo::Object { name: "VmEndReplayingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmEndReplayingEvent))) }),
        ("VirtualDeviceConfigSpecOperation", TypeInfo::Value { name: "VirtualDeviceConfigSpecOperation", make_deserializer: || make_deser_with::<super::enums::VirtualDeviceConfigSpecOperationEnum>(wrap_virtual_device_config_spec_operation), from_value: |v| from_val_with::<super::enums::VirtualDeviceConfigSpecOperationEnum>(v, wrap_virtual_device_config_spec_operation) }),
        ("ArrayOfTaskManagerViewByStartId", TypeInfo::Value { name: "ArrayOfTaskManagerViewByStartId", make_deserializer: || make_deser_with::<Vec<super::structs::TaskManagerViewByStartId>>(wrap_array_of_task_manager_view_by_start_id), from_value: |v| from_val_with::<Vec<super::structs::TaskManagerViewByStartId>>(v, wrap_array_of_task_manager_view_by_start_id) }),
        ("VirtualSerialPort", TypeInfo::Object { name: "VirtualSerialPort", builder_fn: || Box::new(VirtualSerialPortFields::new()) }),
        ("CnsCursor", TypeInfo::Object { name: "CnsCursor", builder_fn: || Box::new(CnsCursorFields::new()) }),
        ("ArrayOfInvalidSnapshotFormat", TypeInfo::Value { name: "ArrayOfInvalidSnapshotFormat", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_snapshot_format), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_snapshot_format) }),
        ("VmResettingEvent", TypeInfo::Object { name: "VmResettingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmResettingEvent))) }),
        ("VirtualNicManagerNetConfig", TypeInfo::Object { name: "VirtualNicManagerNetConfig", builder_fn: || Box::new(VirtualNicManagerNetConfigFields::new()) }),
        ("MultipleCertificatesVerifyFault", TypeInfo::Object { name: "MultipleCertificatesVerifyFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MultipleCertificatesVerifyFault))) }),
        ("TaskFilterSpecTimeOption", TypeInfo::Value { name: "TaskFilterSpecTimeOption", make_deserializer: || make_deser_with::<super::enums::TaskFilterSpecTimeOptionEnum>(wrap_task_filter_spec_time_option), from_value: |v| from_val_with::<super::enums::TaskFilterSpecTimeOptionEnum>(v, wrap_task_filter_spec_time_option) }),
        ("VasaProviderInfo", TypeInfo::Object { name: "VasaProviderInfo", builder_fn: || Box::new(VasaProviderInfoFields::new()) }),
        ("VslmDatastoreSyncStatus", TypeInfo::Object { name: "VslmDatastoreSyncStatus", builder_fn: || Box::new(VslmDatastoreSyncStatusFields::new()) }),
        ("ArrayOfTaskReasonUser", TypeInfo::Value { name: "ArrayOfTaskReasonUser", make_deserializer: || make_deser_with::<Vec<super::structs::TaskReasonUser>>(wrap_array_of_task_reason_user), from_value: |v| from_val_with::<Vec<super::structs::TaskReasonUser>>(v, wrap_array_of_task_reason_user) }),
        ("ArrayOfCannotAddHostWithFTVmToNonHACluster", TypeInfo::Value { name: "ArrayOfCannotAddHostWithFTVmToNonHACluster", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_add_host_with_ft_vm_to_non_ha_cluster), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_add_host_with_ft_vm_to_non_ha_cluster) }),
        ("ArrayOfVirtualPCNet32", TypeInfo::Value { name: "ArrayOfVirtualPCNet32", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPcNet32>>(wrap_array_of_virtual_pc_net_32), from_value: |v| from_val_with::<Vec<super::structs::VirtualPcNet32>>(v, wrap_array_of_virtual_pc_net_32) }),
        ("NoDiskSpace", TypeInfo::Object { name: "NoDiskSpace", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoDiskSpace))) }),
        ("DvsApplyOperationFault", TypeInfo::Object { name: "DvsApplyOperationFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DvsApplyOperationFault))) }),
        ("ExtSolutionManagerInfoTabInfo", TypeInfo::Object { name: "ExtSolutionManagerInfoTabInfo", builder_fn: || Box::new(ExtSolutionManagerInfoTabInfoFields::new()) }),
        ("ArrayOfVsanObjectExtraAttributes", TypeInfo::Value { name: "ArrayOfVsanObjectExtraAttributes", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectExtraAttributes>>(wrap_array_of_vsan_object_extra_attributes), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectExtraAttributes>>(v, wrap_array_of_vsan_object_extra_attributes) }),
        ("DatastoreDuplicatedEvent", TypeInfo::Object { name: "DatastoreDuplicatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreDuplicatedEvent))) }),
        ("ArrayOfVirtualEthernetCardNetworkBackingOption", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardNetworkBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEthernetCardNetworkBackingOption>>(wrap_array_of_virtual_ethernet_card_network_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualEthernetCardNetworkBackingOption>>(v, wrap_array_of_virtual_ethernet_card_network_backing_option) }),
        ("VsanHclFirmwareFile", TypeInfo::Object { name: "VsanHclFirmwareFile", builder_fn: || Box::new(VsanHclFirmwareFileFields::new()) }),
        ("ArrayOfVirtualSoundCardDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualSoundCardDeviceBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSoundCardDeviceBackingInfo>>(wrap_array_of_virtual_sound_card_device_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualSoundCardDeviceBackingInfo>>(v, wrap_array_of_virtual_sound_card_device_backing_info) }),
        ("HostTpmAttestationReport", TypeInfo::Object { name: "HostTpmAttestationReport", builder_fn: || Box::new(HostTpmAttestationReportFields::new()) }),
        ("ArrayOfDVPortgroupCreatedEvent", TypeInfo::Value { name: "ArrayOfDVPortgroupCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dv_portgroup_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dv_portgroup_created_event) }),
        ("PromoteParam", TypeInfo::Object { name: "PromoteParam", builder_fn: || Box::new(PromoteParamFields::new()) }),
        ("ArrayOfSnapshotMoveFromNonHomeNotSupported", TypeInfo::Value { name: "ArrayOfSnapshotMoveFromNonHomeNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_move_from_non_home_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_move_from_non_home_not_supported) }),
        ("ArrayOfGeneralVmWarningEvent", TypeInfo::Value { name: "ArrayOfGeneralVmWarningEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_general_vm_warning_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_general_vm_warning_event) }),
        ("ArrayOfDvsMergedEvent", TypeInfo::Value { name: "ArrayOfDvsMergedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_merged_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_merged_event) }),
        ("InvalidCAMServer", TypeInfo::Object { name: "InvalidCAMServer", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidCamServer))) }),
        ("ArrayOfCannotDeleteFile", TypeInfo::Value { name: "ArrayOfCannotDeleteFile", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_delete_file), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_delete_file) }),
        ("StorageAlarm", TypeInfo::Object { name: "StorageAlarm", builder_fn: || Box::new(StorageAlarmFields::new()) }),
        ("ArrayOfSolutionsProfileIdStoragePolicy", TypeInfo::Value { name: "ArrayOfSolutionsProfileIdStoragePolicy", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsProfileIdStoragePolicy>>(wrap_array_of_solutions_profile_id_storage_policy), from_value: |v| from_val_with::<Vec<super::structs::SolutionsProfileIdStoragePolicy>>(v, wrap_array_of_solutions_profile_id_storage_policy) }),
        ("ArrayOfInvalidHostConnectionState", TypeInfo::Value { name: "ArrayOfInvalidHostConnectionState", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_host_connection_state), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_host_connection_state) }),
        ("ComputeResourceEventArgument", TypeInfo::Object { name: "ComputeResourceEventArgument", builder_fn: || Box::new(ComputeResourceEventArgumentFields::new()) }),
        ("SSLDisabledFault", TypeInfo::Object { name: "SSLDisabledFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SslDisabledFault))) }),
        ("VStorageObjectSnapshotInfo", TypeInfo::Object { name: "VStorageObjectSnapshotInfo", builder_fn: || Box::new(VStorageObjectSnapshotInfoFields::new()) }),
        ("VsanPerfMemberInfo", TypeInfo::Object { name: "VsanPerfMemberInfo", builder_fn: || Box::new(VsanPerfMemberInfoFields::new()) }),
        ("ArrayOfDVPortgroupEvent", TypeInfo::Value { name: "ArrayOfDVPortgroupEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dv_portgroup_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dv_portgroup_event) }),
        ("VmEvent", TypeInfo::Object { name: "VmEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmEvent))) }),
        ("ArrayOfVSANStretchedClusterHostVirtualApplianceStatus", TypeInfo::Value { name: "ArrayOfVSANStretchedClusterHostVirtualApplianceStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VsanStretchedClusterHostVirtualApplianceStatus>>(wrap_array_of_vsan_stretched_cluster_host_virtual_appliance_status), from_value: |v| from_val_with::<Vec<super::structs::VsanStretchedClusterHostVirtualApplianceStatus>>(v, wrap_array_of_vsan_stretched_cluster_host_virtual_appliance_status) }),
        ("ArrayOfVsanIscsiLUN", TypeInfo::Value { name: "ArrayOfVsanIscsiLUN", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiLun>>(wrap_array_of_vsan_iscsi_lun), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiLun>>(v, wrap_array_of_vsan_iscsi_lun) }),
        ("DVSConfigInfo", TypeInfo::Object { name: "DVSConfigInfo", builder_fn: || Box::new(DvsConfigInfoFields::new()) }),
        ("VirtualDiskFlatVer2BackingInfo", TypeInfo::Object { name: "VirtualDiskFlatVer2BackingInfo", builder_fn: || Box::new(VirtualDiskFlatVer2BackingInfoFields::new()) }),
        ("ArrayOfDatabaseError", TypeInfo::Value { name: "ArrayOfDatabaseError", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_database_error), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_database_error) }),
        ("SnapshotMoveToNonHomeNotSupported", TypeInfo::Object { name: "SnapshotMoveToNonHomeNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotMoveToNonHomeNotSupported))) }),
        ("ArrayOfTicketedSessionAuthentication", TypeInfo::Value { name: "ArrayOfTicketedSessionAuthentication", make_deserializer: || make_deser_with::<Vec<super::structs::TicketedSessionAuthentication>>(wrap_array_of_ticketed_session_authentication), from_value: |v| from_val_with::<Vec<super::structs::TicketedSessionAuthentication>>(v, wrap_array_of_ticketed_session_authentication) }),
        ("ClusterMigrationAction", TypeInfo::Object { name: "ClusterMigrationAction", builder_fn: || Box::new(ClusterMigrationActionFields::new()) }),
        ("FileLockInfo", TypeInfo::Object { name: "FileLockInfo", builder_fn: || Box::new(FileLockInfoFields::new()) }),
        ("ArrayOfHostDasEvent", TypeInfo::Value { name: "ArrayOfHostDasEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_das_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_das_event) }),
        ("ArrayOfPbmCapabilityMetadata", TypeInfo::Value { name: "ArrayOfPbmCapabilityMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityMetadata>>(wrap_array_of_pbm_capability_metadata), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityMetadata>>(v, wrap_array_of_pbm_capability_metadata) }),
        ("NvdimmPMemNamespaceCreateSpec", TypeInfo::Object { name: "NvdimmPMemNamespaceCreateSpec", builder_fn: || Box::new(NvdimmPMemNamespaceCreateSpecFields::new()) }),
        ("ArrayOfHostStorageOperationalInfo", TypeInfo::Value { name: "ArrayOfHostStorageOperationalInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostStorageOperationalInfo>>(wrap_array_of_host_storage_operational_info), from_value: |v| from_val_with::<Vec<super::structs::HostStorageOperationalInfo>>(v, wrap_array_of_host_storage_operational_info) }),
        ("HostFlagInfo", TypeInfo::Object { name: "HostFlagInfo", builder_fn: || Box::new(HostFlagInfoFields::new()) }),
        ("ArrayOfVirtualDeviceDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDeviceDeviceBackingInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_device_backing_info_array)), from_value: |v| cast_to_virtual_device_device_backing_info_array(from_value(v)?) }),
        ("DiagnosticManagerLogHeader", TypeInfo::Object { name: "DiagnosticManagerLogHeader", builder_fn: || Box::new(DiagnosticManagerLogHeaderFields::new()) }),
        ("VsanDatastoreSpec", TypeInfo::Object { name: "VsanDatastoreSpec", builder_fn: || Box::new(VsanDatastoreSpecFields::new()) }),
        ("ArrayOfVirtualEthernetCardNotSupported", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_virtual_ethernet_card_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_virtual_ethernet_card_not_supported) }),
        ("ArrayOfAgentVmHook", TypeInfo::Value { name: "ArrayOfAgentVmHook", make_deserializer: || make_deser_with::<Vec<super::structs::AgentVmHook>>(wrap_array_of_agent_vm_hook), from_value: |v| from_val_with::<Vec<super::structs::AgentVmHook>>(v, wrap_array_of_agent_vm_hook) }),
        ("HostDasEvent", TypeInfo::Object { name: "HostDasEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostDasEvent))) }),
        ("VmClonedEvent", TypeInfo::Object { name: "VmClonedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmClonedEvent))) }),
        ("ArrayOfPermissionAddedEvent", TypeInfo::Value { name: "ArrayOfPermissionAddedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_permission_added_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_permission_added_event) }),
        ("HostVirtualSwitchBridge", TypeInfo::Object { name: "HostVirtualSwitchBridge", builder_fn: || Box::new(HostVirtualSwitchBridgeFields::new()) }),
        ("VirtualVmxnet3VrdmaOption", TypeInfo::Object { name: "VirtualVmxnet3VrdmaOption", builder_fn: || Box::new(VirtualVmxnet3VrdmaOptionFields::new()) }),
        ("SolutionUserRequired", TypeInfo::Object { name: "SolutionUserRequired", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SolutionUserRequired))) }),
        ("MacRange", TypeInfo::Object { name: "MacRange", builder_fn: || Box::new(MacRangeFields::new()) }),
        ("StorageVmotionIncompatible", TypeInfo::Object { name: "StorageVmotionIncompatible", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageVmotionIncompatible))) }),
        ("ClusterResourceUsageSummary", TypeInfo::Object { name: "ClusterResourceUsageSummary", builder_fn: || Box::new(ClusterResourceUsageSummaryFields::new()) }),
        ("CannotDeleteFile", TypeInfo::Object { name: "CannotDeleteFile", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotDeleteFile))) }),
        ("ChoiceOption", TypeInfo::Object { name: "ChoiceOption", builder_fn: || Box::new(ChoiceOptionFields::new()) }),
        ("HostCpuInfo", TypeInfo::Object { name: "HostCpuInfo", builder_fn: || Box::new(HostCpuInfoFields::new()) }),
        ("ArrayOfVibVibServicesPinnedPemCertificate", TypeInfo::Value { name: "ArrayOfVibVibServicesPinnedPemCertificate", make_deserializer: || make_deser_with::<Vec<super::structs::VibVibServicesPinnedPemCertificate>>(wrap_array_of_vib_vib_services_pinned_pem_certificate), from_value: |v| from_val_with::<Vec<super::structs::VibVibServicesPinnedPemCertificate>>(v, wrap_array_of_vib_vib_services_pinned_pem_certificate) }),
        ("VirtualFloppyDeviceBackingInfo", TypeInfo::Object { name: "VirtualFloppyDeviceBackingInfo", builder_fn: || Box::new(VirtualFloppyDeviceBackingInfoFields::new()) }),
        ("ArrayOfAgencyVMResourcePool", TypeInfo::Value { name: "ArrayOfAgencyVMResourcePool", make_deserializer: || make_deser_with::<Vec<super::structs::AgencyVmResourcePool>>(wrap_array_of_agency_vm_resource_pool), from_value: |v| from_val_with::<Vec<super::structs::AgencyVmResourcePool>>(v, wrap_array_of_agency_vm_resource_pool) }),
        ("ArrayOfHostRdmaHba", TypeInfo::Value { name: "ArrayOfHostRdmaHba", make_deserializer: || make_deser_with::<Vec<super::structs::HostRdmaHba>>(wrap_array_of_host_rdma_hba), from_value: |v| from_val_with::<Vec<super::structs::HostRdmaHba>>(v, wrap_array_of_host_rdma_hba) }),
        ("HostPortGroupProfile", TypeInfo::Object { name: "HostPortGroupProfile", builder_fn: || Box::new(HostPortGroupProfileFields::new()) }),
        ("ArrayOfVsanHostConfigInfoClusterInfo", TypeInfo::Value { name: "ArrayOfVsanHostConfigInfoClusterInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostConfigInfoClusterInfo>>(wrap_array_of_vsan_host_config_info_cluster_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostConfigInfoClusterInfo>>(v, wrap_array_of_vsan_host_config_info_cluster_info) }),
        ("ArrayOfVsanNodeNotMaster", TypeInfo::Value { name: "ArrayOfVsanNodeNotMaster", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vsan_node_not_master), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vsan_node_not_master) }),
        ("ClusterReconfiguredEvent", TypeInfo::Object { name: "ClusterReconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ClusterReconfiguredEvent))) }),
        ("EventManagerEventViewSpec", TypeInfo::Object { name: "EventManagerEventViewSpec", builder_fn: || Box::new(EventManagerEventViewSpecFields::new()) }),
        ("StorageDrsCannotMoveManuallyPlacedSwapFile", TypeInfo::Object { name: "StorageDrsCannotMoveManuallyPlacedSwapFile", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsCannotMoveManuallyPlacedSwapFile))) }),
        ("ArrayOfDirectPathProfileManagerUpdateSpec", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerUpdateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerUpdateSpec>>(wrap_array_of_direct_path_profile_manager_update_spec), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerUpdateSpec>>(v, wrap_array_of_direct_path_profile_manager_update_spec) }),
        ("InsufficientSpace", TypeInfo::Object { name: "InsufficientSpace", builder_fn: || Box::new(InsufficientSpaceFields::new()) }),
        ("ArrayOfSuspendedRelocateNotSupported", TypeInfo::Value { name: "ArrayOfSuspendedRelocateNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_suspended_relocate_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_suspended_relocate_not_supported) }),
        ("IpAddressProfile", TypeInfo::Object { name: "IpAddressProfile", builder_fn: || Box::new(IpAddressProfileFields::new()) }),
        ("ArrayOfEnteredMaintenanceModeEvent", TypeInfo::Value { name: "ArrayOfEnteredMaintenanceModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_entered_maintenance_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_entered_maintenance_mode_event) }),
        ("PermissionEvent", TypeInfo::Object { name: "PermissionEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::PermissionEvent))) }),
        ("ArrayOfOpaqueNetworkTargetInfo", TypeInfo::Value { name: "ArrayOfOpaqueNetworkTargetInfo", make_deserializer: || make_deser_with::<Vec<super::structs::OpaqueNetworkTargetInfo>>(wrap_array_of_opaque_network_target_info), from_value: |v| from_val_with::<Vec<super::structs::OpaqueNetworkTargetInfo>>(v, wrap_array_of_opaque_network_target_info) }),
        ("ArrayOfVirtualSoundBlaster16Option", TypeInfo::Value { name: "ArrayOfVirtualSoundBlaster16Option", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSoundBlaster16Option>>(wrap_array_of_virtual_sound_blaster_16_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSoundBlaster16Option>>(v, wrap_array_of_virtual_sound_blaster_16_option) }),
        ("ArrayOfDiskIsLastRemainingNonSSD", TypeInfo::Value { name: "ArrayOfDiskIsLastRemainingNonSSD", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disk_is_last_remaining_non_ssd), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disk_is_last_remaining_non_ssd) }),
        ("HostPathSelectionPolicyOption", TypeInfo::Object { name: "HostPathSelectionPolicyOption", builder_fn: || Box::new(HostPathSelectionPolicyOptionFields::new()) }),
        ("TooMany", TypeInfo::Object { name: "TooMany", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TooMany))) }),
        ("ArrayOfIscsiFaultVnicInUse", TypeInfo::Value { name: "ArrayOfIscsiFaultVnicInUse", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_vnic_in_use), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_vnic_in_use) }),
        ("VsanHostDiskMapResult", TypeInfo::Object { name: "VsanHostDiskMapResult", builder_fn: || Box::new(VsanHostDiskMapResultFields::new()) }),
        ("HostDirectoryStoreInfo", TypeInfo::Object { name: "HostDirectoryStoreInfo", builder_fn: || Box::new(HostDirectoryStoreInfoFields::new()) }),
        ("ArrayOfVsanUnsupportedHighDiskVersionIssue", TypeInfo::Value { name: "ArrayOfVsanUnsupportedHighDiskVersionIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUnsupportedHighDiskVersionIssue>>(wrap_array_of_vsan_unsupported_high_disk_version_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUnsupportedHighDiskVersionIssue>>(v, wrap_array_of_vsan_unsupported_high_disk_version_issue) }),
        ("ArrayOfCnsRankedLowerFault", TypeInfo::Value { name: "ArrayOfCnsRankedLowerFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cns_ranked_lower_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cns_ranked_lower_fault) }),
        ("ArrayOfVirtualMachineIndependentFilterSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineIndependentFilterSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineIndependentFilterSpec>>(wrap_array_of_virtual_machine_independent_filter_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineIndependentFilterSpec>>(v, wrap_array_of_virtual_machine_independent_filter_spec) }),
        ("ArrayOfVsanIODiagnosticsFailedCheck", TypeInfo::Value { name: "ArrayOfVsanIODiagnosticsFailedCheck", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoDiagnosticsFailedCheck>>(wrap_array_of_vsan_io_diagnostics_failed_check), from_value: |v| from_val_with::<Vec<super::structs::VsanIoDiagnosticsFailedCheck>>(v, wrap_array_of_vsan_io_diagnostics_failed_check) }),
        ("ArrayOfVsanFileServiceDomain", TypeInfo::Value { name: "ArrayOfVsanFileServiceDomain", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServiceDomain>>(wrap_array_of_vsan_file_service_domain), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServiceDomain>>(v, wrap_array_of_vsan_file_service_domain) }),
        ("VAppPropertySpec", TypeInfo::Object { name: "VAppPropertySpec", builder_fn: || Box::new(VAppPropertySpecFields::new()) }),
        ("ArrayOfTooManyDisksOnLegacyHost", TypeInfo::Value { name: "ArrayOfTooManyDisksOnLegacyHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_too_many_disks_on_legacy_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_too_many_disks_on_legacy_host) }),
        ("VsanHwToVcgInfoMappingSpec", TypeInfo::Object { name: "VsanHwToVcgInfoMappingSpec", builder_fn: || Box::new(VsanHwToVcgInfoMappingSpecFields::new()) }),
        ("ArrayOfScsiLunDescriptor", TypeInfo::Value { name: "ArrayOfScsiLunDescriptor", make_deserializer: || make_deser_with::<Vec<super::structs::ScsiLunDescriptor>>(wrap_array_of_scsi_lun_descriptor), from_value: |v| from_val_with::<Vec<super::structs::ScsiLunDescriptor>>(v, wrap_array_of_scsi_lun_descriptor) }),
        ("ArrayOfVirtualPCIPassthroughPluginBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughPluginBackingInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_pci_passthrough_plugin_backing_info_array)), from_value: |v| cast_to_virtual_pci_passthrough_plugin_backing_info_array(from_value(v)?) }),
        ("ArrayOfInvalidHostState", TypeInfo::Value { name: "ArrayOfInvalidHostState", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_host_state), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_host_state) }),
        ("ArrayOfSyncReplicationGroupSuccessResult", TypeInfo::Value { name: "ArrayOfSyncReplicationGroupSuccessResult", make_deserializer: || make_deser_with::<Vec<super::structs::SyncReplicationGroupSuccessResult>>(wrap_array_of_sync_replication_group_success_result), from_value: |v| from_val_with::<Vec<super::structs::SyncReplicationGroupSuccessResult>>(v, wrap_array_of_sync_replication_group_success_result) }),
        ("ArrayOfProfileEventArgument", TypeInfo::Value { name: "ArrayOfProfileEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileEventArgument>>(wrap_array_of_profile_event_argument), from_value: |v| from_val_with::<Vec<super::structs::ProfileEventArgument>>(v, wrap_array_of_profile_event_argument) }),
        ("VslmMigrateSpec", TypeInfo::Object { name: "VslmMigrateSpec", builder_fn: || Box::new(VslmMigrateSpecFields::new()) }),
        ("ArrayOfCnsVolumeMetadata", TypeInfo::Value { name: "ArrayOfCnsVolumeMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumeMetadata>>(wrap_array_of_cns_volume_metadata), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumeMetadata>>(v, wrap_array_of_cns_volume_metadata) }),
        ("ArrayOfHostIncompatibleForFaultTolerance", TypeInfo::Value { name: "ArrayOfHostIncompatibleForFaultTolerance", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_incompatible_for_fault_tolerance), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_incompatible_for_fault_tolerance) }),
        ("ArrayOfVmfsDatastoreCreateSpec", TypeInfo::Value { name: "ArrayOfVmfsDatastoreCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VmfsDatastoreCreateSpec>>(wrap_array_of_vmfs_datastore_create_spec), from_value: |v| from_val_with::<Vec<super::structs::VmfsDatastoreCreateSpec>>(v, wrap_array_of_vmfs_datastore_create_spec) }),
        ("ArrayOfHostRuntimeInfoNetStackInstanceRuntimeInfo", TypeInfo::Value { name: "ArrayOfHostRuntimeInfoNetStackInstanceRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostRuntimeInfoNetStackInstanceRuntimeInfo>>(wrap_array_of_host_runtime_info_net_stack_instance_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::HostRuntimeInfoNetStackInstanceRuntimeInfo>>(v, wrap_array_of_host_runtime_info_net_stack_instance_runtime_info) }),
        ("ArrayOfQuiesceDatastoreIOForHAFailed", TypeInfo::Value { name: "ArrayOfQuiesceDatastoreIOForHAFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_quiesce_datastore_io_for_ha_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_quiesce_datastore_io_for_ha_failed) }),
        ("ArrayOfVsanVdsMigrationPlan", TypeInfo::Value { name: "ArrayOfVsanVdsMigrationPlan", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVdsMigrationPlan>>(wrap_array_of_vsan_vds_migration_plan), from_value: |v| from_val_with::<Vec<super::structs::VsanVdsMigrationPlan>>(v, wrap_array_of_vsan_vds_migration_plan) }),
        ("MethodAction", TypeInfo::Object { name: "MethodAction", builder_fn: || Box::new(MethodActionFields::new()) }),
        ("ArrayOfHostNatServicePortForwardSpec", TypeInfo::Value { name: "ArrayOfHostNatServicePortForwardSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostNatServicePortForwardSpec>>(wrap_array_of_host_nat_service_port_forward_spec), from_value: |v| from_val_with::<Vec<super::structs::HostNatServicePortForwardSpec>>(v, wrap_array_of_host_nat_service_port_forward_spec) }),
        ("VimVsanHostDiskMappingCreationSpec", TypeInfo::Object { name: "VimVsanHostDiskMappingCreationSpec", builder_fn: || Box::new(VimVsanHostDiskMappingCreationSpecFields::new()) }),
        ("HostPciPassthruInfo", TypeInfo::Object { name: "HostPciPassthruInfo", builder_fn: || Box::new(HostPciPassthruInfoFields::new()) }),
        ("ArrayOfVirtualMachineDynamicPassthroughInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineDynamicPassthroughInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineDynamicPassthroughInfo>>(wrap_array_of_virtual_machine_dynamic_passthrough_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineDynamicPassthroughInfo>>(v, wrap_array_of_virtual_machine_dynamic_passthrough_info) }),
        ("CannotModifyConfigCpuRequirements", TypeInfo::Object { name: "CannotModifyConfigCpuRequirements", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotModifyConfigCpuRequirements))) }),
        ("VimVsanDataEfficiencyCapacityState", TypeInfo::Object { name: "VimVsanDataEfficiencyCapacityState", builder_fn: || Box::new(VimVsanDataEfficiencyCapacityStateFields::new()) }),
        ("ArrayOfVirtualMachineCloneSpecTpmProvisionPolicy", TypeInfo::Value { name: "ArrayOfVirtualMachineCloneSpecTpmProvisionPolicy", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualMachineCloneSpecTpmProvisionPolicyEnum>>(wrap_array_of_virtual_machine_clone_spec_tpm_provision_policy), from_value: |v| from_val_with::<Vec<super::enums::VirtualMachineCloneSpecTpmProvisionPolicyEnum>>(v, wrap_array_of_virtual_machine_clone_spec_tpm_provision_policy) }),
        ("HostMemoryTierInfo", TypeInfo::Object { name: "HostMemoryTierInfo", builder_fn: || Box::new(HostMemoryTierInfoFields::new()) }),
        ("ArrayOfSubnetInfo", TypeInfo::Value { name: "ArrayOfSubnetInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SubnetInfo>>(wrap_array_of_subnet_info), from_value: |v| from_val_with::<Vec<super::structs::SubnetInfo>>(v, wrap_array_of_subnet_info) }),
        ("ArrayOfMigrationNotReady", TypeInfo::Value { name: "ArrayOfMigrationNotReady", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_migration_not_ready), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_migration_not_ready) }),
        ("ArrayOfDVSManagerDvsConfigTarget", TypeInfo::Value { name: "ArrayOfDVSManagerDvsConfigTarget", make_deserializer: || make_deser_with::<Vec<super::structs::DvsManagerDvsConfigTarget>>(wrap_array_of_dvs_manager_dvs_config_target), from_value: |v| from_val_with::<Vec<super::structs::DvsManagerDvsConfigTarget>>(v, wrap_array_of_dvs_manager_dvs_config_target) }),
        ("ArrayOfHostFirewallInfo", TypeInfo::Value { name: "ArrayOfHostFirewallInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostFirewallInfo>>(wrap_array_of_host_firewall_info), from_value: |v| from_val_with::<Vec<super::structs::HostFirewallInfo>>(v, wrap_array_of_host_firewall_info) }),
        ("VirtualPCIPassthroughAllowedDevice", TypeInfo::Object { name: "VirtualPCIPassthroughAllowedDevice", builder_fn: || Box::new(VirtualPciPassthroughAllowedDeviceFields::new()) }),
        ("ArrayOfHostSubSpecificationUpdateEvent", TypeInfo::Value { name: "ArrayOfHostSubSpecificationUpdateEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_sub_specification_update_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_sub_specification_update_event) }),
        ("ArrayOfSolutionsHostBoundSolutionConfig", TypeInfo::Value { name: "ArrayOfSolutionsHostBoundSolutionConfig", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsHostBoundSolutionConfig>>(wrap_array_of_solutions_host_bound_solution_config), from_value: |v| from_val_with::<Vec<super::structs::SolutionsHostBoundSolutionConfig>>(v, wrap_array_of_solutions_host_bound_solution_config) }),
        ("HostAccessControlEntry", TypeInfo::Object { name: "HostAccessControlEntry", builder_fn: || Box::new(HostAccessControlEntryFields::new()) }),
        ("VsanDiskResourceCheckResult", TypeInfo::Object { name: "VsanDiskResourceCheckResult", builder_fn: || Box::new(VsanDiskResourceCheckResultFields::new()) }),
        ("ArrayOfHostFirewallRulesetIpNetwork", TypeInfo::Value { name: "ArrayOfHostFirewallRulesetIpNetwork", make_deserializer: || make_deser_with::<Vec<super::structs::HostFirewallRulesetIpNetwork>>(wrap_array_of_host_firewall_ruleset_ip_network), from_value: |v| from_val_with::<Vec<super::structs::HostFirewallRulesetIpNetwork>>(v, wrap_array_of_host_firewall_ruleset_ip_network) }),
        ("HostVirtualSwitchBeaconConfig", TypeInfo::Object { name: "HostVirtualSwitchBeaconConfig", builder_fn: || Box::new(HostVirtualSwitchBeaconConfigFields::new()) }),
        ("VibVibServicesSslTrust", TypeInfo::Object { name: "VibVibServicesSslTrust", builder_fn: || Box::new(VibVibServicesSslTrustFields::new()) }),
        ("ArrayOfSolutionsComplianceResult", TypeInfo::Value { name: "ArrayOfSolutionsComplianceResult", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsComplianceResult>>(wrap_array_of_solutions_compliance_result), from_value: |v| from_val_with::<Vec<super::structs::SolutionsComplianceResult>>(v, wrap_array_of_solutions_compliance_result) }),
        ("ArrayOfClusterDasAamHostInfo", TypeInfo::Value { name: "ArrayOfClusterDasAamHostInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasAamHostInfo>>(wrap_array_of_cluster_das_aam_host_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasAamHostInfo>>(v, wrap_array_of_cluster_das_aam_host_info) }),
        ("VmFailedRelayoutOnVmfs2DatastoreEvent", TypeInfo::Object { name: "VmFailedRelayoutOnVmfs2DatastoreEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedRelayoutOnVmfs2DatastoreEvent))) }),
        ("ArrayOfPolicyOption", TypeInfo::Value { name: "ArrayOfPolicyOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_policy_option_array)), from_value: |v| cast_to_policy_option_array(from_value(v)?) }),
        ("ArrayOfOvfInvalidProperty", TypeInfo::Value { name: "ArrayOfOvfInvalidProperty", make_deserializer: || make_deser_with::<Vec<super::structs::OvfInvalidProperty>>(wrap_array_of_ovf_invalid_property), from_value: |v| from_val_with::<Vec<super::structs::OvfInvalidProperty>>(v, wrap_array_of_ovf_invalid_property) }),
        ("HostVFlashResourceConfigurationResult", TypeInfo::Object { name: "HostVFlashResourceConfigurationResult", builder_fn: || Box::new(HostVFlashResourceConfigurationResultFields::new()) }),
        ("InvalidState", TypeInfo::Object { name: "InvalidState", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidState))) }),
        ("ArrayOfVirtualMachineConfigSummary", TypeInfo::Value { name: "ArrayOfVirtualMachineConfigSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineConfigSummary>>(wrap_array_of_virtual_machine_config_summary), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineConfigSummary>>(v, wrap_array_of_virtual_machine_config_summary) }),
        ("ArrayOfEnumDescription", TypeInfo::Value { name: "ArrayOfEnumDescription", make_deserializer: || make_deser_with::<Vec<super::structs::EnumDescription>>(wrap_array_of_enum_description), from_value: |v| from_val_with::<Vec<super::structs::EnumDescription>>(v, wrap_array_of_enum_description) }),
        ("ArrayOfInsufficientStandbyResource", TypeInfo::Value { name: "ArrayOfInsufficientStandbyResource", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_standby_resource), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_standby_resource) }),
        ("DvsFilterParameter", TypeInfo::Object { name: "DvsFilterParameter", builder_fn: || Box::new(DvsFilterParameterFields::new()) }),
        ("VmwareDistributedVirtualSwitchPvlanSpec", TypeInfo::Object { name: "VmwareDistributedVirtualSwitchPvlanSpec", builder_fn: || Box::new(VmwareDistributedVirtualSwitchPvlanSpecFields::new()) }),
        ("ArrayOfCnsVolumeACLConfigureSpec", TypeInfo::Value { name: "ArrayOfCnsVolumeACLConfigureSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumeAclConfigureSpec>>(wrap_array_of_cns_volume_acl_configure_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumeAclConfigureSpec>>(v, wrap_array_of_cns_volume_acl_configure_spec) }),
        ("ArrayOfVirtualMachineCpuIdInfoSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineCpuIdInfoSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineCpuIdInfoSpec>>(wrap_array_of_virtual_machine_cpu_id_info_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineCpuIdInfoSpec>>(v, wrap_array_of_virtual_machine_cpu_id_info_spec) }),
        ("ArrayOfVsanIOTripAnalyzerConfig", TypeInfo::Value { name: "ArrayOfVsanIOTripAnalyzerConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoTripAnalyzerConfig>>(wrap_array_of_vsan_io_trip_analyzer_config), from_value: |v| from_val_with::<Vec<super::structs::VsanIoTripAnalyzerConfig>>(v, wrap_array_of_vsan_io_trip_analyzer_config) }),
        ("ParaVirtualSCSIControllerOption", TypeInfo::Object { name: "ParaVirtualSCSIControllerOption", builder_fn: || Box::new(ParaVirtualScsiControllerOptionFields::new()) }),
        ("HostPatchManagerPatchManagerOperationSpec", TypeInfo::Object { name: "HostPatchManagerPatchManagerOperationSpec", builder_fn: || Box::new(HostPatchManagerPatchManagerOperationSpecFields::new()) }),
        ("VirtualPCIPassthroughDvxBackingOption", TypeInfo::Object { name: "VirtualPCIPassthroughDvxBackingOption", builder_fn: || Box::new(VirtualPciPassthroughDvxBackingOptionFields::new()) }),
        ("DvsReconfiguredEvent", TypeInfo::Object { name: "DvsReconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsReconfiguredEvent))) }),
        ("PbmRollupComplianceResult", TypeInfo::Object { name: "PbmRollupComplianceResult", builder_fn: || Box::new(PbmRollupComplianceResultFields::new()) }),
        ("ArrayOfOvfFault", TypeInfo::Value { name: "ArrayOfOvfFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_fault) }),
        ("ArrayOfVimVsanHostDiskResultEx", TypeInfo::Value { name: "ArrayOfVimVsanHostDiskResultEx", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostDiskResultEx>>(wrap_array_of_vim_vsan_host_disk_result_ex), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostDiskResultEx>>(v, wrap_array_of_vim_vsan_host_disk_result_ex) }),
        ("ArrayOfInaccessibleDatastore", TypeInfo::Value { name: "ArrayOfInaccessibleDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_inaccessible_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_inaccessible_datastore) }),
        ("ArrayOfHostNasVolumeConfig", TypeInfo::Value { name: "ArrayOfHostNasVolumeConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostNasVolumeConfig>>(wrap_array_of_host_nas_volume_config), from_value: |v| from_val_with::<Vec<super::structs::HostNasVolumeConfig>>(v, wrap_array_of_host_nas_volume_config) }),
        ("CnsVolumeAttachResult", TypeInfo::Object { name: "CnsVolumeAttachResult", builder_fn: || Box::new(CnsVolumeAttachResultFields::new()) }),
        ("ArrayOfPbmCapabilitySubProfile", TypeInfo::Value { name: "ArrayOfPbmCapabilitySubProfile", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilitySubProfile>>(wrap_array_of_pbm_capability_sub_profile), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilitySubProfile>>(v, wrap_array_of_pbm_capability_sub_profile) }),
        ("TaskFilterSpecByUsername", TypeInfo::Object { name: "TaskFilterSpecByUsername", builder_fn: || Box::new(TaskFilterSpecByUsernameFields::new()) }),
        ("HostCertificateManagerCertificateInfo", TypeInfo::Object { name: "HostCertificateManagerCertificateInfo", builder_fn: || Box::new(HostCertificateManagerCertificateInfoFields::new()) }),
        ("ArrayOfVirtualDeviceDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualDeviceDeviceBackingOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_device_backing_option_array)), from_value: |v| cast_to_virtual_device_device_backing_option_array(from_value(v)?) }),
        ("VAppConfigFault", TypeInfo::Object { name: "VAppConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VAppConfigFault))) }),
        ("ArrayOfFailoverSuccessResult", TypeInfo::Value { name: "ArrayOfFailoverSuccessResult", make_deserializer: || make_deser_with::<Vec<super::structs::FailoverSuccessResult>>(wrap_array_of_failover_success_result), from_value: |v| from_val_with::<Vec<super::structs::FailoverSuccessResult>>(v, wrap_array_of_failover_success_result) }),
        ("ArrayOfProfileReferenceHostChangedEvent", TypeInfo::Value { name: "ArrayOfProfileReferenceHostChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_profile_reference_host_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_profile_reference_host_changed_event) }),
        ("VirtualDiskId", TypeInfo::Object { name: "VirtualDiskId", builder_fn: || Box::new(VirtualDiskIdFields::new()) }),
        ("VmFaultToleranceTooManyVMsOnHost", TypeInfo::Object { name: "VmFaultToleranceTooManyVMsOnHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmFaultToleranceTooManyVMsOnHost))) }),
        ("ArrayOfInactiveProvider", TypeInfo::Value { name: "ArrayOfInactiveProvider", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_inactive_provider), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_inactive_provider) }),
        ("AnswerFile", TypeInfo::Object { name: "AnswerFile", builder_fn: || Box::new(AnswerFileFields::new()) }),
        ("ArrayOfUserPrivilegeResult", TypeInfo::Value { name: "ArrayOfUserPrivilegeResult", make_deserializer: || make_deser_with::<Vec<super::structs::UserPrivilegeResult>>(wrap_array_of_user_privilege_result), from_value: |v| from_val_with::<Vec<super::structs::UserPrivilegeResult>>(v, wrap_array_of_user_privilege_result) }),
        ("HostNonCompliantEvent", TypeInfo::Object { name: "HostNonCompliantEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostNonCompliantEvent))) }),
        ("ArrayOfGuestRegValueNameSpec", TypeInfo::Value { name: "ArrayOfGuestRegValueNameSpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegValueNameSpec>>(wrap_array_of_guest_reg_value_name_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegValueNameSpec>>(v, wrap_array_of_guest_reg_value_name_spec) }),
        ("ArrayOfClusterSystemVMsConfigSpec", TypeInfo::Value { name: "ArrayOfClusterSystemVMsConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterSystemVMsConfigSpec>>(wrap_array_of_cluster_system_v_ms_config_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterSystemVMsConfigSpec>>(v, wrap_array_of_cluster_system_v_ms_config_spec) }),
        ("ObjectContent", TypeInfo::Object { name: "ObjectContent", builder_fn: || Box::new(ObjectContentFields::new()) }),
        ("AutoStartPowerInfo", TypeInfo::Object { name: "AutoStartPowerInfo", builder_fn: || Box::new(AutoStartPowerInfoFields::new()) }),
        ("QueryReplicationGroupSuccessResult", TypeInfo::Object { name: "QueryReplicationGroupSuccessResult", builder_fn: || Box::new(QueryReplicationGroupSuccessResultFields::new()) }),
        ("ArrayOfSolutionsUrlVMSource", TypeInfo::Value { name: "ArrayOfSolutionsUrlVMSource", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsUrlVmSource>>(wrap_array_of_solutions_url_vm_source), from_value: |v| from_val_with::<Vec<super::structs::SolutionsUrlVmSource>>(v, wrap_array_of_solutions_url_vm_source) }),
        ("ArrayOfVmLimitLicense", TypeInfo::Value { name: "ArrayOfVmLimitLicense", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_limit_license), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_limit_license) }),
        ("ArrayOfSnapshotMoveNotSupported", TypeInfo::Value { name: "ArrayOfSnapshotMoveNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_move_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_move_not_supported) }),
        ("ClusterComputeResourceMaintenanceInfo", TypeInfo::Object { name: "ClusterComputeResourceMaintenanceInfo", builder_fn: || Box::new(ClusterComputeResourceMaintenanceInfoFields::new()) }),
        ("ArrayOfOvfUnknownDevice", TypeInfo::Value { name: "ArrayOfOvfUnknownDevice", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unknown_device), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unknown_device) }),
        ("ArrayOfHostDiagnosticPartitionCreateOption", TypeInfo::Value { name: "ArrayOfHostDiagnosticPartitionCreateOption", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiagnosticPartitionCreateOption>>(wrap_array_of_host_diagnostic_partition_create_option), from_value: |v| from_val_with::<Vec<super::structs::HostDiagnosticPartitionCreateOption>>(v, wrap_array_of_host_diagnostic_partition_create_option) }),
        ("DvsIpNetworkRuleQualifier", TypeInfo::Object { name: "DvsIpNetworkRuleQualifier", builder_fn: || Box::new(DvsIpNetworkRuleQualifierFields::new()) }),
        ("ArrayOfDirectPathProfileInfo", TypeInfo::Value { name: "ArrayOfDirectPathProfileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileInfo>>(wrap_array_of_direct_path_profile_info), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileInfo>>(v, wrap_array_of_direct_path_profile_info) }),
        ("ArrayOfDasAdmissionControlEnabledEvent", TypeInfo::Value { name: "ArrayOfDasAdmissionControlEnabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_das_admission_control_enabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_das_admission_control_enabled_event) }),
        ("ArrayOfVmUuidAssignedEvent", TypeInfo::Value { name: "ArrayOfVmUuidAssignedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_uuid_assigned_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_uuid_assigned_event) }),
        ("ArrayOfClusterComputeResourceMaintenanceInfo", TypeInfo::Value { name: "ArrayOfClusterComputeResourceMaintenanceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceMaintenanceInfo>>(wrap_array_of_cluster_compute_resource_maintenance_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceMaintenanceInfo>>(v, wrap_array_of_cluster_compute_resource_maintenance_info) }),
        ("ArrayOfGuestPosixFileAttributes", TypeInfo::Value { name: "ArrayOfGuestPosixFileAttributes", make_deserializer: || make_deser_with::<Vec<super::structs::GuestPosixFileAttributes>>(wrap_array_of_guest_posix_file_attributes), from_value: |v| from_val_with::<Vec<super::structs::GuestPosixFileAttributes>>(v, wrap_array_of_guest_posix_file_attributes) }),
        ("VsanHostWipeDiskStatus", TypeInfo::Object { name: "VsanHostWipeDiskStatus", builder_fn: || Box::new(VsanHostWipeDiskStatusFields::new()) }),
        ("ArrayOfVMwareDVSConfigInfo", TypeInfo::Value { name: "ArrayOfVMwareDVSConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsConfigInfo>>(wrap_array_of_v_mware_dvs_config_info), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsConfigInfo>>(v, wrap_array_of_v_mware_dvs_config_info) }),
        ("VsanSpaceEfficiencyRatio", TypeInfo::Object { name: "VsanSpaceEfficiencyRatio", builder_fn: || Box::new(VsanSpaceEfficiencyRatioFields::new()) }),
        ("ArrayOfVsanWhatifCapacity", TypeInfo::Value { name: "ArrayOfVsanWhatifCapacity", make_deserializer: || make_deser_with::<Vec<super::structs::VsanWhatifCapacity>>(wrap_array_of_vsan_whatif_capacity), from_value: |v| from_val_with::<Vec<super::structs::VsanWhatifCapacity>>(v, wrap_array_of_vsan_whatif_capacity) }),
        ("DistributedVirtualSwitchHostMemberConfigInfo", TypeInfo::Object { name: "DistributedVirtualSwitchHostMemberConfigInfo", builder_fn: || Box::new(DistributedVirtualSwitchHostMemberConfigInfoFields::new()) }),
        ("DvsTrafficFilterConfigSpec", TypeInfo::Object { name: "DvsTrafficFilterConfigSpec", builder_fn: || Box::new(DvsTrafficFilterConfigSpecFields::new()) }),
        ("VimClusterVSANStretchedClusterFaultDomainConfig", TypeInfo::Object { name: "VimClusterVSANStretchedClusterFaultDomainConfig", builder_fn: || Box::new(VimClusterVsanStretchedClusterFaultDomainConfigFields::new()) }),
        ("ArrayOfOvfParseDescriptorResult", TypeInfo::Value { name: "ArrayOfOvfParseDescriptorResult", make_deserializer: || make_deser_with::<Vec<super::structs::OvfParseDescriptorResult>>(wrap_array_of_ovf_parse_descriptor_result), from_value: |v| from_val_with::<Vec<super::structs::OvfParseDescriptorResult>>(v, wrap_array_of_ovf_parse_descriptor_result) }),
        ("ScheduledTaskStartedEvent", TypeInfo::Object { name: "ScheduledTaskStartedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ScheduledTaskStartedEvent))) }),
        ("ArrayOfClusterPreemptibleVmPairSpec", TypeInfo::Value { name: "ArrayOfClusterPreemptibleVmPairSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterPreemptibleVmPairSpec>>(wrap_array_of_cluster_preemptible_vm_pair_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterPreemptibleVmPairSpec>>(v, wrap_array_of_cluster_preemptible_vm_pair_spec) }),
        ("VirtualMachineFileLayoutExDiskUnit", TypeInfo::Object { name: "VirtualMachineFileLayoutExDiskUnit", builder_fn: || Box::new(VirtualMachineFileLayoutExDiskUnitFields::new()) }),
        ("MultiWriterNotSupported", TypeInfo::Object { name: "MultiWriterNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MultiWriterNotSupported))) }),
        ("HostVFlashManagerVFlashResourceConfigSpec", TypeInfo::Object { name: "HostVFlashManagerVFlashResourceConfigSpec", builder_fn: || Box::new(HostVFlashManagerVFlashResourceConfigSpecFields::new()) }),
        ("ReplicationInfoDiskSettings", TypeInfo::Object { name: "ReplicationInfoDiskSettings", builder_fn: || Box::new(ReplicationInfoDiskSettingsFields::new()) }),
        ("HostUnresolvedVmfsResolutionResult", TypeInfo::Object { name: "HostUnresolvedVmfsResolutionResult", builder_fn: || Box::new(HostUnresolvedVmfsResolutionResultFields::new()) }),
        ("ArrayOfVirtualMachineProfileRawData", TypeInfo::Value { name: "ArrayOfVirtualMachineProfileRawData", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineProfileRawData>>(wrap_array_of_virtual_machine_profile_raw_data), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineProfileRawData>>(v, wrap_array_of_virtual_machine_profile_raw_data) }),
        ("LicenseNonComplianceEvent", TypeInfo::Object { name: "LicenseNonComplianceEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::LicenseNonComplianceEvent))) }),
        ("ArrayOfDvsRestoreEvent", TypeInfo::Value { name: "ArrayOfDvsRestoreEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_restore_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_restore_event) }),
        ("ArrayOfNetBIOSConfigInfo", TypeInfo::Value { name: "ArrayOfNetBIOSConfigInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_net_bios_config_info_array)), from_value: |v| cast_to_net_bios_config_info_array(from_value(v)?) }),
        ("ArrayOfVslmSyncFault", TypeInfo::Value { name: "ArrayOfVslmSyncFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vslm_sync_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vslm_sync_fault) }),
        ("VasaVirtualDiskId", TypeInfo::Object { name: "VasaVirtualDiskId", builder_fn: || Box::new(VasaVirtualDiskIdFields::new()) }),
        ("VsanExtendedConfig", TypeInfo::Object { name: "VsanExtendedConfig", builder_fn: || Box::new(VsanExtendedConfigFields::new()) }),
        ("ArrayOfVmDasBeingResetWithScreenshotEvent", TypeInfo::Value { name: "ArrayOfVmDasBeingResetWithScreenshotEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_das_being_reset_with_screenshot_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_das_being_reset_with_screenshot_event) }),
        ("OvfInvalidValue", TypeInfo::Object { name: "OvfInvalidValue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfInvalidValue))) }),
        ("ArrayOfHttpFault", TypeInfo::Value { name: "ArrayOfHttpFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_http_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_http_fault) }),
        ("ArrayOfCryptoManagerHostKeyStatus", TypeInfo::Value { name: "ArrayOfCryptoManagerHostKeyStatus", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerHostKeyStatus>>(wrap_array_of_crypto_manager_host_key_status), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerHostKeyStatus>>(v, wrap_array_of_crypto_manager_host_key_status) }),
        ("ClusterAgentCertificateNotTrusted", TypeInfo::Object { name: "ClusterAgentCertificateNotTrusted", builder_fn: || Box::new(ClusterAgentCertificateNotTrustedFields::new()) }),
        ("PowerOnFtSecondaryTimedout", TypeInfo::Object { name: "PowerOnFtSecondaryTimedout", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PowerOnFtSecondaryTimedout))) }),
        ("HostEsxAgentHostManagerConfigInfo", TypeInfo::Object { name: "HostEsxAgentHostManagerConfigInfo", builder_fn: || Box::new(HostEsxAgentHostManagerConfigInfoFields::new()) }),
        ("ArrayOfInvalidDatastoreState", TypeInfo::Value { name: "ArrayOfInvalidDatastoreState", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_datastore_state), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_datastore_state) }),
        ("VirtualDeviceBusSlotOption", TypeInfo::Object { name: "VirtualDeviceBusSlotOption", builder_fn: || Box::new(VirtualDeviceBusSlotOptionFields::new()) }),
        ("ArrayOfHostInventoryFullEvent", TypeInfo::Value { name: "ArrayOfHostInventoryFullEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_inventory_full_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_inventory_full_event) }),
        ("VsanHciMeshDatastoreSource", TypeInfo::Object { name: "VsanHciMeshDatastoreSource", builder_fn: || Box::new(VsanHciMeshDatastoreSourceFields::new()) }),
        ("DrsDisabledEvent", TypeInfo::Object { name: "DrsDisabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsDisabledEvent))) }),
        ("ArrayOfHostNotConnected", TypeInfo::Value { name: "ArrayOfHostNotConnected", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_not_connected), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_not_connected) }),
        ("ReplicationNotSupportedOnHost", TypeInfo::Object { name: "ReplicationNotSupportedOnHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReplicationNotSupportedOnHost))) }),
        ("ArrayOfScheduledTaskReconfiguredEvent", TypeInfo::Value { name: "ArrayOfScheduledTaskReconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_scheduled_task_reconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_scheduled_task_reconfigured_event) }),
        ("ArrayOfDestinationVsanDisabled", TypeInfo::Value { name: "ArrayOfDestinationVsanDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_destination_vsan_disabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_destination_vsan_disabled) }),
        ("VirtualSwitchSelectionProfile", TypeInfo::Object { name: "VirtualSwitchSelectionProfile", builder_fn: || Box::new(VirtualSwitchSelectionProfileFields::new()) }),
        ("ArrayOfCryptoSpec", TypeInfo::Value { name: "ArrayOfCryptoSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_crypto_spec_array)), from_value: |v| cast_to_crypto_spec_array(from_value(v)?) }),
        ("HttpNfcLeaseManifestEntry", TypeInfo::Object { name: "HttpNfcLeaseManifestEntry", builder_fn: || Box::new(HttpNfcLeaseManifestEntryFields::new()) }),
        ("SourceGroupInfo", TypeInfo::Object { name: "SourceGroupInfo", builder_fn: || Box::new(SourceGroupInfoFields::new()) }),
        ("ArrayOfPermission", TypeInfo::Value { name: "ArrayOfPermission", make_deserializer: || make_deser_with::<Vec<super::structs::Permission>>(wrap_array_of_permission), from_value: |v| from_val_with::<Vec<super::structs::Permission>>(v, wrap_array_of_permission) }),
        ("VibVibServicesPinnedPemCertificate", TypeInfo::Object { name: "VibVibServicesPinnedPemCertificate", builder_fn: || Box::new(VibVibServicesPinnedPemCertificateFields::new()) }),
        ("ArrayOfClusterDasVmConfigSpec", TypeInfo::Value { name: "ArrayOfClusterDasVmConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasVmConfigSpec>>(wrap_array_of_cluster_das_vm_config_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasVmConfigSpec>>(v, wrap_array_of_cluster_das_vm_config_spec) }),
        ("VslmServiceInstanceContent", TypeInfo::Object { name: "VslmServiceInstanceContent", builder_fn: || Box::new(VslmServiceInstanceContentFields::new()) }),
        ("ArrayOfHostPlacedVirtualNicIdentifier", TypeInfo::Value { name: "ArrayOfHostPlacedVirtualNicIdentifier", make_deserializer: || make_deser_with::<Vec<super::structs::HostPlacedVirtualNicIdentifier>>(wrap_array_of_host_placed_virtual_nic_identifier), from_value: |v| from_val_with::<Vec<super::structs::HostPlacedVirtualNicIdentifier>>(v, wrap_array_of_host_placed_virtual_nic_identifier) }),
        ("StoragePort", TypeInfo::Object { name: "StoragePort", builder_fn: || Box::new(StoragePortFields::new()) }),
        ("VirtualMachineCloneSpecTpmProvisionPolicy", TypeInfo::Value { name: "VirtualMachineCloneSpecTpmProvisionPolicy", make_deserializer: || make_deser_with::<super::enums::VirtualMachineCloneSpecTpmProvisionPolicyEnum>(wrap_virtual_machine_clone_spec_tpm_provision_policy), from_value: |v| from_val_with::<super::enums::VirtualMachineCloneSpecTpmProvisionPolicyEnum>(v, wrap_virtual_machine_clone_spec_tpm_provision_policy) }),
        ("VmSnapshotFileInfo", TypeInfo::Object { name: "VmSnapshotFileInfo", builder_fn: || Box::new(VmSnapshotFileInfoFields::new()) }),
        ("ArrayOfVirtualMachineTargetInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineTargetInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_target_info_array)), from_value: |v| cast_to_virtual_machine_target_info_array(from_value(v)?) }),
        ("ArrayOfNasConnectionLimitReached", TypeInfo::Value { name: "ArrayOfNasConnectionLimitReached", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_nas_connection_limit_reached), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_nas_connection_limit_reached) }),
        ("ArrayOfVmDeployedEvent", TypeInfo::Value { name: "ArrayOfVmDeployedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_deployed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_deployed_event) }),
        ("VsanObjectInformation", TypeInfo::Object { name: "VsanObjectInformation", builder_fn: || Box::new(VsanObjectInformationFields::new()) }),
        ("TaskReasonAlarm", TypeInfo::Object { name: "TaskReasonAlarm", builder_fn: || Box::new(TaskReasonAlarmFields::new()) }),
        ("ArrayOfVsanObjectInformation", TypeInfo::Value { name: "ArrayOfVsanObjectInformation", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectInformation>>(wrap_array_of_vsan_object_information), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectInformation>>(v, wrap_array_of_vsan_object_information) }),
        ("ArrayOfNoClientCertificate", TypeInfo::Value { name: "ArrayOfNoClientCertificate", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_client_certificate), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_client_certificate) }),
        ("ArrayOfVmFailedToStandbyGuestEvent", TypeInfo::Value { name: "ArrayOfVmFailedToStandbyGuestEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_to_standby_guest_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_to_standby_guest_event) }),
        ("ArrayOfInaccessibleFTMetadataDatastore", TypeInfo::Value { name: "ArrayOfInaccessibleFTMetadataDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_inaccessible_ft_metadata_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_inaccessible_ft_metadata_datastore) }),
        ("ArrayOfManagedEntityStatus", TypeInfo::Value { name: "ArrayOfManagedEntityStatus", make_deserializer: || make_deser_with::<Vec<super::enums::ManagedEntityStatusEnum>>(wrap_array_of_managed_entity_status), from_value: |v| from_val_with::<Vec<super::enums::ManagedEntityStatusEnum>>(v, wrap_array_of_managed_entity_status) }),
        ("HostVirtualSwitch", TypeInfo::Object { name: "HostVirtualSwitch", builder_fn: || Box::new(HostVirtualSwitchFields::new()) }),
        ("ArrayOfAnswerFileStatusError", TypeInfo::Value { name: "ArrayOfAnswerFileStatusError", make_deserializer: || make_deser_with::<Vec<super::structs::AnswerFileStatusError>>(wrap_array_of_answer_file_status_error), from_value: |v| from_val_with::<Vec<super::structs::AnswerFileStatusError>>(v, wrap_array_of_answer_file_status_error) }),
        ("IncompatibleHostVersion", TypeInfo::Object { name: "IncompatibleHostVersion", builder_fn: || Box::new(IncompatibleHostVersionFields::new()) }),
        ("ArrayOfVirtualMachinePciSharedGpuPassthroughInfo", TypeInfo::Value { name: "ArrayOfVirtualMachinePciSharedGpuPassthroughInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachinePciSharedGpuPassthroughInfo>>(wrap_array_of_virtual_machine_pci_shared_gpu_passthrough_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachinePciSharedGpuPassthroughInfo>>(v, wrap_array_of_virtual_machine_pci_shared_gpu_passthrough_info) }),
        ("ArrayOfHostCacheConfigurationInfo", TypeInfo::Value { name: "ArrayOfHostCacheConfigurationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostCacheConfigurationInfo>>(wrap_array_of_host_cache_configuration_info), from_value: |v| from_val_with::<Vec<super::structs::HostCacheConfigurationInfo>>(v, wrap_array_of_host_cache_configuration_info) }),
        ("ArrayOfEVCModeUnsupportedByHosts", TypeInfo::Value { name: "ArrayOfEVCModeUnsupportedByHosts", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_mode_unsupported_by_hosts), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_mode_unsupported_by_hosts) }),
        ("FaultToleranceNeedsThickDisk", TypeInfo::Object { name: "FaultToleranceNeedsThickDisk", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FaultToleranceNeedsThickDisk))) }),
        ("ArrayOfVirtualLsiLogicSASController", TypeInfo::Value { name: "ArrayOfVirtualLsiLogicSASController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualLsiLogicSasController>>(wrap_array_of_virtual_lsi_logic_sas_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualLsiLogicSasController>>(v, wrap_array_of_virtual_lsi_logic_sas_controller) }),
        ("VMotionNotConfigured", TypeInfo::Object { name: "VMotionNotConfigured", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VMotionNotConfigured))) }),
        ("ArrayOfSmsFault", TypeInfo::Value { name: "ArrayOfSmsFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_sms_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_sms_fault) }),
        ("ApplyHostProfileConfigurationSpec", TypeInfo::Object { name: "ApplyHostProfileConfigurationSpec", builder_fn: || Box::new(ApplyHostProfileConfigurationSpecFields::new()) }),
        ("ArrayOfLicenseReservationInfoState", TypeInfo::Value { name: "ArrayOfLicenseReservationInfoState", make_deserializer: || make_deser_with::<Vec<super::enums::LicenseReservationInfoStateEnum>>(wrap_array_of_license_reservation_info_state), from_value: |v| from_val_with::<Vec<super::enums::LicenseReservationInfoStateEnum>>(v, wrap_array_of_license_reservation_info_state) }),
        ("InvalidVmConfig", TypeInfo::Object { name: "InvalidVmConfig", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidVmConfig))) }),
        ("HostInternetScsiHbaIscsiIpv6AddressAddressConfigurationType", TypeInfo::Value { name: "HostInternetScsiHbaIscsiIpv6AddressAddressConfigurationType", make_deserializer: || make_deser_with::<super::enums::HostInternetScsiHbaIscsiIpv6AddressAddressConfigurationTypeEnum>(wrap_host_internet_scsi_hba_iscsi_ipv_6_address_address_configuration_type), from_value: |v| from_val_with::<super::enums::HostInternetScsiHbaIscsiIpv6AddressAddressConfigurationTypeEnum>(v, wrap_host_internet_scsi_hba_iscsi_ipv_6_address_address_configuration_type) }),
        ("HostIpRouteTableConfig", TypeInfo::Object { name: "HostIpRouteTableConfig", builder_fn: || Box::new(HostIpRouteTableConfigFields::new()) }),
        ("NetDnsConfigInfo", TypeInfo::Object { name: "NetDnsConfigInfo", builder_fn: || Box::new(NetDnsConfigInfoFields::new()) }),
        ("ArrayOfDvsEventArgument", TypeInfo::Value { name: "ArrayOfDvsEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::DvsEventArgument>>(wrap_array_of_dvs_event_argument), from_value: |v| from_val_with::<Vec<super::structs::DvsEventArgument>>(v, wrap_array_of_dvs_event_argument) }),
        ("VmGuestRebootEvent", TypeInfo::Object { name: "VmGuestRebootEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmGuestRebootEvent))) }),
        ("ArrayOfFcStoragePort", TypeInfo::Value { name: "ArrayOfFcStoragePort", make_deserializer: || make_deser_with::<Vec<super::structs::FcStoragePort>>(wrap_array_of_fc_storage_port), from_value: |v| from_val_with::<Vec<super::structs::FcStoragePort>>(v, wrap_array_of_fc_storage_port) }),
        ("DrsBehavior", TypeInfo::Value { name: "DrsBehavior", make_deserializer: || make_deser_with::<super::enums::DrsBehaviorEnum>(wrap_drs_behavior), from_value: |v| from_val_with::<super::enums::DrsBehaviorEnum>(v, wrap_drs_behavior) }),
        ("ArrayOfHostCnxFailedNoConnectionEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedNoConnectionEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_no_connection_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_no_connection_event) }),
        ("ArrayOfExpiredAddonLicense", TypeInfo::Value { name: "ArrayOfExpiredAddonLicense", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_expired_addon_license), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_expired_addon_license) }),
        ("ArrayOfHostMultipathInfoFixedLogicalUnitPolicy", TypeInfo::Value { name: "ArrayOfHostMultipathInfoFixedLogicalUnitPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::HostMultipathInfoFixedLogicalUnitPolicy>>(wrap_array_of_host_multipath_info_fixed_logical_unit_policy), from_value: |v| from_val_with::<Vec<super::structs::HostMultipathInfoFixedLogicalUnitPolicy>>(v, wrap_array_of_host_multipath_info_fixed_logical_unit_policy) }),
        ("ArrayOfDistributedVirtualSwitchManagerHostDvsFilterSpec", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchManagerHostDvsFilterSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_distributed_virtual_switch_manager_host_dvs_filter_spec_array)), from_value: |v| cast_to_distributed_virtual_switch_manager_host_dvs_filter_spec_array(from_value(v)?) }),
        ("ArrayOfVirtualDeviceURIBackingOption", TypeInfo::Value { name: "ArrayOfVirtualDeviceURIBackingOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_uri_backing_option_array)), from_value: |v| cast_to_virtual_device_uri_backing_option_array(from_value(v)?) }),
        ("ArrayOfSubnetInfoFolderInfo", TypeInfo::Value { name: "ArrayOfSubnetInfoFolderInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SubnetInfoFolderInfo>>(wrap_array_of_subnet_info_folder_info), from_value: |v| from_val_with::<Vec<super::structs::SubnetInfoFolderInfo>>(v, wrap_array_of_subnet_info_folder_info) }),
        ("DvsHostStatusUpdated", TypeInfo::Object { name: "DvsHostStatusUpdated", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsHostStatusUpdated))) }),
        ("ArrayOfWaitOptions", TypeInfo::Value { name: "ArrayOfWaitOptions", make_deserializer: || make_deser_with::<Vec<super::structs::WaitOptions>>(wrap_array_of_wait_options), from_value: |v| from_val_with::<Vec<super::structs::WaitOptions>>(v, wrap_array_of_wait_options) }),
        ("VmFailedToResetEvent", TypeInfo::Object { name: "VmFailedToResetEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedToResetEvent))) }),
        ("VsanSpaceUsage", TypeInfo::Object { name: "VsanSpaceUsage", builder_fn: || Box::new(VsanSpaceUsageFields::new()) }),
        ("ComputeResourceHostSeedSpec", TypeInfo::Object { name: "ComputeResourceHostSeedSpec", builder_fn: || Box::new(ComputeResourceHostSeedSpecFields::new()) }),
        ("SolutionsHostBoundSolutionConfig", TypeInfo::Object { name: "SolutionsHostBoundSolutionConfig", builder_fn: || Box::new(SolutionsHostBoundSolutionConfigFields::new()) }),
        ("ArrayOfPerfEntityMetric", TypeInfo::Value { name: "ArrayOfPerfEntityMetric", make_deserializer: || make_deser_with::<Vec<super::structs::PerfEntityMetric>>(wrap_array_of_perf_entity_metric), from_value: |v| from_val_with::<Vec<super::structs::PerfEntityMetric>>(v, wrap_array_of_perf_entity_metric) }),
        ("ToolsConfigInfo", TypeInfo::Object { name: "ToolsConfigInfo", builder_fn: || Box::new(ToolsConfigInfoFields::new()) }),
        ("CustomizationCloudinitPrep", TypeInfo::Object { name: "CustomizationCloudinitPrep", builder_fn: || Box::new(CustomizationCloudinitPrepFields::new()) }),
        ("ArrayOfVirtualEthernetCardNetworkBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardNetworkBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEthernetCardNetworkBackingInfo>>(wrap_array_of_virtual_ethernet_card_network_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualEthernetCardNetworkBackingInfo>>(v, wrap_array_of_virtual_ethernet_card_network_backing_info) }),
        ("VsanObjectIdentityAndHealth", TypeInfo::Object { name: "VsanObjectIdentityAndHealth", builder_fn: || Box::new(VsanObjectIdentityAndHealthFields::new()) }),
        ("ArrayOfStorageContainer", TypeInfo::Value { name: "ArrayOfStorageContainer", make_deserializer: || make_deser_with::<Vec<super::structs::StorageContainer>>(wrap_array_of_storage_container), from_value: |v| from_val_with::<Vec<super::structs::StorageContainer>>(v, wrap_array_of_storage_container) }),
        ("ArrayOfVMwareDVSConfigSpec", TypeInfo::Value { name: "ArrayOfVMwareDVSConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsConfigSpec>>(wrap_array_of_v_mware_dvs_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsConfigSpec>>(v, wrap_array_of_v_mware_dvs_config_spec) }),
        ("HostDasDisablingEvent", TypeInfo::Object { name: "HostDasDisablingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostDasDisablingEvent))) }),
        ("ArrayOfVsanKmsHealth", TypeInfo::Value { name: "ArrayOfVsanKmsHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanKmsHealth>>(wrap_array_of_vsan_kms_health), from_value: |v| from_val_with::<Vec<super::structs::VsanKmsHealth>>(v, wrap_array_of_vsan_kms_health) }),
        ("ArrayOfOvfPropertyType", TypeInfo::Value { name: "ArrayOfOvfPropertyType", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_property_type), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_property_type) }),
        ("ArrayOfGuestAuthenticationChallenge", TypeInfo::Value { name: "ArrayOfGuestAuthenticationChallenge", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_authentication_challenge), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_authentication_challenge) }),
        ("ArrayOfDesiredSoftwareSpecVendorAddOnSpec", TypeInfo::Value { name: "ArrayOfDesiredSoftwareSpecVendorAddOnSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DesiredSoftwareSpecVendorAddOnSpec>>(wrap_array_of_desired_software_spec_vendor_add_on_spec), from_value: |v| from_val_with::<Vec<super::structs::DesiredSoftwareSpecVendorAddOnSpec>>(v, wrap_array_of_desired_software_spec_vendor_add_on_spec) }),
        ("ArrayOfVcAgentUpgradedEvent", TypeInfo::Value { name: "ArrayOfVcAgentUpgradedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vc_agent_upgraded_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vc_agent_upgraded_event) }),
        ("CryptoManagerKmipCustomAttributeSpec", TypeInfo::Object { name: "CryptoManagerKmipCustomAttributeSpec", builder_fn: || Box::new(CryptoManagerKmipCustomAttributeSpecFields::new()) }),
        ("ArrayOfOvfUnsupportedDeviceExport", TypeInfo::Value { name: "ArrayOfOvfUnsupportedDeviceExport", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_device_export), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_device_export) }),
        ("VirtualMachineGuestQuiesceSpec", TypeInfo::Object { name: "VirtualMachineGuestQuiesceSpec", builder_fn: || Box::new(VirtualMachineGuestQuiesceSpecFields::new()) }),
        ("ArrayOfAlarmRemovedEvent", TypeInfo::Value { name: "ArrayOfAlarmRemovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_removed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_removed_event) }),
        ("ArrayOfInvalidDeviceSpec", TypeInfo::Value { name: "ArrayOfInvalidDeviceSpec", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_device_spec), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_device_spec) }),
        ("VsanIODiagnosticsInstanceEvent", TypeInfo::Object { name: "VsanIODiagnosticsInstanceEvent", builder_fn: || Box::new(VsanIoDiagnosticsInstanceEventFields::new()) }),
        ("MissingDvFilterSwitch", TypeInfo::Object { name: "MissingDvFilterSwitch", builder_fn: || Box::new(MissingDvFilterSwitchFields::new()) }),
        ("ArrayOfClusterComputeResourceHostEvacuationInfo", TypeInfo::Value { name: "ArrayOfClusterComputeResourceHostEvacuationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceHostEvacuationInfo>>(wrap_array_of_cluster_compute_resource_host_evacuation_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceHostEvacuationInfo>>(v, wrap_array_of_cluster_compute_resource_host_evacuation_info) }),
        ("ReplicationConfigFault", TypeInfo::Object { name: "ReplicationConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReplicationConfigFault))) }),
        ("ArrayOfClusterAgentMissingClusterVmNetwork", TypeInfo::Value { name: "ArrayOfClusterAgentMissingClusterVmNetwork", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentMissingClusterVmNetwork>>(wrap_array_of_cluster_agent_missing_cluster_vm_network), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentMissingClusterVmNetwork>>(v, wrap_array_of_cluster_agent_missing_cluster_vm_network) }),
        ("IncompatibleDefaultDevice", TypeInfo::Object { name: "IncompatibleDefaultDevice", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IncompatibleDefaultDevice))) }),
        ("ArrayOfVmHookFailed", TypeInfo::Value { name: "ArrayOfVmHookFailed", make_deserializer: || make_deser_with::<Vec<super::structs::VmHookFailed>>(wrap_array_of_vm_hook_failed), from_value: |v| from_val_with::<Vec<super::structs::VmHookFailed>>(v, wrap_array_of_vm_hook_failed) }),
        ("ArrayOfCustomFieldDefAddedEvent", TypeInfo::Value { name: "ArrayOfCustomFieldDefAddedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_custom_field_def_added_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_custom_field_def_added_event) }),
        ("ArrayOfMissingLinuxCustResources", TypeInfo::Value { name: "ArrayOfMissingLinuxCustResources", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_missing_linux_cust_resources), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_missing_linux_cust_resources) }),
        ("HttpNfcLeaseHostInfo", TypeInfo::Object { name: "HttpNfcLeaseHostInfo", builder_fn: || Box::new(HttpNfcLeaseHostInfoFields::new()) }),
        ("DrsRecoveredFromFailureEvent", TypeInfo::Object { name: "DrsRecoveredFromFailureEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsRecoveredFromFailureEvent))) }),
        ("ArrayOfFolderFailedHostResult", TypeInfo::Value { name: "ArrayOfFolderFailedHostResult", make_deserializer: || make_deser_with::<Vec<super::structs::FolderFailedHostResult>>(wrap_array_of_folder_failed_host_result), from_value: |v| from_val_with::<Vec<super::structs::FolderFailedHostResult>>(v, wrap_array_of_folder_failed_host_result) }),
        ("DatastoreCapacityIncreasedEvent", TypeInfo::Object { name: "DatastoreCapacityIncreasedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreCapacityIncreasedEvent))) }),
        ("ArrayOfClusterPowerOnVmResult", TypeInfo::Value { name: "ArrayOfClusterPowerOnVmResult", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterPowerOnVmResult>>(wrap_array_of_cluster_power_on_vm_result), from_value: |v| from_val_with::<Vec<super::structs::ClusterPowerOnVmResult>>(v, wrap_array_of_cluster_power_on_vm_result) }),
        ("ConflictingConfigurationConfig", TypeInfo::Object { name: "ConflictingConfigurationConfig", builder_fn: || Box::new(ConflictingConfigurationConfigFields::new()) }),
        ("ArrayOfHostSnmpConfigSpec", TypeInfo::Value { name: "ArrayOfHostSnmpConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostSnmpConfigSpec>>(wrap_array_of_host_snmp_config_spec), from_value: |v| from_val_with::<Vec<super::structs::HostSnmpConfigSpec>>(v, wrap_array_of_host_snmp_config_spec) }),
        ("ArrayOfVirtualCdromPassthroughBackingOption", TypeInfo::Value { name: "ArrayOfVirtualCdromPassthroughBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromPassthroughBackingOption>>(wrap_array_of_virtual_cdrom_passthrough_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromPassthroughBackingOption>>(v, wrap_array_of_virtual_cdrom_passthrough_backing_option) }),
        ("VirtualMachineGuestSummary", TypeInfo::Object { name: "VirtualMachineGuestSummary", builder_fn: || Box::new(VirtualMachineGuestSummaryFields::new()) }),
        ("ArrayOfDVSSecurityPolicy", TypeInfo::Value { name: "ArrayOfDVSSecurityPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::DvsSecurityPolicy>>(wrap_array_of_dvs_security_policy), from_value: |v| from_val_with::<Vec<super::structs::DvsSecurityPolicy>>(v, wrap_array_of_dvs_security_policy) }),
        ("ArrayOfVimVsanReconfigSpec", TypeInfo::Value { name: "ArrayOfVimVsanReconfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanReconfigSpec>>(wrap_array_of_vim_vsan_reconfig_spec), from_value: |v| from_val_with::<Vec<super::structs::VimVsanReconfigSpec>>(v, wrap_array_of_vim_vsan_reconfig_spec) }),
        ("ArrayOfMissingNetworkIpConfig", TypeInfo::Value { name: "ArrayOfMissingNetworkIpConfig", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_missing_network_ip_config), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_missing_network_ip_config) }),
        ("ArrayOfVsanInTransitEncryptionInfo", TypeInfo::Value { name: "ArrayOfVsanInTransitEncryptionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanInTransitEncryptionInfo>>(wrap_array_of_vsan_in_transit_encryption_info), from_value: |v| from_val_with::<Vec<super::structs::VsanInTransitEncryptionInfo>>(v, wrap_array_of_vsan_in_transit_encryption_info) }),
        ("ArrayOfHostDiskPartitionLayout", TypeInfo::Value { name: "ArrayOfHostDiskPartitionLayout", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskPartitionLayout>>(wrap_array_of_host_disk_partition_layout), from_value: |v| from_val_with::<Vec<super::structs::HostDiskPartitionLayout>>(v, wrap_array_of_host_disk_partition_layout) }),
        ("ArrayOfEVCAdmissionFailedHostSoftwareForMode", TypeInfo::Value { name: "ArrayOfEVCAdmissionFailedHostSoftwareForMode", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_admission_failed_host_software_for_mode), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_admission_failed_host_software_for_mode) }),
        ("ArrayOfVMwareDvsLagIpfixConfig", TypeInfo::Value { name: "ArrayOfVMwareDvsLagIpfixConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsLagIpfixConfig>>(wrap_array_of_v_mware_dvs_lag_ipfix_config), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsLagIpfixConfig>>(v, wrap_array_of_v_mware_dvs_lag_ipfix_config) }),
        ("ArrayOfVAppConfigSpec", TypeInfo::Value { name: "ArrayOfVAppConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VAppConfigSpec>>(wrap_array_of_v_app_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VAppConfigSpec>>(v, wrap_array_of_v_app_config_spec) }),
        ("VirtualTPMOption", TypeInfo::Object { name: "VirtualTPMOption", builder_fn: || Box::new(VirtualTpmOptionFields::new()) }),
        ("OvfDuplicatedPropertyIdExport", TypeInfo::Object { name: "OvfDuplicatedPropertyIdExport", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfDuplicatedPropertyIdExport))) }),
        ("VirtualNVMEControllerOption", TypeInfo::Object { name: "VirtualNVMEControllerOption", builder_fn: || Box::new(VirtualNvmeControllerOptionFields::new()) }),
        ("ArrayOfInsufficientHostMemoryCapacityFault", TypeInfo::Value { name: "ArrayOfInsufficientHostMemoryCapacityFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_host_memory_capacity_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_host_memory_capacity_fault) }),
        ("AgentOvfEnvironmentInfo", TypeInfo::Object { name: "AgentOvfEnvironmentInfo", builder_fn: || Box::new(AgentOvfEnvironmentInfoFields::new()) }),
        ("VsanNewPolicyBatch", TypeInfo::Object { name: "VsanNewPolicyBatch", builder_fn: || Box::new(VsanNewPolicyBatchFields::new()) }),
        ("ArrayOfVMwareDvsLacpCapability", TypeInfo::Value { name: "ArrayOfVMwareDvsLacpCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsLacpCapability>>(wrap_array_of_v_mware_dvs_lacp_capability), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsLacpCapability>>(v, wrap_array_of_v_mware_dvs_lacp_capability) }),
        ("VsanVnicVdsMigrationSpec", TypeInfo::Object { name: "VsanVnicVdsMigrationSpec", builder_fn: || Box::new(VsanVnicVdsMigrationSpecFields::new()) }),
        ("ArrayOfHostInPartialMaintenanceMode", TypeInfo::Value { name: "ArrayOfHostInPartialMaintenanceMode", make_deserializer: || make_deser_with::<Vec<super::structs::HostInPartialMaintenanceMode>>(wrap_array_of_host_in_partial_maintenance_mode), from_value: |v| from_val_with::<Vec<super::structs::HostInPartialMaintenanceMode>>(v, wrap_array_of_host_in_partial_maintenance_mode) }),
        ("ArrayOfNsxHostVNicProfile", TypeInfo::Value { name: "ArrayOfNsxHostVNicProfile", make_deserializer: || make_deser_with::<Vec<super::structs::NsxHostVNicProfile>>(wrap_array_of_nsx_host_v_nic_profile), from_value: |v| from_val_with::<Vec<super::structs::NsxHostVNicProfile>>(v, wrap_array_of_nsx_host_v_nic_profile) }),
        ("ArrayOfEntityReferenceEntityType", TypeInfo::Value { name: "ArrayOfEntityReferenceEntityType", make_deserializer: || make_deser_with::<Vec<super::enums::EntityReferenceEntityTypeEnum>>(wrap_array_of_entity_reference_entity_type), from_value: |v| from_val_with::<Vec<super::enums::EntityReferenceEntityTypeEnum>>(v, wrap_array_of_entity_reference_entity_type) }),
        ("DirectPathProfileManagerTargetCluster", TypeInfo::Object { name: "DirectPathProfileManagerTargetCluster", builder_fn: || Box::new(DirectPathProfileManagerTargetClusterFields::new()) }),
        ("ArrayOfClusterAgentInsufficientClusterResources", TypeInfo::Value { name: "ArrayOfClusterAgentInsufficientClusterResources", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentInsufficientClusterResources>>(wrap_array_of_cluster_agent_insufficient_cluster_resources), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentInsufficientClusterResources>>(v, wrap_array_of_cluster_agent_insufficient_cluster_resources) }),
        ("HostFirewallRulePortType", TypeInfo::Value { name: "HostFirewallRulePortType", make_deserializer: || make_deser_with::<super::enums::HostFirewallRulePortTypeEnum>(wrap_host_firewall_rule_port_type), from_value: |v| from_val_with::<super::enums::HostFirewallRulePortTypeEnum>(v, wrap_host_firewall_rule_port_type) }),
        ("VsanClusterHealthLink", TypeInfo::Object { name: "VsanClusterHealthLink", builder_fn: || Box::new(VsanClusterHealthLinkFields::new()) }),
        ("RDMPointsToInaccessibleDisk", TypeInfo::Object { name: "RDMPointsToInaccessibleDisk", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RdmPointsToInaccessibleDisk))) }),
        ("HostFirewallConfig", TypeInfo::Object { name: "HostFirewallConfig", builder_fn: || Box::new(HostFirewallConfigFields::new()) }),
        ("FolderEventArgument", TypeInfo::Object { name: "FolderEventArgument", builder_fn: || Box::new(FolderEventArgumentFields::new()) }),
        ("UsbScanCodeSpecModifierType", TypeInfo::Object { name: "UsbScanCodeSpecModifierType", builder_fn: || Box::new(UsbScanCodeSpecModifierTypeFields::new()) }),
        ("PersonalityAgentAwaitingPMRemediation", TypeInfo::Object { name: "PersonalityAgentAwaitingPMRemediation", builder_fn: || Box::new(PersonalityAgentAwaitingPmRemediationFields::new()) }),
        ("NotEnoughLogicalCpus", TypeInfo::Object { name: "NotEnoughLogicalCpus", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotEnoughLogicalCpus))) }),
        ("ArrayOfHostFeatureVersionInfo", TypeInfo::Value { name: "ArrayOfHostFeatureVersionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostFeatureVersionInfo>>(wrap_array_of_host_feature_version_info), from_value: |v| from_val_with::<Vec<super::structs::HostFeatureVersionInfo>>(v, wrap_array_of_host_feature_version_info) }),
        ("ArrayOfVirtualMachineGuestIntegrityInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineGuestIntegrityInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineGuestIntegrityInfo>>(wrap_array_of_virtual_machine_guest_integrity_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineGuestIntegrityInfo>>(v, wrap_array_of_virtual_machine_guest_integrity_info) }),
        ("ArrayOfVslmTaskReasonSchedule", TypeInfo::Value { name: "ArrayOfVslmTaskReasonSchedule", make_deserializer: || make_deser_with::<Vec<super::structs::VslmTaskReasonSchedule>>(wrap_array_of_vslm_task_reason_schedule), from_value: |v| from_val_with::<Vec<super::structs::VslmTaskReasonSchedule>>(v, wrap_array_of_vslm_task_reason_schedule) }),
        ("ArrayOfLargeRDMConversionNotSupported", TypeInfo::Value { name: "ArrayOfLargeRDMConversionNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_large_rdm_conversion_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_large_rdm_conversion_not_supported) }),
        ("ArrayOfVirtualCdromAtapiBackingOption", TypeInfo::Value { name: "ArrayOfVirtualCdromAtapiBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromAtapiBackingOption>>(wrap_array_of_virtual_cdrom_atapi_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromAtapiBackingOption>>(v, wrap_array_of_virtual_cdrom_atapi_backing_option) }),
        ("OvfExportFailed", TypeInfo::Object { name: "OvfExportFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfExportFailed))) }),
        ("ArrayOfDVSFilterSpecPnicConnecteeSpec", TypeInfo::Value { name: "ArrayOfDVSFilterSpecPnicConnecteeSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsFilterSpecPnicConnecteeSpec>>(wrap_array_of_dvs_filter_spec_pnic_connectee_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsFilterSpecPnicConnecteeSpec>>(v, wrap_array_of_dvs_filter_spec_pnic_connectee_spec) }),
        ("VirtualMachineSriovNetworkDevicePoolInfo", TypeInfo::Object { name: "VirtualMachineSriovNetworkDevicePoolInfo", builder_fn: || Box::new(VirtualMachineSriovNetworkDevicePoolInfoFields::new()) }),
        ("NotSupportedHostForChecksum", TypeInfo::Object { name: "NotSupportedHostForChecksum", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedHostForChecksum))) }),
        ("VirtualDeviceURIBackingInfo", TypeInfo::Object { name: "VirtualDeviceURIBackingInfo", builder_fn: || Box::new(VirtualDeviceUriBackingInfoFields::new()) }),
        ("ExtensionManagerIpAllocationUsage", TypeInfo::Object { name: "ExtensionManagerIpAllocationUsage", builder_fn: || Box::new(ExtensionManagerIpAllocationUsageFields::new()) }),
        ("HostHardwareInfo", TypeInfo::Object { name: "HostHardwareInfo", builder_fn: || Box::new(HostHardwareInfoFields::new()) }),
        ("ArrayOfVsanUpgradeSystemUpgradeStatus", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemUpgradeStatus", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_upgrade_system_upgrade_status_array)), from_value: |v| cast_to_vsan_upgrade_system_upgrade_status_array(from_value(v)?) }),
        ("ArrayOfByte", TypeInfo::Value { name: "ArrayOfByte", make_deserializer: || make_deser_with::<Vec<i8>>(wrap_array_of_byte), from_value: |v| from_val_with::<Vec<i8>>(v, wrap_array_of_byte) }),
        ("CnsKubernetesEntityReference", TypeInfo::Object { name: "CnsKubernetesEntityReference", builder_fn: || Box::new(CnsKubernetesEntityReferenceFields::new()) }),
        ("ArrayOfVmwareDistributedVirtualSwitchVlanIdSpec", TypeInfo::Value { name: "ArrayOfVmwareDistributedVirtualSwitchVlanIdSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VmwareDistributedVirtualSwitchVlanIdSpec>>(wrap_array_of_vmware_distributed_virtual_switch_vlan_id_spec), from_value: |v| from_val_with::<Vec<super::structs::VmwareDistributedVirtualSwitchVlanIdSpec>>(v, wrap_array_of_vmware_distributed_virtual_switch_vlan_id_spec) }),
        ("ArrayOfVirtualAHCIControllerOption", TypeInfo::Value { name: "ArrayOfVirtualAHCIControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualAhciControllerOption>>(wrap_array_of_virtual_ahci_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualAhciControllerOption>>(v, wrap_array_of_virtual_ahci_controller_option) }),
        ("PolicyOption", TypeInfo::Object { name: "PolicyOption", builder_fn: || Box::new(PolicyOptionFields::new()) }),
        ("DVPortStatus", TypeInfo::Object { name: "DVPortStatus", builder_fn: || Box::new(DvPortStatusFields::new()) }),
        ("ProfileReferenceHostChangedEvent", TypeInfo::Object { name: "ProfileReferenceHostChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ProfileReferenceHostChangedEvent))) }),
        ("ResourcePoolMovedEvent", TypeInfo::Object { name: "ResourcePoolMovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ResourcePoolMovedEvent))) }),
        ("SingleMac", TypeInfo::Object { name: "SingleMac", builder_fn: || Box::new(SingleMacFields::new()) }),
        ("OvfConstraint", TypeInfo::Object { name: "OvfConstraint", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConstraint))) }),
        ("VsanClusterFileServiceHealthSummary", TypeInfo::Object { name: "VsanClusterFileServiceHealthSummary", builder_fn: || Box::new(VsanClusterFileServiceHealthSummaryFields::new()) }),
        ("VmSecondaryAddedEvent", TypeInfo::Object { name: "VmSecondaryAddedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmSecondaryAddedEvent))) }),
        ("LocalizationManagerMessageCatalog", TypeInfo::Object { name: "LocalizationManagerMessageCatalog", builder_fn: || Box::new(LocalizationManagerMessageCatalogFields::new()) }),
        ("ArrayOfTooManyNativeClonesOnFile", TypeInfo::Value { name: "ArrayOfTooManyNativeClonesOnFile", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_too_many_native_clones_on_file), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_too_many_native_clones_on_file) }),
        ("ArrayOfVsanStretchedClusterConfig", TypeInfo::Value { name: "ArrayOfVsanStretchedClusterConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanStretchedClusterConfig>>(wrap_array_of_vsan_stretched_cluster_config), from_value: |v| from_val_with::<Vec<super::structs::VsanStretchedClusterConfig>>(v, wrap_array_of_vsan_stretched_cluster_config) }),
        ("ArrayOfPropertyPath", TypeInfo::Value { name: "ArrayOfPropertyPath", make_deserializer: || make_deser_with::<Vec<String>>(wrap_array_of_prop_path), from_value: |v| from_val_with::<Vec<String>>(v, wrap_array_of_prop_path) }),
        ("ClusterComputeResourceHCIConfigSpec", TypeInfo::Object { name: "ClusterComputeResourceHCIConfigSpec", builder_fn: || Box::new(ClusterComputeResourceHciConfigSpecFields::new()) }),
        ("ArrayOfVirtualUSBXHCIControllerOption", TypeInfo::Value { name: "ArrayOfVirtualUSBXHCIControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbxhciControllerOption>>(wrap_array_of_virtual_usbxhci_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbxhciControllerOption>>(v, wrap_array_of_virtual_usbxhci_controller_option) }),
        ("MigrationDisabled", TypeInfo::Object { name: "MigrationDisabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MigrationDisabled))) }),
        ("VsanPrepareVsanForVcsaSpec", TypeInfo::Object { name: "VsanPrepareVsanForVcsaSpec", builder_fn: || Box::new(VsanPrepareVsanForVcsaSpecFields::new()) }),
        ("DVSNetworkResourcePool", TypeInfo::Object { name: "DVSNetworkResourcePool", builder_fn: || Box::new(DvsNetworkResourcePoolFields::new()) }),
        ("CustomizationUserData", TypeInfo::Object { name: "CustomizationUserData", builder_fn: || Box::new(CustomizationUserDataFields::new()) }),
        ("ArrayOfVsanFaultDomainResourceCheckResult", TypeInfo::Value { name: "ArrayOfVsanFaultDomainResourceCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFaultDomainResourceCheckResult>>(wrap_array_of_vsan_fault_domain_resource_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanFaultDomainResourceCheckResult>>(v, wrap_array_of_vsan_fault_domain_resource_check_result) }),
        ("AlarmEvent", TypeInfo::Object { name: "AlarmEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmEvent))) }),
        ("HostInternetScsiHbaIPCapabilities", TypeInfo::Object { name: "HostInternetScsiHbaIPCapabilities", builder_fn: || Box::new(HostInternetScsiHbaIpCapabilitiesFields::new()) }),
        ("DatastoreDiscoveredEvent", TypeInfo::Object { name: "DatastoreDiscoveredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreDiscoveredEvent))) }),
        ("InventoryDescription", TypeInfo::Object { name: "InventoryDescription", builder_fn: || Box::new(InventoryDescriptionFields::new()) }),
        ("ArrayOfPbmFaultNotFound", TypeInfo::Value { name: "ArrayOfPbmFaultNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_fault_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_fault_not_found) }),
        ("ArrayOfCryptoManagerKmipCryptoKeyStatus", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipCryptoKeyStatus", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerKmipCryptoKeyStatus>>(wrap_array_of_crypto_manager_kmip_crypto_key_status), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerKmipCryptoKeyStatus>>(v, wrap_array_of_crypto_manager_kmip_crypto_key_status) }),
        ("ArrayOfVMwareUplinkPortOrderPolicy", TypeInfo::Value { name: "ArrayOfVMwareUplinkPortOrderPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareUplinkPortOrderPolicy>>(wrap_array_of_v_mware_uplink_port_order_policy), from_value: |v| from_val_with::<Vec<super::structs::VMwareUplinkPortOrderPolicy>>(v, wrap_array_of_v_mware_uplink_port_order_policy) }),
        ("ArrayOfTaskReasonSystem", TypeInfo::Value { name: "ArrayOfTaskReasonSystem", make_deserializer: || make_deser_with::<Vec<super::structs::TaskReasonSystem>>(wrap_array_of_task_reason_system), from_value: |v| from_val_with::<Vec<super::structs::TaskReasonSystem>>(v, wrap_array_of_task_reason_system) }),
        ("ArrayOfPbmCapabilitySchemaVendorInfo", TypeInfo::Value { name: "ArrayOfPbmCapabilitySchemaVendorInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilitySchemaVendorInfo>>(wrap_array_of_pbm_capability_schema_vendor_info), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilitySchemaVendorInfo>>(v, wrap_array_of_pbm_capability_schema_vendor_info) }),
        ("ArrayOfTimedout", TypeInfo::Value { name: "ArrayOfTimedout", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_timedout), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_timedout) }),
        ("VsanIscsiVipVswitchConfig", TypeInfo::Object { name: "VsanIscsiVipVswitchConfig", builder_fn: || Box::new(VsanIscsiVipVswitchConfigFields::new()) }),
        ("ArrayOfMigrationWarningEvent", TypeInfo::Value { name: "ArrayOfMigrationWarningEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_migration_warning_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_migration_warning_event) }),
        ("ArrayOfVirtualMachineVcpuConfig", TypeInfo::Value { name: "ArrayOfVirtualMachineVcpuConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVcpuConfig>>(wrap_array_of_virtual_machine_vcpu_config), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVcpuConfig>>(v, wrap_array_of_virtual_machine_vcpu_config) }),
        ("KmipServerSpec", TypeInfo::Object { name: "KmipServerSpec", builder_fn: || Box::new(KmipServerSpecFields::new()) }),
        ("ArrayOfHostMultipathStateInfo", TypeInfo::Value { name: "ArrayOfHostMultipathStateInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostMultipathStateInfo>>(wrap_array_of_host_multipath_state_info), from_value: |v| from_val_with::<Vec<super::structs::HostMultipathStateInfo>>(v, wrap_array_of_host_multipath_state_info) }),
        ("HbrReplicationTargetSpec", TypeInfo::Object { name: "HbrReplicationTargetSpec", builder_fn: || Box::new(HbrReplicationTargetSpecFields::new()) }),
        ("ArrayOfCustomFieldStringValue", TypeInfo::Value { name: "ArrayOfCustomFieldStringValue", make_deserializer: || make_deser_with::<Vec<super::structs::CustomFieldStringValue>>(wrap_array_of_custom_field_string_value), from_value: |v| from_val_with::<Vec<super::structs::CustomFieldStringValue>>(v, wrap_array_of_custom_field_string_value) }),
        ("ArrayOfVsanMountPrecheckNetworkLatencyDetail", TypeInfo::Value { name: "ArrayOfVsanMountPrecheckNetworkLatencyDetail", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMountPrecheckNetworkLatencyDetail>>(wrap_array_of_vsan_mount_precheck_network_latency_detail), from_value: |v| from_val_with::<Vec<super::structs::VsanMountPrecheckNetworkLatencyDetail>>(v, wrap_array_of_vsan_mount_precheck_network_latency_detail) }),
        ("HostInternetScsiHbaDigestCapabilities", TypeInfo::Object { name: "HostInternetScsiHbaDigestCapabilities", builder_fn: || Box::new(HostInternetScsiHbaDigestCapabilitiesFields::new()) }),
        ("ArrayOfVirtualMachineVgpuDeviceInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineVgpuDeviceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVgpuDeviceInfo>>(wrap_array_of_virtual_machine_vgpu_device_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVgpuDeviceInfo>>(v, wrap_array_of_virtual_machine_vgpu_device_info) }),
        ("NoCompatibleHost", TypeInfo::Object { name: "NoCompatibleHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoCompatibleHost))) }),
        ("ArrayOfAlarmClearedEvent", TypeInfo::Value { name: "ArrayOfAlarmClearedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_cleared_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_cleared_event) }),
        ("VStorageObjectAssociations", TypeInfo::Object { name: "VStorageObjectAssociations", builder_fn: || Box::new(VStorageObjectAssociationsFields::new()) }),
        ("UserProfile", TypeInfo::Object { name: "UserProfile", builder_fn: || Box::new(UserProfileFields::new()) }),
        ("OvfStorageProfileMapping", TypeInfo::Object { name: "OvfStorageProfileMapping", builder_fn: || Box::new(OvfStorageProfileMappingFields::new()) }),
        ("HostFileSystemVolumeInfo", TypeInfo::Object { name: "HostFileSystemVolumeInfo", builder_fn: || Box::new(HostFileSystemVolumeInfoFields::new()) }),
        ("VslmCreateSpec", TypeInfo::Object { name: "VslmCreateSpec", builder_fn: || Box::new(VslmCreateSpecFields::new()) }),
        ("ArrayOfEntityPrivilege", TypeInfo::Value { name: "ArrayOfEntityPrivilege", make_deserializer: || make_deser_with::<Vec<super::structs::EntityPrivilege>>(wrap_array_of_entity_privilege), from_value: |v| from_val_with::<Vec<super::structs::EntityPrivilege>>(v, wrap_array_of_entity_privilege) }),
        ("DrsInjectorWorkloadCorrelationState", TypeInfo::Value { name: "DrsInjectorWorkloadCorrelationState", make_deserializer: || make_deser_with::<super::enums::DrsInjectorWorkloadCorrelationStateEnum>(wrap_drs_injector_workload_correlation_state), from_value: |v| from_val_with::<super::enums::DrsInjectorWorkloadCorrelationStateEnum>(v, wrap_drs_injector_workload_correlation_state) }),
        ("ArrayOfVsanMountPrecheckResult", TypeInfo::Value { name: "ArrayOfVsanMountPrecheckResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_mount_precheck_result_array)), from_value: |v| cast_to_vsan_mount_precheck_result_array(from_value(v)?) }),
        ("ArrayOfHostUnresolvedVmfsVolumeResolveStatus", TypeInfo::Value { name: "ArrayOfHostUnresolvedVmfsVolumeResolveStatus", make_deserializer: || make_deser_with::<Vec<super::structs::HostUnresolvedVmfsVolumeResolveStatus>>(wrap_array_of_host_unresolved_vmfs_volume_resolve_status), from_value: |v| from_val_with::<Vec<super::structs::HostUnresolvedVmfsVolumeResolveStatus>>(v, wrap_array_of_host_unresolved_vmfs_volume_resolve_status) }),
        ("HostCnxFailedNetworkErrorEvent", TypeInfo::Object { name: "HostCnxFailedNetworkErrorEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedNetworkErrorEvent))) }),
        ("VsanDiskModelInfo", TypeInfo::Object { name: "VsanDiskModelInfo", builder_fn: || Box::new(VsanDiskModelInfoFields::new()) }),
        ("ArrayOfHttpNfcLeaseHostInfo", TypeInfo::Value { name: "ArrayOfHttpNfcLeaseHostInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HttpNfcLeaseHostInfo>>(wrap_array_of_http_nfc_lease_host_info), from_value: |v| from_val_with::<Vec<super::structs::HttpNfcLeaseHostInfo>>(v, wrap_array_of_http_nfc_lease_host_info) }),
        ("VirtualMachineCapability", TypeInfo::Object { name: "VirtualMachineCapability", builder_fn: || Box::new(VirtualMachineCapabilityFields::new()) }),
        ("VirtualVMIROMOption", TypeInfo::Object { name: "VirtualVMIROMOption", builder_fn: || Box::new(VirtualVmiromOptionFields::new()) }),
        ("ArrayOfStorageDrsUnableToMoveFiles", TypeInfo::Value { name: "ArrayOfStorageDrsUnableToMoveFiles", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_unable_to_move_files), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_unable_to_move_files) }),
        ("ElementDescription", TypeInfo::Object { name: "ElementDescription", builder_fn: || Box::new(ElementDescriptionFields::new()) }),
        ("CryptoSpec", TypeInfo::Object { name: "CryptoSpec", builder_fn: || Box::new(CryptoSpecFields::new()) }),
        ("ArrayOfGatewayOperationRefused", TypeInfo::Value { name: "ArrayOfGatewayOperationRefused", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_gateway_operation_refused), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_gateway_operation_refused) }),
        ("DeviceGroupId", TypeInfo::Object { name: "DeviceGroupId", builder_fn: || Box::new(DeviceGroupIdFields::new()) }),
        ("ArrayOfComplianceLocator", TypeInfo::Value { name: "ArrayOfComplianceLocator", make_deserializer: || make_deser_with::<Vec<super::structs::ComplianceLocator>>(wrap_array_of_compliance_locator), from_value: |v| from_val_with::<Vec<super::structs::ComplianceLocator>>(v, wrap_array_of_compliance_locator) }),
        ("NetworkCopyFault", TypeInfo::Object { name: "NetworkCopyFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NetworkCopyFault))) }),
        ("ArrayOfVsanDatastoreSourcePrecheckResult", TypeInfo::Value { name: "ArrayOfVsanDatastoreSourcePrecheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDatastoreSourcePrecheckResult>>(wrap_array_of_vsan_datastore_source_precheck_result), from_value: |v| from_val_with::<Vec<super::structs::VsanDatastoreSourcePrecheckResult>>(v, wrap_array_of_vsan_datastore_source_precheck_result) }),
        ("ClusterAntiAffinityRuleSpec", TypeInfo::Object { name: "ClusterAntiAffinityRuleSpec", builder_fn: || Box::new(ClusterAntiAffinityRuleSpecFields::new()) }),
        ("ArrayOfCertificateNotTrustedFault", TypeInfo::Value { name: "ArrayOfCertificateNotTrustedFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_certificate_not_trusted_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_certificate_not_trusted_fault) }),
        ("ArrayOfVsanHostsCompressionOnlyNotSupported", TypeInfo::Value { name: "ArrayOfVsanHostsCompressionOnlyNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostsCompressionOnlyNotSupported>>(wrap_array_of_vsan_hosts_compression_only_not_supported), from_value: |v| from_val_with::<Vec<super::structs::VsanHostsCompressionOnlyNotSupported>>(v, wrap_array_of_vsan_hosts_compression_only_not_supported) }),
        ("CnsNotRegisteredFault", TypeInfo::Object { name: "CnsNotRegisteredFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CnsNotRegisteredFault))) }),
        ("ArrayOfServerStartedSessionEvent", TypeInfo::Value { name: "ArrayOfServerStartedSessionEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_server_started_session_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_server_started_session_event) }),
        ("ArrayOfDvsHostInfrastructureTrafficResource", TypeInfo::Value { name: "ArrayOfDvsHostInfrastructureTrafficResource", make_deserializer: || make_deser_with::<Vec<super::structs::DvsHostInfrastructureTrafficResource>>(wrap_array_of_dvs_host_infrastructure_traffic_resource), from_value: |v| from_val_with::<Vec<super::structs::DvsHostInfrastructureTrafficResource>>(v, wrap_array_of_dvs_host_infrastructure_traffic_resource) }),
        ("ArrayOfLocalLicenseSource", TypeInfo::Value { name: "ArrayOfLocalLicenseSource", make_deserializer: || make_deser_with::<Vec<super::structs::LocalLicenseSource>>(wrap_array_of_local_license_source), from_value: |v| from_val_with::<Vec<super::structs::LocalLicenseSource>>(v, wrap_array_of_local_license_source) }),
        ("ArrayOfVsanPerfHotspotQuerySpec", TypeInfo::Value { name: "ArrayOfVsanPerfHotspotQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfHotspotQuerySpec>>(wrap_array_of_vsan_perf_hotspot_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfHotspotQuerySpec>>(v, wrap_array_of_vsan_perf_hotspot_query_spec) }),
        ("dateTime", TypeInfo::Value { name: "dateTime", make_deserializer: || make_deser_with::<String>(wrap_primitive_date_time), from_value: |v| from_val_with::<String>(v, wrap_primitive_date_time) }),
        ("CustomizationSysprepFailed", TypeInfo::Object { name: "CustomizationSysprepFailed", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomizationSysprepFailed))) }),
        ("HostDateTimeConfig", TypeInfo::Object { name: "HostDateTimeConfig", builder_fn: || Box::new(HostDateTimeConfigFields::new()) }),
        ("VsanCompositeConstraint", TypeInfo::Object { name: "VsanCompositeConstraint", builder_fn: || Box::new(VsanCompositeConstraintFields::new()) }),
        ("StorageDrsOptionSpec", TypeInfo::Object { name: "StorageDrsOptionSpec", builder_fn: || Box::new(StorageDrsOptionSpecFields::new()) }),
        ("ArrayOfHostUpgradeFailedEvent", TypeInfo::Value { name: "ArrayOfHostUpgradeFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_upgrade_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_upgrade_failed_event) }),
        ("ArrayOfVirtualMachineSnapshotInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineSnapshotInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineSnapshotInfo>>(wrap_array_of_virtual_machine_snapshot_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineSnapshotInfo>>(v, wrap_array_of_virtual_machine_snapshot_info) }),
        ("VsanResourceCheckTaskDetails", TypeInfo::Object { name: "VsanResourceCheckTaskDetails", builder_fn: || Box::new(VsanResourceCheckTaskDetailsFields::new()) }),
        ("ArrayOfKmipServerStatus", TypeInfo::Value { name: "ArrayOfKmipServerStatus", make_deserializer: || make_deser_with::<Vec<super::structs::KmipServerStatus>>(wrap_array_of_kmip_server_status), from_value: |v| from_val_with::<Vec<super::structs::KmipServerStatus>>(v, wrap_array_of_kmip_server_status) }),
        ("LicenseRestricted", TypeInfo::Object { name: "LicenseRestricted", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LicenseRestricted))) }),
        ("ClusterDasFailoverLevelAdvancedRuntimeInfoSlotInfo", TypeInfo::Object { name: "ClusterDasFailoverLevelAdvancedRuntimeInfoSlotInfo", builder_fn: || Box::new(ClusterDasFailoverLevelAdvancedRuntimeInfoSlotInfoFields::new()) }),
        ("ArrayOfFolderFileQuery", TypeInfo::Value { name: "ArrayOfFolderFileQuery", make_deserializer: || make_deser_with::<Vec<super::structs::FolderFileQuery>>(wrap_array_of_folder_file_query), from_value: |v| from_val_with::<Vec<super::structs::FolderFileQuery>>(v, wrap_array_of_folder_file_query) }),
        ("WarningUpgradeEvent", TypeInfo::Object { name: "WarningUpgradeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::WarningUpgradeEvent))) }),
        ("VsanClusterWhatifHostFailuresResult", TypeInfo::Object { name: "VsanClusterWhatifHostFailuresResult", builder_fn: || Box::new(VsanClusterWhatifHostFailuresResultFields::new()) }),
        ("ArrayOfVsanVmdkLoadTestSpec", TypeInfo::Value { name: "ArrayOfVsanVmdkLoadTestSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVmdkLoadTestSpec>>(wrap_array_of_vsan_vmdk_load_test_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanVmdkLoadTestSpec>>(v, wrap_array_of_vsan_vmdk_load_test_spec) }),
        ("ArrayOfVsanPerfEntityMetricCSV", TypeInfo::Value { name: "ArrayOfVsanPerfEntityMetricCSV", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfEntityMetricCsv>>(wrap_array_of_vsan_perf_entity_metric_csv), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfEntityMetricCsv>>(v, wrap_array_of_vsan_perf_entity_metric_csv) }),
        ("ArrayOfProfileExpression", TypeInfo::Value { name: "ArrayOfProfileExpression", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_profile_expression_array)), from_value: |v| cast_to_profile_expression_array(from_value(v)?) }),
        ("ArrayOfVirtualMachineFileInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFileInfo>>(wrap_array_of_virtual_machine_file_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFileInfo>>(v, wrap_array_of_virtual_machine_file_info) }),
        ("double", TypeInfo::Value { name: "double", make_deserializer: || make_deser_with::<f64>(wrap_primitive_double), from_value: |v| from_val_with::<f64>(v, wrap_primitive_double) }),
        ("PermissionAddedEvent", TypeInfo::Object { name: "PermissionAddedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::PermissionAddedEvent))) }),
        ("HostNvmeDiscoveryLogEntry", TypeInfo::Object { name: "HostNvmeDiscoveryLogEntry", builder_fn: || Box::new(HostNvmeDiscoveryLogEntryFields::new()) }),
        ("ArrayOfVirtualMachineUsbInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineUsbInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineUsbInfo>>(wrap_array_of_virtual_machine_usb_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineUsbInfo>>(v, wrap_array_of_virtual_machine_usb_info) }),
        ("VsanHostQueryCheckLimitsSpec", TypeInfo::Object { name: "VsanHostQueryCheckLimitsSpec", builder_fn: || Box::new(VsanHostQueryCheckLimitsSpecFields::new()) }),
        ("VimVsanHostVsanDiskManagementSystemCapability", TypeInfo::Object { name: "VimVsanHostVsanDiskManagementSystemCapability", builder_fn: || Box::new(VimVsanHostVsanDiskManagementSystemCapabilityFields::new()) }),
        ("ArrayOfQueryExecutionFault", TypeInfo::Value { name: "ArrayOfQueryExecutionFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_query_execution_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_query_execution_fault) }),
        ("ArrayOfEVCAdmissionFailedHostSoftware", TypeInfo::Value { name: "ArrayOfEVCAdmissionFailedHostSoftware", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_admission_failed_host_software), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_admission_failed_host_software) }),
        ("GroupErrorResult", TypeInfo::Object { name: "GroupErrorResult", builder_fn: || Box::new(GroupErrorResultFields::new()) }),
        ("HostVirtualSwitchSimpleBridge", TypeInfo::Object { name: "HostVirtualSwitchSimpleBridge", builder_fn: || Box::new(HostVirtualSwitchSimpleBridgeFields::new()) }),
        ("VirtualMachineRecordReplayState", TypeInfo::Value { name: "VirtualMachineRecordReplayState", make_deserializer: || make_deser_with::<super::enums::VirtualMachineRecordReplayStateEnum>(wrap_virtual_machine_record_replay_state), from_value: |v| from_val_with::<super::enums::VirtualMachineRecordReplayStateEnum>(v, wrap_virtual_machine_record_replay_state) }),
        ("WakeOnLanNotSupportedByVmotionNIC", TypeInfo::Object { name: "WakeOnLanNotSupportedByVmotionNIC", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::WakeOnLanNotSupportedByVmotionNic))) }),
        ("ConflictingDatastoreFound", TypeInfo::Object { name: "ConflictingDatastoreFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ConflictingDatastoreFound))) }),
        ("RDMNotSupported", TypeInfo::Object { name: "RDMNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RdmNotSupported))) }),
        ("ArrayOfMissingAgentIpPool", TypeInfo::Value { name: "ArrayOfMissingAgentIpPool", make_deserializer: || make_deser_with::<Vec<super::structs::MissingAgentIpPool>>(wrap_array_of_missing_agent_ip_pool), from_value: |v| from_val_with::<Vec<super::structs::MissingAgentIpPool>>(v, wrap_array_of_missing_agent_ip_pool) }),
        ("ExtExtendedProductInfo", TypeInfo::Object { name: "ExtExtendedProductInfo", builder_fn: || Box::new(ExtExtendedProductInfoFields::new()) }),
        ("ArrayOfNetStackInstanceProfile", TypeInfo::Value { name: "ArrayOfNetStackInstanceProfile", make_deserializer: || make_deser_with::<Vec<super::structs::NetStackInstanceProfile>>(wrap_array_of_net_stack_instance_profile), from_value: |v| from_val_with::<Vec<super::structs::NetStackInstanceProfile>>(v, wrap_array_of_net_stack_instance_profile) }),
        ("InaccessibleVFlashSource", TypeInfo::Object { name: "InaccessibleVFlashSource", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InaccessibleVFlashSource))) }),
        ("ArrayOfVirtualSerialPortFileBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualSerialPortFileBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortFileBackingInfo>>(wrap_array_of_virtual_serial_port_file_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortFileBackingInfo>>(v, wrap_array_of_virtual_serial_port_file_backing_info) }),
        ("ArrayOfCustomizationIdentitySettings", TypeInfo::Value { name: "ArrayOfCustomizationIdentitySettings", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_customization_identity_settings_array)), from_value: |v| cast_to_customization_identity_settings_array(from_value(v)?) }),
        ("DVSSecurityPolicy", TypeInfo::Object { name: "DVSSecurityPolicy", builder_fn: || Box::new(DvsSecurityPolicyFields::new()) }),
        ("ArrayOfVmPoweredOnEvent", TypeInfo::Value { name: "ArrayOfVmPoweredOnEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_powered_on_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_powered_on_event) }),
        ("SharesLevel", TypeInfo::Value { name: "SharesLevel", make_deserializer: || make_deser_with::<super::enums::SharesLevelEnum>(wrap_shares_level), from_value: |v| from_val_with::<super::enums::SharesLevelEnum>(v, wrap_shares_level) }),
        ("ArrayOfGuestRegValueQwordSpec", TypeInfo::Value { name: "ArrayOfGuestRegValueQwordSpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegValueQwordSpec>>(wrap_array_of_guest_reg_value_qword_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegValueQwordSpec>>(v, wrap_array_of_guest_reg_value_qword_spec) }),
        ("ArrayOfBoolPolicy", TypeInfo::Value { name: "ArrayOfBoolPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::BoolPolicy>>(wrap_array_of_bool_policy), from_value: |v| from_val_with::<Vec<super::structs::BoolPolicy>>(v, wrap_array_of_bool_policy) }),
        ("ArrayOfVirtualMachineBootOptionsBootableEthernetDevice", TypeInfo::Value { name: "ArrayOfVirtualMachineBootOptionsBootableEthernetDevice", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineBootOptionsBootableEthernetDevice>>(wrap_array_of_virtual_machine_boot_options_bootable_ethernet_device), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineBootOptionsBootableEthernetDevice>>(v, wrap_array_of_virtual_machine_boot_options_bootable_ethernet_device) }),
        ("CnsQueryFilter", TypeInfo::Object { name: "CnsQueryFilter", builder_fn: || Box::new(CnsQueryFilterFields::new()) }),
        ("ArrayOfHostHasComponentFailure", TypeInfo::Value { name: "ArrayOfHostHasComponentFailure", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_has_component_failure), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_has_component_failure) }),
        ("PbmCapabilityRange", TypeInfo::Object { name: "PbmCapabilityRange", builder_fn: || Box::new(PbmCapabilityRangeFields::new()) }),
        ("VsanPhysicalDiskHealthSummary", TypeInfo::Object { name: "VsanPhysicalDiskHealthSummary", builder_fn: || Box::new(VsanPhysicalDiskHealthSummaryFields::new()) }),
        ("VMwareIpfixConfig", TypeInfo::Object { name: "VMwareIpfixConfig", builder_fn: || Box::new(VMwareIpfixConfigFields::new()) }),
        ("GuestRegistryKeyHasSubkeys", TypeInfo::Object { name: "GuestRegistryKeyHasSubkeys", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestRegistryKeyHasSubkeys))) }),
        ("ArrayOfFolderFileInfo", TypeInfo::Value { name: "ArrayOfFolderFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::FolderFileInfo>>(wrap_array_of_folder_file_info), from_value: |v| from_val_with::<Vec<super::structs::FolderFileInfo>>(v, wrap_array_of_folder_file_info) }),
        ("ArrayOfVirtualCdromRemotePassthroughBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualCdromRemotePassthroughBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromRemotePassthroughBackingInfo>>(wrap_array_of_virtual_cdrom_remote_passthrough_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromRemotePassthroughBackingInfo>>(v, wrap_array_of_virtual_cdrom_remote_passthrough_backing_info) }),
        ("ArrayOfVMwareDvsIpfixCapability", TypeInfo::Value { name: "ArrayOfVMwareDvsIpfixCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsIpfixCapability>>(wrap_array_of_v_mware_dvs_ipfix_capability), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsIpfixCapability>>(v, wrap_array_of_v_mware_dvs_ipfix_capability) }),
        ("KmipServerSpecKeySpec", TypeInfo::Object { name: "KmipServerSpecKeySpec", builder_fn: || Box::new(KmipServerSpecKeySpecFields::new()) }),
        ("ArrayOfVirtualMachineVgpuProfileInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineVgpuProfileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVgpuProfileInfo>>(wrap_array_of_virtual_machine_vgpu_profile_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVgpuProfileInfo>>(v, wrap_array_of_virtual_machine_vgpu_profile_info) }),
        ("MigrationResourceErrorEvent", TypeInfo::Object { name: "MigrationResourceErrorEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::MigrationResourceErrorEvent))) }),
        ("ArrayOfPersonalityAgencyCannotConfigureSolutions", TypeInfo::Value { name: "ArrayOfPersonalityAgencyCannotConfigureSolutions", make_deserializer: || make_deser_with::<Vec<super::structs::PersonalityAgencyCannotConfigureSolutions>>(wrap_array_of_personality_agency_cannot_configure_solutions), from_value: |v| from_val_with::<Vec<super::structs::PersonalityAgencyCannotConfigureSolutions>>(v, wrap_array_of_personality_agency_cannot_configure_solutions) }),
        ("NetworkDisruptedAndConfigRolledBack", TypeInfo::Object { name: "NetworkDisruptedAndConfigRolledBack", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NetworkDisruptedAndConfigRolledBack))) }),
        ("HostLocalFileSystemVolumeSpec", TypeInfo::Object { name: "HostLocalFileSystemVolumeSpec", builder_fn: || Box::new(HostLocalFileSystemVolumeSpecFields::new()) }),
        ("VsanNetworkDiagnostics", TypeInfo::Object { name: "VsanNetworkDiagnostics", builder_fn: || Box::new(VsanNetworkDiagnosticsFields::new()) }),
        ("GuestAliases", TypeInfo::Object { name: "GuestAliases", builder_fn: || Box::new(GuestAliasesFields::new()) }),
        ("ArrayOfCnsVolumeId", TypeInfo::Value { name: "ArrayOfCnsVolumeId", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumeId>>(wrap_array_of_cns_volume_id), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumeId>>(v, wrap_array_of_cns_volume_id) }),
        ("HostCnxFailedNotFoundEvent", TypeInfo::Object { name: "HostCnxFailedNotFoundEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedNotFoundEvent))) }),
        ("VirtualAHCIController", TypeInfo::Object { name: "VirtualAHCIController", builder_fn: || Box::new(VirtualAhciControllerFields::new()) }),
        ("FcoeConfigFcoeSpecification", TypeInfo::Object { name: "FcoeConfigFcoeSpecification", builder_fn: || Box::new(FcoeConfigFcoeSpecificationFields::new()) }),
        ("DatacenterEvent", TypeInfo::Object { name: "DatacenterEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatacenterEvent))) }),
        ("VirtualLsiLogicSASController", TypeInfo::Object { name: "VirtualLsiLogicSASController", builder_fn: || Box::new(VirtualLsiLogicSasControllerFields::new()) }),
        ("ArrayOfPhysicalNicHint", TypeInfo::Value { name: "ArrayOfPhysicalNicHint", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_physical_nic_hint_array)), from_value: |v| cast_to_physical_nic_hint_array(from_value(v)?) }),
        ("ArrayOfVMotionInterfaceIssue", TypeInfo::Value { name: "ArrayOfVMotionInterfaceIssue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_motion_interface_issue), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_motion_interface_issue) }),
        ("FaultToleranceMetaSpec", TypeInfo::Object { name: "FaultToleranceMetaSpec", builder_fn: || Box::new(FaultToleranceMetaSpecFields::new()) }),
        ("ArrayOfActiveVsanDirectoryServerConfig", TypeInfo::Value { name: "ArrayOfActiveVsanDirectoryServerConfig", make_deserializer: || make_deser_with::<Vec<super::structs::ActiveVsanDirectoryServerConfig>>(wrap_array_of_active_vsan_directory_server_config), from_value: |v| from_val_with::<Vec<super::structs::ActiveVsanDirectoryServerConfig>>(v, wrap_array_of_active_vsan_directory_server_config) }),
        ("NvdimmNamespaceDetails", TypeInfo::Object { name: "NvdimmNamespaceDetails", builder_fn: || Box::new(NvdimmNamespaceDetailsFields::new()) }),
        ("ArrayOfDistributedVirtualSwitchInfo", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchInfo>>(wrap_array_of_distributed_virtual_switch_info), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchInfo>>(v, wrap_array_of_distributed_virtual_switch_info) }),
        ("ArrayOfIncompatibleHostVersion", TypeInfo::Value { name: "ArrayOfIncompatibleHostVersion", make_deserializer: || make_deser_with::<Vec<super::structs::IncompatibleHostVersion>>(wrap_array_of_incompatible_host_version), from_value: |v| from_val_with::<Vec<super::structs::IncompatibleHostVersion>>(v, wrap_array_of_incompatible_host_version) }),
        ("ArrayOfVmPoweredOffEvent", TypeInfo::Value { name: "ArrayOfVmPoweredOffEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_powered_off_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_powered_off_event) }),
        ("ArrayOfVirtualMachinePciPassthroughInfo", TypeInfo::Value { name: "ArrayOfVirtualMachinePciPassthroughInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_pci_passthrough_info_array)), from_value: |v| cast_to_virtual_machine_pci_passthrough_info_array(from_value(v)?) }),
        ("ArrayOfRecordReplayDisabled", TypeInfo::Value { name: "ArrayOfRecordReplayDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_record_replay_disabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_record_replay_disabled) }),
        ("OvfPropertyQualifier", TypeInfo::Object { name: "OvfPropertyQualifier", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfPropertyQualifier))) }),
        ("ArrayOfVAppOvfSectionInfo", TypeInfo::Value { name: "ArrayOfVAppOvfSectionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VAppOvfSectionInfo>>(wrap_array_of_v_app_ovf_section_info), from_value: |v| from_val_with::<Vec<super::structs::VAppOvfSectionInfo>>(v, wrap_array_of_v_app_ovf_section_info) }),
        ("ArrayOfBackupBlobReadFailure", TypeInfo::Value { name: "ArrayOfBackupBlobReadFailure", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_backup_blob_read_failure), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_backup_blob_read_failure) }),
        ("ArrayOfVslmTaskReasonSystem", TypeInfo::Value { name: "ArrayOfVslmTaskReasonSystem", make_deserializer: || make_deser_with::<Vec<super::structs::VslmTaskReasonSystem>>(wrap_array_of_vslm_task_reason_system), from_value: |v| from_val_with::<Vec<super::structs::VslmTaskReasonSystem>>(v, wrap_array_of_vslm_task_reason_system) }),
        ("HostDiskPartitionLayout", TypeInfo::Object { name: "HostDiskPartitionLayout", builder_fn: || Box::new(HostDiskPartitionLayoutFields::new()) }),
        ("ArrayOfFaultToleranceCannotEditMem", TypeInfo::Value { name: "ArrayOfFaultToleranceCannotEditMem", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fault_tolerance_cannot_edit_mem), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fault_tolerance_cannot_edit_mem) }),
        ("ArrayOfOvfValidateHostResult", TypeInfo::Value { name: "ArrayOfOvfValidateHostResult", make_deserializer: || make_deser_with::<Vec<super::structs::OvfValidateHostResult>>(wrap_array_of_ovf_validate_host_result), from_value: |v| from_val_with::<Vec<super::structs::OvfValidateHostResult>>(v, wrap_array_of_ovf_validate_host_result) }),
        ("VirtualFloppyOption", TypeInfo::Object { name: "VirtualFloppyOption", builder_fn: || Box::new(VirtualFloppyOptionFields::new()) }),
        ("DvsPortVendorSpecificStateChangeEvent", TypeInfo::Object { name: "DvsPortVendorSpecificStateChangeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortVendorSpecificStateChangeEvent))) }),
        ("PrivilegePolicyDef", TypeInfo::Object { name: "PrivilegePolicyDef", builder_fn: || Box::new(PrivilegePolicyDefFields::new()) }),
        ("VsanIscsiTargetSpec", TypeInfo::Object { name: "VsanIscsiTargetSpec", builder_fn: || Box::new(VsanIscsiTargetSpecFields::new()) }),
        ("ArrayOfHostDiskConfigurationResult", TypeInfo::Value { name: "ArrayOfHostDiskConfigurationResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskConfigurationResult>>(wrap_array_of_host_disk_configuration_result), from_value: |v| from_val_with::<Vec<super::structs::HostDiskConfigurationResult>>(v, wrap_array_of_host_disk_configuration_result) }),
        ("VirtualMachineLegacyNetworkSwitchInfo", TypeInfo::Object { name: "VirtualMachineLegacyNetworkSwitchInfo", builder_fn: || Box::new(VirtualMachineLegacyNetworkSwitchInfoFields::new()) }),
        ("ArrayOfVmRelayoutUpToDateEvent", TypeInfo::Value { name: "ArrayOfVmRelayoutUpToDateEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_relayout_up_to_date_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_relayout_up_to_date_event) }),
        ("ArrayOfNameValuePair", TypeInfo::Value { name: "ArrayOfNameValuePair", make_deserializer: || make_deser_with::<Vec<super::structs::NameValuePair>>(wrap_array_of_name_value_pair), from_value: |v| from_val_with::<Vec<super::structs::NameValuePair>>(v, wrap_array_of_name_value_pair) }),
        ("VsanDiskFormatConversionSpec", TypeInfo::Object { name: "VsanDiskFormatConversionSpec", builder_fn: || Box::new(VsanDiskFormatConversionSpecFields::new()) }),
        ("ArrayOfVmDasUpdateOkEvent", TypeInfo::Value { name: "ArrayOfVmDasUpdateOkEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_das_update_ok_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_das_update_ok_event) }),
        ("VmfsDatastoreExtendSpec", TypeInfo::Object { name: "VmfsDatastoreExtendSpec", builder_fn: || Box::new(VmfsDatastoreExtendSpecFields::new()) }),
        ("ArrayOfInventoryDescription", TypeInfo::Value { name: "ArrayOfInventoryDescription", make_deserializer: || make_deser_with::<Vec<super::structs::InventoryDescription>>(wrap_array_of_inventory_description), from_value: |v| from_val_with::<Vec<super::structs::InventoryDescription>>(v, wrap_array_of_inventory_description) }),
        ("ProfileExpression", TypeInfo::Object { name: "ProfileExpression", builder_fn: || Box::new(ProfileExpressionFields::new()) }),
        ("VirtualMachineScsiPassthroughInfo", TypeInfo::Object { name: "VirtualMachineScsiPassthroughInfo", builder_fn: || Box::new(VirtualMachineScsiPassthroughInfoFields::new()) }),
        ("ConnectedIso", TypeInfo::Object { name: "ConnectedIso", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ConnectedIso))) }),
        ("ArrayOfEightHostLimitViolated", TypeInfo::Value { name: "ArrayOfEightHostLimitViolated", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eight_host_limit_violated), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eight_host_limit_violated) }),
        ("AgentPinnedPemCertificate", TypeInfo::Object { name: "AgentPinnedPemCertificate", builder_fn: || Box::new(AgentPinnedPemCertificateFields::new()) }),
        ("VirtualSerialPortURIBackingInfo", TypeInfo::Object { name: "VirtualSerialPortURIBackingInfo", builder_fn: || Box::new(VirtualSerialPortUriBackingInfoFields::new()) }),
        ("ArrayOfOvfConsumerOstNode", TypeInfo::Value { name: "ArrayOfOvfConsumerOstNode", make_deserializer: || make_deser_with::<Vec<super::structs::OvfConsumerOstNode>>(wrap_array_of_ovf_consumer_ost_node), from_value: |v| from_val_with::<Vec<super::structs::OvfConsumerOstNode>>(v, wrap_array_of_ovf_consumer_ost_node) }),
        ("HostPowerPolicy", TypeInfo::Object { name: "HostPowerPolicy", builder_fn: || Box::new(HostPowerPolicyFields::new()) }),
        ("DvsFilterPolicy", TypeInfo::Object { name: "DvsFilterPolicy", builder_fn: || Box::new(DvsFilterPolicyFields::new()) }),
        ("VsanHostIoInsightInfo", TypeInfo::Object { name: "VsanHostIoInsightInfo", builder_fn: || Box::new(VsanHostIoInsightInfoFields::new()) }),
        ("ModeInfo", TypeInfo::Object { name: "ModeInfo", builder_fn: || Box::new(ModeInfoFields::new()) }),
        ("ArrayOfVirtualMachineBootOptionsBootableCdromDevice", TypeInfo::Value { name: "ArrayOfVirtualMachineBootOptionsBootableCdromDevice", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineBootOptionsBootableCdromDevice>>(wrap_array_of_virtual_machine_boot_options_bootable_cdrom_device), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineBootOptionsBootableCdromDevice>>(v, wrap_array_of_virtual_machine_boot_options_bootable_cdrom_device) }),
        ("ArrayOfProfileProfileStructure", TypeInfo::Value { name: "ArrayOfProfileProfileStructure", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileProfileStructure>>(wrap_array_of_profile_profile_structure), from_value: |v| from_val_with::<Vec<super::structs::ProfileProfileStructure>>(v, wrap_array_of_profile_profile_structure) }),
        ("VAppCloneSpecNetworkMappingPair", TypeInfo::Object { name: "VAppCloneSpecNetworkMappingPair", builder_fn: || Box::new(VAppCloneSpecNetworkMappingPairFields::new()) }),
        ("VsanDiskUnhealthIssue", TypeInfo::Object { name: "VsanDiskUnhealthIssue", builder_fn: || Box::new(VsanDiskUnhealthIssueFields::new()) }),
        ("ArrayOfVsanStoragePoolDisk", TypeInfo::Value { name: "ArrayOfVsanStoragePoolDisk", make_deserializer: || make_deser_with::<Vec<super::structs::VsanStoragePoolDisk>>(wrap_array_of_vsan_storage_pool_disk), from_value: |v| from_val_with::<Vec<super::structs::VsanStoragePoolDisk>>(v, wrap_array_of_vsan_storage_pool_disk) }),
        ("CnsMissingPrivilegeFault", TypeInfo::Object { name: "CnsMissingPrivilegeFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CnsMissingPrivilegeFault))) }),
        ("VmPoweredOffEvent", TypeInfo::Object { name: "VmPoweredOffEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmPoweredOffEvent))) }),
        ("VsanStoragePolicyStatus", TypeInfo::Object { name: "VsanStoragePolicyStatus", builder_fn: || Box::new(VsanStoragePolicyStatusFields::new()) }),
        ("AffinityConfigured", TypeInfo::Object { name: "AffinityConfigured", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AffinityConfigured))) }),
        ("ArrayOfHostLocalPortCreatedEvent", TypeInfo::Value { name: "ArrayOfHostLocalPortCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_local_port_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_local_port_created_event) }),
        ("ArrayOfGatewayToHostTrustVerifyFault", TypeInfo::Value { name: "ArrayOfGatewayToHostTrustVerifyFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_gateway_to_host_trust_verify_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_gateway_to_host_trust_verify_fault) }),
        ("ArrayOfVimVsanHostVsanHostCapability", TypeInfo::Value { name: "ArrayOfVimVsanHostVsanHostCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostVsanHostCapability>>(wrap_array_of_vim_vsan_host_vsan_host_capability), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostVsanHostCapability>>(v, wrap_array_of_vim_vsan_host_vsan_host_capability) }),
        ("ArrayOfVimClusterVSANStretchedClusterCapability", TypeInfo::Value { name: "ArrayOfVimClusterVSANStretchedClusterCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VimClusterVsanStretchedClusterCapability>>(wrap_array_of_vim_cluster_vsan_stretched_cluster_capability), from_value: |v| from_val_with::<Vec<super::structs::VimClusterVsanStretchedClusterCapability>>(v, wrap_array_of_vim_cluster_vsan_stretched_cluster_capability) }),
        ("OvfImportFailed", TypeInfo::Object { name: "OvfImportFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfImportFailed))) }),
        ("ArrayOfStoragePlacementSpec", TypeInfo::Value { name: "ArrayOfStoragePlacementSpec", make_deserializer: || make_deser_with::<Vec<super::structs::StoragePlacementSpec>>(wrap_array_of_storage_placement_spec), from_value: |v| from_val_with::<Vec<super::structs::StoragePlacementSpec>>(v, wrap_array_of_storage_placement_spec) }),
        ("ArrayOfVsanNetworkDiagnostics", TypeInfo::Value { name: "ArrayOfVsanNetworkDiagnostics", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkDiagnostics>>(wrap_array_of_vsan_network_diagnostics), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkDiagnostics>>(v, wrap_array_of_vsan_network_diagnostics) }),
        ("CannotPowerOffVmInCluster", TypeInfo::Object { name: "CannotPowerOffVmInCluster", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotPowerOffVmInCluster))) }),
        ("ArrayOfDVSContactInfo", TypeInfo::Value { name: "ArrayOfDVSContactInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DvsContactInfo>>(wrap_array_of_dvs_contact_info), from_value: |v| from_val_with::<Vec<super::structs::DvsContactInfo>>(v, wrap_array_of_dvs_contact_info) }),
        ("IscsiFaultVnicIsLastPath", TypeInfo::Object { name: "IscsiFaultVnicIsLastPath", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultVnicIsLastPath))) }),
        ("PerfSampleInfo", TypeInfo::Object { name: "PerfSampleInfo", builder_fn: || Box::new(PerfSampleInfoFields::new()) }),
        ("StoragePlacementSpec", TypeInfo::Object { name: "StoragePlacementSpec", builder_fn: || Box::new(StoragePlacementSpecFields::new()) }),
        ("ProviderRegistrationFault", TypeInfo::Object { name: "ProviderRegistrationFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProviderRegistrationFault))) }),
        ("ArrayOfHostLicensableResourceKey", TypeInfo::Value { name: "ArrayOfHostLicensableResourceKey", make_deserializer: || make_deser_with::<Vec<super::enums::HostLicensableResourceKeyEnum>>(wrap_array_of_host_licensable_resource_key), from_value: |v| from_val_with::<Vec<super::enums::HostLicensableResourceKeyEnum>>(v, wrap_array_of_host_licensable_resource_key) }),
        ("ArrayOfLegacyNetworkInterfaceInUse", TypeInfo::Value { name: "ArrayOfLegacyNetworkInterfaceInUse", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_legacy_network_interface_in_use), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_legacy_network_interface_in_use) }),
        ("ArrayOfHostNvmeTopology", TypeInfo::Value { name: "ArrayOfHostNvmeTopology", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeTopology>>(wrap_array_of_host_nvme_topology), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeTopology>>(v, wrap_array_of_host_nvme_topology) }),
        ("ArrayOfHostDiskPartitionSpec", TypeInfo::Value { name: "ArrayOfHostDiskPartitionSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskPartitionSpec>>(wrap_array_of_host_disk_partition_spec), from_value: |v| from_val_with::<Vec<super::structs::HostDiskPartitionSpec>>(v, wrap_array_of_host_disk_partition_spec) }),
        ("HostIssue", TypeInfo::Object { name: "HostIssue", builder_fn: || Box::new(HostIssueFields::new()) }),
        ("DatacenterCreatedEvent", TypeInfo::Object { name: "DatacenterCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatacenterCreatedEvent))) }),
        ("ArrayOfUserPasswordChanged", TypeInfo::Value { name: "ArrayOfUserPasswordChanged", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_user_password_changed), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_user_password_changed) }),
        ("ProfileAssociatedEvent", TypeInfo::Object { name: "ProfileAssociatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ProfileAssociatedEvent))) }),
        ("ArrayOfDistributedVirtualSwitchManagerHostContainerFilter", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchManagerHostContainerFilter", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchManagerHostContainerFilter>>(wrap_array_of_distributed_virtual_switch_manager_host_container_filter), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchManagerHostContainerFilter>>(v, wrap_array_of_distributed_virtual_switch_manager_host_container_filter) }),
        ("HostConfigSummary", TypeInfo::Object { name: "HostConfigSummary", builder_fn: || Box::new(HostConfigSummaryFields::new()) }),
        ("ArrayOfMemorySizeNotRecommended", TypeInfo::Value { name: "ArrayOfMemorySizeNotRecommended", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_memory_size_not_recommended), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_memory_size_not_recommended) }),
        ("ArrayOfHttpNfcLeaseState", TypeInfo::Value { name: "ArrayOfHttpNfcLeaseState", make_deserializer: || make_deser_with::<Vec<super::enums::HttpNfcLeaseStateEnum>>(wrap_array_of_http_nfc_lease_state), from_value: |v| from_val_with::<Vec<super::enums::HttpNfcLeaseStateEnum>>(v, wrap_array_of_http_nfc_lease_state) }),
        ("VirtualMachineContentLibraryItemInfo", TypeInfo::Object { name: "VirtualMachineContentLibraryItemInfo", builder_fn: || Box::new(VirtualMachineContentLibraryItemInfoFields::new()) }),
        ("CustomizationIdentitySettings", TypeInfo::Object { name: "CustomizationIdentitySettings", builder_fn: || Box::new(CustomizationIdentitySettingsFields::new()) }),
        ("ArrayOfHostSriovConfig", TypeInfo::Value { name: "ArrayOfHostSriovConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostSriovConfig>>(wrap_array_of_host_sriov_config), from_value: |v| from_val_with::<Vec<super::structs::HostSriovConfig>>(v, wrap_array_of_host_sriov_config) }),
        ("VsanClusterHealthResultTable", TypeInfo::Object { name: "VsanClusterHealthResultTable", builder_fn: || Box::new(VsanClusterHealthResultTableFields::new()) }),
        ("ArrayOfHostMultipathInfoPath", TypeInfo::Value { name: "ArrayOfHostMultipathInfoPath", make_deserializer: || make_deser_with::<Vec<super::structs::HostMultipathInfoPath>>(wrap_array_of_host_multipath_info_path), from_value: |v| from_val_with::<Vec<super::structs::HostMultipathInfoPath>>(v, wrap_array_of_host_multipath_info_path) }),
        ("VsanNetworkPeerHealthResult", TypeInfo::Object { name: "VsanNetworkPeerHealthResult", builder_fn: || Box::new(VsanNetworkPeerHealthResultFields::new()) }),
        ("LicenseDiagnostics", TypeInfo::Object { name: "LicenseDiagnostics", builder_fn: || Box::new(LicenseDiagnosticsFields::new()) }),
        ("ArrayOfHostInventoryFull", TypeInfo::Value { name: "ArrayOfHostInventoryFull", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_inventory_full), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_inventory_full) }),
        ("VirtualMachineFileLayoutExFileInfo", TypeInfo::Object { name: "VirtualMachineFileLayoutExFileInfo", builder_fn: || Box::new(VirtualMachineFileLayoutExFileInfoFields::new()) }),
        ("VsanIoInsightInstanceQuerySpec", TypeInfo::Object { name: "VsanIoInsightInstanceQuerySpec", builder_fn: || Box::new(VsanIoInsightInstanceQuerySpecFields::new()) }),
        ("ArrayOfVsanFileServiceBalanceHealth", TypeInfo::Value { name: "ArrayOfVsanFileServiceBalanceHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServiceBalanceHealth>>(wrap_array_of_vsan_file_service_balance_health), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServiceBalanceHealth>>(v, wrap_array_of_vsan_file_service_balance_health) }),
        ("IscsiFaultVnicAlreadyBound", TypeInfo::Object { name: "IscsiFaultVnicAlreadyBound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultVnicAlreadyBound))) }),
        ("VAppOvfSectionSpec", TypeInfo::Object { name: "VAppOvfSectionSpec", builder_fn: || Box::new(VAppOvfSectionSpecFields::new()) }),
        ("HostDiagnosticPartition", TypeInfo::Object { name: "HostDiagnosticPartition", builder_fn: || Box::new(HostDiagnosticPartitionFields::new()) }),
        ("PatchMetadataCorrupted", TypeInfo::Object { name: "PatchMetadataCorrupted", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PatchMetadataCorrupted))) }),
        ("HostPcieTargetTransport", TypeInfo::Object { name: "HostPcieTargetTransport", builder_fn: || Box::new(HostPcieTargetTransportFields::new()) }),
        ("VmDeployedEvent", TypeInfo::Object { name: "VmDeployedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDeployedEvent))) }),
        ("ArrayOfPosixUserSearchResult", TypeInfo::Value { name: "ArrayOfPosixUserSearchResult", make_deserializer: || make_deser_with::<Vec<super::structs::PosixUserSearchResult>>(wrap_array_of_posix_user_search_result), from_value: |v| from_val_with::<Vec<super::structs::PosixUserSearchResult>>(v, wrap_array_of_posix_user_search_result) }),
        ("ArrayOfNoGuestHeartbeat", TypeInfo::Value { name: "ArrayOfNoGuestHeartbeat", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_guest_heartbeat), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_guest_heartbeat) }),
        ("ArrayOfVibVibServicesSslTrust", TypeInfo::Value { name: "ArrayOfVibVibServicesSslTrust", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vib_vib_services_ssl_trust_array)), from_value: |v| cast_to_vib_vib_services_ssl_trust_array(from_value(v)?) }),
        ("ArrayOfHbrTargetSpec", TypeInfo::Value { name: "ArrayOfHbrTargetSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HbrTargetSpec>>(wrap_array_of_hbr_target_spec), from_value: |v| from_val_with::<Vec<super::structs::HbrTargetSpec>>(v, wrap_array_of_hbr_target_spec) }),
        ("DatacenterMismatch", TypeInfo::Object { name: "DatacenterMismatch", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DatacenterMismatch))) }),
        ("VmSnapshotFileQuery", TypeInfo::Object { name: "VmSnapshotFileQuery", builder_fn: || Box::new(VmSnapshotFileQueryFields::new()) }),
        ("OvfDeploymentOption", TypeInfo::Object { name: "OvfDeploymentOption", builder_fn: || Box::new(OvfDeploymentOptionFields::new()) }),
        ("IORMNotSupportedHostOnDatastore", TypeInfo::Object { name: "IORMNotSupportedHostOnDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IormNotSupportedHostOnDatastore))) }),
        ("ArrayOfFileQueryFlags", TypeInfo::Value { name: "ArrayOfFileQueryFlags", make_deserializer: || make_deser_with::<Vec<super::structs::FileQueryFlags>>(wrap_array_of_file_query_flags), from_value: |v| from_val_with::<Vec<super::structs::FileQueryFlags>>(v, wrap_array_of_file_query_flags) }),
        ("AlreadyExists", TypeInfo::Object { name: "AlreadyExists", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AlreadyExists))) }),
        ("VsanWhatIfEvacResult", TypeInfo::Object { name: "VsanWhatIfEvacResult", builder_fn: || Box::new(VsanWhatIfEvacResultFields::new()) }),
        ("ArrayOfHostDnsConfigSpec", TypeInfo::Value { name: "ArrayOfHostDnsConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostDnsConfigSpec>>(wrap_array_of_host_dns_config_spec), from_value: |v| from_val_with::<Vec<super::structs::HostDnsConfigSpec>>(v, wrap_array_of_host_dns_config_spec) }),
        ("VirtualDisk", TypeInfo::Object { name: "VirtualDisk", builder_fn: || Box::new(VirtualDiskFields::new()) }),
        ("VsanHostDecommissionMode", TypeInfo::Object { name: "VsanHostDecommissionMode", builder_fn: || Box::new(VsanHostDecommissionModeFields::new()) }),
        ("ArrayOfHostVvolVolume", TypeInfo::Value { name: "ArrayOfHostVvolVolume", make_deserializer: || make_deser_with::<Vec<super::structs::HostVvolVolume>>(wrap_array_of_host_vvol_volume), from_value: |v| from_val_with::<Vec<super::structs::HostVvolVolume>>(v, wrap_array_of_host_vvol_volume) }),
        ("VASAStorageArrayDiscoveryFcTransport", TypeInfo::Object { name: "VASAStorageArrayDiscoveryFcTransport", builder_fn: || Box::new(VasaStorageArrayDiscoveryFcTransportFields::new()) }),
        ("ArrayOfEamObjectRuntimeInfo", TypeInfo::Value { name: "ArrayOfEamObjectRuntimeInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_eam_object_runtime_info_array)), from_value: |v| cast_to_eam_object_runtime_info_array(from_value(v)?) }),
        ("HostLowLevelProvisioningManagerDiskLayoutSpec", TypeInfo::Object { name: "HostLowLevelProvisioningManagerDiskLayoutSpec", builder_fn: || Box::new(HostLowLevelProvisioningManagerDiskLayoutSpecFields::new()) }),
        ("ArrayOfDvsPuntNetworkRuleAction", TypeInfo::Value { name: "ArrayOfDvsPuntNetworkRuleAction", make_deserializer: || make_deser_with::<Vec<super::structs::DvsPuntNetworkRuleAction>>(wrap_array_of_dvs_punt_network_rule_action), from_value: |v| from_val_with::<Vec<super::structs::DvsPuntNetworkRuleAction>>(v, wrap_array_of_dvs_punt_network_rule_action) }),
        ("HostShortNameToIpFailedEvent", TypeInfo::Object { name: "HostShortNameToIpFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostShortNameToIpFailedEvent))) }),
        ("ArrayOfNetIpRouteConfigInfoGateway", TypeInfo::Value { name: "ArrayOfNetIpRouteConfigInfoGateway", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpRouteConfigInfoGateway>>(wrap_array_of_net_ip_route_config_info_gateway), from_value: |v| from_val_with::<Vec<super::structs::NetIpRouteConfigInfoGateway>>(v, wrap_array_of_net_ip_route_config_info_gateway) }),
        ("PbmPlacementRequirement", TypeInfo::Object { name: "PbmPlacementRequirement", builder_fn: || Box::new(PbmPlacementRequirementFields::new()) }),
        ("ArrayOfPerfInterval", TypeInfo::Value { name: "ArrayOfPerfInterval", make_deserializer: || make_deser_with::<Vec<super::structs::PerfInterval>>(wrap_array_of_perf_interval), from_value: |v| from_val_with::<Vec<super::structs::PerfInterval>>(v, wrap_array_of_perf_interval) }),
        ("ArrayOfVirtualCdromRemoteAtapiBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualCdromRemoteAtapiBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromRemoteAtapiBackingInfo>>(wrap_array_of_virtual_cdrom_remote_atapi_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromRemoteAtapiBackingInfo>>(v, wrap_array_of_virtual_cdrom_remote_atapi_backing_info) }),
        ("CnsContainerCluster", TypeInfo::Object { name: "CnsContainerCluster", builder_fn: || Box::new(CnsContainerClusterFields::new()) }),
        ("VsanFileServiceOvfSpec", TypeInfo::Object { name: "VsanFileServiceOvfSpec", builder_fn: || Box::new(VsanFileServiceOvfSpecFields::new()) }),
        ("ReadOnlyDisksWithLegacyDestination", TypeInfo::Object { name: "ReadOnlyDisksWithLegacyDestination", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReadOnlyDisksWithLegacyDestination))) }),
        ("ArrayOfGuestWindowsFileAttributes", TypeInfo::Value { name: "ArrayOfGuestWindowsFileAttributes", make_deserializer: || make_deser_with::<Vec<super::structs::GuestWindowsFileAttributes>>(wrap_array_of_guest_windows_file_attributes), from_value: |v| from_val_with::<Vec<super::structs::GuestWindowsFileAttributes>>(v, wrap_array_of_guest_windows_file_attributes) }),
        ("VsanCapacityReservationInfo", TypeInfo::Object { name: "VsanCapacityReservationInfo", builder_fn: || Box::new(VsanCapacityReservationInfoFields::new()) }),
        ("ArrayOfVsanStoragePoolDiskResourceCheckResult", TypeInfo::Value { name: "ArrayOfVsanStoragePoolDiskResourceCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanStoragePoolDiskResourceCheckResult>>(wrap_array_of_vsan_storage_pool_disk_resource_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanStoragePoolDiskResourceCheckResult>>(v, wrap_array_of_vsan_storage_pool_disk_resource_check_result) }),
        ("ArrayOfAnswerFileSerializedCreateSpec", TypeInfo::Value { name: "ArrayOfAnswerFileSerializedCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::AnswerFileSerializedCreateSpec>>(wrap_array_of_answer_file_serialized_create_spec), from_value: |v| from_val_with::<Vec<super::structs::AnswerFileSerializedCreateSpec>>(v, wrap_array_of_answer_file_serialized_create_spec) }),
        ("ArrayOfPlacementRankResult", TypeInfo::Value { name: "ArrayOfPlacementRankResult", make_deserializer: || make_deser_with::<Vec<super::structs::PlacementRankResult>>(wrap_array_of_placement_rank_result), from_value: |v| from_val_with::<Vec<super::structs::PlacementRankResult>>(v, wrap_array_of_placement_rank_result) }),
        ("VirtualDiskRuleSpec", TypeInfo::Object { name: "VirtualDiskRuleSpec", builder_fn: || Box::new(VirtualDiskRuleSpecFields::new()) }),
        ("ArrayOfClusterDatastoreUpdateSpec", TypeInfo::Value { name: "ArrayOfClusterDatastoreUpdateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDatastoreUpdateSpec>>(wrap_array_of_cluster_datastore_update_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterDatastoreUpdateSpec>>(v, wrap_array_of_cluster_datastore_update_spec) }),
        ("ClusterDasVmConfigInfo", TypeInfo::Object { name: "ClusterDasVmConfigInfo", builder_fn: || Box::new(ClusterDasVmConfigInfoFields::new()) }),
        ("ArrayOfMemorySizeNotSupportedByDatastore", TypeInfo::Value { name: "ArrayOfMemorySizeNotSupportedByDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_memory_size_not_supported_by_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_memory_size_not_supported_by_datastore) }),
        ("ArrayOfVirtualAHCIController", TypeInfo::Value { name: "ArrayOfVirtualAHCIController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualAhciController>>(wrap_array_of_virtual_ahci_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualAhciController>>(v, wrap_array_of_virtual_ahci_controller) }),
        ("VmfsConfigOption", TypeInfo::Object { name: "VmfsConfigOption", builder_fn: || Box::new(VmfsConfigOptionFields::new()) }),
        ("ResourcePoolReconfiguredEvent", TypeInfo::Object { name: "ResourcePoolReconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ResourcePoolReconfiguredEvent))) }),
        ("VirtualDiskLocalPMemBackingInfo", TypeInfo::Object { name: "VirtualDiskLocalPMemBackingInfo", builder_fn: || Box::new(VirtualDiskLocalPMemBackingInfoFields::new()) }),
        ("ArrayOfUnexpectedFault", TypeInfo::Value { name: "ArrayOfUnexpectedFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_unexpected_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_unexpected_fault) }),
        ("ArrayOfOvfHostValueNotParsed", TypeInfo::Value { name: "ArrayOfOvfHostValueNotParsed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_host_value_not_parsed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_host_value_not_parsed) }),
        ("ArrayOfEVCAdmissionFailedHostDisconnected", TypeInfo::Value { name: "ArrayOfEVCAdmissionFailedHostDisconnected", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_admission_failed_host_disconnected), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_admission_failed_host_disconnected) }),
        ("ArrayOfVimVasaProviderStatePerArray", TypeInfo::Value { name: "ArrayOfVimVasaProviderStatePerArray", make_deserializer: || make_deser_with::<Vec<super::structs::VimVasaProviderStatePerArray>>(wrap_array_of_vim_vasa_provider_state_per_array), from_value: |v| from_val_with::<Vec<super::structs::VimVasaProviderStatePerArray>>(v, wrap_array_of_vim_vasa_provider_state_per_array) }),
        ("VirtualHardwareVersionNotSupported", TypeInfo::Object { name: "VirtualHardwareVersionNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VirtualHardwareVersionNotSupported))) }),
        ("ArrayOfTaskInfoFilterSpec", TypeInfo::Value { name: "ArrayOfTaskInfoFilterSpec", make_deserializer: || make_deser_with::<Vec<super::structs::TaskInfoFilterSpec>>(wrap_array_of_task_info_filter_spec), from_value: |v| from_val_with::<Vec<super::structs::TaskInfoFilterSpec>>(v, wrap_array_of_task_info_filter_spec) }),
        ("ArrayOfCryptoManagerKmipCryptoKeyStatusWrappingKeyIdKeyInfo", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipCryptoKeyStatusWrappingKeyIdKeyInfo", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerKmipCryptoKeyStatusWrappingKeyIdKeyInfo>>(wrap_array_of_crypto_manager_kmip_crypto_key_status_wrapping_key_id_key_info), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerKmipCryptoKeyStatusWrappingKeyIdKeyInfo>>(v, wrap_array_of_crypto_manager_kmip_crypto_key_status_wrapping_key_id_key_info) }),
        ("VsanHealthCustomizationSpec", TypeInfo::Object { name: "VsanHealthCustomizationSpec", builder_fn: || Box::new(VsanHealthCustomizationSpecFields::new()) }),
        ("CnsVolumeId", TypeInfo::Object { name: "CnsVolumeId", builder_fn: || Box::new(CnsVolumeIdFields::new()) }),
        ("HostDnsConfigSpec", TypeInfo::Object { name: "HostDnsConfigSpec", builder_fn: || Box::new(HostDnsConfigSpecFields::new()) }),
        ("ArrayOfVimClusterVsanWitnessSpec", TypeInfo::Value { name: "ArrayOfVimClusterVsanWitnessSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VimClusterVsanWitnessSpec>>(wrap_array_of_vim_cluster_vsan_witness_spec), from_value: |v| from_val_with::<Vec<super::structs::VimClusterVsanWitnessSpec>>(v, wrap_array_of_vim_cluster_vsan_witness_spec) }),
        ("ArrayOfHostCnxFailedBadCcagentEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedBadCcagentEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_bad_ccagent_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_bad_ccagent_event) }),
        ("ArrayOfHostMemberUplinkHealthCheckResult", TypeInfo::Value { name: "ArrayOfHostMemberUplinkHealthCheckResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_member_uplink_health_check_result_array)), from_value: |v| cast_to_host_member_uplink_health_check_result_array(from_value(v)?) }),
        ("DvsPortUnblockedEvent", TypeInfo::Object { name: "DvsPortUnblockedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortUnblockedEvent))) }),
        ("ArrayOfHostFirewallDefaultPolicy", TypeInfo::Value { name: "ArrayOfHostFirewallDefaultPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::HostFirewallDefaultPolicy>>(wrap_array_of_host_firewall_default_policy), from_value: |v| from_val_with::<Vec<super::structs::HostFirewallDefaultPolicy>>(v, wrap_array_of_host_firewall_default_policy) }),
        ("InvalidProperty", TypeInfo::Object { name: "InvalidProperty", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidProperty))) }),
        ("HostCpuPowerManagementInfo", TypeInfo::Object { name: "HostCpuPowerManagementInfo", builder_fn: || Box::new(HostCpuPowerManagementInfoFields::new()) }),
        ("ArrayOfVsanWhatIfEvacResult", TypeInfo::Value { name: "ArrayOfVsanWhatIfEvacResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanWhatIfEvacResult>>(wrap_array_of_vsan_what_if_evac_result), from_value: |v| from_val_with::<Vec<super::structs::VsanWhatIfEvacResult>>(v, wrap_array_of_vsan_what_if_evac_result) }),
        ("LicenseManagerState", TypeInfo::Value { name: "LicenseManagerState", make_deserializer: || make_deser_with::<super::enums::LicenseManagerStateEnum>(wrap_license_manager_state), from_value: |v| from_val_with::<super::enums::LicenseManagerStateEnum>(v, wrap_license_manager_state) }),
        ("ArrayOfOpaqueNetworkSummary", TypeInfo::Value { name: "ArrayOfOpaqueNetworkSummary", make_deserializer: || make_deser_with::<Vec<super::structs::OpaqueNetworkSummary>>(wrap_array_of_opaque_network_summary), from_value: |v| from_val_with::<Vec<super::structs::OpaqueNetworkSummary>>(v, wrap_array_of_opaque_network_summary) }),
        ("NoVmInVApp", TypeInfo::Object { name: "NoVmInVApp", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoVmInVApp))) }),
        ("ArrayOfHostLowLevelProvisioningManagerVmMigrationStatus", TypeInfo::Value { name: "ArrayOfHostLowLevelProvisioningManagerVmMigrationStatus", make_deserializer: || make_deser_with::<Vec<super::structs::HostLowLevelProvisioningManagerVmMigrationStatus>>(wrap_array_of_host_low_level_provisioning_manager_vm_migration_status), from_value: |v| from_val_with::<Vec<super::structs::HostLowLevelProvisioningManagerVmMigrationStatus>>(v, wrap_array_of_host_low_level_provisioning_manager_vm_migration_status) }),
        ("VsanNetworkVMotionVmknicNotFountIssue", TypeInfo::Object { name: "VsanNetworkVMotionVmknicNotFountIssue", builder_fn: || Box::new(VsanNetworkVMotionVmknicNotFountIssueFields::new()) }),
        ("ArrayOfCustomizationDhcpIpV6Generator", TypeInfo::Value { name: "ArrayOfCustomizationDhcpIpV6Generator", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationDhcpIpV6Generator>>(wrap_array_of_customization_dhcp_ip_v_6_generator), from_value: |v| from_val_with::<Vec<super::structs::CustomizationDhcpIpV6Generator>>(v, wrap_array_of_customization_dhcp_ip_v_6_generator) }),
        ("ArrayOfScheduledTaskSpec", TypeInfo::Value { name: "ArrayOfScheduledTaskSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_scheduled_task_spec_array)), from_value: |v| cast_to_scheduled_task_spec_array(from_value(v)?) }),
        ("VirtualSoundCardDeviceBackingOption", TypeInfo::Object { name: "VirtualSoundCardDeviceBackingOption", builder_fn: || Box::new(VirtualSoundCardDeviceBackingOptionFields::new()) }),
        ("PatchMissingDependencies", TypeInfo::Object { name: "PatchMissingDependencies", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PatchMissingDependencies))) }),
        ("ClusterClusterInitialPlacementAction", TypeInfo::Object { name: "ClusterClusterInitialPlacementAction", builder_fn: || Box::new(ClusterClusterInitialPlacementActionFields::new()) }),
        ("VsanHostPortConfigEx", TypeInfo::Object { name: "VsanHostPortConfigEx", builder_fn: || Box::new(VsanHostPortConfigExFields::new()) }),
        ("ArrayOfOvfInvalidValueEmpty", TypeInfo::Value { name: "ArrayOfOvfInvalidValueEmpty", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_invalid_value_empty), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_invalid_value_empty) }),
        ("VmDasBeingResetWithScreenshotEvent", TypeInfo::Object { name: "VmDasBeingResetWithScreenshotEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDasBeingResetWithScreenshotEvent))) }),
        ("VirtualMachineSriovDevicePoolInfo", TypeInfo::Object { name: "VirtualMachineSriovDevicePoolInfo", builder_fn: || Box::new(VirtualMachineSriovDevicePoolInfoFields::new()) }),
        ("ArrayOfObjectUpdate", TypeInfo::Value { name: "ArrayOfObjectUpdate", make_deserializer: || make_deser_with::<Vec<super::structs::ObjectUpdate>>(wrap_array_of_object_update), from_value: |v| from_val_with::<Vec<super::structs::ObjectUpdate>>(v, wrap_array_of_object_update) }),
        ("HostPlugStoreTopologyPlugin", TypeInfo::Object { name: "HostPlugStoreTopologyPlugin", builder_fn: || Box::new(HostPlugStoreTopologyPluginFields::new()) }),
        ("ArrayUpdateSpec", TypeInfo::Object { name: "ArrayUpdateSpec", builder_fn: || Box::new(ArrayUpdateSpecFields::new()) }),
        ("HostSystemComplianceCheckState", TypeInfo::Object { name: "HostSystemComplianceCheckState", builder_fn: || Box::new(HostSystemComplianceCheckStateFields::new()) }),
        ("HostSerialAttachedTargetTransport", TypeInfo::Object { name: "HostSerialAttachedTargetTransport", builder_fn: || Box::new(HostSerialAttachedTargetTransportFields::new()) }),
        ("HostCnxFailedNoLicenseEvent", TypeInfo::Object { name: "HostCnxFailedNoLicenseEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedNoLicenseEvent))) }),
        ("UpdateVirtualMachineFilesResultFailedVmFileInfo", TypeInfo::Object { name: "UpdateVirtualMachineFilesResultFailedVmFileInfo", builder_fn: || Box::new(UpdateVirtualMachineFilesResultFailedVmFileInfoFields::new()) }),
        ("ArrayOfLifecycleWitnessDetails", TypeInfo::Value { name: "ArrayOfLifecycleWitnessDetails", make_deserializer: || make_deser_with::<Vec<super::structs::LifecycleWitnessDetails>>(wrap_array_of_lifecycle_witness_details), from_value: |v| from_val_with::<Vec<super::structs::LifecycleWitnessDetails>>(v, wrap_array_of_lifecycle_witness_details) }),
        ("DatacenterRenamedEvent", TypeInfo::Object { name: "DatacenterRenamedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatacenterRenamedEvent))) }),
        ("ArrayOfVmConfigMissingEvent", TypeInfo::Value { name: "ArrayOfVmConfigMissingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_config_missing_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_config_missing_event) }),
        ("ArrayOfVmRemovedEvent", TypeInfo::Value { name: "ArrayOfVmRemovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_removed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_removed_event) }),
        ("ArrayOfHostVirtualSwitchConfig", TypeInfo::Value { name: "ArrayOfHostVirtualSwitchConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualSwitchConfig>>(wrap_array_of_host_virtual_switch_config), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualSwitchConfig>>(v, wrap_array_of_host_virtual_switch_config) }),
        ("ArrayOfVsanHostIpConfigEx", TypeInfo::Value { name: "ArrayOfVsanHostIpConfigEx", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostIpConfigEx>>(wrap_array_of_vsan_host_ip_config_ex), from_value: |v| from_val_with::<Vec<super::structs::VsanHostIpConfigEx>>(v, wrap_array_of_vsan_host_ip_config_ex) }),
        ("ArrayOfVmBeingHotMigratedEvent", TypeInfo::Value { name: "ArrayOfVmBeingHotMigratedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_being_hot_migrated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_being_hot_migrated_event) }),
        ("ArrayOfHostLowLevelProvisioningManagerFileReserveSpec", TypeInfo::Value { name: "ArrayOfHostLowLevelProvisioningManagerFileReserveSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostLowLevelProvisioningManagerFileReserveSpec>>(wrap_array_of_host_low_level_provisioning_manager_file_reserve_spec), from_value: |v| from_val_with::<Vec<super::structs::HostLowLevelProvisioningManagerFileReserveSpec>>(v, wrap_array_of_host_low_level_provisioning_manager_file_reserve_spec) }),
        ("SecondaryVmAlreadyRegistered", TypeInfo::Object { name: "SecondaryVmAlreadyRegistered", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SecondaryVmAlreadyRegistered))) }),
        ("ApplyHostProfileConfigurationResult", TypeInfo::Object { name: "ApplyHostProfileConfigurationResult", builder_fn: || Box::new(ApplyHostProfileConfigurationResultFields::new()) }),
        ("HostNotInClusterEvent", TypeInfo::Object { name: "HostNotInClusterEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostNotInClusterEvent))) }),
        ("ArrayOfFileLockInfoResult", TypeInfo::Value { name: "ArrayOfFileLockInfoResult", make_deserializer: || make_deser_with::<Vec<super::structs::FileLockInfoResult>>(wrap_array_of_file_lock_info_result), from_value: |v| from_val_with::<Vec<super::structs::FileLockInfoResult>>(v, wrap_array_of_file_lock_info_result) }),
        ("CnsBlockVolumeRelocateSpec", TypeInfo::Object { name: "CnsBlockVolumeRelocateSpec", builder_fn: || Box::new(CnsBlockVolumeRelocateSpecFields::new()) }),
        ("CryptoSpecDeepRecrypt", TypeInfo::Object { name: "CryptoSpecDeepRecrypt", builder_fn: || Box::new(CryptoSpecDeepRecryptFields::new()) }),
        ("ManagedEntityStatus", TypeInfo::Value { name: "ManagedEntityStatus", make_deserializer: || make_deser_with::<super::enums::ManagedEntityStatusEnum>(wrap_managed_entity_status), from_value: |v| from_val_with::<super::enums::ManagedEntityStatusEnum>(v, wrap_managed_entity_status) }),
        ("ArrayOfPowerSystemCapability", TypeInfo::Value { name: "ArrayOfPowerSystemCapability", make_deserializer: || make_deser_with::<Vec<super::structs::PowerSystemCapability>>(wrap_array_of_power_system_capability), from_value: |v| from_val_with::<Vec<super::structs::PowerSystemCapability>>(v, wrap_array_of_power_system_capability) }),
        ("HostStorageSystemVmfsVolumeResult", TypeInfo::Object { name: "HostStorageSystemVmfsVolumeResult", builder_fn: || Box::new(HostStorageSystemVmfsVolumeResultFields::new()) }),
        ("NegatableExpression", TypeInfo::Object { name: "NegatableExpression", builder_fn: || Box::new(NegatableExpressionFields::new()) }),
        ("ArrayOfEamInvalidVibPackage", TypeInfo::Value { name: "ArrayOfEamInvalidVibPackage", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eam_invalid_vib_package), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eam_invalid_vib_package) }),
        ("HostIpChangedEvent", TypeInfo::Object { name: "HostIpChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostIpChangedEvent))) }),
        ("ArrayOfVirtualMachineUUID", TypeInfo::Value { name: "ArrayOfVirtualMachineUUID", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineUuid>>(wrap_array_of_virtual_machine_uuid), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineUuid>>(v, wrap_array_of_virtual_machine_uuid) }),
        ("IncorrectHostInformation", TypeInfo::Object { name: "IncorrectHostInformation", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IncorrectHostInformation))) }),
        ("ArrayOfHostSystemComplianceCheckState", TypeInfo::Value { name: "ArrayOfHostSystemComplianceCheckState", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemComplianceCheckState>>(wrap_array_of_host_system_compliance_check_state), from_value: |v| from_val_with::<Vec<super::structs::HostSystemComplianceCheckState>>(v, wrap_array_of_host_system_compliance_check_state) }),
        ("HostSystemReconnectSpec", TypeInfo::Object { name: "HostSystemReconnectSpec", builder_fn: || Box::new(HostSystemReconnectSpecFields::new()) }),
        ("VsanHostIpConfig", TypeInfo::Object { name: "VsanHostIpConfig", builder_fn: || Box::new(VsanHostIpConfigFields::new()) }),
        ("ArrayOfVibVibInfoSoftwareTags", TypeInfo::Value { name: "ArrayOfVibVibInfoSoftwareTags", make_deserializer: || make_deser_with::<Vec<super::structs::VibVibInfoSoftwareTags>>(wrap_array_of_vib_vib_info_software_tags), from_value: |v| from_val_with::<Vec<super::structs::VibVibInfoSoftwareTags>>(v, wrap_array_of_vib_vib_info_software_tags) }),
        ("ArrayOfVimVsanDataEfficiencyCapacityState", TypeInfo::Value { name: "ArrayOfVimVsanDataEfficiencyCapacityState", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanDataEfficiencyCapacityState>>(wrap_array_of_vim_vsan_data_efficiency_capacity_state), from_value: |v| from_val_with::<Vec<super::structs::VimVsanDataEfficiencyCapacityState>>(v, wrap_array_of_vim_vsan_data_efficiency_capacity_state) }),
        ("ArrayOfGuestScreenInfo", TypeInfo::Value { name: "ArrayOfGuestScreenInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestScreenInfo>>(wrap_array_of_guest_screen_info), from_value: |v| from_val_with::<Vec<super::structs::GuestScreenInfo>>(v, wrap_array_of_guest_screen_info) }),
        ("ArrayOfNoDiskSpace", TypeInfo::Value { name: "ArrayOfNoDiskSpace", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_disk_space), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_disk_space) }),
        ("ArrayOfGhostDvsProxySwitchDetectedEvent", TypeInfo::Value { name: "ArrayOfGhostDvsProxySwitchDetectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_ghost_dvs_proxy_switch_detected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_ghost_dvs_proxy_switch_detected_event) }),
        ("HostOvercommittedEvent", TypeInfo::Object { name: "HostOvercommittedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostOvercommittedEvent))) }),
        ("VMOnVirtualIntranet", TypeInfo::Object { name: "VMOnVirtualIntranet", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmOnVirtualIntranet))) }),
        ("PbmCapabilitySubProfileConstraints", TypeInfo::Object { name: "PbmCapabilitySubProfileConstraints", builder_fn: || Box::new(PbmCapabilitySubProfileConstraintsFields::new()) }),
        ("LocalizableMessage", TypeInfo::Object { name: "LocalizableMessage", builder_fn: || Box::new(LocalizableMessageFields::new()) }),
        ("VimFault", TypeInfo::Object { name: "VimFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VimFault))) }),
        ("ArrayOfSwapDatastoreNotWritableOnHost", TypeInfo::Value { name: "ArrayOfSwapDatastoreNotWritableOnHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_swap_datastore_not_writable_on_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_swap_datastore_not_writable_on_host) }),
        ("HostNicFailureCriteria", TypeInfo::Object { name: "HostNicFailureCriteria", builder_fn: || Box::new(HostNicFailureCriteriaFields::new()) }),
        ("EventFilterSpecByTime", TypeInfo::Object { name: "EventFilterSpecByTime", builder_fn: || Box::new(EventFilterSpecByTimeFields::new()) }),
        ("ArrayOfBatchResult", TypeInfo::Value { name: "ArrayOfBatchResult", make_deserializer: || make_deser_with::<Vec<super::structs::BatchResult>>(wrap_array_of_batch_result), from_value: |v| from_val_with::<Vec<super::structs::BatchResult>>(v, wrap_array_of_batch_result) }),
        ("ArrayOfHostNetworkConfig", TypeInfo::Value { name: "ArrayOfHostNetworkConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetworkConfig>>(wrap_array_of_host_network_config), from_value: |v| from_val_with::<Vec<super::structs::HostNetworkConfig>>(v, wrap_array_of_host_network_config) }),
        ("ArrayOfNetIpRouteConfigSpec", TypeInfo::Value { name: "ArrayOfNetIpRouteConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpRouteConfigSpec>>(wrap_array_of_net_ip_route_config_spec), from_value: |v| from_val_with::<Vec<super::structs::NetIpRouteConfigSpec>>(v, wrap_array_of_net_ip_route_config_spec) }),
        ("NoDisksToCustomize", TypeInfo::Object { name: "NoDisksToCustomize", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoDisksToCustomize))) }),
        ("ArrayOfStorageIOAllocationInfo", TypeInfo::Value { name: "ArrayOfStorageIOAllocationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::StorageIoAllocationInfo>>(wrap_array_of_storage_io_allocation_info), from_value: |v| from_val_with::<Vec<super::structs::StorageIoAllocationInfo>>(v, wrap_array_of_storage_io_allocation_info) }),
        ("VVolId", TypeInfo::Object { name: "VVolId", builder_fn: || Box::new(VVolIdFields::new()) }),
        ("PnicUplinkProfile", TypeInfo::Object { name: "PnicUplinkProfile", builder_fn: || Box::new(PnicUplinkProfileFields::new()) }),
        ("ClusterHostRecommendation", TypeInfo::Object { name: "ClusterHostRecommendation", builder_fn: || Box::new(ClusterHostRecommendationFields::new()) }),
        ("VirtualPCNet32Option", TypeInfo::Object { name: "VirtualPCNet32Option", builder_fn: || Box::new(VirtualPcNet32OptionFields::new()) }),
        ("ArrayOfVsanFaultDomainUpdateSpec", TypeInfo::Value { name: "ArrayOfVsanFaultDomainUpdateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFaultDomainUpdateSpec>>(wrap_array_of_vsan_fault_domain_update_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanFaultDomainUpdateSpec>>(v, wrap_array_of_vsan_fault_domain_update_spec) }),
        ("ArrayOfAnyURI", TypeInfo::Value { name: "ArrayOfAnyURI", make_deserializer: || make_deser_with::<Vec<String>>(wrap_array_of_uri), from_value: |v| from_val_with::<Vec<String>>(v, wrap_array_of_uri) }),
        ("ArrayOfComputeResourceHostSeedSpecSingleHostSpec", TypeInfo::Value { name: "ArrayOfComputeResourceHostSeedSpecSingleHostSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ComputeResourceHostSeedSpecSingleHostSpec>>(wrap_array_of_compute_resource_host_seed_spec_single_host_spec), from_value: |v| from_val_with::<Vec<super::structs::ComputeResourceHostSeedSpecSingleHostSpec>>(v, wrap_array_of_compute_resource_host_seed_spec_single_host_spec) }),
        ("ArrayOfOvfNoSpaceOnController", TypeInfo::Value { name: "ArrayOfOvfNoSpaceOnController", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_no_space_on_controller), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_no_space_on_controller) }),
        ("VirtualBusLogicController", TypeInfo::Object { name: "VirtualBusLogicController", builder_fn: || Box::new(VirtualBusLogicControllerFields::new()) }),
        ("HostLockdownMode", TypeInfo::Value { name: "HostLockdownMode", make_deserializer: || make_deser_with::<super::enums::HostLockdownModeEnum>(wrap_host_lockdown_mode), from_value: |v| from_val_with::<super::enums::HostLockdownModeEnum>(v, wrap_host_lockdown_mode) }),
        ("ArrayOfHostFru", TypeInfo::Value { name: "ArrayOfHostFru", make_deserializer: || make_deser_with::<Vec<super::structs::HostFru>>(wrap_array_of_host_fru), from_value: |v| from_val_with::<Vec<super::structs::HostFru>>(v, wrap_array_of_host_fru) }),
        ("VirtualMachineToolsStatus", TypeInfo::Value { name: "VirtualMachineToolsStatus", make_deserializer: || make_deser_with::<super::enums::VirtualMachineToolsStatusEnum>(wrap_virtual_machine_tools_status), from_value: |v| from_val_with::<super::enums::VirtualMachineToolsStatusEnum>(v, wrap_virtual_machine_tools_status) }),
        ("ArrayOfNasSessionCredentialConflict", TypeInfo::Value { name: "ArrayOfNasSessionCredentialConflict", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_nas_session_credential_conflict), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_nas_session_credential_conflict) }),
        ("ArrayOfTooManyGuestLogons", TypeInfo::Value { name: "ArrayOfTooManyGuestLogons", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_too_many_guest_logons), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_too_many_guest_logons) }),
        ("ArrayOfRetrieveVStorageObjSpec", TypeInfo::Value { name: "ArrayOfRetrieveVStorageObjSpec", make_deserializer: || make_deser_with::<Vec<super::structs::RetrieveVStorageObjSpec>>(wrap_array_of_retrieve_v_storage_obj_spec), from_value: |v| from_val_with::<Vec<super::structs::RetrieveVStorageObjSpec>>(v, wrap_array_of_retrieve_v_storage_obj_spec) }),
        ("HostProfileValidationFailureInfo", TypeInfo::Object { name: "HostProfileValidationFailureInfo", builder_fn: || Box::new(HostProfileValidationFailureInfoFields::new()) }),
        ("ArrayOfPropertySpec", TypeInfo::Value { name: "ArrayOfPropertySpec", make_deserializer: || make_deser_with::<Vec<super::structs::PropertySpec>>(wrap_array_of_property_spec), from_value: |v| from_val_with::<Vec<super::structs::PropertySpec>>(v, wrap_array_of_property_spec) }),
        ("BaseConfigInfoDiskFileBackingInfo", TypeInfo::Object { name: "BaseConfigInfoDiskFileBackingInfo", builder_fn: || Box::new(BaseConfigInfoDiskFileBackingInfoFields::new()) }),
        ("OvfHostValueNotParsed", TypeInfo::Object { name: "OvfHostValueNotParsed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfHostValueNotParsed))) }),
        ("ArrayOfHostSystemHealthInfo", TypeInfo::Value { name: "ArrayOfHostSystemHealthInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemHealthInfo>>(wrap_array_of_host_system_health_info), from_value: |v| from_val_with::<Vec<super::structs::HostSystemHealthInfo>>(v, wrap_array_of_host_system_health_info) }),
        ("ArrayOfDVSFilterSpecVmConnecteeSpec", TypeInfo::Value { name: "ArrayOfDVSFilterSpecVmConnecteeSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsFilterSpecVmConnecteeSpec>>(wrap_array_of_dvs_filter_spec_vm_connectee_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsFilterSpecVmConnecteeSpec>>(v, wrap_array_of_dvs_filter_spec_vm_connectee_spec) }),
        ("VmUnsupportedStartingEvent", TypeInfo::Object { name: "VmUnsupportedStartingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmUnsupportedStartingEvent))) }),
        ("VsanHostClusterStatus", TypeInfo::Object { name: "VsanHostClusterStatus", builder_fn: || Box::new(VsanHostClusterStatusFields::new()) }),
        ("ArrayOfVsanClusterHclInfo", TypeInfo::Value { name: "ArrayOfVsanClusterHclInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHclInfo>>(wrap_array_of_vsan_cluster_hcl_info), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHclInfo>>(v, wrap_array_of_vsan_cluster_hcl_info) }),
        ("ArrayOfVMwareVspanPort", TypeInfo::Value { name: "ArrayOfVMwareVspanPort", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareVspanPort>>(wrap_array_of_v_mware_vspan_port), from_value: |v| from_val_with::<Vec<super::structs::VMwareVspanPort>>(v, wrap_array_of_v_mware_vspan_port) }),
        ("VAppPropertyInfo", TypeInfo::Object { name: "VAppPropertyInfo", builder_fn: || Box::new(VAppPropertyInfoFields::new()) }),
        ("VirtualDiskSeSparseBackingOption", TypeInfo::Object { name: "VirtualDiskSeSparseBackingOption", builder_fn: || Box::new(VirtualDiskSeSparseBackingOptionFields::new()) }),
        ("VmPrimaryFailoverEvent", TypeInfo::Object { name: "VmPrimaryFailoverEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmPrimaryFailoverEvent))) }),
        ("HostVvolNQN", TypeInfo::Object { name: "HostVvolNQN", builder_fn: || Box::new(HostVvolNqnFields::new()) }),
        ("ExpiredEditionLicense", TypeInfo::Object { name: "ExpiredEditionLicense", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ExpiredEditionLicense))) }),
        ("ArrayOfVsanSiteFaultDomainConfig", TypeInfo::Value { name: "ArrayOfVsanSiteFaultDomainConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSiteFaultDomainConfig>>(wrap_array_of_vsan_site_fault_domain_config), from_value: |v| from_val_with::<Vec<super::structs::VsanSiteFaultDomainConfig>>(v, wrap_array_of_vsan_site_fault_domain_config) }),
        ("ArrayOfInvalidRequest", TypeInfo::Value { name: "ArrayOfInvalidRequest", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_request), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_request) }),
        ("ArrayOfDistributedVirtualSwitchHostProductSpec", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchHostProductSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchHostProductSpec>>(wrap_array_of_distributed_virtual_switch_host_product_spec), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchHostProductSpec>>(v, wrap_array_of_distributed_virtual_switch_host_product_spec) }),
        ("TransitionFailed", TypeInfo::Object { name: "TransitionFailed", builder_fn: || Box::new(TransitionFailedFields::new()) }),
        ("ArrayOfVsanIODiagnosticsInstanceQuerySpec", TypeInfo::Value { name: "ArrayOfVsanIODiagnosticsInstanceQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoDiagnosticsInstanceQuerySpec>>(wrap_array_of_vsan_io_diagnostics_instance_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanIoDiagnosticsInstanceQuerySpec>>(v, wrap_array_of_vsan_io_diagnostics_instance_query_spec) }),
        ("PbmDefaultCapabilityProfile", TypeInfo::Object { name: "PbmDefaultCapabilityProfile", builder_fn: || Box::new(PbmDefaultCapabilityProfileFields::new()) }),
        ("HostRdmaDevice", TypeInfo::Object { name: "HostRdmaDevice", builder_fn: || Box::new(HostRdmaDeviceFields::new()) }),
        ("GuestAuthAliasInfo", TypeInfo::Object { name: "GuestAuthAliasInfo", builder_fn: || Box::new(GuestAuthAliasInfoFields::new()) }),
        ("ClusterDasConfigInfo", TypeInfo::Object { name: "ClusterDasConfigInfo", builder_fn: || Box::new(ClusterDasConfigInfoFields::new()) }),
        ("VsanObjectPolicyIssue", TypeInfo::Object { name: "VsanObjectPolicyIssue", builder_fn: || Box::new(VsanObjectPolicyIssueFields::new()) }),
        ("ArrayOfHostCnxFailedNoAccessEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedNoAccessEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_no_access_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_no_access_event) }),
        ("ArrayOfInvalidIndexArgument", TypeInfo::Value { name: "ArrayOfInvalidIndexArgument", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_index_argument), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_index_argument) }),
        ("ResourcePoolResourceUsage", TypeInfo::Object { name: "ResourcePoolResourceUsage", builder_fn: || Box::new(ResourcePoolResourceUsageFields::new()) }),
        ("ArrayOfVsanFailedRepairObjectResult", TypeInfo::Value { name: "ArrayOfVsanFailedRepairObjectResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFailedRepairObjectResult>>(wrap_array_of_vsan_failed_repair_object_result), from_value: |v| from_val_with::<Vec<super::structs::VsanFailedRepairObjectResult>>(v, wrap_array_of_vsan_failed_repair_object_result) }),
        ("ArrayOfVmConfigIncompatibleForRecordReplay", TypeInfo::Value { name: "ArrayOfVmConfigIncompatibleForRecordReplay", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_config_incompatible_for_record_replay), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_config_incompatible_for_record_replay) }),
        ("ArrayOfHostNotReachable", TypeInfo::Value { name: "ArrayOfHostNotReachable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_not_reachable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_not_reachable) }),
        ("ArrayOfCannotCreateFile", TypeInfo::Value { name: "ArrayOfCannotCreateFile", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_create_file), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_create_file) }),
        ("ArrayOfOvfInvalidValueFormatMalformed", TypeInfo::Value { name: "ArrayOfOvfInvalidValueFormatMalformed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_invalid_value_format_malformed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_invalid_value_format_malformed) }),
        ("ArrayOfDatastoreDuplicatedEvent", TypeInfo::Value { name: "ArrayOfDatastoreDuplicatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_duplicated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_duplicated_event) }),
        ("ArrayOfVsanUpgradeSystemUpgradeHistoryItem", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemUpgradeHistoryItem", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_upgrade_system_upgrade_history_item_array)), from_value: |v| cast_to_vsan_upgrade_system_upgrade_history_item_array(from_value(v)?) }),
        ("ProviderConnectionFailed", TypeInfo::Object { name: "ProviderConnectionFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProviderConnectionFailed))) }),
        ("HostFirewallRuleDirection", TypeInfo::Value { name: "HostFirewallRuleDirection", make_deserializer: || make_deser_with::<super::enums::HostFirewallRuleDirectionEnum>(wrap_host_firewall_rule_direction), from_value: |v| from_val_with::<super::enums::HostFirewallRuleDirectionEnum>(v, wrap_host_firewall_rule_direction) }),
        ("ArrayOfHostRdmaDevicePnicBacking", TypeInfo::Value { name: "ArrayOfHostRdmaDevicePnicBacking", make_deserializer: || make_deser_with::<Vec<super::structs::HostRdmaDevicePnicBacking>>(wrap_array_of_host_rdma_device_pnic_backing), from_value: |v| from_val_with::<Vec<super::structs::HostRdmaDevicePnicBacking>>(v, wrap_array_of_host_rdma_device_pnic_backing) }),
        ("ArrayOfStorageDrsVmConfigInfo", TypeInfo::Value { name: "ArrayOfStorageDrsVmConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsVmConfigInfo>>(wrap_array_of_storage_drs_vm_config_info), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsVmConfigInfo>>(v, wrap_array_of_storage_drs_vm_config_info) }),
        ("ExtensionPrivilegeInfo", TypeInfo::Object { name: "ExtensionPrivilegeInfo", builder_fn: || Box::new(ExtensionPrivilegeInfoFields::new()) }),
        ("VmMaxFTRestartCountReached", TypeInfo::Object { name: "VmMaxFTRestartCountReached", builder_fn: || Box::new(EventFields::new(Some(StructType::VmMaxFtRestartCountReached))) }),
        ("ArrayOfPbmPlacementResourceUtilization", TypeInfo::Value { name: "ArrayOfPbmPlacementResourceUtilization", make_deserializer: || make_deser_with::<Vec<super::structs::PbmPlacementResourceUtilization>>(wrap_array_of_pbm_placement_resource_utilization), from_value: |v| from_val_with::<Vec<super::structs::PbmPlacementResourceUtilization>>(v, wrap_array_of_pbm_placement_resource_utilization) }),
        ("VirtualDiskVFlashCacheConfigInfo", TypeInfo::Object { name: "VirtualDiskVFlashCacheConfigInfo", builder_fn: || Box::new(VirtualDiskVFlashCacheConfigInfoFields::new()) }),
        ("ArrayOfVslmTaskInfo", TypeInfo::Value { name: "ArrayOfVslmTaskInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VslmTaskInfo>>(wrap_array_of_vslm_task_info), from_value: |v| from_val_with::<Vec<super::structs::VslmTaskInfo>>(v, wrap_array_of_vslm_task_info) }),
        ("VirtualMachineRuntimeInfoDasProtectionState", TypeInfo::Object { name: "VirtualMachineRuntimeInfoDasProtectionState", builder_fn: || Box::new(VirtualMachineRuntimeInfoDasProtectionStateFields::new()) }),
        ("VsanConfigCheckResult", TypeInfo::Object { name: "VsanConfigCheckResult", builder_fn: || Box::new(VsanConfigCheckResultFields::new()) }),
        ("EventAlarmExpression", TypeInfo::Object { name: "EventAlarmExpression", builder_fn: || Box::new(EventAlarmExpressionFields::new()) }),
        ("VmDiskFileQueryFlags", TypeInfo::Object { name: "VmDiskFileQueryFlags", builder_fn: || Box::new(VmDiskFileQueryFlagsFields::new()) }),
        ("GuestRegValueQwordSpec", TypeInfo::Object { name: "GuestRegValueQwordSpec", builder_fn: || Box::new(GuestRegValueQwordSpecFields::new()) }),
        ("VirtualDiskLocalPMemBackingOption", TypeInfo::Object { name: "VirtualDiskLocalPMemBackingOption", builder_fn: || Box::new(VirtualDiskLocalPMemBackingOptionFields::new()) }),
        ("VmWwnConflictEvent", TypeInfo::Object { name: "VmWwnConflictEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmWwnConflictEvent))) }),
        ("VsanClusterProactiveTestResult", TypeInfo::Object { name: "VsanClusterProactiveTestResult", builder_fn: || Box::new(VsanClusterProactiveTestResultFields::new()) }),
        ("ArrayOfClusterActionHistory", TypeInfo::Value { name: "ArrayOfClusterActionHistory", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterActionHistory>>(wrap_array_of_cluster_action_history), from_value: |v| from_val_with::<Vec<super::structs::ClusterActionHistory>>(v, wrap_array_of_cluster_action_history) }),
        ("ArrayOfHostProfileManagerCompositionResult", TypeInfo::Value { name: "ArrayOfHostProfileManagerCompositionResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileManagerCompositionResult>>(wrap_array_of_host_profile_manager_composition_result), from_value: |v| from_val_with::<Vec<super::structs::HostProfileManagerCompositionResult>>(v, wrap_array_of_host_profile_manager_composition_result) }),
        ("HostTcpHbaCreateSpec", TypeInfo::Object { name: "HostTcpHbaCreateSpec", builder_fn: || Box::new(HostTcpHbaCreateSpecFields::new()) }),
        ("VirtualController", TypeInfo::Object { name: "VirtualController", builder_fn: || Box::new(VirtualControllerFields::new()) }),
        ("FaultsByHost", TypeInfo::Object { name: "FaultsByHost", builder_fn: || Box::new(FaultsByHostFields::new()) }),
        ("ArrayOfPromoteParam", TypeInfo::Value { name: "ArrayOfPromoteParam", make_deserializer: || make_deser_with::<Vec<super::structs::PromoteParam>>(wrap_array_of_promote_param), from_value: |v| from_val_with::<Vec<super::structs::PromoteParam>>(v, wrap_array_of_promote_param) }),
        ("ArrayOfVsanHciMeshDatastoreSource", TypeInfo::Value { name: "ArrayOfVsanHciMeshDatastoreSource", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHciMeshDatastoreSource>>(wrap_array_of_vsan_hci_mesh_datastore_source), from_value: |v| from_val_with::<Vec<super::structs::VsanHciMeshDatastoreSource>>(v, wrap_array_of_vsan_hci_mesh_datastore_source) }),
        ("ArrayOfVcAgentUpgradeFailedEvent", TypeInfo::Value { name: "ArrayOfVcAgentUpgradeFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vc_agent_upgrade_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vc_agent_upgrade_failed_event) }),
        ("ArrayOfHostDhcpServiceSpec", TypeInfo::Value { name: "ArrayOfHostDhcpServiceSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostDhcpServiceSpec>>(wrap_array_of_host_dhcp_service_spec), from_value: |v| from_val_with::<Vec<super::structs::HostDhcpServiceSpec>>(v, wrap_array_of_host_dhcp_service_spec) }),
        ("HostSerialAttachedHba", TypeInfo::Object { name: "HostSerialAttachedHba", builder_fn: || Box::new(HostSerialAttachedHbaFields::new()) }),
        ("ArrayOfCustomizationDhcpIpGenerator", TypeInfo::Value { name: "ArrayOfCustomizationDhcpIpGenerator", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationDhcpIpGenerator>>(wrap_array_of_customization_dhcp_ip_generator), from_value: |v| from_val_with::<Vec<super::structs::CustomizationDhcpIpGenerator>>(v, wrap_array_of_customization_dhcp_ip_generator) }),
        ("LocalizedMethodFault", TypeInfo::Object { name: "LocalizedMethodFault", builder_fn: || Box::new(LocalizedMethodFaultFields::new()) }),
        ("ArrayOfVsanRemoteVcInfoStandalone", TypeInfo::Value { name: "ArrayOfVsanRemoteVcInfoStandalone", make_deserializer: || make_deser_with::<Vec<super::structs::VsanRemoteVcInfoStandalone>>(wrap_array_of_vsan_remote_vc_info_standalone), from_value: |v| from_val_with::<Vec<super::structs::VsanRemoteVcInfoStandalone>>(v, wrap_array_of_vsan_remote_vc_info_standalone) }),
        ("FaultToleranceVMConfigSpec", TypeInfo::Object { name: "FaultToleranceVMConfigSpec", builder_fn: || Box::new(FaultToleranceVmConfigSpecFields::new()) }),
        ("ArrayOfClusterDrsMigration", TypeInfo::Value { name: "ArrayOfClusterDrsMigration", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDrsMigration>>(wrap_array_of_cluster_drs_migration), from_value: |v| from_val_with::<Vec<super::structs::ClusterDrsMigration>>(v, wrap_array_of_cluster_drs_migration) }),
        ("ArrayOfVmIssue", TypeInfo::Value { name: "ArrayOfVmIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vm_issue_array)), from_value: |v| cast_to_vm_issue_array(from_value(v)?) }),
        ("ArrayOfOvfResourceMap", TypeInfo::Value { name: "ArrayOfOvfResourceMap", make_deserializer: || make_deser_with::<Vec<super::structs::OvfResourceMap>>(wrap_array_of_ovf_resource_map), from_value: |v| from_val_with::<Vec<super::structs::OvfResourceMap>>(v, wrap_array_of_ovf_resource_map) }),
        ("RecurrentTaskScheduler", TypeInfo::Object { name: "RecurrentTaskScheduler", builder_fn: || Box::new(RecurrentTaskSchedulerFields::new()) }),
        ("VsanObjectIOStats", TypeInfo::Object { name: "VsanObjectIOStats", builder_fn: || Box::new(VsanObjectIoStatsFields::new()) }),
        ("VimVsanHostQueryVsanDisksSpec", TypeInfo::Object { name: "VimVsanHostQueryVsanDisksSpec", builder_fn: || Box::new(VimVsanHostQueryVsanDisksSpecFields::new()) }),
        ("OptionDef", TypeInfo::Object { name: "OptionDef", builder_fn: || Box::new(OptionDefFields::new()) }),
        ("NameValuePair", TypeInfo::Object { name: "NameValuePair", builder_fn: || Box::new(NameValuePairFields::new()) }),
        ("GuestListFileInfo", TypeInfo::Object { name: "GuestListFileInfo", builder_fn: || Box::new(GuestListFileInfoFields::new()) }),
        ("ArrayOfVsanDisallowDataMovementIssue", TypeInfo::Value { name: "ArrayOfVsanDisallowDataMovementIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDisallowDataMovementIssue>>(wrap_array_of_vsan_disallow_data_movement_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanDisallowDataMovementIssue>>(v, wrap_array_of_vsan_disallow_data_movement_issue) }),
        ("ArrayOfVspanPortPromiscChangeFault", TypeInfo::Value { name: "ArrayOfVspanPortPromiscChangeFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vspan_port_promisc_change_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vspan_port_promisc_change_fault) }),
        ("CustomizationCustomIpV6Generator", TypeInfo::Object { name: "CustomizationCustomIpV6Generator", builder_fn: || Box::new(CustomizationCustomIpV6GeneratorFields::new()) }),
        ("NetIpStackInfoDefaultRouter", TypeInfo::Object { name: "NetIpStackInfoDefaultRouter", builder_fn: || Box::new(NetIpStackInfoDefaultRouterFields::new()) }),
        ("VsanXvcQueryResultSet", TypeInfo::Object { name: "VsanXvcQueryResultSet", builder_fn: || Box::new(VsanXvcQueryResultSetFields::new()) }),
        ("VirtualEthernetCardNotSupported", TypeInfo::Object { name: "VirtualEthernetCardNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VirtualEthernetCardNotSupported))) }),
        ("VchaClusterNetworkSpec", TypeInfo::Object { name: "VchaClusterNetworkSpec", builder_fn: || Box::new(VchaClusterNetworkSpecFields::new()) }),
        ("DomainNotFound", TypeInfo::Object { name: "DomainNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DomainNotFound))) }),
        ("VimVsanHostStoragePoolDiskInfo", TypeInfo::Object { name: "VimVsanHostStoragePoolDiskInfo", builder_fn: || Box::new(VimVsanHostStoragePoolDiskInfoFields::new()) }),
        ("ArrayOfOvfToXmlUnsupportedElement", TypeInfo::Value { name: "ArrayOfOvfToXmlUnsupportedElement", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_to_xml_unsupported_element), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_to_xml_unsupported_element) }),
        ("VirtualMachineFileLayoutExSnapshotLayout", TypeInfo::Object { name: "VirtualMachineFileLayoutExSnapshotLayout", builder_fn: || Box::new(VirtualMachineFileLayoutExSnapshotLayoutFields::new()) }),
        ("ArrayOfHostDatastoreSystemCapabilities", TypeInfo::Value { name: "ArrayOfHostDatastoreSystemCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::HostDatastoreSystemCapabilities>>(wrap_array_of_host_datastore_system_capabilities), from_value: |v| from_val_with::<Vec<super::structs::HostDatastoreSystemCapabilities>>(v, wrap_array_of_host_datastore_system_capabilities) }),
        ("AuthorizationRole", TypeInfo::Object { name: "AuthorizationRole", builder_fn: || Box::new(AuthorizationRoleFields::new()) }),
        ("VmPoweredOn", TypeInfo::Object { name: "VmPoweredOn", builder_fn: || Box::new(VmPoweredOnFields::new()) }),
        ("CnsPlacementFault", TypeInfo::Object { name: "CnsPlacementFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CnsPlacementFault))) }),
        ("PersonalityAgentBlockedByAgencyOperation", TypeInfo::Object { name: "PersonalityAgentBlockedByAgencyOperation", builder_fn: || Box::new(PersonalityAgentBlockedByAgencyOperationFields::new()) }),
        ("ArrayOfOvfMappedOsId", TypeInfo::Value { name: "ArrayOfOvfMappedOsId", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_mapped_os_id), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_mapped_os_id) }),
        ("ArrayOfVsanConfigNotAllDisksClaimedIssue", TypeInfo::Value { name: "ArrayOfVsanConfigNotAllDisksClaimedIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanConfigNotAllDisksClaimedIssue>>(wrap_array_of_vsan_config_not_all_disks_claimed_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanConfigNotAllDisksClaimedIssue>>(v, wrap_array_of_vsan_config_not_all_disks_claimed_issue) }),
        ("VmDasResetFailedEvent", TypeInfo::Object { name: "VmDasResetFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDasResetFailedEvent))) }),
        ("ArrayOfVsanHclReleaseConstraint", TypeInfo::Value { name: "ArrayOfVsanHclReleaseConstraint", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclReleaseConstraint>>(wrap_array_of_vsan_hcl_release_constraint), from_value: |v| from_val_with::<Vec<super::structs::VsanHclReleaseConstraint>>(v, wrap_array_of_vsan_hcl_release_constraint) }),
        ("ArrayOfVsanPerfDiagnoseQuerySpec", TypeInfo::Value { name: "ArrayOfVsanPerfDiagnoseQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfDiagnoseQuerySpec>>(wrap_array_of_vsan_perf_diagnose_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfDiagnoseQuerySpec>>(v, wrap_array_of_vsan_perf_diagnose_query_spec) }),
        ("ArrayOfVsanVipNetworkConfig", TypeInfo::Value { name: "ArrayOfVsanVipNetworkConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVipNetworkConfig>>(wrap_array_of_vsan_vip_network_config), from_value: |v| from_val_with::<Vec<super::structs::VsanVipNetworkConfig>>(v, wrap_array_of_vsan_vip_network_config) }),
        ("HostFeatureMask", TypeInfo::Object { name: "HostFeatureMask", builder_fn: || Box::new(HostFeatureMaskFields::new()) }),
        ("ArrayOfVirtualMachineVirtualNumaInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineVirtualNumaInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVirtualNumaInfo>>(wrap_array_of_virtual_machine_virtual_numa_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVirtualNumaInfo>>(v, wrap_array_of_virtual_machine_virtual_numa_info) }),
        ("VsanIODiagnosticsTarget", TypeInfo::Object { name: "VsanIODiagnosticsTarget", builder_fn: || Box::new(VsanIoDiagnosticsTargetFields::new()) }),
        ("PbmIncompatibleVendorSpecificRuleSet", TypeInfo::Object { name: "PbmIncompatibleVendorSpecificRuleSet", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmIncompatibleVendorSpecificRuleSet))) }),
        ("VsanMetricProfile", TypeInfo::Object { name: "VsanMetricProfile", builder_fn: || Box::new(VsanMetricProfileFields::new()) }),
        ("ArrayOfHostDasErrorEvent", TypeInfo::Value { name: "ArrayOfHostDasErrorEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_das_error_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_das_error_event) }),
        ("ReplicaQueryIntervalParam", TypeInfo::Object { name: "ReplicaQueryIntervalParam", builder_fn: || Box::new(ReplicaQueryIntervalParamFields::new()) }),
        ("VirtualDeviceBusSlotInfo", TypeInfo::Object { name: "VirtualDeviceBusSlotInfo", builder_fn: || Box::new(VirtualDeviceBusSlotInfoFields::new()) }),
        ("OvfHostResourceConstraint", TypeInfo::Object { name: "OvfHostResourceConstraint", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfHostResourceConstraint))) }),
        ("ArrayOfGuestOperationsUnavailable", TypeInfo::Value { name: "ArrayOfGuestOperationsUnavailable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_operations_unavailable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_operations_unavailable) }),
        ("VsanPerfsvcConfig", TypeInfo::Object { name: "VsanPerfsvcConfig", builder_fn: || Box::new(VsanPerfsvcConfigFields::new()) }),
        ("ArrayOfUserGroupProfile", TypeInfo::Value { name: "ArrayOfUserGroupProfile", make_deserializer: || make_deser_with::<Vec<super::structs::UserGroupProfile>>(wrap_array_of_user_group_profile), from_value: |v| from_val_with::<Vec<super::structs::UserGroupProfile>>(v, wrap_array_of_user_group_profile) }),
        ("ClusterComputeResourceDvsProfile", TypeInfo::Object { name: "ClusterComputeResourceDvsProfile", builder_fn: || Box::new(ClusterComputeResourceDvsProfileFields::new()) }),
        ("ClusterEnterMaintenanceResult", TypeInfo::Object { name: "ClusterEnterMaintenanceResult", builder_fn: || Box::new(ClusterEnterMaintenanceResultFields::new()) }),
        ("ArrayOfStorageDrsDatacentersCannotShareDatastore", TypeInfo::Value { name: "ArrayOfStorageDrsDatacentersCannotShareDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_datacenters_cannot_share_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_datacenters_cannot_share_datastore) }),
        ("VmBeingMigratedEvent", TypeInfo::Object { name: "VmBeingMigratedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmBeingMigratedEvent))) }),
        ("DvpgImportEvent", TypeInfo::Object { name: "DvpgImportEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvpgImportEvent))) }),
        ("VsanEncryptionHealthSummary", TypeInfo::Object { name: "VsanEncryptionHealthSummary", builder_fn: || Box::new(VsanEncryptionHealthSummaryFields::new()) }),
        ("ArrayOfVmConfigFileEncryptionInfo", TypeInfo::Value { name: "ArrayOfVmConfigFileEncryptionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VmConfigFileEncryptionInfo>>(wrap_array_of_vm_config_file_encryption_info), from_value: |v| from_val_with::<Vec<super::structs::VmConfigFileEncryptionInfo>>(v, wrap_array_of_vm_config_file_encryption_info) }),
        ("HbrManagerVmReplicationCapability", TypeInfo::Object { name: "HbrManagerVmReplicationCapability", builder_fn: || Box::new(HbrManagerVmReplicationCapabilityFields::new()) }),
        ("ArrayOfMigrationDisabled", TypeInfo::Value { name: "ArrayOfMigrationDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_migration_disabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_migration_disabled) }),
        ("ArrayOfToolsImageSignatureCheckFailed", TypeInfo::Value { name: "ArrayOfToolsImageSignatureCheckFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_tools_image_signature_check_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_tools_image_signature_check_failed) }),
        ("DistributedVirtualSwitchHostMemberConfigSpec", TypeInfo::Object { name: "DistributedVirtualSwitchHostMemberConfigSpec", builder_fn: || Box::new(DistributedVirtualSwitchHostMemberConfigSpecFields::new()) }),
        ("ArrayOfFileQuery", TypeInfo::Value { name: "ArrayOfFileQuery", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_file_query_array)), from_value: |v| cast_to_file_query_array(from_value(v)?) }),
        ("OvfInvalidValueConfiguration", TypeInfo::Object { name: "OvfInvalidValueConfiguration", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfInvalidValueConfiguration))) }),
        ("ArrayOfVsanIoInsightInstance", TypeInfo::Value { name: "ArrayOfVsanIoInsightInstance", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoInsightInstance>>(wrap_array_of_vsan_io_insight_instance), from_value: |v| from_val_with::<Vec<super::structs::VsanIoInsightInstance>>(v, wrap_array_of_vsan_io_insight_instance) }),
        ("ArrayOfHostMonitoringStateChangedEvent", TypeInfo::Value { name: "ArrayOfHostMonitoringStateChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_monitoring_state_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_monitoring_state_changed_event) }),
        ("RetrieveResult", TypeInfo::Object { name: "RetrieveResult", builder_fn: || Box::new(RetrieveResultFields::new()) }),
        ("GuestMultipleMappings", TypeInfo::Object { name: "GuestMultipleMappings", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestMultipleMappings))) }),
        ("NotSupportedHostInHACluster", TypeInfo::Object { name: "NotSupportedHostInHACluster", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedHostInHaCluster))) }),
        ("ClusterRecommendation", TypeInfo::Object { name: "ClusterRecommendation", builder_fn: || Box::new(ClusterRecommendationFields::new()) }),
        ("ArrayOfVirtualMachineDefaultPowerOpInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineDefaultPowerOpInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineDefaultPowerOpInfo>>(wrap_array_of_virtual_machine_default_power_op_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineDefaultPowerOpInfo>>(v, wrap_array_of_virtual_machine_default_power_op_info) }),
        ("ArrayOfTaskInfoFilterSpecFilterTaskResults", TypeInfo::Value { name: "ArrayOfTaskInfoFilterSpecFilterTaskResults", make_deserializer: || make_deser_with::<Vec<super::structs::TaskInfoFilterSpecFilterTaskResults>>(wrap_array_of_task_info_filter_spec_filter_task_results), from_value: |v| from_val_with::<Vec<super::structs::TaskInfoFilterSpecFilterTaskResults>>(v, wrap_array_of_task_info_filter_spec_filter_task_results) }),
        ("CustomizationSucceeded", TypeInfo::Object { name: "CustomizationSucceeded", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomizationSucceeded))) }),
        ("PerfMetricId", TypeInfo::Object { name: "PerfMetricId", builder_fn: || Box::new(PerfMetricIdFields::new()) }),
        ("ArrayOfVspanPromiscuousPortNotSupported", TypeInfo::Value { name: "ArrayOfVspanPromiscuousPortNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vspan_promiscuous_port_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vspan_promiscuous_port_not_supported) }),
        ("ArrayOfHostCapability", TypeInfo::Value { name: "ArrayOfHostCapability", make_deserializer: || make_deser_with::<Vec<super::structs::HostCapability>>(wrap_array_of_host_capability), from_value: |v| from_val_with::<Vec<super::structs::HostCapability>>(v, wrap_array_of_host_capability) }),
        ("ArrayOfHostSerialAttachedHba", TypeInfo::Value { name: "ArrayOfHostSerialAttachedHba", make_deserializer: || make_deser_with::<Vec<super::structs::HostSerialAttachedHba>>(wrap_array_of_host_serial_attached_hba), from_value: |v| from_val_with::<Vec<super::structs::HostSerialAttachedHba>>(v, wrap_array_of_host_serial_attached_hba) }),
        ("ArrayOfDatastoreCapability", TypeInfo::Value { name: "ArrayOfDatastoreCapability", make_deserializer: || make_deser_with::<Vec<super::structs::DatastoreCapability>>(wrap_array_of_datastore_capability), from_value: |v| from_val_with::<Vec<super::structs::DatastoreCapability>>(v, wrap_array_of_datastore_capability) }),
        ("ArrayOfDatastoreOption", TypeInfo::Value { name: "ArrayOfDatastoreOption", make_deserializer: || make_deser_with::<Vec<super::structs::DatastoreOption>>(wrap_array_of_datastore_option), from_value: |v| from_val_with::<Vec<super::structs::DatastoreOption>>(v, wrap_array_of_datastore_option) }),
        ("ArrayOfHostMaintenanceSpec", TypeInfo::Value { name: "ArrayOfHostMaintenanceSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostMaintenanceSpec>>(wrap_array_of_host_maintenance_spec), from_value: |v| from_val_with::<Vec<super::structs::HostMaintenanceSpec>>(v, wrap_array_of_host_maintenance_spec) }),
        ("HostVmciAccessManagerAccessSpec", TypeInfo::Object { name: "HostVmciAccessManagerAccessSpec", builder_fn: || Box::new(HostVmciAccessManagerAccessSpecFields::new()) }),
        ("ArrayOfClusterComputeResourceClusterConfigResult", TypeInfo::Value { name: "ArrayOfClusterComputeResourceClusterConfigResult", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceClusterConfigResult>>(wrap_array_of_cluster_compute_resource_cluster_config_result), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceClusterConfigResult>>(v, wrap_array_of_cluster_compute_resource_cluster_config_result) }),
        ("ArrayOfCnsVolumeAttachResult", TypeInfo::Value { name: "ArrayOfCnsVolumeAttachResult", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumeAttachResult>>(wrap_array_of_cns_volume_attach_result), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumeAttachResult>>(v, wrap_array_of_cns_volume_attach_result) }),
        ("VsanClusterBurnInTestResultList", TypeInfo::Object { name: "VsanClusterBurnInTestResultList", builder_fn: || Box::new(VsanClusterBurnInTestResultListFields::new()) }),
        ("ArrayOfSessionManagerLocalTicket", TypeInfo::Value { name: "ArrayOfSessionManagerLocalTicket", make_deserializer: || make_deser_with::<Vec<super::structs::SessionManagerLocalTicket>>(wrap_array_of_session_manager_local_ticket), from_value: |v| from_val_with::<Vec<super::structs::SessionManagerLocalTicket>>(v, wrap_array_of_session_manager_local_ticket) }),
        ("ArrayOfVsanFileServiceRootFsHealth", TypeInfo::Value { name: "ArrayOfVsanFileServiceRootFsHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServiceRootFsHealth>>(wrap_array_of_vsan_file_service_root_fs_health), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServiceRootFsHealth>>(v, wrap_array_of_vsan_file_service_root_fs_health) }),
        ("ArrayOfVsanClusterFileServiceHealthSummary", TypeInfo::Value { name: "ArrayOfVsanClusterFileServiceHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterFileServiceHealthSummary>>(wrap_array_of_vsan_cluster_file_service_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterFileServiceHealthSummary>>(v, wrap_array_of_vsan_cluster_file_service_health_summary) }),
        ("ClusterPreemptibleVmPairSpec", TypeInfo::Object { name: "ClusterPreemptibleVmPairSpec", builder_fn: || Box::new(ClusterPreemptibleVmPairSpecFields::new()) }),
        ("DeviceUnsupportedForVmPlatform", TypeInfo::Object { name: "DeviceUnsupportedForVmPlatform", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DeviceUnsupportedForVmPlatform))) }),
        ("ArrayOfVirtualDiskFlatVer1BackingOption", TypeInfo::Value { name: "ArrayOfVirtualDiskFlatVer1BackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskFlatVer1BackingOption>>(wrap_array_of_virtual_disk_flat_ver_1_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskFlatVer1BackingOption>>(v, wrap_array_of_virtual_disk_flat_ver_1_backing_option) }),
        ("ClusterAgentVmIssue", TypeInfo::Object { name: "ClusterAgentVmIssue", builder_fn: || Box::new(ClusterAgentVmIssueFields::new()) }),
        ("ArrayOfIscsiFaultVnicHasWrongUplink", TypeInfo::Value { name: "ArrayOfIscsiFaultVnicHasWrongUplink", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_vnic_has_wrong_uplink), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_vnic_has_wrong_uplink) }),
        ("ArrayOfVasaProviderContainerSpec", TypeInfo::Value { name: "ArrayOfVasaProviderContainerSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VasaProviderContainerSpec>>(wrap_array_of_vasa_provider_container_spec), from_value: |v| from_val_with::<Vec<super::structs::VasaProviderContainerSpec>>(v, wrap_array_of_vasa_provider_container_spec) }),
        ("ArrayOfVimVasaProvider", TypeInfo::Value { name: "ArrayOfVimVasaProvider", make_deserializer: || make_deser_with::<Vec<super::structs::VimVasaProvider>>(wrap_array_of_vim_vasa_provider), from_value: |v| from_val_with::<Vec<super::structs::VimVasaProvider>>(v, wrap_array_of_vim_vasa_provider) }),
        ("ArrayOfAuthorizationDescription", TypeInfo::Value { name: "ArrayOfAuthorizationDescription", make_deserializer: || make_deser_with::<Vec<super::structs::AuthorizationDescription>>(wrap_array_of_authorization_description), from_value: |v| from_val_with::<Vec<super::structs::AuthorizationDescription>>(v, wrap_array_of_authorization_description) }),
        ("DevicePciId", TypeInfo::Object { name: "DevicePciId", builder_fn: || Box::new(DevicePciIdFields::new()) }),
        ("HostNvmeOverRdmaParameters", TypeInfo::Object { name: "HostNvmeOverRdmaParameters", builder_fn: || Box::new(HostNvmeOverRdmaParametersFields::new()) }),
        ("ResourcePoolEvent", TypeInfo::Object { name: "ResourcePoolEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ResourcePoolEvent))) }),
        ("VirtualDiskSparseVer1BackingOption", TypeInfo::Object { name: "VirtualDiskSparseVer1BackingOption", builder_fn: || Box::new(VirtualDiskSparseVer1BackingOptionFields::new()) }),
        ("ProfileApplyProfileProperty", TypeInfo::Object { name: "ProfileApplyProfileProperty", builder_fn: || Box::new(ProfileApplyProfilePropertyFields::new()) }),
        ("ArrayOfVsanMountPrecheckNetworkLatency", TypeInfo::Value { name: "ArrayOfVsanMountPrecheckNetworkLatency", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMountPrecheckNetworkLatency>>(wrap_array_of_vsan_mount_precheck_network_latency), from_value: |v| from_val_with::<Vec<super::structs::VsanMountPrecheckNetworkLatency>>(v, wrap_array_of_vsan_mount_precheck_network_latency) }),
        ("CustomizationDhcpIpGenerator", TypeInfo::Object { name: "CustomizationDhcpIpGenerator", builder_fn: || Box::new(CustomizationDhcpIpGeneratorFields::new()) }),
        ("DistributedVirtualSwitchProductSpec", TypeInfo::Object { name: "DistributedVirtualSwitchProductSpec", builder_fn: || Box::new(DistributedVirtualSwitchProductSpecFields::new()) }),
        ("VirtualSerialPortOption", TypeInfo::Object { name: "VirtualSerialPortOption", builder_fn: || Box::new(VirtualSerialPortOptionFields::new()) }),
        ("VsanHostConfigInfoClusterInfo", TypeInfo::Object { name: "VsanHostConfigInfoClusterInfo", builder_fn: || Box::new(VsanHostConfigInfoClusterInfoFields::new()) }),
        ("VMwareDVSConfigInfo", TypeInfo::Object { name: "VMwareDVSConfigInfo", builder_fn: || Box::new(VMwareDvsConfigInfoFields::new()) }),
        ("ArrayOfDvsPortDeletedEvent", TypeInfo::Value { name: "ArrayOfDvsPortDeletedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_deleted_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_deleted_event) }),
        ("ArrayOfSnapshotSelectionSpec", TypeInfo::Value { name: "ArrayOfSnapshotSelectionSpec", make_deserializer: || make_deser_with::<Vec<super::structs::SnapshotSelectionSpec>>(wrap_array_of_snapshot_selection_spec), from_value: |v| from_val_with::<Vec<super::structs::SnapshotSelectionSpec>>(v, wrap_array_of_snapshot_selection_spec) }),
        ("HostRdmaDeviceCapability", TypeInfo::Object { name: "HostRdmaDeviceCapability", builder_fn: || Box::new(HostRdmaDeviceCapabilityFields::new()) }),
        ("VimVsanVsanPMemConfig", TypeInfo::Object { name: "VimVsanVsanPMemConfig", builder_fn: || Box::new(VimVsanVsanPMemConfigFields::new()) }),
        ("ArrayOfVirtualSwitchProfile", TypeInfo::Value { name: "ArrayOfVirtualSwitchProfile", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSwitchProfile>>(wrap_array_of_virtual_switch_profile), from_value: |v| from_val_with::<Vec<super::structs::VirtualSwitchProfile>>(v, wrap_array_of_virtual_switch_profile) }),
        ("CnsVolumeAttachDetachSpec", TypeInfo::Object { name: "CnsVolumeAttachDetachSpec", builder_fn: || Box::new(CnsVolumeAttachDetachSpecFields::new()) }),
        ("ArrayOfHostNfcConnectionInfo", TypeInfo::Value { name: "ArrayOfHostNfcConnectionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostNfcConnectionInfo>>(wrap_array_of_host_nfc_connection_info), from_value: |v| from_val_with::<Vec<super::structs::HostNfcConnectionInfo>>(v, wrap_array_of_host_nfc_connection_info) }),
        ("ArrayOfScheduledTaskInfo", TypeInfo::Value { name: "ArrayOfScheduledTaskInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ScheduledTaskInfo>>(wrap_array_of_scheduled_task_info), from_value: |v| from_val_with::<Vec<super::structs::ScheduledTaskInfo>>(v, wrap_array_of_scheduled_task_info) }),
        ("ArrayOfDvsHostJoinedEvent", TypeInfo::Value { name: "ArrayOfDvsHostJoinedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_host_joined_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_host_joined_event) }),
        ("ArrayOfHostVirtualNicManagerInfo", TypeInfo::Value { name: "ArrayOfHostVirtualNicManagerInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualNicManagerInfo>>(wrap_array_of_host_virtual_nic_manager_info), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualNicManagerInfo>>(v, wrap_array_of_host_virtual_nic_manager_info) }),
        ("VmPowerOnDisabled", TypeInfo::Object { name: "VmPowerOnDisabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmPowerOnDisabled))) }),
        ("ArrayOfInvalidEditionEvent", TypeInfo::Value { name: "ArrayOfInvalidEditionEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_invalid_edition_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_invalid_edition_event) }),
        ("HostSevInfo", TypeInfo::Object { name: "HostSevInfo", builder_fn: || Box::new(HostSevInfoFields::new()) }),
        ("GuestAuthNamedSubject", TypeInfo::Object { name: "GuestAuthNamedSubject", builder_fn: || Box::new(GuestAuthNamedSubjectFields::new()) }),
        ("ArrayOfVirtualMachineProfileDetailsDiskProfileDetails", TypeInfo::Value { name: "ArrayOfVirtualMachineProfileDetailsDiskProfileDetails", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineProfileDetailsDiskProfileDetails>>(wrap_array_of_virtual_machine_profile_details_disk_profile_details), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineProfileDetailsDiskProfileDetails>>(v, wrap_array_of_virtual_machine_profile_details_disk_profile_details) }),
        ("VMwareDvsLacpGroupConfig", TypeInfo::Object { name: "VMwareDvsLacpGroupConfig", builder_fn: || Box::new(VMwareDvsLacpGroupConfigFields::new()) }),
        ("ArrayOfEVCAdmissionFailedCPUVendor", TypeInfo::Value { name: "ArrayOfEVCAdmissionFailedCPUVendor", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_admission_failed_cpu_vendor), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_admission_failed_cpu_vendor) }),
        ("ArrayOfVsanNetworkConfigVswitchWithNoRedundancyIssue", TypeInfo::Value { name: "ArrayOfVsanNetworkConfigVswitchWithNoRedundancyIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkConfigVswitchWithNoRedundancyIssue>>(wrap_array_of_vsan_network_config_vswitch_with_no_redundancy_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkConfigVswitchWithNoRedundancyIssue>>(v, wrap_array_of_vsan_network_config_vswitch_with_no_redundancy_issue) }),
        ("ArrayOfVirtualEthernetCardOption", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_ethernet_card_option_array)), from_value: |v| cast_to_virtual_ethernet_card_option_array(from_value(v)?) }),
        ("ArrayOfHostReconnectionFailedEvent", TypeInfo::Value { name: "ArrayOfHostReconnectionFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_reconnection_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_reconnection_failed_event) }),
        ("ArrayOfGuestRegValueSpec", TypeInfo::Value { name: "ArrayOfGuestRegValueSpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegValueSpec>>(wrap_array_of_guest_reg_value_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegValueSpec>>(v, wrap_array_of_guest_reg_value_spec) }),
        ("ArrayOfVsanFileServiceDomainQuerySpec", TypeInfo::Value { name: "ArrayOfVsanFileServiceDomainQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServiceDomainQuerySpec>>(wrap_array_of_vsan_file_service_domain_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServiceDomainQuerySpec>>(v, wrap_array_of_vsan_file_service_domain_query_spec) }),
        ("ArrayOfDvsOutOfSyncHostArgument", TypeInfo::Value { name: "ArrayOfDvsOutOfSyncHostArgument", make_deserializer: || make_deser_with::<Vec<super::structs::DvsOutOfSyncHostArgument>>(wrap_array_of_dvs_out_of_sync_host_argument), from_value: |v| from_val_with::<Vec<super::structs::DvsOutOfSyncHostArgument>>(v, wrap_array_of_dvs_out_of_sync_host_argument) }),
        ("ArrayOfAgentStoragePolicy", TypeInfo::Value { name: "ArrayOfAgentStoragePolicy", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_agent_storage_policy_array)), from_value: |v| cast_to_agent_storage_policy_array(from_value(v)?) }),
        ("ArrayOfHostProxySwitchHostLagConfig", TypeInfo::Value { name: "ArrayOfHostProxySwitchHostLagConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostProxySwitchHostLagConfig>>(wrap_array_of_host_proxy_switch_host_lag_config), from_value: |v| from_val_with::<Vec<super::structs::HostProxySwitchHostLagConfig>>(v, wrap_array_of_host_proxy_switch_host_lag_config) }),
        ("ArrayOfVirtualMachineConfigSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineConfigSpec>>(wrap_array_of_virtual_machine_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineConfigSpec>>(v, wrap_array_of_virtual_machine_config_spec) }),
        ("DiskIsNonLocal", TypeInfo::Object { name: "DiskIsNonLocal", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DiskIsNonLocal))) }),
        ("ClusterAgentVmHookFailed", TypeInfo::Object { name: "ClusterAgentVmHookFailed", builder_fn: || Box::new(ClusterAgentVmHookFailedFields::new()) }),
        ("ArrayOfFilesystemQuiesceFault", TypeInfo::Value { name: "ArrayOfFilesystemQuiesceFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_filesystem_quiesce_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_filesystem_quiesce_fault) }),
        ("ArrayOfHostOpaqueSwitchPhysicalNicZone", TypeInfo::Value { name: "ArrayOfHostOpaqueSwitchPhysicalNicZone", make_deserializer: || make_deser_with::<Vec<super::structs::HostOpaqueSwitchPhysicalNicZone>>(wrap_array_of_host_opaque_switch_physical_nic_zone), from_value: |v| from_val_with::<Vec<super::structs::HostOpaqueSwitchPhysicalNicZone>>(v, wrap_array_of_host_opaque_switch_physical_nic_zone) }),
        ("ArrayOfDVSHealthCheckConfig", TypeInfo::Value { name: "ArrayOfDVSHealthCheckConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_health_check_config_array)), from_value: |v| cast_to_dvs_health_check_config_array(from_value(v)?) }),
        ("VirtualMachineMoId", TypeInfo::Object { name: "VirtualMachineMoId", builder_fn: || Box::new(VirtualMachineMoIdFields::new()) }),
        ("ArrayOfVsanIscsiTargetCommonInfo", TypeInfo::Value { name: "ArrayOfVsanIscsiTargetCommonInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_iscsi_target_common_info_array)), from_value: |v| cast_to_vsan_iscsi_target_common_info_array(from_value(v)?) }),
        ("ArrayOfDirectPathProfileManagerCapacityQueryByName", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerCapacityQueryByName", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerCapacityQueryByName>>(wrap_array_of_direct_path_profile_manager_capacity_query_by_name), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerCapacityQueryByName>>(v, wrap_array_of_direct_path_profile_manager_capacity_query_by_name) }),
        ("ArrayOfVMwareDVSPortgroupPolicy", TypeInfo::Value { name: "ArrayOfVMwareDVSPortgroupPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsPortgroupPolicy>>(wrap_array_of_v_mware_dvs_portgroup_policy), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsPortgroupPolicy>>(v, wrap_array_of_v_mware_dvs_portgroup_policy) }),
        ("ArrayOfEVCUnsupportedByHostSoftware", TypeInfo::Value { name: "ArrayOfEVCUnsupportedByHostSoftware", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_unsupported_by_host_software), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_unsupported_by_host_software) }),
        ("ArrayOfProfileExecuteResult", TypeInfo::Value { name: "ArrayOfProfileExecuteResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_profile_execute_result_array)), from_value: |v| cast_to_profile_execute_result_array(from_value(v)?) }),
        ("ArrayOfVsanVdsPgMigrationVmInfo", TypeInfo::Value { name: "ArrayOfVsanVdsPgMigrationVmInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVdsPgMigrationVmInfo>>(wrap_array_of_vsan_vds_pg_migration_vm_info), from_value: |v| from_val_with::<Vec<super::structs::VsanVdsPgMigrationVmInfo>>(v, wrap_array_of_vsan_vds_pg_migration_vm_info) }),
        ("DasHostIsolatedEvent", TypeInfo::Object { name: "DasHostIsolatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DasHostIsolatedEvent))) }),
        ("ArrayOfStorageDrsDisabledOnVm", TypeInfo::Value { name: "ArrayOfStorageDrsDisabledOnVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_disabled_on_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_disabled_on_vm) }),
        ("ArrayOfVimVsanHostVsanScsiDisk", TypeInfo::Value { name: "ArrayOfVimVsanHostVsanScsiDisk", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostVsanScsiDisk>>(wrap_array_of_vim_vsan_host_vsan_scsi_disk), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostVsanScsiDisk>>(v, wrap_array_of_vim_vsan_host_vsan_scsi_disk) }),
        ("HostSystemSwapConfigurationDatastoreOption", TypeInfo::Object { name: "HostSystemSwapConfigurationDatastoreOption", builder_fn: || Box::new(HostSystemSwapConfigurationDatastoreOptionFields::new()) }),
        ("OperationNotSupportedByGuest", TypeInfo::Object { name: "OperationNotSupportedByGuest", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OperationNotSupportedByGuest))) }),
        ("RuntimeFault", TypeInfo::Object { name: "RuntimeFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RuntimeFault))) }),
        ("ArrayOfOvfNetworkMapping", TypeInfo::Value { name: "ArrayOfOvfNetworkMapping", make_deserializer: || make_deser_with::<Vec<super::structs::OvfNetworkMapping>>(wrap_array_of_ovf_network_mapping), from_value: |v| from_val_with::<Vec<super::structs::OvfNetworkMapping>>(v, wrap_array_of_ovf_network_mapping) }),
        ("StorageContainerSpec", TypeInfo::Object { name: "StorageContainerSpec", builder_fn: || Box::new(StorageContainerSpecFields::new()) }),
        ("ArrayOfHostScsiTopologyTarget", TypeInfo::Value { name: "ArrayOfHostScsiTopologyTarget", make_deserializer: || make_deser_with::<Vec<super::structs::HostScsiTopologyTarget>>(wrap_array_of_host_scsi_topology_target), from_value: |v| from_val_with::<Vec<super::structs::HostScsiTopologyTarget>>(v, wrap_array_of_host_scsi_topology_target) }),
        ("ArrayOfHostServiceTicket", TypeInfo::Value { name: "ArrayOfHostServiceTicket", make_deserializer: || make_deser_with::<Vec<super::structs::HostServiceTicket>>(wrap_array_of_host_service_ticket), from_value: |v| from_val_with::<Vec<super::structs::HostServiceTicket>>(v, wrap_array_of_host_service_ticket) }),
        ("HostProfileManagerCompositionValidationResultResultElement", TypeInfo::Object { name: "HostProfileManagerCompositionValidationResultResultElement", builder_fn: || Box::new(HostProfileManagerCompositionValidationResultResultElementFields::new()) }),
        ("ArrayOfVsanVibScanResult", TypeInfo::Value { name: "ArrayOfVsanVibScanResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVibScanResult>>(wrap_array_of_vsan_vib_scan_result), from_value: |v| from_val_with::<Vec<super::structs::VsanVibScanResult>>(v, wrap_array_of_vsan_vib_scan_result) }),
        ("EVCAdmissionFailedHostDisconnected", TypeInfo::Object { name: "EVCAdmissionFailedHostDisconnected", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcAdmissionFailedHostDisconnected))) }),
        ("ReplicaIntervalQueryResult", TypeInfo::Object { name: "ReplicaIntervalQueryResult", builder_fn: || Box::new(ReplicaIntervalQueryResultFields::new()) }),
        ("ClusterDpmHostConfigInfo", TypeInfo::Object { name: "ClusterDpmHostConfigInfo", builder_fn: || Box::new(ClusterDpmHostConfigInfoFields::new()) }),
        ("ArrayOfEamFault", TypeInfo::Value { name: "ArrayOfEamFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eam_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eam_fault) }),
        ("ArrayOfDVSSummary", TypeInfo::Value { name: "ArrayOfDVSSummary", make_deserializer: || make_deser_with::<Vec<super::structs::DvsSummary>>(wrap_array_of_dvs_summary), from_value: |v| from_val_with::<Vec<super::structs::DvsSummary>>(v, wrap_array_of_dvs_summary) }),
        ("OvfDuplicateElement", TypeInfo::Object { name: "OvfDuplicateElement", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfDuplicateElement))) }),
        ("PbmQueryReplicationGroupResult", TypeInfo::Object { name: "PbmQueryReplicationGroupResult", builder_fn: || Box::new(PbmQueryReplicationGroupResultFields::new()) }),
        ("EamFault", TypeInfo::Object { name: "EamFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EamFault))) }),
        ("PersonalityAgencyDepotIssue", TypeInfo::Object { name: "PersonalityAgencyDepotIssue", builder_fn: || Box::new(PersonalityAgencyDepotIssueFields::new()) }),
        ("ClusterDpmHostConfigSpec", TypeInfo::Object { name: "ClusterDpmHostConfigSpec", builder_fn: || Box::new(ClusterDpmHostConfigSpecFields::new()) }),
        ("ArrayOfProviderConnectionFailed", TypeInfo::Value { name: "ArrayOfProviderConnectionFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_provider_connection_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_provider_connection_failed) }),
        ("ArrayOfHealthUpdate", TypeInfo::Value { name: "ArrayOfHealthUpdate", make_deserializer: || make_deser_with::<Vec<super::structs::HealthUpdate>>(wrap_array_of_health_update), from_value: |v| from_val_with::<Vec<super::structs::HealthUpdate>>(v, wrap_array_of_health_update) }),
        ("VsanIscsiHomeObjectSpec", TypeInfo::Object { name: "VsanIscsiHomeObjectSpec", builder_fn: || Box::new(VsanIscsiHomeObjectSpecFields::new()) }),
        ("ArrayOfQueryPointInTimeReplicaParam", TypeInfo::Value { name: "ArrayOfQueryPointInTimeReplicaParam", make_deserializer: || make_deser_with::<Vec<super::structs::QueryPointInTimeReplicaParam>>(wrap_array_of_query_point_in_time_replica_param), from_value: |v| from_val_with::<Vec<super::structs::QueryPointInTimeReplicaParam>>(v, wrap_array_of_query_point_in_time_replica_param) }),
        ("ArrayOfVsanNetworkLoadTestResult", TypeInfo::Value { name: "ArrayOfVsanNetworkLoadTestResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkLoadTestResult>>(wrap_array_of_vsan_network_load_test_result), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkLoadTestResult>>(v, wrap_array_of_vsan_network_load_test_result) }),
        ("VsanPerfTopQuerySpec", TypeInfo::Object { name: "VsanPerfTopQuerySpec", builder_fn: || Box::new(VsanPerfTopQuerySpecFields::new()) }),
        ("PrivilegeAvailability", TypeInfo::Object { name: "PrivilegeAvailability", builder_fn: || Box::new(PrivilegeAvailabilityFields::new()) }),
        ("ArrayOfHostTpmBootCompleteEventDetails", TypeInfo::Value { name: "ArrayOfHostTpmBootCompleteEventDetails", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmBootCompleteEventDetails>>(wrap_array_of_host_tpm_boot_complete_event_details), from_value: |v| from_val_with::<Vec<super::structs::HostTpmBootCompleteEventDetails>>(v, wrap_array_of_host_tpm_boot_complete_event_details) }),
        ("CannotDisableDrsOnClustersWithVApps", TypeInfo::Object { name: "CannotDisableDrsOnClustersWithVApps", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotDisableDrsOnClustersWithVApps))) }),
        ("StorageFileSystemInfo", TypeInfo::Object { name: "StorageFileSystemInfo", builder_fn: || Box::new(StorageFileSystemInfoFields::new()) }),
        ("ArrayOfNotSupportedHostForVmemFile", TypeInfo::Value { name: "ArrayOfNotSupportedHostForVmemFile", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_host_for_vmem_file), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_host_for_vmem_file) }),
        ("ArrayOfVirtualMachineStorageInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineStorageInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineStorageInfo>>(wrap_array_of_virtual_machine_storage_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineStorageInfo>>(v, wrap_array_of_virtual_machine_storage_info) }),
        ("ServiceManagerServiceInfo", TypeInfo::Object { name: "ServiceManagerServiceInfo", builder_fn: || Box::new(ServiceManagerServiceInfoFields::new()) }),
        ("ProviderOutOfProvisioningResource", TypeInfo::Object { name: "ProviderOutOfProvisioningResource", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProviderOutOfProvisioningResource))) }),
        ("ArrayOfPbmCapabilityVendorNamespaceInfo", TypeInfo::Value { name: "ArrayOfPbmCapabilityVendorNamespaceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityVendorNamespaceInfo>>(wrap_array_of_pbm_capability_vendor_namespace_info), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityVendorNamespaceInfo>>(v, wrap_array_of_pbm_capability_vendor_namespace_info) }),
        ("ArrayOfProfileCompositePolicyOptionMetadata", TypeInfo::Value { name: "ArrayOfProfileCompositePolicyOptionMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileCompositePolicyOptionMetadata>>(wrap_array_of_profile_composite_policy_option_metadata), from_value: |v| from_val_with::<Vec<super::structs::ProfileCompositePolicyOptionMetadata>>(v, wrap_array_of_profile_composite_policy_option_metadata) }),
        ("VsanHostAssociatedObjects", TypeInfo::Object { name: "VsanHostAssociatedObjects", builder_fn: || Box::new(VsanHostAssociatedObjectsFields::new()) }),
        ("ArrayOfHostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperation", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperation", make_deserializer: || make_deser_with::<Vec<super::enums::HostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperationEnum>>(wrap_array_of_host_internet_scsi_hba_iscsi_ipv_6_address_i_pv_6_address_operation), from_value: |v| from_val_with::<Vec<super::enums::HostInternetScsiHbaIscsiIpv6AddressIPv6AddressOperationEnum>>(v, wrap_array_of_host_internet_scsi_hba_iscsi_ipv_6_address_i_pv_6_address_operation) }),
        ("DVSBackupRestoreCapability", TypeInfo::Object { name: "DVSBackupRestoreCapability", builder_fn: || Box::new(DvsBackupRestoreCapabilityFields::new()) }),
        ("ArrayOfNoPermissionOnAD", TypeInfo::Value { name: "ArrayOfNoPermissionOnAD", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_permission_on_ad), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_permission_on_ad) }),
        ("ArrayOfDistributedVirtualPortgroupProblem", TypeInfo::Value { name: "ArrayOfDistributedVirtualPortgroupProblem", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualPortgroupProblem>>(wrap_array_of_distributed_virtual_portgroup_problem), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualPortgroupProblem>>(v, wrap_array_of_distributed_virtual_portgroup_problem) }),
        ("TaskEvent", TypeInfo::Object { name: "TaskEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::TaskEvent))) }),
        ("HostVMotionManagerSrcInstantCloneResult", TypeInfo::Object { name: "HostVMotionManagerSrcInstantCloneResult", builder_fn: || Box::new(HostVMotionManagerSrcInstantCloneResultFields::new()) }),
        ("GuestAuthenticationChallenge", TypeInfo::Object { name: "GuestAuthenticationChallenge", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestAuthenticationChallenge))) }),
        ("ArrayOfVsanEsaConfigInfo", TypeInfo::Value { name: "ArrayOfVsanEsaConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanEsaConfigInfo>>(wrap_array_of_vsan_esa_config_info), from_value: |v| from_val_with::<Vec<super::structs::VsanEsaConfigInfo>>(v, wrap_array_of_vsan_esa_config_info) }),
        ("ArrayOfHostInternetScsiHbaTargetSet", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaTargetSet", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaTargetSet>>(wrap_array_of_host_internet_scsi_hba_target_set), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaTargetSet>>(v, wrap_array_of_host_internet_scsi_hba_target_set) }),
        ("ArrayOfvslmVClockInfo", TypeInfo::Value { name: "ArrayOfvslmVClockInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VslmVClockInfo>>(wrap_array_ofvslm_v_clock_info), from_value: |v| from_val_with::<Vec<super::structs::VslmVClockInfo>>(v, wrap_array_ofvslm_v_clock_info) }),
        ("HostScsiTopology", TypeInfo::Object { name: "HostScsiTopology", builder_fn: || Box::new(HostScsiTopologyFields::new()) }),
        ("AuthMinimumAdminPermission", TypeInfo::Object { name: "AuthMinimumAdminPermission", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AuthMinimumAdminPermission))) }),
        ("ArrayOfAlreadyAuthenticatedSessionEvent", TypeInfo::Value { name: "ArrayOfAlreadyAuthenticatedSessionEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_already_authenticated_session_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_already_authenticated_session_event) }),
        ("HbrTargetSpec", TypeInfo::Object { name: "HbrTargetSpec", builder_fn: || Box::new(HbrTargetSpecFields::new()) }),
        ("ArrayOfMethodDescription", TypeInfo::Value { name: "ArrayOfMethodDescription", make_deserializer: || make_deser_with::<Vec<super::structs::MethodDescription>>(wrap_array_of_method_description), from_value: |v| from_val_with::<Vec<super::structs::MethodDescription>>(v, wrap_array_of_method_description) }),
        ("ArrayOfVirtualPCIPassthroughVmiopBackingOption", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughVmiopBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthroughVmiopBackingOption>>(wrap_array_of_virtual_pci_passthrough_vmiop_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthroughVmiopBackingOption>>(v, wrap_array_of_virtual_pci_passthrough_vmiop_backing_option) }),
        ("ArrayOfCryptoSpecDeepRecrypt", TypeInfo::Value { name: "ArrayOfCryptoSpecDeepRecrypt", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoSpecDeepRecrypt>>(wrap_array_of_crypto_spec_deep_recrypt), from_value: |v| from_val_with::<Vec<super::structs::CryptoSpecDeepRecrypt>>(v, wrap_array_of_crypto_spec_deep_recrypt) }),
        ("VmMaxRestartCountReached", TypeInfo::Object { name: "VmMaxRestartCountReached", builder_fn: || Box::new(EventFields::new(Some(StructType::VmMaxRestartCountReached))) }),
        ("ArrayOfTestFailoverParam", TypeInfo::Value { name: "ArrayOfTestFailoverParam", make_deserializer: || make_deser_with::<Vec<super::structs::TestFailoverParam>>(wrap_array_of_test_failover_param), from_value: |v| from_val_with::<Vec<super::structs::TestFailoverParam>>(v, wrap_array_of_test_failover_param) }),
        ("ArrayOfVirtualPS2Controller", TypeInfo::Value { name: "ArrayOfVirtualPS2Controller", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPs2Controller>>(wrap_array_of_virtual_ps_2_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualPs2Controller>>(v, wrap_array_of_virtual_ps_2_controller) }),
        ("RunScriptAction", TypeInfo::Object { name: "RunScriptAction", builder_fn: || Box::new(RunScriptActionFields::new()) }),
        ("ArrayOfVsanIscsiVipConfigSpec", TypeInfo::Value { name: "ArrayOfVsanIscsiVipConfigSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_iscsi_vip_config_spec_array)), from_value: |v| cast_to_vsan_iscsi_vip_config_spec_array(from_value(v)?) }),
        ("ArrayOfHbrManagerVmReplicationCapability", TypeInfo::Value { name: "ArrayOfHbrManagerVmReplicationCapability", make_deserializer: || make_deser_with::<Vec<super::structs::HbrManagerVmReplicationCapability>>(wrap_array_of_hbr_manager_vm_replication_capability), from_value: |v| from_val_with::<Vec<super::structs::HbrManagerVmReplicationCapability>>(v, wrap_array_of_hbr_manager_vm_replication_capability) }),
        ("ClusterComputeResourceHostConfigurationProfile", TypeInfo::Object { name: "ClusterComputeResourceHostConfigurationProfile", builder_fn: || Box::new(ClusterComputeResourceHostConfigurationProfileFields::new()) }),
        ("ArrayOfHostIpRouteEntry", TypeInfo::Value { name: "ArrayOfHostIpRouteEntry", make_deserializer: || make_deser_with::<Vec<super::structs::HostIpRouteEntry>>(wrap_array_of_host_ip_route_entry), from_value: |v| from_val_with::<Vec<super::structs::HostIpRouteEntry>>(v, wrap_array_of_host_ip_route_entry) }),
        ("ArrayOfOvfWrongNamespace", TypeInfo::Value { name: "ArrayOfOvfWrongNamespace", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_wrong_namespace), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_wrong_namespace) }),
        ("ArrayOfDVSRuntimeInfo", TypeInfo::Value { name: "ArrayOfDVSRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DvsRuntimeInfo>>(wrap_array_of_dvs_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::DvsRuntimeInfo>>(v, wrap_array_of_dvs_runtime_info) }),
        ("DistributedVirtualSwitchPortStatistics", TypeInfo::Object { name: "DistributedVirtualSwitchPortStatistics", builder_fn: || Box::new(DistributedVirtualSwitchPortStatisticsFields::new()) }),
        ("ServiceContent", TypeInfo::Object { name: "ServiceContent", builder_fn: || Box::new(ServiceContentFields::new()) }),
        ("ArrayOfCustomizationIPSettingsIpV6AddressSpec", TypeInfo::Value { name: "ArrayOfCustomizationIPSettingsIpV6AddressSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationIpSettingsIpV6AddressSpec>>(wrap_array_of_customization_ip_settings_ip_v_6_address_spec), from_value: |v| from_val_with::<Vec<super::structs::CustomizationIpSettingsIpV6AddressSpec>>(v, wrap_array_of_customization_ip_settings_ip_v_6_address_spec) }),
        ("ArrayOfDrsVmMigratedEvent", TypeInfo::Value { name: "ArrayOfDrsVmMigratedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_vm_migrated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_vm_migrated_event) }),
        ("HostDasOkEvent", TypeInfo::Object { name: "HostDasOkEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostDasOkEvent))) }),
        ("FaultTolerancePrimaryConfigInfo", TypeInfo::Object { name: "FaultTolerancePrimaryConfigInfo", builder_fn: || Box::new(FaultTolerancePrimaryConfigInfoFields::new()) }),
        ("ArrayOfVirtualDevicePciBusSlotInfo", TypeInfo::Value { name: "ArrayOfVirtualDevicePciBusSlotInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_pci_bus_slot_info_array)), from_value: |v| cast_to_virtual_device_pci_bus_slot_info_array(from_value(v)?) }),
        ("VsanUpgradeSystemUpgradeHistoryPreflightFail", TypeInfo::Object { name: "VsanUpgradeSystemUpgradeHistoryPreflightFail", builder_fn: || Box::new(VsanUpgradeSystemUpgradeHistoryPreflightFailFields::new()) }),
        ("VspanPortMoveFault", TypeInfo::Object { name: "VspanPortMoveFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VspanPortMoveFault))) }),
        ("ArrayOfGuestProcessInfo", TypeInfo::Value { name: "ArrayOfGuestProcessInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestProcessInfo>>(wrap_array_of_guest_process_info), from_value: |v| from_val_with::<Vec<super::structs::GuestProcessInfo>>(v, wrap_array_of_guest_process_info) }),
        ("ArrayOfStorageVmotionIncompatible", TypeInfo::Value { name: "ArrayOfStorageVmotionIncompatible", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_vmotion_incompatible), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_vmotion_incompatible) }),
        ("VMotionNotSupported", TypeInfo::Object { name: "VMotionNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VMotionNotSupported))) }),
        ("CannotPlaceWithoutPrerequisiteMoves", TypeInfo::Object { name: "CannotPlaceWithoutPrerequisiteMoves", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotPlaceWithoutPrerequisiteMoves))) }),
        ("ArrayOfDistributedVirtualSwitchManagerHostArrayFilter", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchManagerHostArrayFilter", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchManagerHostArrayFilter>>(wrap_array_of_distributed_virtual_switch_manager_host_array_filter), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchManagerHostArrayFilter>>(v, wrap_array_of_distributed_virtual_switch_manager_host_array_filter) }),
        ("ArrayOfUserSearchResult", TypeInfo::Value { name: "ArrayOfUserSearchResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_user_search_result_array)), from_value: |v| cast_to_user_search_result_array(from_value(v)?) }),
        ("ArrayOfVmReconfiguredEvent", TypeInfo::Value { name: "ArrayOfVmReconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_reconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_reconfigured_event) }),
        ("DiskIsUSB", TypeInfo::Object { name: "DiskIsUSB", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DiskIsUsb))) }),
        ("ArrayOfDistributedVirtualSwitchManagerHostDvsMembershipFilter", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchManagerHostDvsMembershipFilter", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchManagerHostDvsMembershipFilter>>(wrap_array_of_distributed_virtual_switch_manager_host_dvs_membership_filter), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchManagerHostDvsMembershipFilter>>(v, wrap_array_of_distributed_virtual_switch_manager_host_dvs_membership_filter) }),
        ("ArrayOfVirtualMachineFeatureRequirement", TypeInfo::Value { name: "ArrayOfVirtualMachineFeatureRequirement", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFeatureRequirement>>(wrap_array_of_virtual_machine_feature_requirement), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFeatureRequirement>>(v, wrap_array_of_virtual_machine_feature_requirement) }),
        ("NoCustomAgentVmNetwork", TypeInfo::Object { name: "NoCustomAgentVmNetwork", builder_fn: || Box::new(NoCustomAgentVmNetworkFields::new()) }),
        ("VAppIPAssignmentInfo", TypeInfo::Object { name: "VAppIPAssignmentInfo", builder_fn: || Box::new(VAppIpAssignmentInfoFields::new()) }),
        ("ArrayOfRemoveFailed", TypeInfo::Value { name: "ArrayOfRemoveFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_remove_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_remove_failed) }),
        ("HostVvolVolumeHostVvolNQN", TypeInfo::Object { name: "HostVvolVolumeHostVvolNQN", builder_fn: || Box::new(HostVvolVolumeHostVvolNqnFields::new()) }),
        ("HostPcieHba", TypeInfo::Object { name: "HostPcieHba", builder_fn: || Box::new(HostPcieHbaFields::new()) }),
        ("MismatchedNetworkPolicies", TypeInfo::Object { name: "MismatchedNetworkPolicies", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MismatchedNetworkPolicies))) }),
        ("CnsVolumePolicyReconfigSpec", TypeInfo::Object { name: "CnsVolumePolicyReconfigSpec", builder_fn: || Box::new(CnsVolumePolicyReconfigSpecFields::new()) }),
        ("CnsPlacementResult", TypeInfo::Object { name: "CnsPlacementResult", builder_fn: || Box::new(CnsPlacementResultFields::new()) }),
        ("ProfileEvent", TypeInfo::Object { name: "ProfileEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ProfileEvent))) }),
        ("ArrayOfCustomizationSpec", TypeInfo::Value { name: "ArrayOfCustomizationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationSpec>>(wrap_array_of_customization_spec), from_value: |v| from_val_with::<Vec<super::structs::CustomizationSpec>>(v, wrap_array_of_customization_spec) }),
        ("InvalidUrl", TypeInfo::Object { name: "InvalidUrl", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidUrl))) }),
        ("VirtualMachineFileLayout", TypeInfo::Object { name: "VirtualMachineFileLayout", builder_fn: || Box::new(VirtualMachineFileLayoutFields::new()) }),
        ("VirtualMachineVirtualPMem", TypeInfo::Object { name: "VirtualMachineVirtualPMem", builder_fn: || Box::new(VirtualMachineVirtualPMemFields::new()) }),
        ("ArrayOfOvfNetworkMappingNotSupported", TypeInfo::Value { name: "ArrayOfOvfNetworkMappingNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_network_mapping_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_network_mapping_not_supported) }),
        ("CertificateNotImported", TypeInfo::Object { name: "CertificateNotImported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CertificateNotImported))) }),
        ("HostNvmeTransportParameters", TypeInfo::Object { name: "HostNvmeTransportParameters", builder_fn: || Box::new(HostNvmeTransportParametersFields::new()) }),
        ("AnswerFileUpdateFailure", TypeInfo::Object { name: "AnswerFileUpdateFailure", builder_fn: || Box::new(AnswerFileUpdateFailureFields::new()) }),
        ("VsanMixedEsxVersionInClientIssue", TypeInfo::Object { name: "VsanMixedEsxVersionInClientIssue", builder_fn: || Box::new(VsanMixedEsxVersionInClientIssueFields::new()) }),
        ("ArrayOfIScsiBootFailureEvent", TypeInfo::Value { name: "ArrayOfIScsiBootFailureEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_i_scsi_boot_failure_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_i_scsi_boot_failure_event) }),
        ("PbmCapabilityMetadata", TypeInfo::Object { name: "PbmCapabilityMetadata", builder_fn: || Box::new(PbmCapabilityMetadataFields::new()) }),
        ("ArrayOfMigrationErrorEvent", TypeInfo::Value { name: "ArrayOfMigrationErrorEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_migration_error_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_migration_error_event) }),
        ("InUseFeatureManipulationDisallowed", TypeInfo::Object { name: "InUseFeatureManipulationDisallowed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InUseFeatureManipulationDisallowed))) }),
        ("ArrayOfSecurityProfile", TypeInfo::Value { name: "ArrayOfSecurityProfile", make_deserializer: || make_deser_with::<Vec<super::structs::SecurityProfile>>(wrap_array_of_security_profile), from_value: |v| from_val_with::<Vec<super::structs::SecurityProfile>>(v, wrap_array_of_security_profile) }),
        ("ClusterAgentHostInMaintenanceMode", TypeInfo::Object { name: "ClusterAgentHostInMaintenanceMode", builder_fn: || Box::new(ClusterAgentHostInMaintenanceModeFields::new()) }),
        ("VimVsanHostTrimDiskEntry", TypeInfo::Object { name: "VimVsanHostTrimDiskEntry", builder_fn: || Box::new(VimVsanHostTrimDiskEntryFields::new()) }),
        ("VMOnConflictDVPort", TypeInfo::Object { name: "VMOnConflictDVPort", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmOnConflictDvPort))) }),
        ("VsanNicRdmaInfo", TypeInfo::Object { name: "VsanNicRdmaInfo", builder_fn: || Box::new(VsanNicRdmaInfoFields::new()) }),
        ("ArrayOfHostDateTimeInfo", TypeInfo::Value { name: "ArrayOfHostDateTimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostDateTimeInfo>>(wrap_array_of_host_date_time_info), from_value: |v| from_val_with::<Vec<super::structs::HostDateTimeInfo>>(v, wrap_array_of_host_date_time_info) }),
        ("HostUserWorldSwapNotEnabledEvent", TypeInfo::Object { name: "HostUserWorldSwapNotEnabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostUserWorldSwapNotEnabledEvent))) }),
        ("PnicTSOInfo", TypeInfo::Object { name: "PnicTSOInfo", builder_fn: || Box::new(PnicTsoInfoFields::new()) }),
        ("SecondaryVmAlreadyEnabled", TypeInfo::Object { name: "SecondaryVmAlreadyEnabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SecondaryVmAlreadyEnabled))) }),
        ("VAppPropertyFault", TypeInfo::Object { name: "VAppPropertyFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VAppPropertyFault))) }),
        ("ArrayOfOvfCreateImportSpecParams", TypeInfo::Value { name: "ArrayOfOvfCreateImportSpecParams", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_ovf_create_import_spec_params_array)), from_value: |v| cast_to_ovf_create_import_spec_params_array(from_value(v)?) }),
        ("VirtualKeyboardOption", TypeInfo::Object { name: "VirtualKeyboardOption", builder_fn: || Box::new(VirtualKeyboardOptionFields::new()) }),
        ("ArrayOfIscsiDependencyEntity", TypeInfo::Value { name: "ArrayOfIscsiDependencyEntity", make_deserializer: || make_deser_with::<Vec<super::structs::IscsiDependencyEntity>>(wrap_array_of_iscsi_dependency_entity), from_value: |v| from_val_with::<Vec<super::structs::IscsiDependencyEntity>>(v, wrap_array_of_iscsi_dependency_entity) }),
        ("ArrayOfRemoteTSMEnabledEvent", TypeInfo::Value { name: "ArrayOfRemoteTSMEnabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_remote_tsm_enabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_remote_tsm_enabled_event) }),
        ("ArrayOfSSDEnduranceThresholdSpec", TypeInfo::Value { name: "ArrayOfSSDEnduranceThresholdSpec", make_deserializer: || make_deser_with::<Vec<super::structs::SsdEnduranceThresholdSpec>>(wrap_array_of_ssd_endurance_threshold_spec), from_value: |v| from_val_with::<Vec<super::structs::SsdEnduranceThresholdSpec>>(v, wrap_array_of_ssd_endurance_threshold_spec) }),
        ("VchaClusterConfigInfo", TypeInfo::Object { name: "VchaClusterConfigInfo", builder_fn: || Box::new(VchaClusterConfigInfoFields::new()) }),
        ("ArrayOfVmNvramFileQuery", TypeInfo::Value { name: "ArrayOfVmNvramFileQuery", make_deserializer: || make_deser_with::<Vec<super::structs::VmNvramFileQuery>>(wrap_array_of_vm_nvram_file_query), from_value: |v| from_val_with::<Vec<super::structs::VmNvramFileQuery>>(v, wrap_array_of_vm_nvram_file_query) }),
        ("ArrayOfClusterDpmHostConfigInfo", TypeInfo::Value { name: "ArrayOfClusterDpmHostConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDpmHostConfigInfo>>(wrap_array_of_cluster_dpm_host_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDpmHostConfigInfo>>(v, wrap_array_of_cluster_dpm_host_config_info) }),
        ("ArrayOfInsufficientResources", TypeInfo::Value { name: "ArrayOfInsufficientResources", make_deserializer: || make_deser_with::<Vec<super::structs::InsufficientResources>>(wrap_array_of_insufficient_resources), from_value: |v| from_val_with::<Vec<super::structs::InsufficientResources>>(v, wrap_array_of_insufficient_resources) }),
        ("ArrayOfCnsVolumePolicyReconfigSpec", TypeInfo::Value { name: "ArrayOfCnsVolumePolicyReconfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumePolicyReconfigSpec>>(wrap_array_of_cns_volume_policy_reconfig_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumePolicyReconfigSpec>>(v, wrap_array_of_cns_volume_policy_reconfig_spec) }),
        ("StorageVMotionNotSupported", TypeInfo::Object { name: "StorageVMotionNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageVMotionNotSupported))) }),
        ("ArrayOfCnsFileCreateSpec", TypeInfo::Value { name: "ArrayOfCnsFileCreateSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cns_file_create_spec_array)), from_value: |v| cast_to_cns_file_create_spec_array(from_value(v)?) }),
        ("VMwareDvsLacpCapability", TypeInfo::Object { name: "VMwareDvsLacpCapability", builder_fn: || Box::new(VMwareDvsLacpCapabilityFields::new()) }),
        ("ArrayOfVsanIscsiVipConfig", TypeInfo::Value { name: "ArrayOfVsanIscsiVipConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiVipConfig>>(wrap_array_of_vsan_iscsi_vip_config), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiVipConfig>>(v, wrap_array_of_vsan_iscsi_vip_config) }),
        ("HostNvmeConnectSpec", TypeInfo::Object { name: "HostNvmeConnectSpec", builder_fn: || Box::new(HostNvmeConnectSpecFields::new()) }),
        ("ComputeResourceSummary", TypeInfo::Object { name: "ComputeResourceSummary", builder_fn: || Box::new(ComputeResourceSummaryFields::new()) }),
        ("GuestFileAttributes", TypeInfo::Object { name: "GuestFileAttributes", builder_fn: || Box::new(GuestFileAttributesFields::new()) }),
        ("VmPortGroupProfile", TypeInfo::Object { name: "VmPortGroupProfile", builder_fn: || Box::new(VmPortGroupProfileFields::new()) }),
        ("ArrayOfCnsVsanFileShareBackingDetails", TypeInfo::Value { name: "ArrayOfCnsVsanFileShareBackingDetails", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVsanFileShareBackingDetails>>(wrap_array_of_cns_vsan_file_share_backing_details), from_value: |v| from_val_with::<Vec<super::structs::CnsVsanFileShareBackingDetails>>(v, wrap_array_of_cns_vsan_file_share_backing_details) }),
        ("ArrayOfVirtualIDEControllerOption", TypeInfo::Value { name: "ArrayOfVirtualIDEControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualIdeControllerOption>>(wrap_array_of_virtual_ide_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualIdeControllerOption>>(v, wrap_array_of_virtual_ide_controller_option) }),
        ("HostHasComponentFailure", TypeInfo::Object { name: "HostHasComponentFailure", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostHasComponentFailure))) }),
        ("ArrayOfVmMigratedEvent", TypeInfo::Value { name: "ArrayOfVmMigratedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_migrated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_migrated_event) }),
        ("ArrayOfVsanVcLifecycleCheckResult", TypeInfo::Value { name: "ArrayOfVsanVcLifecycleCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVcLifecycleCheckResult>>(wrap_array_of_vsan_vc_lifecycle_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanVcLifecycleCheckResult>>(v, wrap_array_of_vsan_vc_lifecycle_check_result) }),
        ("ArrayOfVirtualSerialPortURIBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualSerialPortURIBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortUriBackingInfo>>(wrap_array_of_virtual_serial_port_uri_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortUriBackingInfo>>(v, wrap_array_of_virtual_serial_port_uri_backing_info) }),
        ("NetDhcpConfigSpec", TypeInfo::Object { name: "NetDhcpConfigSpec", builder_fn: || Box::new(NetDhcpConfigSpecFields::new()) }),
        ("OvfElement", TypeInfo::Object { name: "OvfElement", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfElement))) }),
        ("VsanUnmapConfig", TypeInfo::Object { name: "VsanUnmapConfig", builder_fn: || Box::new(VsanUnmapConfigFields::new()) }),
        ("ArrayOfMethodDisabled", TypeInfo::Value { name: "ArrayOfMethodDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_method_disabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_method_disabled) }),
        ("VirtualMachineSgxTargetInfo", TypeInfo::Object { name: "VirtualMachineSgxTargetInfo", builder_fn: || Box::new(VirtualMachineSgxTargetInfoFields::new()) }),
        ("CnsAsyncQueryResult", TypeInfo::Object { name: "CnsAsyncQueryResult", builder_fn: || Box::new(CnsAsyncQueryResultFields::new()) }),
        ("CannotAccessLocalSource", TypeInfo::Object { name: "CannotAccessLocalSource", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotAccessLocalSource))) }),
        ("DvsPortCreatedEvent", TypeInfo::Object { name: "DvsPortCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortCreatedEvent))) }),
        ("ArrayOfDasHostIsolatedEvent", TypeInfo::Value { name: "ArrayOfDasHostIsolatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_das_host_isolated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_das_host_isolated_event) }),
        ("ArrayOfVmStartingEvent", TypeInfo::Value { name: "ArrayOfVmStartingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_starting_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_starting_event) }),
        ("ArrayOfVolumeEditorError", TypeInfo::Value { name: "ArrayOfVolumeEditorError", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_volume_editor_error), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_volume_editor_error) }),
        ("ArrayOfPasswordField", TypeInfo::Value { name: "ArrayOfPasswordField", make_deserializer: || make_deser_with::<Vec<super::structs::PasswordField>>(wrap_array_of_password_field), from_value: |v| from_val_with::<Vec<super::structs::PasswordField>>(v, wrap_array_of_password_field) }),
        ("ArrayOfIpRange", TypeInfo::Value { name: "ArrayOfIpRange", make_deserializer: || make_deser_with::<Vec<super::structs::IpRange>>(wrap_array_of_ip_range), from_value: |v| from_val_with::<Vec<super::structs::IpRange>>(v, wrap_array_of_ip_range) }),
        ("DasAdmissionControlEnabledEvent", TypeInfo::Object { name: "DasAdmissionControlEnabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DasAdmissionControlEnabledEvent))) }),
        ("ArrayOfActiveVMsBlockingEVC", TypeInfo::Value { name: "ArrayOfActiveVMsBlockingEVC", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_active_v_ms_blocking_evc), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_active_v_ms_blocking_evc) }),
        ("ArrayOfHostPersistentMemoryInfo", TypeInfo::Value { name: "ArrayOfHostPersistentMemoryInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostPersistentMemoryInfo>>(wrap_array_of_host_persistent_memory_info), from_value: |v| from_val_with::<Vec<super::structs::HostPersistentMemoryInfo>>(v, wrap_array_of_host_persistent_memory_info) }),
        ("ArrayOfGuestRegistryKeyHasSubkeys", TypeInfo::Value { name: "ArrayOfGuestRegistryKeyHasSubkeys", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_registry_key_has_subkeys), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_registry_key_has_subkeys) }),
        ("ArrayOfHostVFlashManagerVFlashResourceConfigSpec", TypeInfo::Value { name: "ArrayOfHostVFlashManagerVFlashResourceConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostVFlashManagerVFlashResourceConfigSpec>>(wrap_array_of_host_v_flash_manager_v_flash_resource_config_spec), from_value: |v| from_val_with::<Vec<super::structs::HostVFlashManagerVFlashResourceConfigSpec>>(v, wrap_array_of_host_v_flash_manager_v_flash_resource_config_spec) }),
        ("ArrayOfHttpNfcLeaseInfo", TypeInfo::Value { name: "ArrayOfHttpNfcLeaseInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HttpNfcLeaseInfo>>(wrap_array_of_http_nfc_lease_info), from_value: |v| from_val_with::<Vec<super::structs::HttpNfcLeaseInfo>>(v, wrap_array_of_http_nfc_lease_info) }),
        ("ArrayOfDvsServiceConsoleVNicProfile", TypeInfo::Value { name: "ArrayOfDvsServiceConsoleVNicProfile", make_deserializer: || make_deser_with::<Vec<super::structs::DvsServiceConsoleVNicProfile>>(wrap_array_of_dvs_service_console_v_nic_profile), from_value: |v| from_val_with::<Vec<super::structs::DvsServiceConsoleVNicProfile>>(v, wrap_array_of_dvs_service_console_v_nic_profile) }),
        ("ArrayOfInvalidController", TypeInfo::Value { name: "ArrayOfInvalidController", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_controller), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_controller) }),
        ("VmValidateMaxDevice", TypeInfo::Object { name: "VmValidateMaxDevice", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmValidateMaxDevice))) }),
        ("ArrayOfFileNotFound", TypeInfo::Value { name: "ArrayOfFileNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_file_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_file_not_found) }),
        ("ArrayOfVsanIODiagnosticsTargetStats", TypeInfo::Value { name: "ArrayOfVsanIODiagnosticsTargetStats", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoDiagnosticsTargetStats>>(wrap_array_of_vsan_io_diagnostics_target_stats), from_value: |v| from_val_with::<Vec<super::structs::VsanIoDiagnosticsTargetStats>>(v, wrap_array_of_vsan_io_diagnostics_target_stats) }),
        ("OvfInvalidProperty", TypeInfo::Object { name: "OvfInvalidProperty", builder_fn: || Box::new(OvfInvalidPropertyFields::new()) }),
        ("MigrationFeatureNotSupported", TypeInfo::Object { name: "MigrationFeatureNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MigrationFeatureNotSupported))) }),
        ("ArrayOfGuestRegValueDwordSpec", TypeInfo::Value { name: "ArrayOfGuestRegValueDwordSpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegValueDwordSpec>>(wrap_array_of_guest_reg_value_dword_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegValueDwordSpec>>(v, wrap_array_of_guest_reg_value_dword_spec) }),
        ("RebootRequired", TypeInfo::Object { name: "RebootRequired", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RebootRequired))) }),
        ("ArrayOfCannotDisconnectHostWithFaultToleranceVm", TypeInfo::Value { name: "ArrayOfCannotDisconnectHostWithFaultToleranceVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_disconnect_host_with_fault_tolerance_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_disconnect_host_with_fault_tolerance_vm) }),
        ("HostParallelScsiTargetTransport", TypeInfo::Object { name: "HostParallelScsiTargetTransport", builder_fn: || Box::new(HostParallelScsiTargetTransportFields::new()) }),
        ("RawDiskNotSupported", TypeInfo::Object { name: "RawDiskNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RawDiskNotSupported))) }),
        ("ArrayOfOvfManagerCommonParams", TypeInfo::Value { name: "ArrayOfOvfManagerCommonParams", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_ovf_manager_common_params_array)), from_value: |v| cast_to_ovf_manager_common_params_array(from_value(v)?) }),
        ("UplinkPortMtuSupportEvent", TypeInfo::Object { name: "UplinkPortMtuSupportEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UplinkPortMtuSupportEvent))) }),
        ("ArrayOfVslmTaskReasonUser", TypeInfo::Value { name: "ArrayOfVslmTaskReasonUser", make_deserializer: || make_deser_with::<Vec<super::structs::VslmTaskReasonUser>>(wrap_array_of_vslm_task_reason_user), from_value: |v| from_val_with::<Vec<super::structs::VslmTaskReasonUser>>(v, wrap_array_of_vslm_task_reason_user) }),
        ("PassiveNodeDeploymentSpec", TypeInfo::Object { name: "PassiveNodeDeploymentSpec", builder_fn: || Box::new(PassiveNodeDeploymentSpecFields::new()) }),
        ("VmUpgradeFailedEvent", TypeInfo::Object { name: "VmUpgradeFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmUpgradeFailedEvent))) }),
        ("ArrayOfVirtualSoundCardDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualSoundCardDeviceBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSoundCardDeviceBackingOption>>(wrap_array_of_virtual_sound_card_device_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSoundCardDeviceBackingOption>>(v, wrap_array_of_virtual_sound_card_device_backing_option) }),
        ("ArrayOfServiceLocatorCredential", TypeInfo::Value { name: "ArrayOfServiceLocatorCredential", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_service_locator_credential_array)), from_value: |v| cast_to_service_locator_credential_array(from_value(v)?) }),
        ("HostNetStackInstance", TypeInfo::Object { name: "HostNetStackInstance", builder_fn: || Box::new(HostNetStackInstanceFields::new()) }),
        ("HostPlugStoreTopologyTarget", TypeInfo::Object { name: "HostPlugStoreTopologyTarget", builder_fn: || Box::new(HostPlugStoreTopologyTargetFields::new()) }),
        ("VirtualMachineEmptyProfileSpec", TypeInfo::Object { name: "VirtualMachineEmptyProfileSpec", builder_fn: || Box::new(VirtualMachineEmptyProfileSpecFields::new()) }),
        ("ProfileExecuteError", TypeInfo::Object { name: "ProfileExecuteError", builder_fn: || Box::new(ProfileExecuteErrorFields::new()) }),
        ("VirtualMachineIndependentFilterSpec", TypeInfo::Object { name: "VirtualMachineIndependentFilterSpec", builder_fn: || Box::new(VirtualMachineIndependentFilterSpecFields::new()) }),
        ("VmNoNetworkAccessEvent", TypeInfo::Object { name: "VmNoNetworkAccessEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmNoNetworkAccessEvent))) }),
        ("ArrayOfSolutionsValidationResult", TypeInfo::Value { name: "ArrayOfSolutionsValidationResult", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsValidationResult>>(wrap_array_of_solutions_validation_result), from_value: |v| from_val_with::<Vec<super::structs::SolutionsValidationResult>>(v, wrap_array_of_solutions_validation_result) }),
        ("ArrayOfInsufficientFailoverResourcesEvent", TypeInfo::Value { name: "ArrayOfInsufficientFailoverResourcesEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_insufficient_failover_resources_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_insufficient_failover_resources_event) }),
        ("ArrayOfUntrustedCertificate", TypeInfo::Value { name: "ArrayOfUntrustedCertificate", make_deserializer: || make_deser_with::<Vec<super::structs::UntrustedCertificate>>(wrap_array_of_untrusted_certificate), from_value: |v| from_val_with::<Vec<super::structs::UntrustedCertificate>>(v, wrap_array_of_untrusted_certificate) }),
        ("ArrayOfHostNicFailureCriteria", TypeInfo::Value { name: "ArrayOfHostNicFailureCriteria", make_deserializer: || make_deser_with::<Vec<super::structs::HostNicFailureCriteria>>(wrap_array_of_host_nic_failure_criteria), from_value: |v| from_val_with::<Vec<super::structs::HostNicFailureCriteria>>(v, wrap_array_of_host_nic_failure_criteria) }),
        ("OvfPropertyNetwork", TypeInfo::Object { name: "OvfPropertyNetwork", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfPropertyNetwork))) }),
        ("PbmPlacementCapabilityProfileRequirement", TypeInfo::Object { name: "PbmPlacementCapabilityProfileRequirement", builder_fn: || Box::new(PbmPlacementCapabilityProfileRequirementFields::new()) }),
        ("ArrayOfResourceViolatedEvent", TypeInfo::Value { name: "ArrayOfResourceViolatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_resource_violated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_resource_violated_event) }),
        ("VsanHostCreateVmHealthTestResult", TypeInfo::Object { name: "VsanHostCreateVmHealthTestResult", builder_fn: || Box::new(VsanHostCreateVmHealthTestResultFields::new()) }),
        ("ArrayOfDVSCapability", TypeInfo::Value { name: "ArrayOfDVSCapability", make_deserializer: || make_deser_with::<Vec<super::structs::DvsCapability>>(wrap_array_of_dvs_capability), from_value: |v| from_val_with::<Vec<super::structs::DvsCapability>>(v, wrap_array_of_dvs_capability) }),
        ("ArrayOfInaccessibleVFlashSource", TypeInfo::Value { name: "ArrayOfInaccessibleVFlashSource", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_inaccessible_v_flash_source), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_inaccessible_v_flash_source) }),
        ("ArrayOfCannotAccessVmConfig", TypeInfo::Value { name: "ArrayOfCannotAccessVmConfig", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_access_vm_config), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_access_vm_config) }),
        ("SSDEnduranceThresholdSpec", TypeInfo::Object { name: "SSDEnduranceThresholdSpec", builder_fn: || Box::new(SsdEnduranceThresholdSpecFields::new()) }),
        ("ArrayOfNetDhcpConfigSpecDhcpOptionsSpec", TypeInfo::Value { name: "ArrayOfNetDhcpConfigSpecDhcpOptionsSpec", make_deserializer: || make_deser_with::<Vec<super::structs::NetDhcpConfigSpecDhcpOptionsSpec>>(wrap_array_of_net_dhcp_config_spec_dhcp_options_spec), from_value: |v| from_val_with::<Vec<super::structs::NetDhcpConfigSpecDhcpOptionsSpec>>(v, wrap_array_of_net_dhcp_config_spec_dhcp_options_spec) }),
        ("ClusterSystemVMsConfigInfo", TypeInfo::Object { name: "ClusterSystemVMsConfigInfo", builder_fn: || Box::new(ClusterSystemVMsConfigInfoFields::new()) }),
        ("DesiredSoftwareSpecComponentSpec", TypeInfo::Object { name: "DesiredSoftwareSpecComponentSpec", builder_fn: || Box::new(DesiredSoftwareSpecComponentSpecFields::new()) }),
        ("VchaClusterDeploymentSpec", TypeInfo::Object { name: "VchaClusterDeploymentSpec", builder_fn: || Box::new(VchaClusterDeploymentSpecFields::new()) }),
        ("ArrayOfClusterDasAdmissionControlPolicy", TypeInfo::Value { name: "ArrayOfClusterDasAdmissionControlPolicy", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_das_admission_control_policy_array)), from_value: |v| cast_to_cluster_das_admission_control_policy_array(from_value(v)?) }),
        ("ArrayOfEnteringStandbyModeEvent", TypeInfo::Value { name: "ArrayOfEnteringStandbyModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_entering_standby_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_entering_standby_mode_event) }),
        ("VmwareDistributedVirtualSwitchVlanIdSpec", TypeInfo::Object { name: "VmwareDistributedVirtualSwitchVlanIdSpec", builder_fn: || Box::new(VmwareDistributedVirtualSwitchVlanIdSpecFields::new()) }),
        ("ArrayOfCannotEnableVmcpForCluster", TypeInfo::Value { name: "ArrayOfCannotEnableVmcpForCluster", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_enable_vmcp_for_cluster), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_enable_vmcp_for_cluster) }),
        ("ArrayOfVsanMixedEsxVersionIssue", TypeInfo::Value { name: "ArrayOfVsanMixedEsxVersionIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMixedEsxVersionIssue>>(wrap_array_of_vsan_mixed_esx_version_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanMixedEsxVersionIssue>>(v, wrap_array_of_vsan_mixed_esx_version_issue) }),
        ("VmSecondaryDisabledEvent", TypeInfo::Object { name: "VmSecondaryDisabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmSecondaryDisabledEvent))) }),
        ("VsanVmdkLoadTestResult", TypeInfo::Object { name: "VsanVmdkLoadTestResult", builder_fn: || Box::new(VsanVmdkLoadTestResultFields::new()) }),
        ("ArrayOfStorageIORMConfigSpec", TypeInfo::Value { name: "ArrayOfStorageIORMConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::StorageIormConfigSpec>>(wrap_array_of_storage_iorm_config_spec), from_value: |v| from_val_with::<Vec<super::structs::StorageIormConfigSpec>>(v, wrap_array_of_storage_iorm_config_spec) }),
        ("VirtualPCIPassthroughDvxBackingInfo", TypeInfo::Object { name: "VirtualPCIPassthroughDvxBackingInfo", builder_fn: || Box::new(VirtualPciPassthroughDvxBackingInfoFields::new()) }),
        ("PerfEntityMetricCSV", TypeInfo::Object { name: "PerfEntityMetricCSV", builder_fn: || Box::new(PerfEntityMetricCsvFields::new()) }),
        ("DatastoreEventArgument", TypeInfo::Object { name: "DatastoreEventArgument", builder_fn: || Box::new(DatastoreEventArgumentFields::new()) }),
        ("DatacenterConfigSpec", TypeInfo::Object { name: "DatacenterConfigSpec", builder_fn: || Box::new(DatacenterConfigSpecFields::new()) }),
        ("ArrayOfHostProfileValidationFailureInfo", TypeInfo::Value { name: "ArrayOfHostProfileValidationFailureInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileValidationFailureInfo>>(wrap_array_of_host_profile_validation_failure_info), from_value: |v| from_val_with::<Vec<super::structs::HostProfileValidationFailureInfo>>(v, wrap_array_of_host_profile_validation_failure_info) }),
        ("ArrayOfExtendedDescription", TypeInfo::Value { name: "ArrayOfExtendedDescription", make_deserializer: || make_deser_with::<Vec<super::structs::ExtendedDescription>>(wrap_array_of_extended_description), from_value: |v| from_val_with::<Vec<super::structs::ExtendedDescription>>(v, wrap_array_of_extended_description) }),
        ("ArrayOfDynamicArray", TypeInfo::Value { name: "ArrayOfDynamicArray", make_deserializer: || make_deser_with::<Vec<super::structs::DynamicArray>>(wrap_array_of_dynamic_array), from_value: |v| from_val_with::<Vec<super::structs::DynamicArray>>(v, wrap_array_of_dynamic_array) }),
        ("VirtualPS2ControllerOption", TypeInfo::Object { name: "VirtualPS2ControllerOption", builder_fn: || Box::new(VirtualPs2ControllerOptionFields::new()) }),
        ("VmUuidChangedEvent", TypeInfo::Object { name: "VmUuidChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmUuidChangedEvent))) }),
        ("VirtualMachineQuickStatsMemoryTierStats", TypeInfo::Object { name: "VirtualMachineQuickStatsMemoryTierStats", builder_fn: || Box::new(VirtualMachineQuickStatsMemoryTierStatsFields::new()) }),
        ("ArrayOfVsanProactiveRebalanceInfoEx", TypeInfo::Value { name: "ArrayOfVsanProactiveRebalanceInfoEx", make_deserializer: || make_deser_with::<Vec<super::structs::VsanProactiveRebalanceInfoEx>>(wrap_array_of_vsan_proactive_rebalance_info_ex), from_value: |v| from_val_with::<Vec<super::structs::VsanProactiveRebalanceInfoEx>>(v, wrap_array_of_vsan_proactive_rebalance_info_ex) }),
        ("ArrayOfIoFilterHostIssue", TypeInfo::Value { name: "ArrayOfIoFilterHostIssue", make_deserializer: || make_deser_with::<Vec<super::structs::IoFilterHostIssue>>(wrap_array_of_io_filter_host_issue), from_value: |v| from_val_with::<Vec<super::structs::IoFilterHostIssue>>(v, wrap_array_of_io_filter_host_issue) }),
        ("ArrayOfPbmProfileResourceType", TypeInfo::Value { name: "ArrayOfPbmProfileResourceType", make_deserializer: || make_deser_with::<Vec<super::structs::PbmProfileResourceType>>(wrap_array_of_pbm_profile_resource_type), from_value: |v| from_val_with::<Vec<super::structs::PbmProfileResourceType>>(v, wrap_array_of_pbm_profile_resource_type) }),
        ("CannotMoveVmWithDeltaDisk", TypeInfo::Object { name: "CannotMoveVmWithDeltaDisk", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotMoveVmWithDeltaDisk))) }),
        ("ArrayOfNotEnoughCpus", TypeInfo::Value { name: "ArrayOfNotEnoughCpus", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_enough_cpus), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_enough_cpus) }),
        ("ArrayOfWeeklyTaskScheduler", TypeInfo::Value { name: "ArrayOfWeeklyTaskScheduler", make_deserializer: || make_deser_with::<Vec<super::structs::WeeklyTaskScheduler>>(wrap_array_of_weekly_task_scheduler), from_value: |v| from_val_with::<Vec<super::structs::WeeklyTaskScheduler>>(v, wrap_array_of_weekly_task_scheduler) }),
        ("ArrayOfHostVFlashManagerVFlashCacheConfigInfo", TypeInfo::Value { name: "ArrayOfHostVFlashManagerVFlashCacheConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostVFlashManagerVFlashCacheConfigInfo>>(wrap_array_of_host_v_flash_manager_v_flash_cache_config_info), from_value: |v| from_val_with::<Vec<super::structs::HostVFlashManagerVFlashCacheConfigInfo>>(v, wrap_array_of_host_v_flash_manager_v_flash_cache_config_info) }),
        ("ArrayOfVsanMountPrecheckItem", TypeInfo::Value { name: "ArrayOfVsanMountPrecheckItem", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_mount_precheck_item_array)), from_value: |v| cast_to_vsan_mount_precheck_item_array(from_value(v)?) }),
        ("ArrayOfVsanHostVsanObjectSyncState", TypeInfo::Value { name: "ArrayOfVsanHostVsanObjectSyncState", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostVsanObjectSyncState>>(wrap_array_of_vsan_host_vsan_object_sync_state), from_value: |v| from_val_with::<Vec<super::structs::VsanHostVsanObjectSyncState>>(v, wrap_array_of_vsan_host_vsan_object_sync_state) }),
        ("ArrayOfVsanUpgradeStatusEx", TypeInfo::Value { name: "ArrayOfVsanUpgradeStatusEx", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeStatusEx>>(wrap_array_of_vsan_upgrade_status_ex), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeStatusEx>>(v, wrap_array_of_vsan_upgrade_status_ex) }),
        ("FileQuery", TypeInfo::Object { name: "FileQuery", builder_fn: || Box::new(FileQueryFields::new()) }),
        ("ArrayOfOvfCreateDescriptorParams", TypeInfo::Value { name: "ArrayOfOvfCreateDescriptorParams", make_deserializer: || make_deser_with::<Vec<super::structs::OvfCreateDescriptorParams>>(wrap_array_of_ovf_create_descriptor_params), from_value: |v| from_val_with::<Vec<super::structs::OvfCreateDescriptorParams>>(v, wrap_array_of_ovf_create_descriptor_params) }),
        ("ArrayOfDVPortState", TypeInfo::Value { name: "ArrayOfDVPortState", make_deserializer: || make_deser_with::<Vec<super::structs::DvPortState>>(wrap_array_of_dv_port_state), from_value: |v| from_val_with::<Vec<super::structs::DvPortState>>(v, wrap_array_of_dv_port_state) }),
        ("DvsRateLimitNetworkRuleAction", TypeInfo::Object { name: "DvsRateLimitNetworkRuleAction", builder_fn: || Box::new(DvsRateLimitNetworkRuleActionFields::new()) }),
        ("VsanUpgradeSystemNetworkPartitionIssue", TypeInfo::Object { name: "VsanUpgradeSystemNetworkPartitionIssue", builder_fn: || Box::new(VsanUpgradeSystemNetworkPartitionIssueFields::new()) }),
        ("HostProfileSerializedHostProfileSpec", TypeInfo::Object { name: "HostProfileSerializedHostProfileSpec", builder_fn: || Box::new(HostProfileSerializedHostProfileSpecFields::new()) }),
        ("HostDateTimeSystemTimeZone", TypeInfo::Object { name: "HostDateTimeSystemTimeZone", builder_fn: || Box::new(HostDateTimeSystemTimeZoneFields::new()) }),
        ("ToolsImageCopyFailed", TypeInfo::Object { name: "ToolsImageCopyFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ToolsImageCopyFailed))) }),
        ("DvsNetworkRuleQualifier", TypeInfo::Object { name: "DvsNetworkRuleQualifier", builder_fn: || Box::new(DvsNetworkRuleQualifierFields::new()) }),
        ("ArrayOfOvfConsumerOvfSection", TypeInfo::Value { name: "ArrayOfOvfConsumerOvfSection", make_deserializer: || make_deser_with::<Vec<super::structs::OvfConsumerOvfSection>>(wrap_array_of_ovf_consumer_ovf_section), from_value: |v| from_val_with::<Vec<super::structs::OvfConsumerOvfSection>>(v, wrap_array_of_ovf_consumer_ovf_section) }),
        ("ArrayOfRollbackFailure", TypeInfo::Value { name: "ArrayOfRollbackFailure", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_rollback_failure), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_rollback_failure) }),
        ("SSLVerifyFault", TypeInfo::Object { name: "SSLVerifyFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SslVerifyFault))) }),
        ("GatewayOperationRefused", TypeInfo::Object { name: "GatewayOperationRefused", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GatewayOperationRefused))) }),
        ("NoPermissionOnNasVolume", TypeInfo::Object { name: "NoPermissionOnNasVolume", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoPermissionOnNasVolume))) }),
        ("ArrayOfVirtualCdromRemotePassthroughBackingOption", TypeInfo::Value { name: "ArrayOfVirtualCdromRemotePassthroughBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromRemotePassthroughBackingOption>>(wrap_array_of_virtual_cdrom_remote_passthrough_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromRemotePassthroughBackingOption>>(v, wrap_array_of_virtual_cdrom_remote_passthrough_backing_option) }),
        ("FcoeFault", TypeInfo::Object { name: "FcoeFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FcoeFault))) }),
        ("HostMemberRuntimeInfo", TypeInfo::Object { name: "HostMemberRuntimeInfo", builder_fn: || Box::new(HostMemberRuntimeInfoFields::new()) }),
        ("SystemError", TypeInfo::Object { name: "SystemError", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SystemError))) }),
        ("ArrayOfVmNoCompatibleHostForSecondaryEvent", TypeInfo::Value { name: "ArrayOfVmNoCompatibleHostForSecondaryEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_no_compatible_host_for_secondary_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_no_compatible_host_for_secondary_event) }),
        ("ArrayOfAnswerFileUpdateFailure", TypeInfo::Value { name: "ArrayOfAnswerFileUpdateFailure", make_deserializer: || make_deser_with::<Vec<super::structs::AnswerFileUpdateFailure>>(wrap_array_of_answer_file_update_failure), from_value: |v| from_val_with::<Vec<super::structs::AnswerFileUpdateFailure>>(v, wrap_array_of_answer_file_update_failure) }),
        ("NetworkSummary", TypeInfo::Object { name: "NetworkSummary", builder_fn: || Box::new(NetworkSummaryFields::new()) }),
        ("ArrayOfRDMNotSupportedOnDatastore", TypeInfo::Value { name: "ArrayOfRDMNotSupportedOnDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_rdm_not_supported_on_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_rdm_not_supported_on_datastore) }),
        ("ArrayOfAgentRuntimeInfo", TypeInfo::Value { name: "ArrayOfAgentRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::AgentRuntimeInfo>>(wrap_array_of_agent_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::AgentRuntimeInfo>>(v, wrap_array_of_agent_runtime_info) }),
        ("PerfCompositeMetric", TypeInfo::Object { name: "PerfCompositeMetric", builder_fn: || Box::new(PerfCompositeMetricFields::new()) }),
        ("VsanHostComponentSyncState", TypeInfo::Object { name: "VsanHostComponentSyncState", builder_fn: || Box::new(VsanHostComponentSyncStateFields::new()) }),
        ("AlarmEmailFailedEvent", TypeInfo::Object { name: "AlarmEmailFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmEmailFailedEvent))) }),
        ("VslmFault", TypeInfo::Object { name: "VslmFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VslmFault))) }),
        ("ArrayOfLicenseExpired", TypeInfo::Value { name: "ArrayOfLicenseExpired", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_license_expired), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_license_expired) }),
        ("ClusterProfileConfigSpec", TypeInfo::Object { name: "ClusterProfileConfigSpec", builder_fn: || Box::new(ClusterProfileConfigSpecFields::new()) }),
        ("ArrayOfDateTime", TypeInfo::Value { name: "ArrayOfDateTime", make_deserializer: || make_deser_with::<Vec<String>>(wrap_array_of_date_time), from_value: |v| from_val_with::<Vec<String>>(v, wrap_array_of_date_time) }),
        ("CustomizationIpGenerator", TypeInfo::Object { name: "CustomizationIpGenerator", builder_fn: || Box::new(CustomizationIpGeneratorFields::new()) }),
        ("ArrayOfVmwareDistributedVirtualSwitchTrunkVlanSpec", TypeInfo::Value { name: "ArrayOfVmwareDistributedVirtualSwitchTrunkVlanSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VmwareDistributedVirtualSwitchTrunkVlanSpec>>(wrap_array_of_vmware_distributed_virtual_switch_trunk_vlan_spec), from_value: |v| from_val_with::<Vec<super::structs::VmwareDistributedVirtualSwitchTrunkVlanSpec>>(v, wrap_array_of_vmware_distributed_virtual_switch_trunk_vlan_spec) }),
        ("DVPortgroupConfigInfo", TypeInfo::Object { name: "DVPortgroupConfigInfo", builder_fn: || Box::new(DvPortgroupConfigInfoFields::new()) }),
        ("ArrayOfResourceConfigSpec", TypeInfo::Value { name: "ArrayOfResourceConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ResourceConfigSpec>>(wrap_array_of_resource_config_spec), from_value: |v| from_val_with::<Vec<super::structs::ResourceConfigSpec>>(v, wrap_array_of_resource_config_spec) }),
        ("ArrayOfHostHardwareStatusInfo", TypeInfo::Value { name: "ArrayOfHostHardwareStatusInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostHardwareStatusInfo>>(wrap_array_of_host_hardware_status_info), from_value: |v| from_val_with::<Vec<super::structs::HostHardwareStatusInfo>>(v, wrap_array_of_host_hardware_status_info) }),
        ("ArrayOfVAppOperationInProgress", TypeInfo::Value { name: "ArrayOfVAppOperationInProgress", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_app_operation_in_progress), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_app_operation_in_progress) }),
        ("VirtualDiskPartitionedRawDiskVer2BackingOption", TypeInfo::Object { name: "VirtualDiskPartitionedRawDiskVer2BackingOption", builder_fn: || Box::new(VirtualDiskPartitionedRawDiskVer2BackingOptionFields::new()) }),
        ("HostDiagnosticPartitionCreateDescription", TypeInfo::Object { name: "HostDiagnosticPartitionCreateDescription", builder_fn: || Box::new(HostDiagnosticPartitionCreateDescriptionFields::new()) }),
        ("DVPortgroupPolicy", TypeInfo::Object { name: "DVPortgroupPolicy", builder_fn: || Box::new(DvPortgroupPolicyFields::new()) }),
        ("OvfWrongElement", TypeInfo::Object { name: "OvfWrongElement", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfWrongElement))) }),
        ("VmFaultToleranceConfigIssueWrapper", TypeInfo::Object { name: "VmFaultToleranceConfigIssueWrapper", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmFaultToleranceConfigIssueWrapper))) }),
        ("ArrayOfOvfMissingAttribute", TypeInfo::Value { name: "ArrayOfOvfMissingAttribute", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_missing_attribute), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_missing_attribute) }),
        ("OvfConsumerOvfSection", TypeInfo::Object { name: "OvfConsumerOvfSection", builder_fn: || Box::new(OvfConsumerOvfSectionFields::new()) }),
        ("IscsiStoragePort", TypeInfo::Object { name: "IscsiStoragePort", builder_fn: || Box::new(IscsiStoragePortFields::new()) }),
        ("VirtualPointingDeviceDeviceBackingInfo", TypeInfo::Object { name: "VirtualPointingDeviceDeviceBackingInfo", builder_fn: || Box::new(VirtualPointingDeviceDeviceBackingInfoFields::new()) }),
        ("ArrayOfAlarmEmailCompletedEvent", TypeInfo::Value { name: "ArrayOfAlarmEmailCompletedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_email_completed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_email_completed_event) }),
        ("ClusterAgentMissingClusterVmDatastore", TypeInfo::Object { name: "ClusterAgentMissingClusterVmDatastore", builder_fn: || Box::new(ClusterAgentMissingClusterVmDatastoreFields::new()) }),
        ("ArrayOfHttpNfcLeaseDeviceUrl", TypeInfo::Value { name: "ArrayOfHttpNfcLeaseDeviceUrl", make_deserializer: || make_deser_with::<Vec<super::structs::HttpNfcLeaseDeviceUrl>>(wrap_array_of_http_nfc_lease_device_url), from_value: |v| from_val_with::<Vec<super::structs::HttpNfcLeaseDeviceUrl>>(v, wrap_array_of_http_nfc_lease_device_url) }),
        ("ArrayOfInvalidVmState", TypeInfo::Value { name: "ArrayOfInvalidVmState", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_vm_state), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_vm_state) }),
        ("ArrayOfOvfConnectedDevice", TypeInfo::Value { name: "ArrayOfOvfConnectedDevice", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_connected_device), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_connected_device) }),
        ("ArrayOfReplicationTargetInfo", TypeInfo::Value { name: "ArrayOfReplicationTargetInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicationTargetInfo>>(wrap_array_of_replication_target_info), from_value: |v| from_val_with::<Vec<super::structs::ReplicationTargetInfo>>(v, wrap_array_of_replication_target_info) }),
        ("ProfileMetadata", TypeInfo::Object { name: "ProfileMetadata", builder_fn: || Box::new(ProfileMetadataFields::new()) }),
        ("ArrayOfVirtualDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDeviceBackingInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_backing_info_array)), from_value: |v| cast_to_virtual_device_backing_info_array(from_value(v)?) }),
        ("HostCapability", TypeInfo::Object { name: "HostCapability", builder_fn: || Box::new(HostCapabilityFields::new()) }),
        ("ArrayOfVsanPolicySatisfiability", TypeInfo::Value { name: "ArrayOfVsanPolicySatisfiability", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPolicySatisfiability>>(wrap_array_of_vsan_policy_satisfiability), from_value: |v| from_val_with::<Vec<super::structs::VsanPolicySatisfiability>>(v, wrap_array_of_vsan_policy_satisfiability) }),
        ("HostInternetScsiHbaTargetSet", TypeInfo::Object { name: "HostInternetScsiHbaTargetSet", builder_fn: || Box::new(HostInternetScsiHbaTargetSetFields::new()) }),
        ("VimVasaProviderInfo", TypeInfo::Object { name: "VimVasaProviderInfo", builder_fn: || Box::new(VimVasaProviderInfoFields::new()) }),
        ("ArrayOfClusterRuleSpec", TypeInfo::Value { name: "ArrayOfClusterRuleSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterRuleSpec>>(wrap_array_of_cluster_rule_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterRuleSpec>>(v, wrap_array_of_cluster_rule_spec) }),
        ("DeviceBackedVirtualDiskSpec", TypeInfo::Object { name: "DeviceBackedVirtualDiskSpec", builder_fn: || Box::new(DeviceBackedVirtualDiskSpecFields::new()) }),
        ("ArrayOfClusterAgentInsufficientClusterSpace", TypeInfo::Value { name: "ArrayOfClusterAgentInsufficientClusterSpace", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentInsufficientClusterSpace>>(wrap_array_of_cluster_agent_insufficient_cluster_space), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentInsufficientClusterSpace>>(v, wrap_array_of_cluster_agent_insufficient_cluster_space) }),
        ("ArrayOfSolutionsApplySpec", TypeInfo::Value { name: "ArrayOfSolutionsApplySpec", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsApplySpec>>(wrap_array_of_solutions_apply_spec), from_value: |v| from_val_with::<Vec<super::structs::SolutionsApplySpec>>(v, wrap_array_of_solutions_apply_spec) }),
        ("VsanHclComputeResource", TypeInfo::Object { name: "VsanHclComputeResource", builder_fn: || Box::new(VsanHclComputeResourceFields::new()) }),
        ("ArrayOfUnsupportedDatastore", TypeInfo::Value { name: "ArrayOfUnsupportedDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_unsupported_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_unsupported_datastore) }),
        ("HostSnmpConfigSpec", TypeInfo::Object { name: "HostSnmpConfigSpec", builder_fn: || Box::new(HostSnmpConfigSpecFields::new()) }),
        ("VsanNestJsonComparator", TypeInfo::Object { name: "VsanNestJsonComparator", builder_fn: || Box::new(VsanNestJsonComparatorFields::new()) }),
        ("ArrayOfInvalidPrivilege", TypeInfo::Value { name: "ArrayOfInvalidPrivilege", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_privilege), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_privilege) }),
        ("ArrayOfRuntimeFault", TypeInfo::Value { name: "ArrayOfRuntimeFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_runtime_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_runtime_fault) }),
        ("PbmProfileOperationOutcome", TypeInfo::Object { name: "PbmProfileOperationOutcome", builder_fn: || Box::new(PbmProfileOperationOutcomeFields::new()) }),
        ("ArrayOfKmipClusterInfoKeyInfo", TypeInfo::Value { name: "ArrayOfKmipClusterInfoKeyInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_kmip_cluster_info_key_info_array)), from_value: |v| cast_to_kmip_cluster_info_key_info_array(from_value(v)?) }),
        ("SelectionSet", TypeInfo::Object { name: "SelectionSet", builder_fn: || Box::new(SelectionSetFields::new()) }),
        ("VsanIOTripAnalyzerConfig", TypeInfo::Object { name: "VsanIOTripAnalyzerConfig", builder_fn: || Box::new(VsanIoTripAnalyzerConfigFields::new()) }),
        ("OvfImportParams", TypeInfo::Object { name: "OvfImportParams", builder_fn: || Box::new(OvfImportParamsFields::new()) }),
        ("DatastoreEvent", TypeInfo::Object { name: "DatastoreEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreEvent))) }),
        ("ProfileApplyProfileElement", TypeInfo::Object { name: "ProfileApplyProfileElement", builder_fn: || Box::new(ProfileApplyProfileElementFields::new()) }),
        ("UsbScanCodeSpec", TypeInfo::Object { name: "UsbScanCodeSpec", builder_fn: || Box::new(UsbScanCodeSpecFields::new()) }),
        ("ArrayOfHostVmfsVolume", TypeInfo::Value { name: "ArrayOfHostVmfsVolume", make_deserializer: || make_deser_with::<Vec<super::structs::HostVmfsVolume>>(wrap_array_of_host_vmfs_volume), from_value: |v| from_val_with::<Vec<super::structs::HostVmfsVolume>>(v, wrap_array_of_host_vmfs_volume) }),
        ("IscsiDependencyEntity", TypeInfo::Object { name: "IscsiDependencyEntity", builder_fn: || Box::new(IscsiDependencyEntityFields::new()) }),
        ("DVSVendorSpecificConfig", TypeInfo::Object { name: "DVSVendorSpecificConfig", builder_fn: || Box::new(DvsVendorSpecificConfigFields::new()) }),
        ("ArrayOfMonthlyByDayTaskScheduler", TypeInfo::Value { name: "ArrayOfMonthlyByDayTaskScheduler", make_deserializer: || make_deser_with::<Vec<super::structs::MonthlyByDayTaskScheduler>>(wrap_array_of_monthly_by_day_task_scheduler), from_value: |v| from_val_with::<Vec<super::structs::MonthlyByDayTaskScheduler>>(v, wrap_array_of_monthly_by_day_task_scheduler) }),
        ("ArrayOfPbmCapabilityGenericTypeInfo", TypeInfo::Value { name: "ArrayOfPbmCapabilityGenericTypeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityGenericTypeInfo>>(wrap_array_of_pbm_capability_generic_type_info), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityGenericTypeInfo>>(v, wrap_array_of_pbm_capability_generic_type_info) }),
        ("VsanVsanPcapResult", TypeInfo::Object { name: "VsanVsanPcapResult", builder_fn: || Box::new(VsanVsanPcapResultFields::new()) }),
        ("ArrayOfExtendedFault", TypeInfo::Value { name: "ArrayOfExtendedFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_extended_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_extended_fault) }),
        ("ArrayOfDistributedVirtualSwitchHostMemberHostUplinkState", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchHostMemberHostUplinkState", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberHostUplinkState>>(wrap_array_of_distributed_virtual_switch_host_member_host_uplink_state), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberHostUplinkState>>(v, wrap_array_of_distributed_virtual_switch_host_member_host_uplink_state) }),
        ("ArrayOfCustomizationCustomName", TypeInfo::Value { name: "ArrayOfCustomizationCustomName", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationCustomName>>(wrap_array_of_customization_custom_name), from_value: |v| from_val_with::<Vec<super::structs::CustomizationCustomName>>(v, wrap_array_of_customization_custom_name) }),
        ("ArrayOfCustomizationSysprepRebootOption", TypeInfo::Value { name: "ArrayOfCustomizationSysprepRebootOption", make_deserializer: || make_deser_with::<Vec<super::enums::CustomizationSysprepRebootOptionEnum>>(wrap_array_of_customization_sysprep_reboot_option), from_value: |v| from_val_with::<Vec<super::enums::CustomizationSysprepRebootOptionEnum>>(v, wrap_array_of_customization_sysprep_reboot_option) }),
        ("HostComplianceCheckedEvent", TypeInfo::Object { name: "HostComplianceCheckedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostComplianceCheckedEvent))) }),
        ("ArrayOfClusterComputeResourceHostVmkNicInfo", TypeInfo::Value { name: "ArrayOfClusterComputeResourceHostVmkNicInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceHostVmkNicInfo>>(wrap_array_of_cluster_compute_resource_host_vmk_nic_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceHostVmkNicInfo>>(v, wrap_array_of_cluster_compute_resource_host_vmk_nic_info) }),
        ("PbmServiceInstanceContent", TypeInfo::Object { name: "PbmServiceInstanceContent", builder_fn: || Box::new(PbmServiceInstanceContentFields::new()) }),
        ("ScheduledTaskCreatedEvent", TypeInfo::Object { name: "ScheduledTaskCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ScheduledTaskCreatedEvent))) }),
        ("VirtualDeviceConfigSpec", TypeInfo::Object { name: "VirtualDeviceConfigSpec", builder_fn: || Box::new(VirtualDeviceConfigSpecFields::new()) }),
        ("ArrayOfVsanObjectIdentity", TypeInfo::Value { name: "ArrayOfVsanObjectIdentity", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectIdentity>>(wrap_array_of_vsan_object_identity), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectIdentity>>(v, wrap_array_of_vsan_object_identity) }),
        ("VsanFileServiceConfig", TypeInfo::Object { name: "VsanFileServiceConfig", builder_fn: || Box::new(VsanFileServiceConfigFields::new()) }),
        ("ArrayOfVsanDataObfuscationRule", TypeInfo::Value { name: "ArrayOfVsanDataObfuscationRule", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDataObfuscationRule>>(wrap_array_of_vsan_data_obfuscation_rule), from_value: |v| from_val_with::<Vec<super::structs::VsanDataObfuscationRule>>(v, wrap_array_of_vsan_data_obfuscation_rule) }),
        ("ArrayOfVirtualFloppyRemoteDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualFloppyRemoteDeviceBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualFloppyRemoteDeviceBackingOption>>(wrap_array_of_virtual_floppy_remote_device_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualFloppyRemoteDeviceBackingOption>>(v, wrap_array_of_virtual_floppy_remote_device_backing_option) }),
        ("HealthStatusChangedEvent", TypeInfo::Object { name: "HealthStatusChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HealthStatusChangedEvent))) }),
        ("ClusterAgentInvalidConfig", TypeInfo::Object { name: "ClusterAgentInvalidConfig", builder_fn: || Box::new(ClusterAgentInvalidConfigFields::new()) }),
        ("ArrayOfTaskManagerTaskViewSpec", TypeInfo::Value { name: "ArrayOfTaskManagerTaskViewSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_task_manager_task_view_spec_array)), from_value: |v| cast_to_task_manager_task_view_spec_array(from_value(v)?) }),
        ("ArrayOfVslmTaskInfoState", TypeInfo::Value { name: "ArrayOfVslmTaskInfoState", make_deserializer: || make_deser_with::<Vec<super::enums::VslmTaskInfoStateEnum>>(wrap_array_of_vslm_task_info_state), from_value: |v| from_val_with::<Vec<super::enums::VslmTaskInfoStateEnum>>(v, wrap_array_of_vslm_task_info_state) }),
        ("VmwareDistributedVirtualSwitchRealTimeLanAnnotation", TypeInfo::Object { name: "VmwareDistributedVirtualSwitchRealTimeLanAnnotation", builder_fn: || Box::new(VmwareDistributedVirtualSwitchRealTimeLanAnnotationFields::new()) }),
        ("HostSriovNetworkDevicePoolInfo", TypeInfo::Object { name: "HostSriovNetworkDevicePoolInfo", builder_fn: || Box::new(HostSriovNetworkDevicePoolInfoFields::new()) }),
        ("ArrayOfFileLockInfo", TypeInfo::Value { name: "ArrayOfFileLockInfo", make_deserializer: || make_deser_with::<Vec<super::structs::FileLockInfo>>(wrap_array_of_file_lock_info), from_value: |v| from_val_with::<Vec<super::structs::FileLockInfo>>(v, wrap_array_of_file_lock_info) }),
        ("ArrayOfLinkDiscoveryProtocolConfig", TypeInfo::Value { name: "ArrayOfLinkDiscoveryProtocolConfig", make_deserializer: || make_deser_with::<Vec<super::structs::LinkDiscoveryProtocolConfig>>(wrap_array_of_link_discovery_protocol_config), from_value: |v| from_val_with::<Vec<super::structs::LinkDiscoveryProtocolConfig>>(v, wrap_array_of_link_discovery_protocol_config) }),
        ("DailyTaskScheduler", TypeInfo::Object { name: "DailyTaskScheduler", builder_fn: || Box::new(DailyTaskSchedulerFields::new()) }),
        ("ArrayOfDirectPathProfileManagerTargetHost", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerTargetHost", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerTargetHost>>(wrap_array_of_direct_path_profile_manager_target_host), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerTargetHost>>(v, wrap_array_of_direct_path_profile_manager_target_host) }),
        ("VirtualAHCIControllerOption", TypeInfo::Object { name: "VirtualAHCIControllerOption", builder_fn: || Box::new(VirtualAhciControllerOptionFields::new()) }),
        ("ArrayOfVsanPolicyCost", TypeInfo::Value { name: "ArrayOfVsanPolicyCost", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPolicyCost>>(wrap_array_of_vsan_policy_cost), from_value: |v| from_val_with::<Vec<super::structs::VsanPolicyCost>>(v, wrap_array_of_vsan_policy_cost) }),
        ("ArrayOfScheduledTaskEvent", TypeInfo::Value { name: "ArrayOfScheduledTaskEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_scheduled_task_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_scheduled_task_event) }),
        ("ArrayOfVsanHostRuntimeInfo", TypeInfo::Value { name: "ArrayOfVsanHostRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostRuntimeInfo>>(wrap_array_of_vsan_host_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostRuntimeInfo>>(v, wrap_array_of_vsan_host_runtime_info) }),
        ("VimVsanHostVsanManagedPMemInfo", TypeInfo::Object { name: "VimVsanHostVsanManagedPMemInfo", builder_fn: || Box::new(VimVsanHostVsanManagedPMemInfoFields::new()) }),
        ("AgencyComputeResourceScope", TypeInfo::Object { name: "AgencyComputeResourceScope", builder_fn: || Box::new(AgencyComputeResourceScopeFields::new()) }),
        ("VsanFileServiceBalanceHealth", TypeInfo::Object { name: "VsanFileServiceBalanceHealth", builder_fn: || Box::new(VsanFileServiceBalanceHealthFields::new()) }),
        ("ArrayOfVmNvramFileInfo", TypeInfo::Value { name: "ArrayOfVmNvramFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VmNvramFileInfo>>(wrap_array_of_vm_nvram_file_info), from_value: |v| from_val_with::<Vec<super::structs::VmNvramFileInfo>>(v, wrap_array_of_vm_nvram_file_info) }),
        ("ArrayOfVirtualVmxnet2Option", TypeInfo::Value { name: "ArrayOfVirtualVmxnet2Option", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualVmxnet2Option>>(wrap_array_of_virtual_vmxnet_2_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualVmxnet2Option>>(v, wrap_array_of_virtual_vmxnet_2_option) }),
        ("HostDatastoreSystemDatastoreResult", TypeInfo::Object { name: "HostDatastoreSystemDatastoreResult", builder_fn: || Box::new(HostDatastoreSystemDatastoreResultFields::new()) }),
        ("CnsFault", TypeInfo::Object { name: "CnsFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CnsFault))) }),
        ("ArrayOfFloatOption", TypeInfo::Value { name: "ArrayOfFloatOption", make_deserializer: || make_deser_with::<Vec<super::structs::FloatOption>>(wrap_array_of_float_option), from_value: |v| from_val_with::<Vec<super::structs::FloatOption>>(v, wrap_array_of_float_option) }),
        ("ArrayOfHostDisconnectedEvent", TypeInfo::Value { name: "ArrayOfHostDisconnectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_disconnected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_disconnected_event) }),
        ("ArrayOfVirtualUSBRemoteHostBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualUSBRemoteHostBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbRemoteHostBackingInfo>>(wrap_array_of_virtual_usb_remote_host_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbRemoteHostBackingInfo>>(v, wrap_array_of_virtual_usb_remote_host_backing_info) }),
        ("ArrayOfDistributedVirtualSwitchNetworkOffloadSpec", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchNetworkOffloadSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchNetworkOffloadSpec>>(wrap_array_of_distributed_virtual_switch_network_offload_spec), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchNetworkOffloadSpec>>(v, wrap_array_of_distributed_virtual_switch_network_offload_spec) }),
        ("ArrayOfVmfsDatastoreExpandSpec", TypeInfo::Value { name: "ArrayOfVmfsDatastoreExpandSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VmfsDatastoreExpandSpec>>(wrap_array_of_vmfs_datastore_expand_spec), from_value: |v| from_val_with::<Vec<super::structs::VmfsDatastoreExpandSpec>>(v, wrap_array_of_vmfs_datastore_expand_spec) }),
        ("NetworksMayNotBeTheSame", TypeInfo::Object { name: "NetworksMayNotBeTheSame", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NetworksMayNotBeTheSame))) }),
        ("VsanHealthActionSteps", TypeInfo::Object { name: "VsanHealthActionSteps", builder_fn: || Box::new(VsanHealthActionStepsFields::new()) }),
        ("HostLocalAuthenticationInfo", TypeInfo::Object { name: "HostLocalAuthenticationInfo", builder_fn: || Box::new(HostLocalAuthenticationInfoFields::new()) }),
        ("ArrayOfGeneralVmInfoEvent", TypeInfo::Value { name: "ArrayOfGeneralVmInfoEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_general_vm_info_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_general_vm_info_event) }),
        ("ArrayOfVirtualCdrom", TypeInfo::Value { name: "ArrayOfVirtualCdrom", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdrom>>(wrap_array_of_virtual_cdrom), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdrom>>(v, wrap_array_of_virtual_cdrom) }),
        ("VmMessageEvent", TypeInfo::Object { name: "VmMessageEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmMessageEvent))) }),
        ("VmConfigInfo", TypeInfo::Object { name: "VmConfigInfo", builder_fn: || Box::new(VmConfigInfoFields::new()) }),
        ("ArrayOfNotSupportedByProvider", TypeInfo::Value { name: "ArrayOfNotSupportedByProvider", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_by_provider), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_by_provider) }),
        ("ArrayOfHostInternetScsiTargetTransport", TypeInfo::Value { name: "ArrayOfHostInternetScsiTargetTransport", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiTargetTransport>>(wrap_array_of_host_internet_scsi_target_transport), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiTargetTransport>>(v, wrap_array_of_host_internet_scsi_target_transport) }),
        ("ArrayOfPbmCapabilityConstraintInstance", TypeInfo::Value { name: "ArrayOfPbmCapabilityConstraintInstance", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityConstraintInstance>>(wrap_array_of_pbm_capability_constraint_instance), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityConstraintInstance>>(v, wrap_array_of_pbm_capability_constraint_instance) }),
        ("VsanPerfEntityType", TypeInfo::Object { name: "VsanPerfEntityType", builder_fn: || Box::new(VsanPerfEntityTypeFields::new()) }),
        ("ArrayOfVimClusterVsanFaultDomainSpec", TypeInfo::Value { name: "ArrayOfVimClusterVsanFaultDomainSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vim_cluster_vsan_fault_domain_spec_array)), from_value: |v| cast_to_vim_cluster_vsan_fault_domain_spec_array(from_value(v)?) }),
        ("ArrayOfGuestDiskInfo", TypeInfo::Value { name: "ArrayOfGuestDiskInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestDiskInfo>>(wrap_array_of_guest_disk_info), from_value: |v| from_val_with::<Vec<super::structs::GuestDiskInfo>>(v, wrap_array_of_guest_disk_info) }),
        ("DrsExitStandbyModeFailedEvent", TypeInfo::Object { name: "DrsExitStandbyModeFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsExitStandbyModeFailedEvent))) }),
        ("VsanHostVsanObjectSyncQueryResult", TypeInfo::Object { name: "VsanHostVsanObjectSyncQueryResult", builder_fn: || Box::new(VsanHostVsanObjectSyncQueryResultFields::new()) }),
        ("ArrayOfResourceInUse", TypeInfo::Value { name: "ArrayOfResourceInUse", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_resource_in_use), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_resource_in_use) }),
        ("HostInternetScsiHbaSendTarget", TypeInfo::Object { name: "HostInternetScsiHbaSendTarget", builder_fn: || Box::new(HostInternetScsiHbaSendTargetFields::new()) }),
        ("ArrayOfVirtualMachineIdeDiskDeviceInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineIdeDiskDeviceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineIdeDiskDeviceInfo>>(wrap_array_of_virtual_machine_ide_disk_device_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineIdeDiskDeviceInfo>>(v, wrap_array_of_virtual_machine_ide_disk_device_info) }),
        ("HostVMotionConfig", TypeInfo::Object { name: "HostVMotionConfig", builder_fn: || Box::new(HostVMotionConfigFields::new()) }),
        ("HostUnresolvedVmfsVolumeResolveStatus", TypeInfo::Object { name: "HostUnresolvedVmfsVolumeResolveStatus", builder_fn: || Box::new(HostUnresolvedVmfsVolumeResolveStatusFields::new()) }),
        ("BaseConfigInfo", TypeInfo::Object { name: "BaseConfigInfo", builder_fn: || Box::new(BaseConfigInfoFields::new()) }),
        ("HostFibreChannelHba", TypeInfo::Object { name: "HostFibreChannelHba", builder_fn: || Box::new(HostFibreChannelHbaFields::new()) }),
        ("ClusterComputeResourceHostConfigurationValidation", TypeInfo::Object { name: "ClusterComputeResourceHostConfigurationValidation", builder_fn: || Box::new(ClusterComputeResourceHostConfigurationValidationFields::new()) }),
        ("ArrayOfHostAccountSpec", TypeInfo::Value { name: "ArrayOfHostAccountSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_account_spec_array)), from_value: |v| cast_to_host_account_spec_array(from_value(v)?) }),
        ("VsanVcgDeviceInfo", TypeInfo::Object { name: "VsanVcgDeviceInfo", builder_fn: || Box::new(VsanVcgDeviceInfoFields::new()) }),
        ("ArrayOfFloppyImageFileInfo", TypeInfo::Value { name: "ArrayOfFloppyImageFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::FloppyImageFileInfo>>(wrap_array_of_floppy_image_file_info), from_value: |v| from_val_with::<Vec<super::structs::FloppyImageFileInfo>>(v, wrap_array_of_floppy_image_file_info) }),
        ("CannotMoveFaultToleranceVm", TypeInfo::Object { name: "CannotMoveFaultToleranceVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotMoveFaultToleranceVm))) }),
        ("ProfileMetadataProfileOperationMessage", TypeInfo::Object { name: "ProfileMetadataProfileOperationMessage", builder_fn: || Box::new(ProfileMetadataProfileOperationMessageFields::new()) }),
        ("ArrayOfPbmCapabilityProfileCreateSpec", TypeInfo::Value { name: "ArrayOfPbmCapabilityProfileCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityProfileCreateSpec>>(wrap_array_of_pbm_capability_profile_create_spec), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityProfileCreateSpec>>(v, wrap_array_of_pbm_capability_profile_create_spec) }),
        ("ErrorUpgradeEvent", TypeInfo::Object { name: "ErrorUpgradeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ErrorUpgradeEvent))) }),
        ("ArrayOfDvsSystemTrafficNetworkRuleQualifier", TypeInfo::Value { name: "ArrayOfDvsSystemTrafficNetworkRuleQualifier", make_deserializer: || make_deser_with::<Vec<super::structs::DvsSystemTrafficNetworkRuleQualifier>>(wrap_array_of_dvs_system_traffic_network_rule_qualifier), from_value: |v| from_val_with::<Vec<super::structs::DvsSystemTrafficNetworkRuleQualifier>>(v, wrap_array_of_dvs_system_traffic_network_rule_qualifier) }),
        ("VirtualPCIPassthroughDynamicBackingInfo", TypeInfo::Object { name: "VirtualPCIPassthroughDynamicBackingInfo", builder_fn: || Box::new(VirtualPciPassthroughDynamicBackingInfoFields::new()) }),
        ("InvalidReplicationState", TypeInfo::Object { name: "InvalidReplicationState", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidReplicationState))) }),
        ("ArrayOfVmMessageWarningEvent", TypeInfo::Value { name: "ArrayOfVmMessageWarningEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_message_warning_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_message_warning_event) }),
        ("ArrayOfVsanHostClusterStatusStateCompletionEstimate", TypeInfo::Value { name: "ArrayOfVsanHostClusterStatusStateCompletionEstimate", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostClusterStatusStateCompletionEstimate>>(wrap_array_of_vsan_host_cluster_status_state_completion_estimate), from_value: |v| from_val_with::<Vec<super::structs::VsanHostClusterStatusStateCompletionEstimate>>(v, wrap_array_of_vsan_host_cluster_status_state_completion_estimate) }),
        ("ArrayOfPatchMetadataInvalid", TypeInfo::Value { name: "ArrayOfPatchMetadataInvalid", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_patch_metadata_invalid), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_patch_metadata_invalid) }),
        ("VmFaultToleranceIssue", TypeInfo::Object { name: "VmFaultToleranceIssue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmFaultToleranceIssue))) }),
        ("int", TypeInfo::Value { name: "int", make_deserializer: || make_deser_with::<i32>(wrap_primitive_int), from_value: |v| from_val_with::<i32>(v, wrap_primitive_int) }),
        ("ArrayOfSolutionsClusterSolutionComplianceResult", TypeInfo::Value { name: "ArrayOfSolutionsClusterSolutionComplianceResult", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsClusterSolutionComplianceResult>>(wrap_array_of_solutions_cluster_solution_compliance_result), from_value: |v| from_val_with::<Vec<super::structs::SolutionsClusterSolutionComplianceResult>>(v, wrap_array_of_solutions_cluster_solution_compliance_result) }),
        ("ArrayOfDvsTrafficRuleset", TypeInfo::Value { name: "ArrayOfDvsTrafficRuleset", make_deserializer: || make_deser_with::<Vec<super::structs::DvsTrafficRuleset>>(wrap_array_of_dvs_traffic_ruleset), from_value: |v| from_val_with::<Vec<super::structs::DvsTrafficRuleset>>(v, wrap_array_of_dvs_traffic_ruleset) }),
        ("ArrayOfVcRemoteVsanServerClusterInfo", TypeInfo::Value { name: "ArrayOfVcRemoteVsanServerClusterInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VcRemoteVsanServerClusterInfo>>(wrap_array_of_vc_remote_vsan_server_cluster_info), from_value: |v| from_val_with::<Vec<super::structs::VcRemoteVsanServerClusterInfo>>(v, wrap_array_of_vc_remote_vsan_server_cluster_info) }),
        ("OvfInvalidValueFormatMalformed", TypeInfo::Object { name: "OvfInvalidValueFormatMalformed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfInvalidValueFormatMalformed))) }),
        ("ArrayOfDistributedVirtualSwitchPortConnection", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchPortConnection", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchPortConnection>>(wrap_array_of_distributed_virtual_switch_port_connection), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchPortConnection>>(v, wrap_array_of_distributed_virtual_switch_port_connection) }),
        ("ArrayOfVirtualNVMEController", TypeInfo::Value { name: "ArrayOfVirtualNVMEController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualNvmeController>>(wrap_array_of_virtual_nvme_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualNvmeController>>(v, wrap_array_of_virtual_nvme_controller) }),
        ("ReplicationVmProgressInfo", TypeInfo::Object { name: "ReplicationVmProgressInfo", builder_fn: || Box::new(ReplicationVmProgressInfoFields::new()) }),
        ("ArrayOfVimVsanHostDiskMappingCreationSpec", TypeInfo::Value { name: "ArrayOfVimVsanHostDiskMappingCreationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostDiskMappingCreationSpec>>(wrap_array_of_vim_vsan_host_disk_mapping_creation_spec), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostDiskMappingCreationSpec>>(v, wrap_array_of_vim_vsan_host_disk_mapping_creation_spec) }),
        ("VirtualMachineFilePath", TypeInfo::Object { name: "VirtualMachineFilePath", builder_fn: || Box::new(VirtualMachineFilePathFields::new()) }),
        ("DistributedVirtualSwitchHostMemberBacking", TypeInfo::Object { name: "DistributedVirtualSwitchHostMemberBacking", builder_fn: || Box::new(DistributedVirtualSwitchHostMemberBackingFields::new()) }),
        ("SecurityError", TypeInfo::Object { name: "SecurityError", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SecurityError))) }),
        ("ArrayOfDeviceGroupId", TypeInfo::Value { name: "ArrayOfDeviceGroupId", make_deserializer: || make_deser_with::<Vec<super::structs::DeviceGroupId>>(wrap_array_of_device_group_id), from_value: |v| from_val_with::<Vec<super::structs::DeviceGroupId>>(v, wrap_array_of_device_group_id) }),
        ("ArrayOfVirtualEthernetCardDistributedVirtualPortBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardDistributedVirtualPortBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEthernetCardDistributedVirtualPortBackingInfo>>(wrap_array_of_virtual_ethernet_card_distributed_virtual_port_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualEthernetCardDistributedVirtualPortBackingInfo>>(v, wrap_array_of_virtual_ethernet_card_distributed_virtual_port_backing_info) }),
        ("ArrayOfMigrationFault", TypeInfo::Value { name: "ArrayOfMigrationFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_migration_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_migration_fault) }),
        ("ArrayOfCustomizationSysprepText", TypeInfo::Value { name: "ArrayOfCustomizationSysprepText", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationSysprepText>>(wrap_array_of_customization_sysprep_text), from_value: |v| from_val_with::<Vec<super::structs::CustomizationSysprepText>>(v, wrap_array_of_customization_sysprep_text) }),
        ("PbmCapabilityDescription", TypeInfo::Object { name: "PbmCapabilityDescription", builder_fn: || Box::new(PbmCapabilityDescriptionFields::new()) }),
        ("MemorySizeNotSupportedByDatastore", TypeInfo::Object { name: "MemorySizeNotSupportedByDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MemorySizeNotSupportedByDatastore))) }),
        ("ArrayOfVirtualMachineConsolePreferences", TypeInfo::Value { name: "ArrayOfVirtualMachineConsolePreferences", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineConsolePreferences>>(wrap_array_of_virtual_machine_console_preferences), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineConsolePreferences>>(v, wrap_array_of_virtual_machine_console_preferences) }),
        ("VsanVcLifecycleCheckSpec", TypeInfo::Object { name: "VsanVcLifecycleCheckSpec", builder_fn: || Box::new(VsanVcLifecycleCheckSpecFields::new()) }),
        ("CannotAccessNetwork", TypeInfo::Object { name: "CannotAccessNetwork", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotAccessNetwork))) }),
        ("IscsiFaultVnicHasNoUplinks", TypeInfo::Object { name: "IscsiFaultVnicHasNoUplinks", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultVnicHasNoUplinks))) }),
        ("FaultToleranceConfigInfo", TypeInfo::Object { name: "FaultToleranceConfigInfo", builder_fn: || Box::new(FaultToleranceConfigInfoFields::new()) }),
        ("DvsVmVnicResourcePoolConfigSpec", TypeInfo::Object { name: "DvsVmVnicResourcePoolConfigSpec", builder_fn: || Box::new(DvsVmVnicResourcePoolConfigSpecFields::new()) }),
        ("ArrayOfMetricAlarmExpression", TypeInfo::Value { name: "ArrayOfMetricAlarmExpression", make_deserializer: || make_deser_with::<Vec<super::structs::MetricAlarmExpression>>(wrap_array_of_metric_alarm_expression), from_value: |v| from_val_with::<Vec<super::structs::MetricAlarmExpression>>(v, wrap_array_of_metric_alarm_expression) }),
        ("ArrayOfEVCAdmissionFailedCPUVendorUnknown", TypeInfo::Value { name: "ArrayOfEVCAdmissionFailedCPUVendorUnknown", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_admission_failed_cpu_vendor_unknown), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_admission_failed_cpu_vendor_unknown) }),
        ("ArrayOfVmPowerOffOnIsolationEvent", TypeInfo::Value { name: "ArrayOfVmPowerOffOnIsolationEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_power_off_on_isolation_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_power_off_on_isolation_event) }),
        ("ArrayOfTaskFilterSpecRecursionOption", TypeInfo::Value { name: "ArrayOfTaskFilterSpecRecursionOption", make_deserializer: || make_deser_with::<Vec<super::enums::TaskFilterSpecRecursionOptionEnum>>(wrap_array_of_task_filter_spec_recursion_option), from_value: |v| from_val_with::<Vec<super::enums::TaskFilterSpecRecursionOptionEnum>>(v, wrap_array_of_task_filter_spec_recursion_option) }),
        ("VsanIscsiVipConfigSpec", TypeInfo::Object { name: "VsanIscsiVipConfigSpec", builder_fn: || Box::new(VsanIscsiVipConfigSpecFields::new()) }),
        ("ArrayOfMultiWriterNotSupported", TypeInfo::Value { name: "ArrayOfMultiWriterNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_multi_writer_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_multi_writer_not_supported) }),
        ("VmfsDatastoreMultipleExtentOption", TypeInfo::Object { name: "VmfsDatastoreMultipleExtentOption", builder_fn: || Box::new(VmfsDatastoreMultipleExtentOptionFields::new()) }),
        ("ArrayOfDatacenterBasicConnectInfo", TypeInfo::Value { name: "ArrayOfDatacenterBasicConnectInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DatacenterBasicConnectInfo>>(wrap_array_of_datacenter_basic_connect_info), from_value: |v| from_val_with::<Vec<super::structs::DatacenterBasicConnectInfo>>(v, wrap_array_of_datacenter_basic_connect_info) }),
        ("ArrayOfComputeResourceHostSeedSpec", TypeInfo::Value { name: "ArrayOfComputeResourceHostSeedSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ComputeResourceHostSeedSpec>>(wrap_array_of_compute_resource_host_seed_spec), from_value: |v| from_val_with::<Vec<super::structs::ComputeResourceHostSeedSpec>>(v, wrap_array_of_compute_resource_host_seed_spec) }),
        ("HostPersistentMemoryInfo", TypeInfo::Object { name: "HostPersistentMemoryInfo", builder_fn: || Box::new(HostPersistentMemoryInfoFields::new()) }),
        ("HostInMaintenanceMode", TypeInfo::Object { name: "HostInMaintenanceMode", builder_fn: || Box::new(HostInMaintenanceModeFields::new()) }),
        ("GatewayToHostAuthFault", TypeInfo::Object { name: "GatewayToHostAuthFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GatewayToHostAuthFault))) }),
        ("GatewayConnectFault", TypeInfo::Object { name: "GatewayConnectFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GatewayConnectFault))) }),
        ("ArrayOfNetworksMayNotBeTheSame", TypeInfo::Value { name: "ArrayOfNetworksMayNotBeTheSame", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_networks_may_not_be_the_same), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_networks_may_not_be_the_same) }),
        ("ArrayOfLicenseFeatureInfoState", TypeInfo::Value { name: "ArrayOfLicenseFeatureInfoState", make_deserializer: || make_deser_with::<Vec<super::enums::LicenseFeatureInfoStateEnum>>(wrap_array_of_license_feature_info_state), from_value: |v| from_val_with::<Vec<super::enums::LicenseFeatureInfoStateEnum>>(v, wrap_array_of_license_feature_info_state) }),
        ("ArrayOfVsanRepairObjectsResult", TypeInfo::Value { name: "ArrayOfVsanRepairObjectsResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanRepairObjectsResult>>(wrap_array_of_vsan_repair_objects_result), from_value: |v| from_val_with::<Vec<super::structs::VsanRepairObjectsResult>>(v, wrap_array_of_vsan_repair_objects_result) }),
        ("VsanDiskDataEvacuationResourceCheckTaskDetails", TypeInfo::Object { name: "VsanDiskDataEvacuationResourceCheckTaskDetails", builder_fn: || Box::new(VsanDiskDataEvacuationResourceCheckTaskDetailsFields::new()) }),
        ("ArrayOfRoleEvent", TypeInfo::Value { name: "ArrayOfRoleEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_role_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_role_event) }),
        ("InvalidBundle", TypeInfo::Object { name: "InvalidBundle", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidBundle))) }),
        ("ArrayOfNonPersistentDisksNotSupported", TypeInfo::Value { name: "ArrayOfNonPersistentDisksNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_non_persistent_disks_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_non_persistent_disks_not_supported) }),
        ("CustomFieldDefRenamedEvent", TypeInfo::Object { name: "CustomFieldDefRenamedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomFieldDefRenamedEvent))) }),
        ("ArrayOfVFlashCacheHotConfigNotSupported", TypeInfo::Value { name: "ArrayOfVFlashCacheHotConfigNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_flash_cache_hot_config_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_flash_cache_hot_config_not_supported) }),
        ("VirtualDiskBlocksNotFullyProvisioned", TypeInfo::Object { name: "VirtualDiskBlocksNotFullyProvisioned", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VirtualDiskBlocksNotFullyProvisioned))) }),
        ("PbmProfileId", TypeInfo::Object { name: "PbmProfileId", builder_fn: || Box::new(PbmProfileIdFields::new()) }),
        ("QueryPointInTimeReplicaSummaryResult", TypeInfo::Object { name: "QueryPointInTimeReplicaSummaryResult", builder_fn: || Box::new(QueryPointInTimeReplicaSummaryResultFields::new()) }),
        ("ArrayOfVsanPerfsvcHealthResult", TypeInfo::Value { name: "ArrayOfVsanPerfsvcHealthResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfsvcHealthResult>>(wrap_array_of_vsan_perfsvc_health_result), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfsvcHealthResult>>(v, wrap_array_of_vsan_perfsvc_health_result) }),
        ("VsanGenericClusterBaseIssue", TypeInfo::Object { name: "VsanGenericClusterBaseIssue", builder_fn: || Box::new(VsanGenericClusterBaseIssueFields::new()) }),
        ("DvsSystemTrafficNetworkRuleQualifier", TypeInfo::Object { name: "DvsSystemTrafficNetworkRuleQualifier", builder_fn: || Box::new(DvsSystemTrafficNetworkRuleQualifierFields::new()) }),
        ("ArrayOfVmFailedRelayoutEvent", TypeInfo::Value { name: "ArrayOfVmFailedRelayoutEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_relayout_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_relayout_event) }),
        ("ResourcePoolRuntimeInfo", TypeInfo::Object { name: "ResourcePoolRuntimeInfo", builder_fn: || Box::new(ResourcePoolRuntimeInfoFields::new()) }),
        ("VirtualSCSIPassthroughDeviceBackingInfo", TypeInfo::Object { name: "VirtualSCSIPassthroughDeviceBackingInfo", builder_fn: || Box::new(VirtualScsiPassthroughDeviceBackingInfoFields::new()) }),
        ("ArrayOfOvfUnsupportedElement", TypeInfo::Value { name: "ArrayOfOvfUnsupportedElement", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_element), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_element) }),
        ("ArrayOfLicenseUsageInfo", TypeInfo::Value { name: "ArrayOfLicenseUsageInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LicenseUsageInfo>>(wrap_array_of_license_usage_info), from_value: |v| from_val_with::<Vec<super::structs::LicenseUsageInfo>>(v, wrap_array_of_license_usage_info) }),
        ("ArrayOfDuplicateName", TypeInfo::Value { name: "ArrayOfDuplicateName", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_duplicate_name), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_duplicate_name) }),
        ("ArrayOfProfileApplyProfileProperty", TypeInfo::Value { name: "ArrayOfProfileApplyProfileProperty", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileApplyProfileProperty>>(wrap_array_of_profile_apply_profile_property), from_value: |v| from_val_with::<Vec<super::structs::ProfileApplyProfileProperty>>(v, wrap_array_of_profile_apply_profile_property) }),
        ("ArrayOfVsanHealthExtMgmtPreCheckResult", TypeInfo::Value { name: "ArrayOfVsanHealthExtMgmtPreCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthExtMgmtPreCheckResult>>(wrap_array_of_vsan_health_ext_mgmt_pre_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthExtMgmtPreCheckResult>>(v, wrap_array_of_vsan_health_ext_mgmt_pre_check_result) }),
        ("ArrayOfSolutionsTypeSpecificSolutionConfig", TypeInfo::Value { name: "ArrayOfSolutionsTypeSpecificSolutionConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_solutions_type_specific_solution_config_array)), from_value: |v| cast_to_solutions_type_specific_solution_config_array(from_value(v)?) }),
        ("ArrayOfDestinationSwitchFull", TypeInfo::Value { name: "ArrayOfDestinationSwitchFull", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_destination_switch_full), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_destination_switch_full) }),
        ("FileQueryFlags", TypeInfo::Object { name: "FileQueryFlags", builder_fn: || Box::new(FileQueryFlagsFields::new()) }),
        ("VirtualMachineRuntimeInfo", TypeInfo::Object { name: "VirtualMachineRuntimeInfo", builder_fn: || Box::new(VirtualMachineRuntimeInfoFields::new()) }),
        ("ArrayOfCannotUseNetwork", TypeInfo::Value { name: "ArrayOfCannotUseNetwork", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_use_network), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_use_network) }),
        ("VirtualDiskRawDiskMappingVer1BackingOption", TypeInfo::Object { name: "VirtualDiskRawDiskMappingVer1BackingOption", builder_fn: || Box::new(VirtualDiskRawDiskMappingVer1BackingOptionFields::new()) }),
        ("TemplateUpgradedEvent", TypeInfo::Object { name: "TemplateUpgradedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::TemplateUpgradedEvent))) }),
        ("ArrayOfGlobalMessageChangedEvent", TypeInfo::Value { name: "ArrayOfGlobalMessageChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_global_message_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_global_message_changed_event) }),
        ("ArrayOfStorageIOAllocationOption", TypeInfo::Value { name: "ArrayOfStorageIOAllocationOption", make_deserializer: || make_deser_with::<Vec<super::structs::StorageIoAllocationOption>>(wrap_array_of_storage_io_allocation_option), from_value: |v| from_val_with::<Vec<super::structs::StorageIoAllocationOption>>(v, wrap_array_of_storage_io_allocation_option) }),
        ("NotSupportedHostForVmcp", TypeInfo::Object { name: "NotSupportedHostForVmcp", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedHostForVmcp))) }),
        ("ArrayOfClusterDrsFaults", TypeInfo::Value { name: "ArrayOfClusterDrsFaults", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDrsFaults>>(wrap_array_of_cluster_drs_faults), from_value: |v| from_val_with::<Vec<super::structs::ClusterDrsFaults>>(v, wrap_array_of_cluster_drs_faults) }),
        ("ArrayOfAgencyDisabled", TypeInfo::Value { name: "ArrayOfAgencyDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::AgencyDisabled>>(wrap_array_of_agency_disabled), from_value: |v| from_val_with::<Vec<super::structs::AgencyDisabled>>(v, wrap_array_of_agency_disabled) }),
        ("VsanUpgradeSystemV2ObjectsPresentDuringDowngradeIssue", TypeInfo::Object { name: "VsanUpgradeSystemV2ObjectsPresentDuringDowngradeIssue", builder_fn: || Box::new(VsanUpgradeSystemV2ObjectsPresentDuringDowngradeIssueFields::new()) }),
        ("ArrayOfProfilePolicy", TypeInfo::Value { name: "ArrayOfProfilePolicy", make_deserializer: || make_deser_with::<Vec<super::structs::ProfilePolicy>>(wrap_array_of_profile_policy), from_value: |v| from_val_with::<Vec<super::structs::ProfilePolicy>>(v, wrap_array_of_profile_policy) }),
        ("ArrayOfAlreadyBeingManaged", TypeInfo::Value { name: "ArrayOfAlreadyBeingManaged", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_already_being_managed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_already_being_managed) }),
        ("VsanMixedEsxVersionIssue", TypeInfo::Object { name: "VsanMixedEsxVersionIssue", builder_fn: || Box::new(VsanMixedEsxVersionIssueFields::new()) }),
        ("ArrayOfVirtualMachineMetadataManagerVmMetadata", TypeInfo::Value { name: "ArrayOfVirtualMachineMetadataManagerVmMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineMetadataManagerVmMetadata>>(wrap_array_of_virtual_machine_metadata_manager_vm_metadata), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineMetadataManagerVmMetadata>>(v, wrap_array_of_virtual_machine_metadata_manager_vm_metadata) }),
        ("WeekOfMonth", TypeInfo::Value { name: "WeekOfMonth", make_deserializer: || make_deser_with::<super::enums::WeekOfMonthEnum>(wrap_week_of_month), from_value: |v| from_val_with::<super::enums::WeekOfMonthEnum>(v, wrap_week_of_month) }),
        ("DvsTrafficFilterConfig", TypeInfo::Object { name: "DvsTrafficFilterConfig", builder_fn: || Box::new(DvsTrafficFilterConfigFields::new()) }),
        ("ArrayOfVibNotInstalled", TypeInfo::Value { name: "ArrayOfVibNotInstalled", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vib_not_installed_array)), from_value: |v| cast_to_vib_not_installed_array(from_value(v)?) }),
        ("ArrayOfDvsPortExitedPassthruEvent", TypeInfo::Value { name: "ArrayOfDvsPortExitedPassthruEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_exited_passthru_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_exited_passthru_event) }),
        ("ArrayOfLockerMisconfiguredEvent", TypeInfo::Value { name: "ArrayOfLockerMisconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_locker_misconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_locker_misconfigured_event) }),
        ("ArrayOfVirtualDeviceConfigSpecBackingSpec", TypeInfo::Value { name: "ArrayOfVirtualDeviceConfigSpecBackingSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDeviceConfigSpecBackingSpec>>(wrap_array_of_virtual_device_config_spec_backing_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualDeviceConfigSpecBackingSpec>>(v, wrap_array_of_virtual_device_config_spec_backing_spec) }),
        ("ArrayOfInsufficientFailoverResourcesFault", TypeInfo::Value { name: "ArrayOfInsufficientFailoverResourcesFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_failover_resources_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_failover_resources_fault) }),
        ("ArrayOfCnsKubernetesEntityReference", TypeInfo::Value { name: "ArrayOfCnsKubernetesEntityReference", make_deserializer: || make_deser_with::<Vec<super::structs::CnsKubernetesEntityReference>>(wrap_array_of_cns_kubernetes_entity_reference), from_value: |v| from_val_with::<Vec<super::structs::CnsKubernetesEntityReference>>(v, wrap_array_of_cns_kubernetes_entity_reference) }),
        ("PhysicalNicConfig", TypeInfo::Object { name: "PhysicalNicConfig", builder_fn: || Box::new(PhysicalNicConfigFields::new()) }),
        ("ArrayOfHostAutoStartManagerConfig", TypeInfo::Value { name: "ArrayOfHostAutoStartManagerConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostAutoStartManagerConfig>>(wrap_array_of_host_auto_start_manager_config), from_value: |v| from_val_with::<Vec<super::structs::HostAutoStartManagerConfig>>(v, wrap_array_of_host_auto_start_manager_config) }),
        ("ArrayOfVAppCloneSpec", TypeInfo::Value { name: "ArrayOfVAppCloneSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VAppCloneSpec>>(wrap_array_of_v_app_clone_spec), from_value: |v| from_val_with::<Vec<super::structs::VAppCloneSpec>>(v, wrap_array_of_v_app_clone_spec) }),
        ("ArrayOfHostScsiDisk", TypeInfo::Value { name: "ArrayOfHostScsiDisk", make_deserializer: || make_deser_with::<Vec<super::structs::HostScsiDisk>>(wrap_array_of_host_scsi_disk), from_value: |v| from_val_with::<Vec<super::structs::HostScsiDisk>>(v, wrap_array_of_host_scsi_disk) }),
        ("ArrayOfUplinkPortMtuNotSupportEvent", TypeInfo::Value { name: "ArrayOfUplinkPortMtuNotSupportEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_uplink_port_mtu_not_support_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_uplink_port_mtu_not_support_event) }),
        ("ArrayOfVMwareDVSVspanConfigSpec", TypeInfo::Value { name: "ArrayOfVMwareDVSVspanConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsVspanConfigSpec>>(wrap_array_of_v_mware_dvs_vspan_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsVspanConfigSpec>>(v, wrap_array_of_v_mware_dvs_vspan_config_spec) }),
        ("ArrayOfHostPtpConfigPtpPort", TypeInfo::Value { name: "ArrayOfHostPtpConfigPtpPort", make_deserializer: || make_deser_with::<Vec<super::structs::HostPtpConfigPtpPort>>(wrap_array_of_host_ptp_config_ptp_port), from_value: |v| from_val_with::<Vec<super::structs::HostPtpConfigPtpPort>>(v, wrap_array_of_host_ptp_config_ptp_port) }),
        ("ScheduledTaskInfo", TypeInfo::Object { name: "ScheduledTaskInfo", builder_fn: || Box::new(ScheduledTaskInfoFields::new()) }),
        ("VsanHostIpConfigEx", TypeInfo::Object { name: "VsanHostIpConfigEx", builder_fn: || Box::new(VsanHostIpConfigExFields::new()) }),
        ("OvfXmlFormat", TypeInfo::Object { name: "OvfXmlFormat", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfXmlFormat))) }),
        ("HostProxySwitchSpec", TypeInfo::Object { name: "HostProxySwitchSpec", builder_fn: || Box::new(HostProxySwitchSpecFields::new()) }),
        ("ArrayOfHostConnectFault", TypeInfo::Value { name: "ArrayOfHostConnectFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_connect_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_connect_fault) }),
        ("HostDiskConfigurationResult", TypeInfo::Object { name: "HostDiskConfigurationResult", builder_fn: || Box::new(HostDiskConfigurationResultFields::new()) }),
        ("ArrayOfHostResignatureRescanResult", TypeInfo::Value { name: "ArrayOfHostResignatureRescanResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostResignatureRescanResult>>(wrap_array_of_host_resignature_rescan_result), from_value: |v| from_val_with::<Vec<super::structs::HostResignatureRescanResult>>(v, wrap_array_of_host_resignature_rescan_result) }),
        ("ArrayOfInsufficientAgentVmsDeployed", TypeInfo::Value { name: "ArrayOfInsufficientAgentVmsDeployed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_agent_vms_deployed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_agent_vms_deployed) }),
        ("ArrayOfStorageDrsSpaceLoadBalanceConfig", TypeInfo::Value { name: "ArrayOfStorageDrsSpaceLoadBalanceConfig", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsSpaceLoadBalanceConfig>>(wrap_array_of_storage_drs_space_load_balance_config), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsSpaceLoadBalanceConfig>>(v, wrap_array_of_storage_drs_space_load_balance_config) }),
        ("VibVibInfo", TypeInfo::Object { name: "VibVibInfo", builder_fn: || Box::new(VibVibInfoFields::new()) }),
        ("VsanMountPrecheckNetworkLatency", TypeInfo::Object { name: "VsanMountPrecheckNetworkLatency", builder_fn: || Box::new(VsanMountPrecheckNetworkLatencyFields::new()) }),
        ("VsanWitnessHostConfig", TypeInfo::Object { name: "VsanWitnessHostConfig", builder_fn: || Box::new(VsanWitnessHostConfigFields::new()) }),
        ("ArrayOfUsbScanCodeSpecKeyEvent", TypeInfo::Value { name: "ArrayOfUsbScanCodeSpecKeyEvent", make_deserializer: || make_deser_with::<Vec<super::structs::UsbScanCodeSpecKeyEvent>>(wrap_array_of_usb_scan_code_spec_key_event), from_value: |v| from_val_with::<Vec<super::structs::UsbScanCodeSpecKeyEvent>>(v, wrap_array_of_usb_scan_code_spec_key_event) }),
        ("DrsVmotionIncompatibleFault", TypeInfo::Object { name: "DrsVmotionIncompatibleFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DrsVmotionIncompatibleFault))) }),
        ("ArrayOfHostDiskDimensionsChs", TypeInfo::Value { name: "ArrayOfHostDiskDimensionsChs", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskDimensionsChs>>(wrap_array_of_host_disk_dimensions_chs), from_value: |v| from_val_with::<Vec<super::structs::HostDiskDimensionsChs>>(v, wrap_array_of_host_disk_dimensions_chs) }),
        ("HostIpRouteEntry", TypeInfo::Object { name: "HostIpRouteEntry", builder_fn: || Box::new(HostIpRouteEntryFields::new()) }),
        ("ArrayOfHotSnapshotMoveNotSupported", TypeInfo::Value { name: "ArrayOfHotSnapshotMoveNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_hot_snapshot_move_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_hot_snapshot_move_not_supported) }),
        ("ArrayOfReplicationNotSupportedOnHost", TypeInfo::Value { name: "ArrayOfReplicationNotSupportedOnHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_replication_not_supported_on_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_replication_not_supported_on_host) }),
        ("ArrayOfVASAStorageArrayDiscoveryFcTransport", TypeInfo::Value { name: "ArrayOfVASAStorageArrayDiscoveryFcTransport", make_deserializer: || make_deser_with::<Vec<super::structs::VasaStorageArrayDiscoveryFcTransport>>(wrap_array_of_vasa_storage_array_discovery_fc_transport), from_value: |v| from_val_with::<Vec<super::structs::VasaStorageArrayDiscoveryFcTransport>>(v, wrap_array_of_vasa_storage_array_discovery_fc_transport) }),
        ("ArrayOfVsanHealthCustomizationSpec", TypeInfo::Value { name: "ArrayOfVsanHealthCustomizationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthCustomizationSpec>>(wrap_array_of_vsan_health_customization_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthCustomizationSpec>>(v, wrap_array_of_vsan_health_customization_spec) }),
        ("FaultTolerancePrimaryPowerOnNotAttempted", TypeInfo::Object { name: "FaultTolerancePrimaryPowerOnNotAttempted", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FaultTolerancePrimaryPowerOnNotAttempted))) }),
        ("ArrayOfClusterHostGroup", TypeInfo::Value { name: "ArrayOfClusterHostGroup", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterHostGroup>>(wrap_array_of_cluster_host_group), from_value: |v| from_val_with::<Vec<super::structs::ClusterHostGroup>>(v, wrap_array_of_cluster_host_group) }),
        ("ArrayOfHostUnresolvedVmfsExtent", TypeInfo::Value { name: "ArrayOfHostUnresolvedVmfsExtent", make_deserializer: || make_deser_with::<Vec<super::structs::HostUnresolvedVmfsExtent>>(wrap_array_of_host_unresolved_vmfs_extent), from_value: |v| from_val_with::<Vec<super::structs::HostUnresolvedVmfsExtent>>(v, wrap_array_of_host_unresolved_vmfs_extent) }),
        ("ArrayOfDVSRollbackCapability", TypeInfo::Value { name: "ArrayOfDVSRollbackCapability", make_deserializer: || make_deser_with::<Vec<super::structs::DvsRollbackCapability>>(wrap_array_of_dvs_rollback_capability), from_value: |v| from_val_with::<Vec<super::structs::DvsRollbackCapability>>(v, wrap_array_of_dvs_rollback_capability) }),
        ("MtuMismatchEvent", TypeInfo::Object { name: "MtuMismatchEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::MtuMismatchEvent))) }),
        ("ClusterDrsRecommendation", TypeInfo::Object { name: "ClusterDrsRecommendation", builder_fn: || Box::new(ClusterDrsRecommendationFields::new()) }),
        ("StorageContainerResult", TypeInfo::Object { name: "StorageContainerResult", builder_fn: || Box::new(StorageContainerResultFields::new()) }),
        ("ArrayOfVMotionNotSupported", TypeInfo::Value { name: "ArrayOfVMotionNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_motion_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_motion_not_supported) }),
        ("VirtualE1000eOption", TypeInfo::Object { name: "VirtualE1000eOption", builder_fn: || Box::new(VirtualE1000EOptionFields::new()) }),
        ("ArrayOfVmVnicPoolReservationViolationRaiseEvent", TypeInfo::Value { name: "ArrayOfVmVnicPoolReservationViolationRaiseEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_vnic_pool_reservation_violation_raise_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_vnic_pool_reservation_violation_raise_event) }),
        ("MaintenanceModeFileMove", TypeInfo::Object { name: "MaintenanceModeFileMove", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MaintenanceModeFileMove))) }),
        ("ArrayOfPbmServiceInstanceContent", TypeInfo::Value { name: "ArrayOfPbmServiceInstanceContent", make_deserializer: || make_deser_with::<Vec<super::structs::PbmServiceInstanceContent>>(wrap_array_of_pbm_service_instance_content), from_value: |v| from_val_with::<Vec<super::structs::PbmServiceInstanceContent>>(v, wrap_array_of_pbm_service_instance_content) }),
        ("VirtualUSB", TypeInfo::Object { name: "VirtualUSB", builder_fn: || Box::new(VirtualUsbFields::new()) }),
        ("CannotMoveVmWithNativeDeltaDisk", TypeInfo::Object { name: "CannotMoveVmWithNativeDeltaDisk", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotMoveVmWithNativeDeltaDisk))) }),
        ("ArrayOfVsanMountPrecheckNetworkConnectivity", TypeInfo::Value { name: "ArrayOfVsanMountPrecheckNetworkConnectivity", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMountPrecheckNetworkConnectivity>>(wrap_array_of_vsan_mount_precheck_network_connectivity), from_value: |v| from_val_with::<Vec<super::structs::VsanMountPrecheckNetworkConnectivity>>(v, wrap_array_of_vsan_mount_precheck_network_connectivity) }),
        ("ArrayOfHostTpmEventDetails", TypeInfo::Value { name: "ArrayOfHostTpmEventDetails", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_tpm_event_details_array)), from_value: |v| cast_to_host_tpm_event_details_array(from_value(v)?) }),
        ("ArrayOfHostFileSystemMountInfo", TypeInfo::Value { name: "ArrayOfHostFileSystemMountInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostFileSystemMountInfo>>(wrap_array_of_host_file_system_mount_info), from_value: |v| from_val_with::<Vec<super::structs::HostFileSystemMountInfo>>(v, wrap_array_of_host_file_system_mount_info) }),
        ("CertificateRevocationFailed", TypeInfo::Object { name: "CertificateRevocationFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CertificateRevocationFailed))) }),
        ("InsufficientGraphicsResourcesFault", TypeInfo::Object { name: "InsufficientGraphicsResourcesFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientGraphicsResourcesFault))) }),
        ("CryptoManagerHostKeyStatus", TypeInfo::Object { name: "CryptoManagerHostKeyStatus", builder_fn: || Box::new(CryptoManagerHostKeyStatusFields::new()) }),
        ("ArrayOfHostProfileHostBasedConfigSpec", TypeInfo::Value { name: "ArrayOfHostProfileHostBasedConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileHostBasedConfigSpec>>(wrap_array_of_host_profile_host_based_config_spec), from_value: |v| from_val_with::<Vec<super::structs::HostProfileHostBasedConfigSpec>>(v, wrap_array_of_host_profile_host_based_config_spec) }),
        ("HostFirewallInfo", TypeInfo::Object { name: "HostFirewallInfo", builder_fn: || Box::new(HostFirewallInfoFields::new()) }),
        ("ArrayOfDatacenterCreatedEvent", TypeInfo::Value { name: "ArrayOfDatacenterCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datacenter_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datacenter_created_event) }),
        ("ArrayOfOvfUnsupportedSection", TypeInfo::Value { name: "ArrayOfOvfUnsupportedSection", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_section), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_section) }),
        ("ArrayOfVirtualSCSIPassthroughOption", TypeInfo::Value { name: "ArrayOfVirtualSCSIPassthroughOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualScsiPassthroughOption>>(wrap_array_of_virtual_scsi_passthrough_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualScsiPassthroughOption>>(v, wrap_array_of_virtual_scsi_passthrough_option) }),
        ("MismatchedBundle", TypeInfo::Object { name: "MismatchedBundle", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MismatchedBundle))) }),
        ("VmDiskFileEncryptionInfo", TypeInfo::Object { name: "VmDiskFileEncryptionInfo", builder_fn: || Box::new(VmDiskFileEncryptionInfoFields::new()) }),
        ("ServiceLocator", TypeInfo::Object { name: "ServiceLocator", builder_fn: || Box::new(ServiceLocatorFields::new()) }),
        ("ArrayOfVirtualMachineMetadataManagerVmMetadataOp", TypeInfo::Value { name: "ArrayOfVirtualMachineMetadataManagerVmMetadataOp", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualMachineMetadataManagerVmMetadataOpEnum>>(wrap_array_of_virtual_machine_metadata_manager_vm_metadata_op), from_value: |v| from_val_with::<Vec<super::enums::VirtualMachineMetadataManagerVmMetadataOpEnum>>(v, wrap_array_of_virtual_machine_metadata_manager_vm_metadata_op) }),
        ("ArrayOfHostSystemSwapConfigurationDisabledOption", TypeInfo::Value { name: "ArrayOfHostSystemSwapConfigurationDisabledOption", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemSwapConfigurationDisabledOption>>(wrap_array_of_host_system_swap_configuration_disabled_option), from_value: |v| from_val_with::<Vec<super::structs::HostSystemSwapConfigurationDisabledOption>>(v, wrap_array_of_host_system_swap_configuration_disabled_option) }),
        ("NvdimmSystemInfo", TypeInfo::Object { name: "NvdimmSystemInfo", builder_fn: || Box::new(NvdimmSystemInfoFields::new()) }),
        ("ArrayOfDVSFilterSpecTrunkVlanSpec", TypeInfo::Value { name: "ArrayOfDVSFilterSpecTrunkVlanSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsFilterSpecTrunkVlanSpec>>(wrap_array_of_dvs_filter_spec_trunk_vlan_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsFilterSpecTrunkVlanSpec>>(v, wrap_array_of_dvs_filter_spec_trunk_vlan_spec) }),
        ("ArrayOfVmGuestStandbyEvent", TypeInfo::Value { name: "ArrayOfVmGuestStandbyEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_guest_standby_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_guest_standby_event) }),
        ("ArrayOfIoFilterInfo", TypeInfo::Value { name: "ArrayOfIoFilterInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_io_filter_info_array)), from_value: |v| cast_to_io_filter_info_array(from_value(v)?) }),
        ("VirtualPCIPassthroughDeviceBackingOption", TypeInfo::Object { name: "VirtualPCIPassthroughDeviceBackingOption", builder_fn: || Box::new(VirtualPciPassthroughDeviceBackingOptionFields::new()) }),
        ("ArrayOfVsanHostVirtualApplianceInfo", TypeInfo::Value { name: "ArrayOfVsanHostVirtualApplianceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostVirtualApplianceInfo>>(wrap_array_of_vsan_host_virtual_appliance_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostVirtualApplianceInfo>>(v, wrap_array_of_vsan_host_virtual_appliance_info) }),
        ("ArrayOfVirtualVmxnet3StrictLatencyConfig", TypeInfo::Value { name: "ArrayOfVirtualVmxnet3StrictLatencyConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualVmxnet3StrictLatencyConfig>>(wrap_array_of_virtual_vmxnet_3_strict_latency_config), from_value: |v| from_val_with::<Vec<super::structs::VirtualVmxnet3StrictLatencyConfig>>(v, wrap_array_of_virtual_vmxnet_3_strict_latency_config) }),
        ("ArrayOfDVSFilterSpecPvlanSpec", TypeInfo::Value { name: "ArrayOfDVSFilterSpecPvlanSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsFilterSpecPvlanSpec>>(wrap_array_of_dvs_filter_spec_pvlan_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsFilterSpecPvlanSpec>>(v, wrap_array_of_dvs_filter_spec_pvlan_spec) }),
        ("HostSystemResourceInfo", TypeInfo::Object { name: "HostSystemResourceInfo", builder_fn: || Box::new(HostSystemResourceInfoFields::new()) }),
        ("PbmCapabilityMetadataPerCategory", TypeInfo::Object { name: "PbmCapabilityMetadataPerCategory", builder_fn: || Box::new(PbmCapabilityMetadataPerCategoryFields::new()) }),
        ("ArrayOfCertificateAuthorityFault", TypeInfo::Value { name: "ArrayOfCertificateAuthorityFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_certificate_authority_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_certificate_authority_fault) }),
        ("ArrayOfVsanDiskFormatConversionSpec", TypeInfo::Value { name: "ArrayOfVsanDiskFormatConversionSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDiskFormatConversionSpec>>(wrap_array_of_vsan_disk_format_conversion_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanDiskFormatConversionSpec>>(v, wrap_array_of_vsan_disk_format_conversion_spec) }),
        ("ArrayOfClusterProfileConfigSpec", TypeInfo::Value { name: "ArrayOfClusterProfileConfigSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_profile_config_spec_array)), from_value: |v| cast_to_cluster_profile_config_spec_array(from_value(v)?) }),
        ("HostInternetScsiHbaDigestProperties", TypeInfo::Object { name: "HostInternetScsiHbaDigestProperties", builder_fn: || Box::new(HostInternetScsiHbaDigestPropertiesFields::new()) }),
        ("ArrayOfHostPcieHba", TypeInfo::Value { name: "ArrayOfHostPcieHba", make_deserializer: || make_deser_with::<Vec<super::structs::HostPcieHba>>(wrap_array_of_host_pcie_hba), from_value: |v| from_val_with::<Vec<super::structs::HostPcieHba>>(v, wrap_array_of_host_pcie_hba) }),
        ("InsufficientNetworkCapacity", TypeInfo::Object { name: "InsufficientNetworkCapacity", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientNetworkCapacity))) }),
        ("HostDiskPartitionBlockRange", TypeInfo::Object { name: "HostDiskPartitionBlockRange", builder_fn: || Box::new(HostDiskPartitionBlockRangeFields::new()) }),
        ("SupportedVendorModelMapping", TypeInfo::Object { name: "SupportedVendorModelMapping", builder_fn: || Box::new(SupportedVendorModelMappingFields::new()) }),
        ("AnswerFileStatusError", TypeInfo::Object { name: "AnswerFileStatusError", builder_fn: || Box::new(AnswerFileStatusErrorFields::new()) }),
        ("ArrayOfInsufficientStandbyCpuResource", TypeInfo::Value { name: "ArrayOfInsufficientStandbyCpuResource", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_standby_cpu_resource), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_standby_cpu_resource) }),
        ("ArrayOfVirtualMachineDefinedProfileSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineDefinedProfileSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineDefinedProfileSpec>>(wrap_array_of_virtual_machine_defined_profile_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineDefinedProfileSpec>>(v, wrap_array_of_virtual_machine_defined_profile_spec) }),
        ("ArrayOfOvfFile", TypeInfo::Value { name: "ArrayOfOvfFile", make_deserializer: || make_deser_with::<Vec<super::structs::OvfFile>>(wrap_array_of_ovf_file), from_value: |v| from_val_with::<Vec<super::structs::OvfFile>>(v, wrap_array_of_ovf_file) }),
        ("DvsHostLeftEvent", TypeInfo::Object { name: "DvsHostLeftEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsHostLeftEvent))) }),
        ("ArrayOfVslmServiceInstanceContent", TypeInfo::Value { name: "ArrayOfVslmServiceInstanceContent", make_deserializer: || make_deser_with::<Vec<super::structs::VslmServiceInstanceContent>>(wrap_array_of_vslm_service_instance_content), from_value: |v| from_val_with::<Vec<super::structs::VslmServiceInstanceContent>>(v, wrap_array_of_vslm_service_instance_content) }),
        ("ArrayOfProviderBusy", TypeInfo::Value { name: "ArrayOfProviderBusy", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_provider_busy), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_provider_busy) }),
        ("VirtualMachineBootOptions", TypeInfo::Object { name: "VirtualMachineBootOptions", builder_fn: || Box::new(VirtualMachineBootOptionsFields::new()) }),
        ("ArrayOfHealthUpdateInfo", TypeInfo::Value { name: "ArrayOfHealthUpdateInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HealthUpdateInfo>>(wrap_array_of_health_update_info), from_value: |v| from_val_with::<Vec<super::structs::HealthUpdateInfo>>(v, wrap_array_of_health_update_info) }),
        ("VmwareDistributedVirtualSwitchNetworkOffloadConfig", TypeInfo::Object { name: "VmwareDistributedVirtualSwitchNetworkOffloadConfig", builder_fn: || Box::new(VmwareDistributedVirtualSwitchNetworkOffloadConfigFields::new()) }),
        ("HostSpecificationChangedEvent", TypeInfo::Object { name: "HostSpecificationChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostSpecificationChangedEvent))) }),
        ("ArrayOfOvfSystemFault", TypeInfo::Value { name: "ArrayOfOvfSystemFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_system_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_system_fault) }),
        ("HostInternetScsiHba", TypeInfo::Object { name: "HostInternetScsiHba", builder_fn: || Box::new(HostInternetScsiHbaFields::new()) }),
        ("RemoteDeviceNotSupported", TypeInfo::Object { name: "RemoteDeviceNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RemoteDeviceNotSupported))) }),
        ("VirtualMachineDynamicPassthroughInfo", TypeInfo::Object { name: "VirtualMachineDynamicPassthroughInfo", builder_fn: || Box::new(VirtualMachineDynamicPassthroughInfoFields::new()) }),
        ("ArrayOfVsanPerfTimeRange", TypeInfo::Value { name: "ArrayOfVsanPerfTimeRange", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfTimeRange>>(wrap_array_of_vsan_perf_time_range), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfTimeRange>>(v, wrap_array_of_vsan_perf_time_range) }),
        ("ArrayOfCryptoKeyResult", TypeInfo::Value { name: "ArrayOfCryptoKeyResult", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoKeyResult>>(wrap_array_of_crypto_key_result), from_value: |v| from_val_with::<Vec<super::structs::CryptoKeyResult>>(v, wrap_array_of_crypto_key_result) }),
        ("VsanClusterMembershipInfo", TypeInfo::Object { name: "VsanClusterMembershipInfo", builder_fn: || Box::new(VsanClusterMembershipInfoFields::new()) }),
        ("ArrayOfIpAddressProfile", TypeInfo::Value { name: "ArrayOfIpAddressProfile", make_deserializer: || make_deser_with::<Vec<super::structs::IpAddressProfile>>(wrap_array_of_ip_address_profile), from_value: |v| from_val_with::<Vec<super::structs::IpAddressProfile>>(v, wrap_array_of_ip_address_profile) }),
        ("HostDiskPartitionSpec", TypeInfo::Object { name: "HostDiskPartitionSpec", builder_fn: || Box::new(HostDiskPartitionSpecFields::new()) }),
        ("ArrayOfInsufficientHostCpuCapacityFault", TypeInfo::Value { name: "ArrayOfInsufficientHostCpuCapacityFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_host_cpu_capacity_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_host_cpu_capacity_fault) }),
        ("ArrayOfDistributedVirtualSwitchManagerImportResult", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchManagerImportResult", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchManagerImportResult>>(wrap_array_of_distributed_virtual_switch_manager_import_result), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchManagerImportResult>>(v, wrap_array_of_distributed_virtual_switch_manager_import_result) }),
        ("ArrayOfVirtualHardwareOption", TypeInfo::Value { name: "ArrayOfVirtualHardwareOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualHardwareOption>>(wrap_array_of_virtual_hardware_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualHardwareOption>>(v, wrap_array_of_virtual_hardware_option) }),
        ("ArrayOfHostSpbmDatastoreInfo", TypeInfo::Value { name: "ArrayOfHostSpbmDatastoreInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSpbmDatastoreInfo>>(wrap_array_of_host_spbm_datastore_info), from_value: |v| from_val_with::<Vec<super::structs::HostSpbmDatastoreInfo>>(v, wrap_array_of_host_spbm_datastore_info) }),
        ("ArrayOfVMwareDVSVspanCapability", TypeInfo::Value { name: "ArrayOfVMwareDVSVspanCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsVspanCapability>>(wrap_array_of_v_mware_dvs_vspan_capability), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsVspanCapability>>(v, wrap_array_of_v_mware_dvs_vspan_capability) }),
        ("ProfilePolicyMetadata", TypeInfo::Object { name: "ProfilePolicyMetadata", builder_fn: || Box::new(ProfilePolicyMetadataFields::new()) }),
        ("VsanHostRuntimeStats", TypeInfo::Object { name: "VsanHostRuntimeStats", builder_fn: || Box::new(VsanHostRuntimeStatsFields::new()) }),
        ("ArrayOfStorageDrsCannotMoveIndependentDisk", TypeInfo::Value { name: "ArrayOfStorageDrsCannotMoveIndependentDisk", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_cannot_move_independent_disk), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_cannot_move_independent_disk) }),
        ("ArrayOfProfileSimpleExpression", TypeInfo::Value { name: "ArrayOfProfileSimpleExpression", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileSimpleExpression>>(wrap_array_of_profile_simple_expression), from_value: |v| from_val_with::<Vec<super::structs::ProfileSimpleExpression>>(v, wrap_array_of_profile_simple_expression) }),
        ("ArrayOfVsanIODiagnosticsTarget", TypeInfo::Value { name: "ArrayOfVsanIODiagnosticsTarget", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoDiagnosticsTarget>>(wrap_array_of_vsan_io_diagnostics_target), from_value: |v| from_val_with::<Vec<super::structs::VsanIoDiagnosticsTarget>>(v, wrap_array_of_vsan_io_diagnostics_target) }),
        ("AgentConfigInfo", TypeInfo::Object { name: "AgentConfigInfo", builder_fn: || Box::new(AgentConfigInfoFields::new()) }),
        ("HostNetworkConfigNetStackSpec", TypeInfo::Object { name: "HostNetworkConfigNetStackSpec", builder_fn: || Box::new(HostNetworkConfigNetStackSpecFields::new()) }),
        ("ArrayOfRoleEventArgument", TypeInfo::Value { name: "ArrayOfRoleEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::RoleEventArgument>>(wrap_array_of_role_event_argument), from_value: |v| from_val_with::<Vec<super::structs::RoleEventArgument>>(v, wrap_array_of_role_event_argument) }),
        ("ArrayOfHostPortGroupSpec", TypeInfo::Value { name: "ArrayOfHostPortGroupSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostPortGroupSpec>>(wrap_array_of_host_port_group_spec), from_value: |v| from_val_with::<Vec<super::structs::HostPortGroupSpec>>(v, wrap_array_of_host_port_group_spec) }),
        ("ArrayOfMultipleCertificatesVerifyFault", TypeInfo::Value { name: "ArrayOfMultipleCertificatesVerifyFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_multiple_certificates_verify_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_multiple_certificates_verify_fault) }),
        ("DvsMacNetworkRuleQualifier", TypeInfo::Object { name: "DvsMacNetworkRuleQualifier", builder_fn: || Box::new(DvsMacNetworkRuleQualifierFields::new()) }),
        ("ArrayOfVVolVmConfigFileUpdateResultFailedVmConfigFileInfo", TypeInfo::Value { name: "ArrayOfVVolVmConfigFileUpdateResultFailedVmConfigFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VVolVmConfigFileUpdateResultFailedVmConfigFileInfo>>(wrap_array_of_v_vol_vm_config_file_update_result_failed_vm_config_file_info), from_value: |v| from_val_with::<Vec<super::structs::VVolVmConfigFileUpdateResultFailedVmConfigFileInfo>>(v, wrap_array_of_v_vol_vm_config_file_update_result_failed_vm_config_file_info) }),
        ("ArrayOfVsanEntitySpaceUsage", TypeInfo::Value { name: "ArrayOfVsanEntitySpaceUsage", make_deserializer: || make_deser_with::<Vec<super::structs::VsanEntitySpaceUsage>>(wrap_array_of_vsan_entity_space_usage), from_value: |v| from_val_with::<Vec<super::structs::VsanEntitySpaceUsage>>(v, wrap_array_of_vsan_entity_space_usage) }),
        ("ArrayOfHostInternetScsiHbaStaticTarget", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaStaticTarget", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaStaticTarget>>(wrap_array_of_host_internet_scsi_hba_static_target), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaStaticTarget>>(v, wrap_array_of_host_internet_scsi_hba_static_target) }),
        ("ArrayOfStorageDrsOptionSpec", TypeInfo::Value { name: "ArrayOfStorageDrsOptionSpec", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsOptionSpec>>(wrap_array_of_storage_drs_option_spec), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsOptionSpec>>(v, wrap_array_of_storage_drs_option_spec) }),
        ("VmConfigFault", TypeInfo::Object { name: "VmConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmConfigFault))) }),
        ("ArrayOfGuestRegValueMultiStringSpec", TypeInfo::Value { name: "ArrayOfGuestRegValueMultiStringSpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegValueMultiStringSpec>>(wrap_array_of_guest_reg_value_multi_string_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegValueMultiStringSpec>>(v, wrap_array_of_guest_reg_value_multi_string_spec) }),
        ("ArrayOfEVCConfigFault", TypeInfo::Value { name: "ArrayOfEVCConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_config_fault) }),
        ("EntityPrivilege", TypeInfo::Object { name: "EntityPrivilege", builder_fn: || Box::new(EntityPrivilegeFields::new()) }),
        ("ArrayOfProfileApplyProfileElement", TypeInfo::Value { name: "ArrayOfProfileApplyProfileElement", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileApplyProfileElement>>(wrap_array_of_profile_apply_profile_element), from_value: |v| from_val_with::<Vec<super::structs::ProfileApplyProfileElement>>(v, wrap_array_of_profile_apply_profile_element) }),
        ("HostRuntimeInfoNetworkRuntimeInfo", TypeInfo::Object { name: "HostRuntimeInfoNetworkRuntimeInfo", builder_fn: || Box::new(HostRuntimeInfoNetworkRuntimeInfoFields::new()) }),
        ("ArrayOfClusterConfigInfo", TypeInfo::Value { name: "ArrayOfClusterConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterConfigInfo>>(wrap_array_of_cluster_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterConfigInfo>>(v, wrap_array_of_cluster_config_info) }),
        ("ArrayOfDvsPortLeavePortgroupEvent", TypeInfo::Value { name: "ArrayOfDvsPortLeavePortgroupEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_leave_portgroup_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_leave_portgroup_event) }),
        ("HostLowLevelProvisioningManagerFileDeleteSpec", TypeInfo::Object { name: "HostLowLevelProvisioningManagerFileDeleteSpec", builder_fn: || Box::new(HostLowLevelProvisioningManagerFileDeleteSpecFields::new()) }),
        ("HostProfileManagerCompositionResultResultElement", TypeInfo::Object { name: "HostProfileManagerCompositionResultResultElement", builder_fn: || Box::new(HostProfileManagerCompositionResultResultElementFields::new()) }),
        ("ArrayOfVAppCloneSpecResourceMap", TypeInfo::Value { name: "ArrayOfVAppCloneSpecResourceMap", make_deserializer: || make_deser_with::<Vec<super::structs::VAppCloneSpecResourceMap>>(wrap_array_of_v_app_clone_spec_resource_map), from_value: |v| from_val_with::<Vec<super::structs::VAppCloneSpecResourceMap>>(v, wrap_array_of_v_app_clone_spec_resource_map) }),
        ("DataObject", TypeInfo::Object { name: "DataObject", builder_fn: || Box::new(DataObjectFields::new()) }),
        ("VirtualMachineRelocateSpecDiskLocator", TypeInfo::Object { name: "VirtualMachineRelocateSpecDiskLocator", builder_fn: || Box::new(VirtualMachineRelocateSpecDiskLocatorFields::new()) }),
        ("ArrayOfVirtualPCIPassthroughDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughDeviceBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthroughDeviceBackingInfo>>(wrap_array_of_virtual_pci_passthrough_device_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthroughDeviceBackingInfo>>(v, wrap_array_of_virtual_pci_passthrough_device_backing_info) }),
        ("VmMacAssignedEvent", TypeInfo::Object { name: "VmMacAssignedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmMacAssignedEvent))) }),
        ("UserUpgradeEvent", TypeInfo::Object { name: "UserUpgradeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UserUpgradeEvent))) }),
        ("ArrayOfDatastorePair", TypeInfo::Value { name: "ArrayOfDatastorePair", make_deserializer: || make_deser_with::<Vec<super::structs::DatastorePair>>(wrap_array_of_datastore_pair), from_value: |v| from_val_with::<Vec<super::structs::DatastorePair>>(v, wrap_array_of_datastore_pair) }),
        ("PerfCounterInfo", TypeInfo::Object { name: "PerfCounterInfo", builder_fn: || Box::new(PerfCounterInfoFields::new()) }),
        ("ArrayOfInvalidAffinitySettingFault", TypeInfo::Value { name: "ArrayOfInvalidAffinitySettingFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_affinity_setting_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_affinity_setting_fault) }),
        ("VslmCreateSpecBackingSpec", TypeInfo::Object { name: "VslmCreateSpecBackingSpec", builder_fn: || Box::new(VslmCreateSpecBackingSpecFields::new()) }),
        ("NetIpRouteConfigSpec", TypeInfo::Object { name: "NetIpRouteConfigSpec", builder_fn: || Box::new(NetIpRouteConfigSpecFields::new()) }),
        ("ComplianceProfile", TypeInfo::Object { name: "ComplianceProfile", builder_fn: || Box::new(ComplianceProfileFields::new()) }),
        ("LicenseExpiredEvent", TypeInfo::Object { name: "LicenseExpiredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::LicenseExpiredEvent))) }),
        ("ArrayOfLockerReconfiguredEvent", TypeInfo::Value { name: "ArrayOfLockerReconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_locker_reconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_locker_reconfigured_event) }),
        ("StorageIORMInfo", TypeInfo::Object { name: "StorageIORMInfo", builder_fn: || Box::new(StorageIormInfoFields::new()) }),
        ("InvalidAgencyScope", TypeInfo::Object { name: "InvalidAgencyScope", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidAgencyScope))) }),
        ("GuestAuthSubject", TypeInfo::Object { name: "GuestAuthSubject", builder_fn: || Box::new(GuestAuthSubjectFields::new()) }),
        ("ArrayOfHostPcieTargetTransport", TypeInfo::Value { name: "ArrayOfHostPcieTargetTransport", make_deserializer: || make_deser_with::<Vec<super::structs::HostPcieTargetTransport>>(wrap_array_of_host_pcie_target_transport), from_value: |v| from_val_with::<Vec<super::structs::HostPcieTargetTransport>>(v, wrap_array_of_host_pcie_target_transport) }),
        ("FileTransferInformation", TypeInfo::Object { name: "FileTransferInformation", builder_fn: || Box::new(FileTransferInformationFields::new()) }),
        ("UnknownAgentVm", TypeInfo::Object { name: "UnknownAgentVm", builder_fn: || Box::new(UnknownAgentVmFields::new()) }),
        ("MissingPowerOffConfiguration", TypeInfo::Object { name: "MissingPowerOffConfiguration", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MissingPowerOffConfiguration))) }),
        ("ArrayOfVsanClusterDitEncryptionHealthSummary", TypeInfo::Value { name: "ArrayOfVsanClusterDitEncryptionHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterDitEncryptionHealthSummary>>(wrap_array_of_vsan_cluster_dit_encryption_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterDitEncryptionHealthSummary>>(v, wrap_array_of_vsan_cluster_dit_encryption_health_summary) }),
        ("ClusterStatusChangedEvent", TypeInfo::Object { name: "ClusterStatusChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ClusterStatusChangedEvent))) }),
        ("VirtualVmxnet3StrictLatencyConfig", TypeInfo::Object { name: "VirtualVmxnet3StrictLatencyConfig", builder_fn: || Box::new(VirtualVmxnet3StrictLatencyConfigFields::new()) }),
        ("ClusterNetworkConfigSpec", TypeInfo::Object { name: "ClusterNetworkConfigSpec", builder_fn: || Box::new(ClusterNetworkConfigSpecFields::new()) }),
        ("ArrayOfPbmPersistenceBasedDataServiceInfo", TypeInfo::Value { name: "ArrayOfPbmPersistenceBasedDataServiceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PbmPersistenceBasedDataServiceInfo>>(wrap_array_of_pbm_persistence_based_data_service_info), from_value: |v| from_val_with::<Vec<super::structs::PbmPersistenceBasedDataServiceInfo>>(v, wrap_array_of_pbm_persistence_based_data_service_info) }),
        ("PbmCapabilitySubProfile", TypeInfo::Object { name: "PbmCapabilitySubProfile", builder_fn: || Box::new(PbmCapabilitySubProfileFields::new()) }),
        ("DasHeartbeatDatastoreInfo", TypeInfo::Object { name: "DasHeartbeatDatastoreInfo", builder_fn: || Box::new(DasHeartbeatDatastoreInfoFields::new()) }),
        ("ArrayOfHostEvent", TypeInfo::Value { name: "ArrayOfHostEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_event) }),
        ("ArrayOfVsanIscsiTargetSpec", TypeInfo::Value { name: "ArrayOfVsanIscsiTargetSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiTargetSpec>>(wrap_array_of_vsan_iscsi_target_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiTargetSpec>>(v, wrap_array_of_vsan_iscsi_target_spec) }),
        ("VirtualPCIPassthroughPluginBackingOption", TypeInfo::Object { name: "VirtualPCIPassthroughPluginBackingOption", builder_fn: || Box::new(VirtualPciPassthroughPluginBackingOptionFields::new()) }),
        ("ArrayOfHostPciPassthruConfig", TypeInfo::Value { name: "ArrayOfHostPciPassthruConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_pci_passthru_config_array)), from_value: |v| cast_to_host_pci_passthru_config_array(from_value(v)?) }),
        ("ArrayOfClusterComputeResourceVCProfile", TypeInfo::Value { name: "ArrayOfClusterComputeResourceVCProfile", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceVcProfile>>(wrap_array_of_cluster_compute_resource_vc_profile), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceVcProfile>>(v, wrap_array_of_cluster_compute_resource_vc_profile) }),
        ("ArrayOfGuestRegValueBinarySpec", TypeInfo::Value { name: "ArrayOfGuestRegValueBinarySpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegValueBinarySpec>>(wrap_array_of_guest_reg_value_binary_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegValueBinarySpec>>(v, wrap_array_of_guest_reg_value_binary_spec) }),
        ("PbmFetchEntityHealthStatusSpec", TypeInfo::Object { name: "PbmFetchEntityHealthStatusSpec", builder_fn: || Box::new(PbmFetchEntityHealthStatusSpecFields::new()) }),
        ("ArrayOfHostCacheConfigurationSpec", TypeInfo::Value { name: "ArrayOfHostCacheConfigurationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostCacheConfigurationSpec>>(wrap_array_of_host_cache_configuration_spec), from_value: |v| from_val_with::<Vec<super::structs::HostCacheConfigurationSpec>>(v, wrap_array_of_host_cache_configuration_spec) }),
        ("HostStorageSystemScsiLunResult", TypeInfo::Object { name: "HostStorageSystemScsiLunResult", builder_fn: || Box::new(HostStorageSystemScsiLunResultFields::new()) }),
        ("ArrayOfPhysicalNicProfile", TypeInfo::Value { name: "ArrayOfPhysicalNicProfile", make_deserializer: || make_deser_with::<Vec<super::structs::PhysicalNicProfile>>(wrap_array_of_physical_nic_profile), from_value: |v| from_val_with::<Vec<super::structs::PhysicalNicProfile>>(v, wrap_array_of_physical_nic_profile) }),
        ("InvalidNasCredentials", TypeInfo::Object { name: "InvalidNasCredentials", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidNasCredentials))) }),
        ("HostFibreChannelOverEthernetTargetTransport", TypeInfo::Object { name: "HostFibreChannelOverEthernetTargetTransport", builder_fn: || Box::new(HostFibreChannelOverEthernetTargetTransportFields::new()) }),
        ("ArrayOfSendEmailAction", TypeInfo::Value { name: "ArrayOfSendEmailAction", make_deserializer: || make_deser_with::<Vec<super::structs::SendEmailAction>>(wrap_array_of_send_email_action), from_value: |v| from_val_with::<Vec<super::structs::SendEmailAction>>(v, wrap_array_of_send_email_action) }),
        ("ReadHostResourcePoolTreeFailed", TypeInfo::Object { name: "ReadHostResourcePoolTreeFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReadHostResourcePoolTreeFailed))) }),
        ("DrsRuleComplianceEvent", TypeInfo::Object { name: "DrsRuleComplianceEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsRuleComplianceEvent))) }),
        ("ArrayOfPassiveNodeDeploymentSpec", TypeInfo::Value { name: "ArrayOfPassiveNodeDeploymentSpec", make_deserializer: || make_deser_with::<Vec<super::structs::PassiveNodeDeploymentSpec>>(wrap_array_of_passive_node_deployment_spec), from_value: |v| from_val_with::<Vec<super::structs::PassiveNodeDeploymentSpec>>(v, wrap_array_of_passive_node_deployment_spec) }),
        ("ArrayOfVsanPerfMetricId", TypeInfo::Value { name: "ArrayOfVsanPerfMetricId", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfMetricId>>(wrap_array_of_vsan_perf_metric_id), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfMetricId>>(v, wrap_array_of_vsan_perf_metric_id) }),
        ("ArrayOfVirtualMachineContentLibraryItemInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineContentLibraryItemInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineContentLibraryItemInfo>>(wrap_array_of_virtual_machine_content_library_item_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineContentLibraryItemInfo>>(v, wrap_array_of_virtual_machine_content_library_item_info) }),
        ("ArrayOfAgencyVMFolder", TypeInfo::Value { name: "ArrayOfAgencyVMFolder", make_deserializer: || make_deser_with::<Vec<super::structs::AgencyVmFolder>>(wrap_array_of_agency_vm_folder), from_value: |v| from_val_with::<Vec<super::structs::AgencyVmFolder>>(v, wrap_array_of_agency_vm_folder) }),
        ("VsanDataDrivenAPIAction", TypeInfo::Object { name: "VsanDataDrivenAPIAction", builder_fn: || Box::new(VsanDataDrivenApiActionFields::new()) }),
        ("ArrayOfVmFailedMigrateEvent", TypeInfo::Value { name: "ArrayOfVmFailedMigrateEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_migrate_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_migrate_event) }),
        ("ArrayOfVimVsanHostVsanManagedDisksInfo", TypeInfo::Value { name: "ArrayOfVimVsanHostVsanManagedDisksInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostVsanManagedDisksInfo>>(wrap_array_of_vim_vsan_host_vsan_managed_disks_info), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostVsanManagedDisksInfo>>(v, wrap_array_of_vim_vsan_host_vsan_managed_disks_info) }),
        ("VmPoweredOff", TypeInfo::Object { name: "VmPoweredOff", builder_fn: || Box::new(VmPoweredOffFields::new()) }),
        ("NotAuthenticated", TypeInfo::Object { name: "NotAuthenticated", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotAuthenticated))) }),
        ("ArrayOfVirtualPointingDevice", TypeInfo::Value { name: "ArrayOfVirtualPointingDevice", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPointingDevice>>(wrap_array_of_virtual_pointing_device), from_value: |v| from_val_with::<Vec<super::structs::VirtualPointingDevice>>(v, wrap_array_of_virtual_pointing_device) }),
        ("ArrayOfMountError", TypeInfo::Value { name: "ArrayOfMountError", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_mount_error), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_mount_error) }),
        ("ArrayOfVasaVirtualDiskId", TypeInfo::Value { name: "ArrayOfVasaVirtualDiskId", make_deserializer: || make_deser_with::<Vec<super::structs::VasaVirtualDiskId>>(wrap_array_of_vasa_virtual_disk_id), from_value: |v| from_val_with::<Vec<super::structs::VasaVirtualDiskId>>(v, wrap_array_of_vasa_virtual_disk_id) }),
        ("OpaqueNetworkSummary", TypeInfo::Object { name: "OpaqueNetworkSummary", builder_fn: || Box::new(OpaqueNetworkSummaryFields::new()) }),
        ("VsanVsanClusterPcapGroup", TypeInfo::Object { name: "VsanVsanClusterPcapGroup", builder_fn: || Box::new(VsanVsanClusterPcapGroupFields::new()) }),
        ("InsufficientStorageSpace", TypeInfo::Object { name: "InsufficientStorageSpace", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientStorageSpace))) }),
        ("ArrayOfHostSpbmHashInfo", TypeInfo::Value { name: "ArrayOfHostSpbmHashInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSpbmHashInfo>>(wrap_array_of_host_spbm_hash_info), from_value: |v| from_val_with::<Vec<super::structs::HostSpbmHashInfo>>(v, wrap_array_of_host_spbm_hash_info) }),
        ("ArrayOfTooManyNativeCloneLevels", TypeInfo::Value { name: "ArrayOfTooManyNativeCloneLevels", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_too_many_native_clone_levels), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_too_many_native_clone_levels) }),
        ("HostSystemSwapConfigurationSystemSwapOption", TypeInfo::Object { name: "HostSystemSwapConfigurationSystemSwapOption", builder_fn: || Box::new(HostSystemSwapConfigurationSystemSwapOptionFields::new()) }),
        ("VMwareDvsDpuCapability", TypeInfo::Object { name: "VMwareDvsDpuCapability", builder_fn: || Box::new(VMwareDvsDpuCapabilityFields::new()) }),
        ("ArrayOfDesiredSoftwareSpec", TypeInfo::Value { name: "ArrayOfDesiredSoftwareSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DesiredSoftwareSpec>>(wrap_array_of_desired_software_spec), from_value: |v| from_val_with::<Vec<super::structs::DesiredSoftwareSpec>>(v, wrap_array_of_desired_software_spec) }),
        ("ArrayOfGuestAliases", TypeInfo::Value { name: "ArrayOfGuestAliases", make_deserializer: || make_deser_with::<Vec<super::structs::GuestAliases>>(wrap_array_of_guest_aliases), from_value: |v| from_val_with::<Vec<super::structs::GuestAliases>>(v, wrap_array_of_guest_aliases) }),
        ("VsanSnapshotDetail", TypeInfo::Object { name: "VsanSnapshotDetail", builder_fn: || Box::new(VsanSnapshotDetailFields::new()) }),
        ("ArrayOfDistributedVirtualSwitchPortStatistics", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchPortStatistics", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchPortStatistics>>(wrap_array_of_distributed_virtual_switch_port_statistics), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchPortStatistics>>(v, wrap_array_of_distributed_virtual_switch_port_statistics) }),
        ("ArrayOfSingleIp", TypeInfo::Value { name: "ArrayOfSingleIp", make_deserializer: || make_deser_with::<Vec<super::structs::SingleIp>>(wrap_array_of_single_ip), from_value: |v| from_val_with::<Vec<super::structs::SingleIp>>(v, wrap_array_of_single_ip) }),
        ("ArrayOfAgencyConfigInfo", TypeInfo::Value { name: "ArrayOfAgencyConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::AgencyConfigInfo>>(wrap_array_of_agency_config_info), from_value: |v| from_val_with::<Vec<super::structs::AgencyConfigInfo>>(v, wrap_array_of_agency_config_info) }),
        ("ArrayOfNumVirtualCpusIncompatible", TypeInfo::Value { name: "ArrayOfNumVirtualCpusIncompatible", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_num_virtual_cpus_incompatible), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_num_virtual_cpus_incompatible) }),
        ("ArrayOfDVPortConfigSpec", TypeInfo::Value { name: "ArrayOfDVPortConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvPortConfigSpec>>(wrap_array_of_dv_port_config_spec), from_value: |v| from_val_with::<Vec<super::structs::DvPortConfigSpec>>(v, wrap_array_of_dv_port_config_spec) }),
        ("HostSecuritySpec", TypeInfo::Object { name: "HostSecuritySpec", builder_fn: || Box::new(HostSecuritySpecFields::new()) }),
        ("ClusterHostPowerAction", TypeInfo::Object { name: "ClusterHostPowerAction", builder_fn: || Box::new(ClusterHostPowerActionFields::new()) }),
        ("HostActiveDirectory", TypeInfo::Object { name: "HostActiveDirectory", builder_fn: || Box::new(HostActiveDirectoryFields::new()) }),
        ("ArrayOfUncustomizableGuest", TypeInfo::Value { name: "ArrayOfUncustomizableGuest", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_uncustomizable_guest), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_uncustomizable_guest) }),
        ("ClusterDasVmSettings", TypeInfo::Object { name: "ClusterDasVmSettings", builder_fn: || Box::new(ClusterDasVmSettingsFields::new()) }),
        ("ArrayOfVsanSpaceUsageDetailResult", TypeInfo::Value { name: "ArrayOfVsanSpaceUsageDetailResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSpaceUsageDetailResult>>(wrap_array_of_vsan_space_usage_detail_result), from_value: |v| from_val_with::<Vec<super::structs::VsanSpaceUsageDetailResult>>(v, wrap_array_of_vsan_space_usage_detail_result) }),
        ("HostDhcpServiceConfig", TypeInfo::Object { name: "HostDhcpServiceConfig", builder_fn: || Box::new(HostDhcpServiceConfigFields::new()) }),
        ("ArrayOfPbmCapabilityRange", TypeInfo::Value { name: "ArrayOfPbmCapabilityRange", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityRange>>(wrap_array_of_pbm_capability_range), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityRange>>(v, wrap_array_of_pbm_capability_range) }),
        ("EamObjectRuntimeInfo", TypeInfo::Object { name: "EamObjectRuntimeInfo", builder_fn: || Box::new(EamObjectRuntimeInfoFields::new()) }),
        ("ArrayOfTemplateConfigFileInfo", TypeInfo::Value { name: "ArrayOfTemplateConfigFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::TemplateConfigFileInfo>>(wrap_array_of_template_config_file_info), from_value: |v| from_val_with::<Vec<super::structs::TemplateConfigFileInfo>>(v, wrap_array_of_template_config_file_info) }),
        ("ArrayOfHostSharedGpuCapabilities", TypeInfo::Value { name: "ArrayOfHostSharedGpuCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::HostSharedGpuCapabilities>>(wrap_array_of_host_shared_gpu_capabilities), from_value: |v| from_val_with::<Vec<super::structs::HostSharedGpuCapabilities>>(v, wrap_array_of_host_shared_gpu_capabilities) }),
        ("ArrayOfVmfsDatastoreMultipleExtentOption", TypeInfo::Value { name: "ArrayOfVmfsDatastoreMultipleExtentOption", make_deserializer: || make_deser_with::<Vec<super::structs::VmfsDatastoreMultipleExtentOption>>(wrap_array_of_vmfs_datastore_multiple_extent_option), from_value: |v| from_val_with::<Vec<super::structs::VmfsDatastoreMultipleExtentOption>>(v, wrap_array_of_vmfs_datastore_multiple_extent_option) }),
        ("ArrayOfVirtualSerialPort", TypeInfo::Value { name: "ArrayOfVirtualSerialPort", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPort>>(wrap_array_of_virtual_serial_port), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPort>>(v, wrap_array_of_virtual_serial_port) }),
        ("InvalidSnapshotFormat", TypeInfo::Object { name: "InvalidSnapshotFormat", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidSnapshotFormat))) }),
        ("ArrayOfVmFailedToShutdownGuestEvent", TypeInfo::Value { name: "ArrayOfVmFailedToShutdownGuestEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_to_shutdown_guest_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_to_shutdown_guest_event) }),
        ("InsufficientVFlashResourcesFault", TypeInfo::Object { name: "InsufficientVFlashResourcesFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientVFlashResourcesFault))) }),
        ("ArrayOfVibRequiresManualInstallation", TypeInfo::Value { name: "ArrayOfVibRequiresManualInstallation", make_deserializer: || make_deser_with::<Vec<super::structs::VibRequiresManualInstallation>>(wrap_array_of_vib_requires_manual_installation), from_value: |v| from_val_with::<Vec<super::structs::VibRequiresManualInstallation>>(v, wrap_array_of_vib_requires_manual_installation) }),
        ("VsanIoInsightInstance", TypeInfo::Object { name: "VsanIoInsightInstance", builder_fn: || Box::new(VsanIoInsightInstanceFields::new()) }),
        ("DesiredSoftwareSpecVendorAddOnSpec", TypeInfo::Object { name: "DesiredSoftwareSpecVendorAddOnSpec", builder_fn: || Box::new(DesiredSoftwareSpecVendorAddOnSpecFields::new()) }),
        ("VsanUnsupportedHighDiskVersionIssue", TypeInfo::Object { name: "VsanUnsupportedHighDiskVersionIssue", builder_fn: || Box::new(VsanUnsupportedHighDiskVersionIssueFields::new()) }),
        ("ArrayOfDVPortgroupPolicy", TypeInfo::Value { name: "ArrayOfDVPortgroupPolicy", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dv_portgroup_policy_array)), from_value: |v| cast_to_dv_portgroup_policy_array(from_value(v)?) }),
        ("long", TypeInfo::Value { name: "long", make_deserializer: || make_deser_with::<i64>(wrap_primitive_long), from_value: |v| from_val_with::<i64>(v, wrap_primitive_long) }),
        ("DasHostFailedEvent", TypeInfo::Object { name: "DasHostFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DasHostFailedEvent))) }),
        ("ArrayOfClusterVmToolsMonitoringSettings", TypeInfo::Value { name: "ArrayOfClusterVmToolsMonitoringSettings", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterVmToolsMonitoringSettings>>(wrap_array_of_cluster_vm_tools_monitoring_settings), from_value: |v| from_val_with::<Vec<super::structs::ClusterVmToolsMonitoringSettings>>(v, wrap_array_of_cluster_vm_tools_monitoring_settings) }),
        ("VsanHostWithHybridDiskgroupIssue", TypeInfo::Object { name: "VsanHostWithHybridDiskgroupIssue", builder_fn: || Box::new(VsanHostWithHybridDiskgroupIssueFields::new()) }),
        ("ArrayOfDvsLogNetworkRuleAction", TypeInfo::Value { name: "ArrayOfDvsLogNetworkRuleAction", make_deserializer: || make_deser_with::<Vec<super::structs::DvsLogNetworkRuleAction>>(wrap_array_of_dvs_log_network_rule_action), from_value: |v| from_val_with::<Vec<super::structs::DvsLogNetworkRuleAction>>(v, wrap_array_of_dvs_log_network_rule_action) }),
        ("ArrayOfTaskFilterSpecByTime", TypeInfo::Value { name: "ArrayOfTaskFilterSpecByTime", make_deserializer: || make_deser_with::<Vec<super::structs::TaskFilterSpecByTime>>(wrap_array_of_task_filter_spec_by_time), from_value: |v| from_val_with::<Vec<super::structs::TaskFilterSpecByTime>>(v, wrap_array_of_task_filter_spec_by_time) }),
        ("ArrayOfHostConnectionLostEvent", TypeInfo::Value { name: "ArrayOfHostConnectionLostEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_connection_lost_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_connection_lost_event) }),
        ("TimedOutHostOperationEvent", TypeInfo::Object { name: "TimedOutHostOperationEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::TimedOutHostOperationEvent))) }),
        ("ArrayOfVmStartRecordingEvent", TypeInfo::Value { name: "ArrayOfVmStartRecordingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_start_recording_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_start_recording_event) }),
        ("ArrayOfHostVmfsRescanResult", TypeInfo::Value { name: "ArrayOfHostVmfsRescanResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostVmfsRescanResult>>(wrap_array_of_host_vmfs_rescan_result), from_value: |v| from_val_with::<Vec<super::structs::HostVmfsRescanResult>>(v, wrap_array_of_host_vmfs_rescan_result) }),
        ("VimVsanHostDiskMapInfoEx", TypeInfo::Object { name: "VimVsanHostDiskMapInfoEx", builder_fn: || Box::new(VimVsanHostDiskMapInfoExFields::new()) }),
        ("ArrayOfOvfCpuCompatibilityCheckNotSupported", TypeInfo::Value { name: "ArrayOfOvfCpuCompatibilityCheckNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_cpu_compatibility_check_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_cpu_compatibility_check_not_supported) }),
        ("OvfMissingElementNormalBoundary", TypeInfo::Object { name: "OvfMissingElementNormalBoundary", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfMissingElementNormalBoundary))) }),
        ("ArrayOfDvsUpgradeRejectedEvent", TypeInfo::Value { name: "ArrayOfDvsUpgradeRejectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_upgrade_rejected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_upgrade_rejected_event) }),
        ("ArrayOfEntityReference", TypeInfo::Value { name: "ArrayOfEntityReference", make_deserializer: || make_deser_with::<Vec<super::structs::EntityReference>>(wrap_array_of_entity_reference), from_value: |v| from_val_with::<Vec<super::structs::EntityReference>>(v, wrap_array_of_entity_reference) }),
        ("ArrayOfVASAStorageArray", TypeInfo::Value { name: "ArrayOfVASAStorageArray", make_deserializer: || make_deser_with::<Vec<super::structs::VasaStorageArray>>(wrap_array_of_vasa_storage_array), from_value: |v| from_val_with::<Vec<super::structs::VasaStorageArray>>(v, wrap_array_of_vasa_storage_array) }),
        ("PbmCapabilitySchemaVendorInfo", TypeInfo::Object { name: "PbmCapabilitySchemaVendorInfo", builder_fn: || Box::new(PbmCapabilitySchemaVendorInfoFields::new()) }),
        ("VsanStoragePoolDiskResourceCheckResult", TypeInfo::Object { name: "VsanStoragePoolDiskResourceCheckResult", builder_fn: || Box::new(VsanStoragePoolDiskResourceCheckResultFields::new()) }),
        ("ArrayOfStorageDrsConfigSpec", TypeInfo::Value { name: "ArrayOfStorageDrsConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsConfigSpec>>(wrap_array_of_storage_drs_config_spec), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsConfigSpec>>(v, wrap_array_of_storage_drs_config_spec) }),
        ("ArrayOfHostExtraNetworksEvent", TypeInfo::Value { name: "ArrayOfHostExtraNetworksEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_extra_networks_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_extra_networks_event) }),
        ("ArrayOfDrsInjectorWorkloadCorrelationState", TypeInfo::Value { name: "ArrayOfDrsInjectorWorkloadCorrelationState", make_deserializer: || make_deser_with::<Vec<super::enums::DrsInjectorWorkloadCorrelationStateEnum>>(wrap_array_of_drs_injector_workload_correlation_state), from_value: |v| from_val_with::<Vec<super::enums::DrsInjectorWorkloadCorrelationStateEnum>>(v, wrap_array_of_drs_injector_workload_correlation_state) }),
        ("ArrayOfVirtualDeviceOption", TypeInfo::Value { name: "ArrayOfVirtualDeviceOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_option_array)), from_value: |v| cast_to_virtual_device_option_array(from_value(v)?) }),
        ("ArrayOfVmfsAmbiguousMount", TypeInfo::Value { name: "ArrayOfVmfsAmbiguousMount", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vmfs_ambiguous_mount), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vmfs_ambiguous_mount) }),
        ("ArrayOfHostPortGroup", TypeInfo::Value { name: "ArrayOfHostPortGroup", make_deserializer: || make_deser_with::<Vec<super::structs::HostPortGroup>>(wrap_array_of_host_port_group), from_value: |v| from_val_with::<Vec<super::structs::HostPortGroup>>(v, wrap_array_of_host_port_group) }),
        ("ArrayOfInsufficientSpace", TypeInfo::Value { name: "ArrayOfInsufficientSpace", make_deserializer: || make_deser_with::<Vec<super::structs::InsufficientSpace>>(wrap_array_of_insufficient_space), from_value: |v| from_val_with::<Vec<super::structs::InsufficientSpace>>(v, wrap_array_of_insufficient_space) }),
        ("InsufficientNetworkResourcePoolCapacity", TypeInfo::Object { name: "InsufficientNetworkResourcePoolCapacity", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientNetworkResourcePoolCapacity))) }),
        ("PbmLineOfServiceInfo", TypeInfo::Object { name: "PbmLineOfServiceInfo", builder_fn: || Box::new(PbmLineOfServiceInfoFields::new()) }),
        ("ArrayOfVirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeState", TypeInfo::Value { name: "ArrayOfVirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeState", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeState>>(wrap_array_of_virtual_machine_device_runtime_info_virtual_ethernet_card_runtime_state), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineDeviceRuntimeInfoVirtualEthernetCardRuntimeState>>(v, wrap_array_of_virtual_machine_device_runtime_info_virtual_ethernet_card_runtime_state) }),
        ("ArrayOfCheckResult", TypeInfo::Value { name: "ArrayOfCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::CheckResult>>(wrap_array_of_check_result), from_value: |v| from_val_with::<Vec<super::structs::CheckResult>>(v, wrap_array_of_check_result) }),
        ("ArrayOfVsanHclMemInfo", TypeInfo::Value { name: "ArrayOfVsanHclMemInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclMemInfo>>(wrap_array_of_vsan_hcl_mem_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHclMemInfo>>(v, wrap_array_of_vsan_hcl_mem_info) }),
        ("ArrayOfVsanMountPrecheckNetworkConnectivityDetail", TypeInfo::Value { name: "ArrayOfVsanMountPrecheckNetworkConnectivityDetail", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMountPrecheckNetworkConnectivityDetail>>(wrap_array_of_vsan_mount_precheck_network_connectivity_detail), from_value: |v| from_val_with::<Vec<super::structs::VsanMountPrecheckNetworkConnectivityDetail>>(v, wrap_array_of_vsan_mount_precheck_network_connectivity_detail) }),
        ("ArrayOfGatewayNotReachable", TypeInfo::Value { name: "ArrayOfGatewayNotReachable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_gateway_not_reachable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_gateway_not_reachable) }),
        ("ArrayOfVirtualAppSummary", TypeInfo::Value { name: "ArrayOfVirtualAppSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualAppSummary>>(wrap_array_of_virtual_app_summary), from_value: |v| from_val_with::<Vec<super::structs::VirtualAppSummary>>(v, wrap_array_of_virtual_app_summary) }),
        ("ArrayOfHealthStatusChangedEvent", TypeInfo::Value { name: "ArrayOfHealthStatusChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_health_status_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_health_status_changed_event) }),
        ("ArrayOfVimVsanHostTrimDiskSpec", TypeInfo::Value { name: "ArrayOfVimVsanHostTrimDiskSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostTrimDiskSpec>>(wrap_array_of_vim_vsan_host_trim_disk_spec), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostTrimDiskSpec>>(v, wrap_array_of_vim_vsan_host_trim_disk_spec) }),
        ("ArrayOfDiskIsNonLocal", TypeInfo::Value { name: "ArrayOfDiskIsNonLocal", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disk_is_non_local), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disk_is_non_local) }),
        ("SmsProviderInfo", TypeInfo::Object { name: "SmsProviderInfo", builder_fn: || Box::new(SmsProviderInfoFields::new()) }),
        ("VsanUpgradeSystemMissingHostsInClusterIssue", TypeInfo::Object { name: "VsanUpgradeSystemMissingHostsInClusterIssue", builder_fn: || Box::new(VsanUpgradeSystemMissingHostsInClusterIssueFields::new()) }),
        ("ArrayOfClusterAgentHostInMaintenanceMode", TypeInfo::Value { name: "ArrayOfClusterAgentHostInMaintenanceMode", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentHostInMaintenanceMode>>(wrap_array_of_cluster_agent_host_in_maintenance_mode), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentHostInMaintenanceMode>>(v, wrap_array_of_cluster_agent_host_in_maintenance_mode) }),
        ("ArrayOfFailToEnableSPBM", TypeInfo::Value { name: "ArrayOfFailToEnableSPBM", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fail_to_enable_spbm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fail_to_enable_spbm) }),
        ("DrsResourceConfigureSyncedEvent", TypeInfo::Object { name: "DrsResourceConfigureSyncedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsResourceConfigureSyncedEvent))) }),
        ("ArrayOfVirtualMachineQuestionInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineQuestionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineQuestionInfo>>(wrap_array_of_virtual_machine_question_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineQuestionInfo>>(v, wrap_array_of_virtual_machine_question_info) }),
        ("DistributedVirtualSwitchHostMemberRuntimeState", TypeInfo::Object { name: "DistributedVirtualSwitchHostMemberRuntimeState", builder_fn: || Box::new(DistributedVirtualSwitchHostMemberRuntimeStateFields::new()) }),
        ("ClusterDrsVmConfigInfo", TypeInfo::Object { name: "ClusterDrsVmConfigInfo", builder_fn: || Box::new(ClusterDrsVmConfigInfoFields::new()) }),
        ("ArrayOfToolsImageNotAvailable", TypeInfo::Value { name: "ArrayOfToolsImageNotAvailable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_tools_image_not_available), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_tools_image_not_available) }),
        ("HostVFlashManagerVFlashResourceConfigInfo", TypeInfo::Object { name: "HostVFlashManagerVFlashResourceConfigInfo", builder_fn: || Box::new(HostVFlashManagerVFlashResourceConfigInfoFields::new()) }),
        ("ArrayOfHostVvolVolumeHostVvolNQN", TypeInfo::Value { name: "ArrayOfHostVvolVolumeHostVvolNQN", make_deserializer: || make_deser_with::<Vec<super::structs::HostVvolVolumeHostVvolNqn>>(wrap_array_of_host_vvol_volume_host_vvol_nqn), from_value: |v| from_val_with::<Vec<super::structs::HostVvolVolumeHostVvolNqn>>(v, wrap_array_of_host_vvol_volume_host_vvol_nqn) }),
        ("ReplicationDiskConfigFault", TypeInfo::Object { name: "ReplicationDiskConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReplicationDiskConfigFault))) }),
        ("ArrayOfVsanPolicyStatus", TypeInfo::Value { name: "ArrayOfVsanPolicyStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPolicyStatus>>(wrap_array_of_vsan_policy_status), from_value: |v| from_val_with::<Vec<super::structs::VsanPolicyStatus>>(v, wrap_array_of_vsan_policy_status) }),
        ("VsanVcLifecycleCheckResult", TypeInfo::Object { name: "VsanVcLifecycleCheckResult", builder_fn: || Box::new(VsanVcLifecycleCheckResultFields::new()) }),
        ("ArrayOfVsanCompositeConstraint", TypeInfo::Value { name: "ArrayOfVsanCompositeConstraint", make_deserializer: || make_deser_with::<Vec<super::structs::VsanCompositeConstraint>>(wrap_array_of_vsan_composite_constraint), from_value: |v| from_val_with::<Vec<super::structs::VsanCompositeConstraint>>(v, wrap_array_of_vsan_composite_constraint) }),
        ("ArrayOfAgentOvfEnvironmentInfoOvfProperty", TypeInfo::Value { name: "ArrayOfAgentOvfEnvironmentInfoOvfProperty", make_deserializer: || make_deser_with::<Vec<super::structs::AgentOvfEnvironmentInfoOvfProperty>>(wrap_array_of_agent_ovf_environment_info_ovf_property), from_value: |v| from_val_with::<Vec<super::structs::AgentOvfEnvironmentInfoOvfProperty>>(v, wrap_array_of_agent_ovf_environment_info_ovf_property) }),
        ("ArrayOfVmInstanceUuidConflictEvent", TypeInfo::Value { name: "ArrayOfVmInstanceUuidConflictEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_instance_uuid_conflict_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_instance_uuid_conflict_event) }),
        ("ArrayOfEVCAdmissionFailedCPUModel", TypeInfo::Value { name: "ArrayOfEVCAdmissionFailedCPUModel", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_admission_failed_cpu_model), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_admission_failed_cpu_model) }),
        ("CnsKubernetesQueryFilter", TypeInfo::Object { name: "CnsKubernetesQueryFilter", builder_fn: || Box::new(CnsKubernetesQueryFilterFields::new()) }),
        ("HostNetworkInfo", TypeInfo::Object { name: "HostNetworkInfo", builder_fn: || Box::new(HostNetworkInfoFields::new()) }),
        ("ArrayOfProviderNotFound", TypeInfo::Value { name: "ArrayOfProviderNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_provider_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_provider_not_found) }),
        ("InsufficientResources", TypeInfo::Object { name: "InsufficientResources", builder_fn: || Box::new(InsufficientResourcesFields::new()) }),
        ("VirtualMachineConsolePreferences", TypeInfo::Object { name: "VirtualMachineConsolePreferences", builder_fn: || Box::new(VirtualMachineConsolePreferencesFields::new()) }),
        ("DasAgentUnavailableEvent", TypeInfo::Object { name: "DasAgentUnavailableEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DasAgentUnavailableEvent))) }),
        ("ArrayOfCustomizationSpecItem", TypeInfo::Value { name: "ArrayOfCustomizationSpecItem", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationSpecItem>>(wrap_array_of_customization_spec_item), from_value: |v| from_val_with::<Vec<super::structs::CustomizationSpecItem>>(v, wrap_array_of_customization_spec_item) }),
        ("BackingConfig", TypeInfo::Object { name: "BackingConfig", builder_fn: || Box::new(BackingConfigFields::new()) }),
        ("UserAssignedToGroup", TypeInfo::Object { name: "UserAssignedToGroup", builder_fn: || Box::new(EventFields::new(Some(StructType::UserAssignedToGroup))) }),
        ("ArrayOfVsanMetricProfile", TypeInfo::Value { name: "ArrayOfVsanMetricProfile", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMetricProfile>>(wrap_array_of_vsan_metric_profile), from_value: |v| from_val_with::<Vec<super::structs::VsanMetricProfile>>(v, wrap_array_of_vsan_metric_profile) }),
        ("ArrayOfHostDatastoreBrowserSearchSpec", TypeInfo::Value { name: "ArrayOfHostDatastoreBrowserSearchSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostDatastoreBrowserSearchSpec>>(wrap_array_of_host_datastore_browser_search_spec), from_value: |v| from_val_with::<Vec<super::structs::HostDatastoreBrowserSearchSpec>>(v, wrap_array_of_host_datastore_browser_search_spec) }),
        ("QuestionPending", TypeInfo::Object { name: "QuestionPending", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::QuestionPending))) }),
        ("ArrayOfClusterComplianceCheckedEvent", TypeInfo::Value { name: "ArrayOfClusterComplianceCheckedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_cluster_compliance_checked_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_cluster_compliance_checked_event) }),
        ("ArrayOfHostPowerOperationType", TypeInfo::Value { name: "ArrayOfHostPowerOperationType", make_deserializer: || make_deser_with::<Vec<super::enums::HostPowerOperationTypeEnum>>(wrap_array_of_host_power_operation_type), from_value: |v| from_val_with::<Vec<super::enums::HostPowerOperationTypeEnum>>(v, wrap_array_of_host_power_operation_type) }),
        ("VsanDiagnosticsThreshold", TypeInfo::Object { name: "VsanDiagnosticsThreshold", builder_fn: || Box::new(VsanDiagnosticsThresholdFields::new()) }),
        ("VmAcquiredMksTicketEvent", TypeInfo::Object { name: "VmAcquiredMksTicketEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmAcquiredMksTicketEvent))) }),
        ("ArrayOfNumVirtualCpusNotSupported", TypeInfo::Value { name: "ArrayOfNumVirtualCpusNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_num_virtual_cpus_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_num_virtual_cpus_not_supported) }),
        ("BackingStoragePool", TypeInfo::Object { name: "BackingStoragePool", builder_fn: || Box::new(BackingStoragePoolFields::new()) }),
        ("ArrayOfClusterDrsVmConfigInfo", TypeInfo::Value { name: "ArrayOfClusterDrsVmConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDrsVmConfigInfo>>(wrap_array_of_cluster_drs_vm_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDrsVmConfigInfo>>(v, wrap_array_of_cluster_drs_vm_config_info) }),
        ("SolutionsSolutionValidationResult", TypeInfo::Object { name: "SolutionsSolutionValidationResult", builder_fn: || Box::new(SolutionsSolutionValidationResultFields::new()) }),
        ("NotSupported", TypeInfo::Object { name: "NotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupported))) }),
        ("FileNotWritable", TypeInfo::Object { name: "FileNotWritable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FileNotWritable))) }),
        ("ArrayOfVmFailoverFailed", TypeInfo::Value { name: "ArrayOfVmFailoverFailed", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failover_failed), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failover_failed) }),
        ("ArrayOfClusterEVCManagerCheckResult", TypeInfo::Value { name: "ArrayOfClusterEVCManagerCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterEvcManagerCheckResult>>(wrap_array_of_cluster_evc_manager_check_result), from_value: |v| from_val_with::<Vec<super::structs::ClusterEvcManagerCheckResult>>(v, wrap_array_of_cluster_evc_manager_check_result) }),
        ("ArrayOfVASAStorageArrayDiscoverySvcInfo", TypeInfo::Value { name: "ArrayOfVASAStorageArrayDiscoverySvcInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VasaStorageArrayDiscoverySvcInfo>>(wrap_array_of_vasa_storage_array_discovery_svc_info), from_value: |v| from_val_with::<Vec<super::structs::VasaStorageArrayDiscoverySvcInfo>>(v, wrap_array_of_vasa_storage_array_discovery_svc_info) }),
        ("ArrayOfUpgradeEvent", TypeInfo::Value { name: "ArrayOfUpgradeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_upgrade_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_upgrade_event) }),
        ("HostMultipathInfo", TypeInfo::Object { name: "HostMultipathInfo", builder_fn: || Box::new(HostMultipathInfoFields::new()) }),
        ("ArrayOfVsanVsanPcapResult", TypeInfo::Value { name: "ArrayOfVsanVsanPcapResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVsanPcapResult>>(wrap_array_of_vsan_vsan_pcap_result), from_value: |v| from_val_with::<Vec<super::structs::VsanVsanPcapResult>>(v, wrap_array_of_vsan_vsan_pcap_result) }),
        ("HostSpecificationUpdateEvent", TypeInfo::Object { name: "HostSpecificationUpdateEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostSpecificationUpdateEvent))) }),
        ("ArrayOfHostPortGroupPort", TypeInfo::Value { name: "ArrayOfHostPortGroupPort", make_deserializer: || make_deser_with::<Vec<super::structs::HostPortGroupPort>>(wrap_array_of_host_port_group_port), from_value: |v| from_val_with::<Vec<super::structs::HostPortGroupPort>>(v, wrap_array_of_host_port_group_port) }),
        ("VsanComplianceQuerySpec", TypeInfo::Object { name: "VsanComplianceQuerySpec", builder_fn: || Box::new(VsanComplianceQuerySpecFields::new()) }),
        ("NotSupportedDeviceForFT", TypeInfo::Object { name: "NotSupportedDeviceForFT", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedDeviceForFt))) }),
        ("VsanClusterConfigPrecheckItem", TypeInfo::Object { name: "VsanClusterConfigPrecheckItem", builder_fn: || Box::new(VsanClusterConfigPrecheckItemFields::new()) }),
        ("ArrayOfAlarmSpec", TypeInfo::Value { name: "ArrayOfAlarmSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_alarm_spec_array)), from_value: |v| cast_to_alarm_spec_array(from_value(v)?) }),
        ("ArrayOfVsanClusterLimitHealthResult", TypeInfo::Value { name: "ArrayOfVsanClusterLimitHealthResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterLimitHealthResult>>(wrap_array_of_vsan_cluster_limit_health_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterLimitHealthResult>>(v, wrap_array_of_vsan_cluster_limit_health_result) }),
        ("GuestStackInfo", TypeInfo::Object { name: "GuestStackInfo", builder_fn: || Box::new(GuestStackInfoFields::new()) }),
        ("CustomFieldValueChangedEvent", TypeInfo::Object { name: "CustomFieldValueChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomFieldValueChangedEvent))) }),
        ("ArrayOfHostVsanInternalSystemVsanObjectOperationResult", TypeInfo::Value { name: "ArrayOfHostVsanInternalSystemVsanObjectOperationResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostVsanInternalSystemVsanObjectOperationResult>>(wrap_array_of_host_vsan_internal_system_vsan_object_operation_result), from_value: |v| from_val_with::<Vec<super::structs::HostVsanInternalSystemVsanObjectOperationResult>>(v, wrap_array_of_host_vsan_internal_system_vsan_object_operation_result) }),
        ("ArrayOfVsanHostConfigInfo", TypeInfo::Value { name: "ArrayOfVsanHostConfigInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_host_config_info_array)), from_value: |v| cast_to_vsan_host_config_info_array(from_value(v)?) }),
        ("HostFirewallDefaultPolicy", TypeInfo::Object { name: "HostFirewallDefaultPolicy", builder_fn: || Box::new(HostFirewallDefaultPolicyFields::new()) }),
        ("VimVsanHostVsanManagedDisksInfo", TypeInfo::Object { name: "VimVsanHostVsanManagedDisksInfo", builder_fn: || Box::new(VimVsanHostVsanManagedDisksInfoFields::new()) }),
        ("GeneralHostWarningEvent", TypeInfo::Object { name: "GeneralHostWarningEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GeneralHostWarningEvent))) }),
        ("DeviceControllerNotSupported", TypeInfo::Object { name: "DeviceControllerNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DeviceControllerNotSupported))) }),
        ("ArrayOfResourcePoolEventArgument", TypeInfo::Value { name: "ArrayOfResourcePoolEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::ResourcePoolEventArgument>>(wrap_array_of_resource_pool_event_argument), from_value: |v| from_val_with::<Vec<super::structs::ResourcePoolEventArgument>>(v, wrap_array_of_resource_pool_event_argument) }),
        ("VsanSpaceEfficiencyMetadataSize", TypeInfo::Object { name: "VsanSpaceEfficiencyMetadataSize", builder_fn: || Box::new(VsanSpaceEfficiencyMetadataSizeFields::new()) }),
        ("NetDhcpConfigInfo", TypeInfo::Object { name: "NetDhcpConfigInfo", builder_fn: || Box::new(NetDhcpConfigInfoFields::new()) }),
        ("ArrayOfVsanPerfDiagnosticException", TypeInfo::Value { name: "ArrayOfVsanPerfDiagnosticException", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfDiagnosticException>>(wrap_array_of_vsan_perf_diagnostic_exception), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfDiagnosticException>>(v, wrap_array_of_vsan_perf_diagnostic_exception) }),
        ("VsanClusterCreateVmHealthTestResult", TypeInfo::Object { name: "VsanClusterCreateVmHealthTestResult", builder_fn: || Box::new(VsanClusterCreateVmHealthTestResultFields::new()) }),
        ("ArrayOfHostInternetScsiHbaDiscoveryProperties", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaDiscoveryProperties", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaDiscoveryProperties>>(wrap_array_of_host_internet_scsi_hba_discovery_properties), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaDiscoveryProperties>>(v, wrap_array_of_host_internet_scsi_hba_discovery_properties) }),
        ("ArrayOfHostNasVolumeUserInfo", TypeInfo::Value { name: "ArrayOfHostNasVolumeUserInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostNasVolumeUserInfo>>(wrap_array_of_host_nas_volume_user_info), from_value: |v| from_val_with::<Vec<super::structs::HostNasVolumeUserInfo>>(v, wrap_array_of_host_nas_volume_user_info) }),
        ("ArrayOfResourcePoolDestroyedEvent", TypeInfo::Value { name: "ArrayOfResourcePoolDestroyedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_resource_pool_destroyed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_resource_pool_destroyed_event) }),
        ("ClusterConfigInfoEx", TypeInfo::Object { name: "ClusterConfigInfoEx", builder_fn: || Box::new(ClusterConfigInfoExFields::new()) }),
        ("ImmediateHostRebootRequired", TypeInfo::Object { name: "ImmediateHostRebootRequired", builder_fn: || Box::new(ImmediateHostRebootRequiredFields::new()) }),
        ("VsanEsaConfig", TypeInfo::Object { name: "VsanEsaConfig", builder_fn: || Box::new(VsanEsaConfigFields::new()) }),
        ("ArrayOfPerfProviderSummary", TypeInfo::Value { name: "ArrayOfPerfProviderSummary", make_deserializer: || make_deser_with::<Vec<super::structs::PerfProviderSummary>>(wrap_array_of_perf_provider_summary), from_value: |v| from_val_with::<Vec<super::structs::PerfProviderSummary>>(v, wrap_array_of_perf_provider_summary) }),
        ("ArrayOfResourcePoolQuickStats", TypeInfo::Value { name: "ArrayOfResourcePoolQuickStats", make_deserializer: || make_deser_with::<Vec<super::structs::ResourcePoolQuickStats>>(wrap_array_of_resource_pool_quick_stats), from_value: |v| from_val_with::<Vec<super::structs::ResourcePoolQuickStats>>(v, wrap_array_of_resource_pool_quick_stats) }),
        ("CannotAccessAgentOVF", TypeInfo::Object { name: "CannotAccessAgentOVF", builder_fn: || Box::new(CannotAccessAgentOvfFields::new()) }),
        ("KmipClusterInfoWrappingRotationIntervalKeyInfo", TypeInfo::Object { name: "KmipClusterInfoWrappingRotationIntervalKeyInfo", builder_fn: || Box::new(KmipClusterInfoWrappingRotationIntervalKeyInfoFields::new()) }),
        ("ArrayOfHostUnresolvedVmfsResolutionResult", TypeInfo::Value { name: "ArrayOfHostUnresolvedVmfsResolutionResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostUnresolvedVmfsResolutionResult>>(wrap_array_of_host_unresolved_vmfs_resolution_result), from_value: |v| from_val_with::<Vec<super::structs::HostUnresolvedVmfsResolutionResult>>(v, wrap_array_of_host_unresolved_vmfs_resolution_result) }),
        ("ClusterAgentAgentIssue", TypeInfo::Object { name: "ClusterAgentAgentIssue", builder_fn: || Box::new(ClusterAgentAgentIssueFields::new()) }),
        ("CanceledHostOperationEvent", TypeInfo::Object { name: "CanceledHostOperationEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::CanceledHostOperationEvent))) }),
        ("ArrayOfStorageFileSystem", TypeInfo::Value { name: "ArrayOfStorageFileSystem", make_deserializer: || make_deser_with::<Vec<super::structs::StorageFileSystem>>(wrap_array_of_storage_file_system), from_value: |v| from_val_with::<Vec<super::structs::StorageFileSystem>>(v, wrap_array_of_storage_file_system) }),
        ("ArrayOfHostStatusChangedEvent", TypeInfo::Value { name: "ArrayOfHostStatusChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_status_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_status_changed_event) }),
        ("ArrayOfNotSupportedHostInHACluster", TypeInfo::Value { name: "ArrayOfNotSupportedHostInHACluster", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_host_in_ha_cluster), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_host_in_ha_cluster) }),
        ("ArrayOfGuestInfoCustomizationInfo", TypeInfo::Value { name: "ArrayOfGuestInfoCustomizationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestInfoCustomizationInfo>>(wrap_array_of_guest_info_customization_info), from_value: |v| from_val_with::<Vec<super::structs::GuestInfoCustomizationInfo>>(v, wrap_array_of_guest_info_customization_info) }),
        ("VslmSyncFault", TypeInfo::Object { name: "VslmSyncFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VslmSyncFault))) }),
        ("IncompatibleSetting", TypeInfo::Object { name: "IncompatibleSetting", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IncompatibleSetting))) }),
        ("HostNvmeDiscoveryLog", TypeInfo::Object { name: "HostNvmeDiscoveryLog", builder_fn: || Box::new(HostNvmeDiscoveryLogFields::new()) }),
        ("EamSystemFault", TypeInfo::Object { name: "EamSystemFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EamSystemFault))) }),
        ("ArrayOfHostPowerPolicy", TypeInfo::Value { name: "ArrayOfHostPowerPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::HostPowerPolicy>>(wrap_array_of_host_power_policy), from_value: |v| from_val_with::<Vec<super::structs::HostPowerPolicy>>(v, wrap_array_of_host_power_policy) }),
        ("VsanHclControllerInfo", TypeInfo::Object { name: "VsanHclControllerInfo", builder_fn: || Box::new(VsanHclControllerInfoFields::new()) }),
        ("ArrayOfVirtualKeyboardOption", TypeInfo::Value { name: "ArrayOfVirtualKeyboardOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualKeyboardOption>>(wrap_array_of_virtual_keyboard_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualKeyboardOption>>(v, wrap_array_of_virtual_keyboard_option) }),
        ("VirtualNVDIMM", TypeInfo::Object { name: "VirtualNVDIMM", builder_fn: || Box::new(VirtualNvdimmFields::new()) }),
        ("ScsiLunDurableName", TypeInfo::Object { name: "ScsiLunDurableName", builder_fn: || Box::new(ScsiLunDurableNameFields::new()) }),
        ("VslmTaskReasonSystem", TypeInfo::Object { name: "VslmTaskReasonSystem", builder_fn: || Box::new(VslmTaskReasonSystemFields::new()) }),
        ("ArrayOfInvalidProfileReferenceHost", TypeInfo::Value { name: "ArrayOfInvalidProfileReferenceHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_profile_reference_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_profile_reference_host) }),
        ("VsanFileShareQuerySpec", TypeInfo::Object { name: "VsanFileShareQuerySpec", builder_fn: || Box::new(VsanFileShareQuerySpecFields::new()) }),
        ("ArrayOfNetIpRouteConfigSpecIpRouteSpec", TypeInfo::Value { name: "ArrayOfNetIpRouteConfigSpecIpRouteSpec", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpRouteConfigSpecIpRouteSpec>>(wrap_array_of_net_ip_route_config_spec_ip_route_spec), from_value: |v| from_val_with::<Vec<super::structs::NetIpRouteConfigSpecIpRouteSpec>>(v, wrap_array_of_net_ip_route_config_spec_ip_route_spec) }),
        ("ArrayOfDatastoreFileEvent", TypeInfo::Value { name: "ArrayOfDatastoreFileEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_file_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_file_event) }),
        ("ArrayOfVirtualBusLogicController", TypeInfo::Value { name: "ArrayOfVirtualBusLogicController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualBusLogicController>>(wrap_array_of_virtual_bus_logic_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualBusLogicController>>(v, wrap_array_of_virtual_bus_logic_controller) }),
        ("VmfsDatastoreAllExtentOption", TypeInfo::Object { name: "VmfsDatastoreAllExtentOption", builder_fn: || Box::new(VmfsDatastoreAllExtentOptionFields::new()) }),
        ("ProfileCompositePolicyOptionMetadata", TypeInfo::Object { name: "ProfileCompositePolicyOptionMetadata", builder_fn: || Box::new(ProfileCompositePolicyOptionMetadataFields::new()) }),
        ("ArrayOfVsanFileServicePreflightCheckResult", TypeInfo::Value { name: "ArrayOfVsanFileServicePreflightCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServicePreflightCheckResult>>(wrap_array_of_vsan_file_service_preflight_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServicePreflightCheckResult>>(v, wrap_array_of_vsan_file_service_preflight_check_result) }),
        ("IntPolicy", TypeInfo::Object { name: "IntPolicy", builder_fn: || Box::new(IntPolicyFields::new()) }),
        ("IscsiFaultVnicHasActivePaths", TypeInfo::Object { name: "IscsiFaultVnicHasActivePaths", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultVnicHasActivePaths))) }),
        ("ArrayOfProviderOutOfProvisioningResource", TypeInfo::Value { name: "ArrayOfProviderOutOfProvisioningResource", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_provider_out_of_provisioning_resource), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_provider_out_of_provisioning_resource) }),
        ("ArrayOfKmipClusterInfoWrappingRotationIntervalKeyInfo", TypeInfo::Value { name: "ArrayOfKmipClusterInfoWrappingRotationIntervalKeyInfo", make_deserializer: || make_deser_with::<Vec<super::structs::KmipClusterInfoWrappingRotationIntervalKeyInfo>>(wrap_array_of_kmip_cluster_info_wrapping_rotation_interval_key_info), from_value: |v| from_val_with::<Vec<super::structs::KmipClusterInfoWrappingRotationIntervalKeyInfo>>(v, wrap_array_of_kmip_cluster_info_wrapping_rotation_interval_key_info) }),
        ("GuestRegKeySpec", TypeInfo::Object { name: "GuestRegKeySpec", builder_fn: || Box::new(GuestRegKeySpecFields::new()) }),
        ("DistributedVirtualSwitchHostMemberHostUplinkState", TypeInfo::Object { name: "DistributedVirtualSwitchHostMemberHostUplinkState", builder_fn: || Box::new(DistributedVirtualSwitchHostMemberHostUplinkStateFields::new()) }),
        ("ArrayOfApplyProfile", TypeInfo::Value { name: "ArrayOfApplyProfile", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_apply_profile_array)), from_value: |v| cast_to_apply_profile_array(from_value(v)?) }),
        ("InsufficientStandbyMemoryResource", TypeInfo::Object { name: "InsufficientStandbyMemoryResource", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientStandbyMemoryResource))) }),
        ("ArrayOfHostEsxAgentHostManagerConfigInfo", TypeInfo::Value { name: "ArrayOfHostEsxAgentHostManagerConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostEsxAgentHostManagerConfigInfo>>(wrap_array_of_host_esx_agent_host_manager_config_info), from_value: |v| from_val_with::<Vec<super::structs::HostEsxAgentHostManagerConfigInfo>>(v, wrap_array_of_host_esx_agent_host_manager_config_info) }),
        ("byte", TypeInfo::Value { name: "byte", make_deserializer: || make_deser_with::<i8>(wrap_primitive_byte), from_value: |v| from_val_with::<i8>(v, wrap_primitive_byte) }),
        ("HostHardwareSummary", TypeInfo::Object { name: "HostHardwareSummary", builder_fn: || Box::new(HostHardwareSummaryFields::new()) }),
        ("DatastoreRenamedEvent", TypeInfo::Object { name: "DatastoreRenamedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreRenamedEvent))) }),
        ("VmConfigFileQueryFlags", TypeInfo::Object { name: "VmConfigFileQueryFlags", builder_fn: || Box::new(VmConfigFileQueryFlagsFields::new()) }),
        ("ArrayOfVsanFileShareSmbOptions", TypeInfo::Value { name: "ArrayOfVsanFileShareSmbOptions", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShareSmbOptions>>(wrap_array_of_vsan_file_share_smb_options), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShareSmbOptions>>(v, wrap_array_of_vsan_file_share_smb_options) }),
        ("OvfUnsupportedAttribute", TypeInfo::Object { name: "OvfUnsupportedAttribute", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedAttribute))) }),
        ("HostSystemIdentificationInfo", TypeInfo::Object { name: "HostSystemIdentificationInfo", builder_fn: || Box::new(HostSystemIdentificationInfoFields::new()) }),
        ("VsanDisallowDataMovementIssue", TypeInfo::Object { name: "VsanDisallowDataMovementIssue", builder_fn: || Box::new(VsanDisallowDataMovementIssueFields::new()) }),
        ("ScheduledTaskDescription", TypeInfo::Object { name: "ScheduledTaskDescription", builder_fn: || Box::new(ScheduledTaskDescriptionFields::new()) }),
        ("ArrayOfCapability", TypeInfo::Value { name: "ArrayOfCapability", make_deserializer: || make_deser_with::<Vec<super::structs::Capability>>(wrap_array_of_capability), from_value: |v| from_val_with::<Vec<super::structs::Capability>>(v, wrap_array_of_capability) }),
        ("ArrayOfPinnedCertificate", TypeInfo::Value { name: "ArrayOfPinnedCertificate", make_deserializer: || make_deser_with::<Vec<super::structs::PinnedCertificate>>(wrap_array_of_pinned_certificate), from_value: |v| from_val_with::<Vec<super::structs::PinnedCertificate>>(v, wrap_array_of_pinned_certificate) }),
        ("ArrayOfRecoveryEvent", TypeInfo::Value { name: "ArrayOfRecoveryEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_recovery_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_recovery_event) }),
        ("ArrayOfInvalidPropertyValue", TypeInfo::Value { name: "ArrayOfInvalidPropertyValue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_property_value), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_property_value) }),
        ("ArrayOfMacAddress", TypeInfo::Value { name: "ArrayOfMacAddress", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_mac_address_array)), from_value: |v| cast_to_mac_address_array(from_value(v)?) }),
        ("UncommittedUndoableDisk", TypeInfo::Object { name: "UncommittedUndoableDisk", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UncommittedUndoableDisk))) }),
        ("ArrayOfDistributedVirtualSwitchKeyedOpaqueBlob", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchKeyedOpaqueBlob", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchKeyedOpaqueBlob>>(wrap_array_of_distributed_virtual_switch_keyed_opaque_blob), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchKeyedOpaqueBlob>>(v, wrap_array_of_distributed_virtual_switch_keyed_opaque_blob) }),
        ("ArrayOfHostNicOrderPolicy", TypeInfo::Value { name: "ArrayOfHostNicOrderPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::HostNicOrderPolicy>>(wrap_array_of_host_nic_order_policy), from_value: |v| from_val_with::<Vec<super::structs::HostNicOrderPolicy>>(v, wrap_array_of_host_nic_order_policy) }),
        ("ArrayOfFcoeStoragePort", TypeInfo::Value { name: "ArrayOfFcoeStoragePort", make_deserializer: || make_deser_with::<Vec<super::structs::FcoeStoragePort>>(wrap_array_of_fcoe_storage_port), from_value: |v| from_val_with::<Vec<super::structs::FcoeStoragePort>>(v, wrap_array_of_fcoe_storage_port) }),
        ("PhysicalNicCdpInfo", TypeInfo::Object { name: "PhysicalNicCdpInfo", builder_fn: || Box::new(PhysicalNicCdpInfoFields::new()) }),
        ("HostMultipathInfoHppLogicalUnitPolicy", TypeInfo::Object { name: "HostMultipathInfoHppLogicalUnitPolicy", builder_fn: || Box::new(HostMultipathInfoHppLogicalUnitPolicyFields::new()) }),
        ("KmipClusterInfo", TypeInfo::Object { name: "KmipClusterInfo", builder_fn: || Box::new(KmipClusterInfoFields::new()) }),
        ("ArrayOfCannotAccessLocalSource", TypeInfo::Value { name: "ArrayOfCannotAccessLocalSource", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_access_local_source), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_access_local_source) }),
        ("ArrayOfUsbScanCodeSpecModifierType", TypeInfo::Value { name: "ArrayOfUsbScanCodeSpecModifierType", make_deserializer: || make_deser_with::<Vec<super::structs::UsbScanCodeSpecModifierType>>(wrap_array_of_usb_scan_code_spec_modifier_type), from_value: |v| from_val_with::<Vec<super::structs::UsbScanCodeSpecModifierType>>(v, wrap_array_of_usb_scan_code_spec_modifier_type) }),
        ("ArrayOfNotFound", TypeInfo::Value { name: "ArrayOfNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_found) }),
        ("ArrayOfDatacenterConfigSpec", TypeInfo::Value { name: "ArrayOfDatacenterConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DatacenterConfigSpec>>(wrap_array_of_datacenter_config_spec), from_value: |v| from_val_with::<Vec<super::structs::DatacenterConfigSpec>>(v, wrap_array_of_datacenter_config_spec) }),
        ("VsanPerfTopEntities", TypeInfo::Object { name: "VsanPerfTopEntities", builder_fn: || Box::new(VsanPerfTopEntitiesFields::new()) }),
        ("ArrayOfLimitExceeded", TypeInfo::Value { name: "ArrayOfLimitExceeded", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_limit_exceeded), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_limit_exceeded) }),
        ("GenericDrsFault", TypeInfo::Object { name: "GenericDrsFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GenericDrsFault))) }),
        ("VspanDestPortConflict", TypeInfo::Object { name: "VspanDestPortConflict", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VspanDestPortConflict))) }),
        ("ArrayOfMacRange", TypeInfo::Value { name: "ArrayOfMacRange", make_deserializer: || make_deser_with::<Vec<super::structs::MacRange>>(wrap_array_of_mac_range), from_value: |v| from_val_with::<Vec<super::structs::MacRange>>(v, wrap_array_of_mac_range) }),
        ("ArrayOfLongOption", TypeInfo::Value { name: "ArrayOfLongOption", make_deserializer: || make_deser_with::<Vec<super::structs::LongOption>>(wrap_array_of_long_option), from_value: |v| from_val_with::<Vec<super::structs::LongOption>>(v, wrap_array_of_long_option) }),
        ("ArrayOfOvfDuplicateElement", TypeInfo::Value { name: "ArrayOfOvfDuplicateElement", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_duplicate_element), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_duplicate_element) }),
        ("VmfsDatastoreInfo", TypeInfo::Object { name: "VmfsDatastoreInfo", builder_fn: || Box::new(VmfsDatastoreInfoFields::new()) }),
        ("VimVsanHostUpdateStoragePoolDiskSpec", TypeInfo::Object { name: "VimVsanHostUpdateStoragePoolDiskSpec", builder_fn: || Box::new(VimVsanHostUpdateStoragePoolDiskSpecFields::new()) }),
        ("ArrayOfDVSFilterSpecVmknicConnecteeSpec", TypeInfo::Value { name: "ArrayOfDVSFilterSpecVmknicConnecteeSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsFilterSpecVmknicConnecteeSpec>>(wrap_array_of_dvs_filter_spec_vmknic_connectee_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsFilterSpecVmknicConnecteeSpec>>(v, wrap_array_of_dvs_filter_spec_vmknic_connectee_spec) }),
        ("ArrayOfAlarmSetting", TypeInfo::Value { name: "ArrayOfAlarmSetting", make_deserializer: || make_deser_with::<Vec<super::structs::AlarmSetting>>(wrap_array_of_alarm_setting), from_value: |v| from_val_with::<Vec<super::structs::AlarmSetting>>(v, wrap_array_of_alarm_setting) }),
        ("GuestProgramSpec", TypeInfo::Object { name: "GuestProgramSpec", builder_fn: || Box::new(GuestProgramSpecFields::new()) }),
        ("VsanSyncingObjectRecoveryDetails", TypeInfo::Object { name: "VsanSyncingObjectRecoveryDetails", builder_fn: || Box::new(VsanSyncingObjectRecoveryDetailsFields::new()) }),
        ("CannotEnableVmcpForCluster", TypeInfo::Object { name: "CannotEnableVmcpForCluster", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotEnableVmcpForCluster))) }),
        ("ArrayOfDvsFilterConfig", TypeInfo::Value { name: "ArrayOfDvsFilterConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_filter_config_array)), from_value: |v| cast_to_dvs_filter_config_array(from_value(v)?) }),
        ("VmfsMountFault", TypeInfo::Object { name: "VmfsMountFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmfsMountFault))) }),
        ("ArrayOfLogBundlingFailed", TypeInfo::Value { name: "ArrayOfLogBundlingFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_log_bundling_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_log_bundling_failed) }),
        ("ArrayOfVsanIscsiTargetBasicInfo", TypeInfo::Value { name: "ArrayOfVsanIscsiTargetBasicInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_iscsi_target_basic_info_array)), from_value: |v| cast_to_vsan_iscsi_target_basic_info_array(from_value(v)?) }),
        ("CnsVolumeACLConfigureSpec", TypeInfo::Object { name: "CnsVolumeACLConfigureSpec", builder_fn: || Box::new(CnsVolumeAclConfigureSpecFields::new()) }),
        ("ArrayOfVimClusterVSANStretchedClusterFaultDomainConfig", TypeInfo::Value { name: "ArrayOfVimClusterVSANStretchedClusterFaultDomainConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VimClusterVsanStretchedClusterFaultDomainConfig>>(wrap_array_of_vim_cluster_vsan_stretched_cluster_fault_domain_config), from_value: |v| from_val_with::<Vec<super::structs::VimClusterVsanStretchedClusterFaultDomainConfig>>(v, wrap_array_of_vim_cluster_vsan_stretched_cluster_fault_domain_config) }),
        ("VirtualMachineConfigOption", TypeInfo::Object { name: "VirtualMachineConfigOption", builder_fn: || Box::new(VirtualMachineConfigOptionFields::new()) }),
        ("ArrayOfHostCommunication", TypeInfo::Value { name: "ArrayOfHostCommunication", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_communication), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_communication) }),
        ("ArrayOfStorageDrsPodSelectionSpec", TypeInfo::Value { name: "ArrayOfStorageDrsPodSelectionSpec", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsPodSelectionSpec>>(wrap_array_of_storage_drs_pod_selection_spec), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsPodSelectionSpec>>(v, wrap_array_of_storage_drs_pod_selection_spec) }),
        ("ArrayOfServiceProfile", TypeInfo::Value { name: "ArrayOfServiceProfile", make_deserializer: || make_deser_with::<Vec<super::structs::ServiceProfile>>(wrap_array_of_service_profile), from_value: |v| from_val_with::<Vec<super::structs::ServiceProfile>>(v, wrap_array_of_service_profile) }),
        ("ArrayOfLicenseAssignmentFailed", TypeInfo::Value { name: "ArrayOfLicenseAssignmentFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_license_assignment_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_license_assignment_failed) }),
        ("ArrayOfInvalidHostName", TypeInfo::Value { name: "ArrayOfInvalidHostName", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_host_name), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_host_name) }),
        ("ArrayOfVirtualMachineStorageSummary", TypeInfo::Value { name: "ArrayOfVirtualMachineStorageSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineStorageSummary>>(wrap_array_of_virtual_machine_storage_summary), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineStorageSummary>>(v, wrap_array_of_virtual_machine_storage_summary) }),
        ("ArrayOfLicenseManagerState", TypeInfo::Value { name: "ArrayOfLicenseManagerState", make_deserializer: || make_deser_with::<Vec<super::enums::LicenseManagerStateEnum>>(wrap_array_of_license_manager_state), from_value: |v| from_val_with::<Vec<super::enums::LicenseManagerStateEnum>>(v, wrap_array_of_license_manager_state) }),
        ("ClusterComputeResourceHostVmkNicInfo", TypeInfo::Object { name: "ClusterComputeResourceHostVmkNicInfo", builder_fn: || Box::new(ClusterComputeResourceHostVmkNicInfoFields::new()) }),
        ("ArrayOfLocalizationManagerMessageCatalog", TypeInfo::Value { name: "ArrayOfLocalizationManagerMessageCatalog", make_deserializer: || make_deser_with::<Vec<super::structs::LocalizationManagerMessageCatalog>>(wrap_array_of_localization_manager_message_catalog), from_value: |v| from_val_with::<Vec<super::structs::LocalizationManagerMessageCatalog>>(v, wrap_array_of_localization_manager_message_catalog) }),
        ("ArrayOfGuestProgramSpec", TypeInfo::Value { name: "ArrayOfGuestProgramSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_guest_program_spec_array)), from_value: |v| cast_to_guest_program_spec_array(from_value(v)?) }),
        ("ClusterDasDataSummary", TypeInfo::Object { name: "ClusterDasDataSummary", builder_fn: || Box::new(ClusterDasDataSummaryFields::new()) }),
        ("HostNumaInfo", TypeInfo::Object { name: "HostNumaInfo", builder_fn: || Box::new(HostNumaInfoFields::new()) }),
        ("HostFirewallRule", TypeInfo::Object { name: "HostFirewallRule", builder_fn: || Box::new(HostFirewallRuleFields::new()) }),
        ("ArrayOfDvsHostVNicProfile", TypeInfo::Value { name: "ArrayOfDvsHostVNicProfile", make_deserializer: || make_deser_with::<Vec<super::structs::DvsHostVNicProfile>>(wrap_array_of_dvs_host_v_nic_profile), from_value: |v| from_val_with::<Vec<super::structs::DvsHostVNicProfile>>(v, wrap_array_of_dvs_host_v_nic_profile) }),
        ("ClusterComputeResourceClusterConfigResult", TypeInfo::Object { name: "ClusterComputeResourceClusterConfigResult", builder_fn: || Box::new(ClusterComputeResourceClusterConfigResultFields::new()) }),
        ("ArrayOfVsanXvcClientInfoSpec", TypeInfo::Value { name: "ArrayOfVsanXvcClientInfoSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcClientInfoSpec>>(wrap_array_of_vsan_xvc_client_info_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcClientInfoSpec>>(v, wrap_array_of_vsan_xvc_client_info_spec) }),
        ("PlatformConfigFault", TypeInfo::Object { name: "PlatformConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PlatformConfigFault))) }),
        ("ArrayOfSolutionsDeploymentUnitComplianceResult", TypeInfo::Value { name: "ArrayOfSolutionsDeploymentUnitComplianceResult", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsDeploymentUnitComplianceResult>>(wrap_array_of_solutions_deployment_unit_compliance_result), from_value: |v| from_val_with::<Vec<super::structs::SolutionsDeploymentUnitComplianceResult>>(v, wrap_array_of_solutions_deployment_unit_compliance_result) }),
        ("ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfo", TypeInfo::Value { name: "ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfo>>(wrap_array_of_cluster_das_failover_level_advanced_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfo>>(v, wrap_array_of_cluster_das_failover_level_advanced_runtime_info) }),
        ("EnteredMaintenanceModeEvent", TypeInfo::Object { name: "EnteredMaintenanceModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::EnteredMaintenanceModeEvent))) }),
        ("CnsBackingObjectDetails", TypeInfo::Object { name: "CnsBackingObjectDetails", builder_fn: || Box::new(CnsBackingObjectDetailsFields::new()) }),
        ("ArrayOfDevicePciId", TypeInfo::Value { name: "ArrayOfDevicePciId", make_deserializer: || make_deser_with::<Vec<super::structs::DevicePciId>>(wrap_array_of_device_pci_id), from_value: |v| from_val_with::<Vec<super::structs::DevicePciId>>(v, wrap_array_of_device_pci_id) }),
        ("ArrayOfVsanHostEncryptionInfo", TypeInfo::Value { name: "ArrayOfVsanHostEncryptionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostEncryptionInfo>>(wrap_array_of_vsan_host_encryption_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostEncryptionInfo>>(v, wrap_array_of_vsan_host_encryption_info) }),
        ("ArrayOfVsanVcLifecycleCheckSpec", TypeInfo::Value { name: "ArrayOfVsanVcLifecycleCheckSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVcLifecycleCheckSpec>>(wrap_array_of_vsan_vc_lifecycle_check_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanVcLifecycleCheckSpec>>(v, wrap_array_of_vsan_vc_lifecycle_check_spec) }),
        ("VmLogFileQuery", TypeInfo::Object { name: "VmLogFileQuery", builder_fn: || Box::new(VmLogFileQueryFields::new()) }),
        ("VmStaticMacConflictEvent", TypeInfo::Object { name: "VmStaticMacConflictEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmStaticMacConflictEvent))) }),
        ("ArrayOfStorageDrsCannotMoveVmWithNoFilesInLayout", TypeInfo::Value { name: "ArrayOfStorageDrsCannotMoveVmWithNoFilesInLayout", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_cannot_move_vm_with_no_files_in_layout), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_cannot_move_vm_with_no_files_in_layout) }),
        ("VsanNetworkConfigBestPracticeHealth", TypeInfo::Object { name: "VsanNetworkConfigBestPracticeHealth", builder_fn: || Box::new(VsanNetworkConfigBestPracticeHealthFields::new()) }),
        ("HostAddFailedEvent", TypeInfo::Object { name: "HostAddFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostAddFailedEvent))) }),
        ("DvsMergedEvent", TypeInfo::Object { name: "DvsMergedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsMergedEvent))) }),
        ("VirtualMachineDatastoreVolumeOption", TypeInfo::Object { name: "VirtualMachineDatastoreVolumeOption", builder_fn: || Box::new(VirtualMachineDatastoreVolumeOptionFields::new()) }),
        ("HostPMemVolume", TypeInfo::Object { name: "HostPMemVolume", builder_fn: || Box::new(HostPMemVolumeFields::new()) }),
        ("ArrayOfHostCnxFailedTimeoutEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedTimeoutEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_timeout_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_timeout_event) }),
        ("InvalidProfile", TypeInfo::Object { name: "InvalidProfile", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidProfile))) }),
        ("VsanHostAboutInfoEx", TypeInfo::Object { name: "VsanHostAboutInfoEx", builder_fn: || Box::new(VsanHostAboutInfoExFields::new()) }),
        ("NoPermission", TypeInfo::Object { name: "NoPermission", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoPermission))) }),
        ("ArrayOfStoragePerformanceSummary", TypeInfo::Value { name: "ArrayOfStoragePerformanceSummary", make_deserializer: || make_deser_with::<Vec<super::structs::StoragePerformanceSummary>>(wrap_array_of_storage_performance_summary), from_value: |v| from_val_with::<Vec<super::structs::StoragePerformanceSummary>>(v, wrap_array_of_storage_performance_summary) }),
        ("ArrayOfVirtualNVDIMMOption", TypeInfo::Value { name: "ArrayOfVirtualNVDIMMOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualNvdimmOption>>(wrap_array_of_virtual_nvdimm_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualNvdimmOption>>(v, wrap_array_of_virtual_nvdimm_option) }),
        ("SolutionsApplySpec", TypeInfo::Object { name: "SolutionsApplySpec", builder_fn: || Box::new(SolutionsApplySpecFields::new()) }),
        ("HostServiceConfig", TypeInfo::Object { name: "HostServiceConfig", builder_fn: || Box::new(HostServiceConfigFields::new()) }),
        ("ArrayOfRetrieveOptions", TypeInfo::Value { name: "ArrayOfRetrieveOptions", make_deserializer: || make_deser_with::<Vec<super::structs::RetrieveOptions>>(wrap_array_of_retrieve_options), from_value: |v| from_val_with::<Vec<super::structs::RetrieveOptions>>(v, wrap_array_of_retrieve_options) }),
        ("StorageDrsPodConfigSpec", TypeInfo::Object { name: "StorageDrsPodConfigSpec", builder_fn: || Box::new(StorageDrsPodConfigSpecFields::new()) }),
        ("UserInputRequiredParameterMetadata", TypeInfo::Object { name: "UserInputRequiredParameterMetadata", builder_fn: || Box::new(UserInputRequiredParameterMetadataFields::new()) }),
        ("ArrayOfPbmPropertyMismatchFault", TypeInfo::Value { name: "ArrayOfPbmPropertyMismatchFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_property_mismatch_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_property_mismatch_fault) }),
        ("VirtualVmxnet3Option", TypeInfo::Object { name: "VirtualVmxnet3Option", builder_fn: || Box::new(VirtualVmxnet3OptionFields::new()) }),
        ("VsanRemoteClusterQuerySpec", TypeInfo::Object { name: "VsanRemoteClusterQuerySpec", builder_fn: || Box::new(VsanRemoteClusterQuerySpecFields::new()) }),
        ("VsanUpgradeSystemPreflightCheckResult", TypeInfo::Object { name: "VsanUpgradeSystemPreflightCheckResult", builder_fn: || Box::new(VsanUpgradeSystemPreflightCheckResultFields::new()) }),
        ("DvsHostVNicProfile", TypeInfo::Object { name: "DvsHostVNicProfile", builder_fn: || Box::new(DvsHostVNicProfileFields::new()) }),
        ("ArrayOfDVPortConfigInfo", TypeInfo::Value { name: "ArrayOfDVPortConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DvPortConfigInfo>>(wrap_array_of_dv_port_config_info), from_value: |v| from_val_with::<Vec<super::structs::DvPortConfigInfo>>(v, wrap_array_of_dv_port_config_info) }),
        ("ArrayOfVsanRuntimeStatsHostMap", TypeInfo::Value { name: "ArrayOfVsanRuntimeStatsHostMap", make_deserializer: || make_deser_with::<Vec<super::structs::VsanRuntimeStatsHostMap>>(wrap_array_of_vsan_runtime_stats_host_map), from_value: |v| from_val_with::<Vec<super::structs::VsanRuntimeStatsHostMap>>(v, wrap_array_of_vsan_runtime_stats_host_map) }),
        ("VsanIODiagnosticsInstance", TypeInfo::Object { name: "VsanIODiagnosticsInstance", builder_fn: || Box::new(VsanIoDiagnosticsInstanceFields::new()) }),
        ("CannotDecryptPasswords", TypeInfo::Object { name: "CannotDecryptPasswords", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotDecryptPasswords))) }),
        ("HostTpmAttestationInfo", TypeInfo::Object { name: "HostTpmAttestationInfo", builder_fn: || Box::new(HostTpmAttestationInfoFields::new()) }),
        ("FaultDomainFilter", TypeInfo::Object { name: "FaultDomainFilter", builder_fn: || Box::new(FaultDomainFilterFields::new()) }),
        ("ArrayOfHostConfigAppliedEvent", TypeInfo::Value { name: "ArrayOfHostConfigAppliedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_config_applied_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_config_applied_event) }),
        ("ArrayOfVsanFileServiceDomainConfig", TypeInfo::Value { name: "ArrayOfVsanFileServiceDomainConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServiceDomainConfig>>(wrap_array_of_vsan_file_service_domain_config), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServiceDomainConfig>>(v, wrap_array_of_vsan_file_service_domain_config) }),
        ("HostMemoryProfile", TypeInfo::Object { name: "HostMemoryProfile", builder_fn: || Box::new(HostMemoryProfileFields::new()) }),
        ("ArrayOfVsanEsaConfig", TypeInfo::Value { name: "ArrayOfVsanEsaConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanEsaConfig>>(wrap_array_of_vsan_esa_config), from_value: |v| from_val_with::<Vec<super::structs::VsanEsaConfig>>(v, wrap_array_of_vsan_esa_config) }),
        ("ArrayOfGuestFileInfo", TypeInfo::Value { name: "ArrayOfGuestFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestFileInfo>>(wrap_array_of_guest_file_info), from_value: |v| from_val_with::<Vec<super::structs::GuestFileInfo>>(v, wrap_array_of_guest_file_info) }),
        ("PbmCapabilityConstraintInstance", TypeInfo::Object { name: "PbmCapabilityConstraintInstance", builder_fn: || Box::new(PbmCapabilityConstraintInstanceFields::new()) }),
        ("UserPasswordChanged", TypeInfo::Object { name: "UserPasswordChanged", builder_fn: || Box::new(EventFields::new(Some(StructType::UserPasswordChanged))) }),
        ("ArrayOfVMotionLinkDown", TypeInfo::Value { name: "ArrayOfVMotionLinkDown", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_motion_link_down), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_motion_link_down) }),
        ("PbmNonExistentHubs", TypeInfo::Object { name: "PbmNonExistentHubs", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmNonExistentHubs))) }),
        ("StorageIOAllocationOption", TypeInfo::Object { name: "StorageIOAllocationOption", builder_fn: || Box::new(StorageIoAllocationOptionFields::new()) }),
        ("FileFault", TypeInfo::Object { name: "FileFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FileFault))) }),
        ("ArrayOfRoleUpdatedEvent", TypeInfo::Value { name: "ArrayOfRoleUpdatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_role_updated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_role_updated_event) }),
        ("InaccessibleFTMetadataDatastore", TypeInfo::Object { name: "InaccessibleFTMetadataDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InaccessibleFtMetadataDatastore))) }),
        ("ArrayOfTooManySnapshotLevels", TypeInfo::Value { name: "ArrayOfTooManySnapshotLevels", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_too_many_snapshot_levels), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_too_many_snapshot_levels) }),
        ("ArrayOfGatewayToHostConnectFault", TypeInfo::Value { name: "ArrayOfGatewayToHostConnectFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_gateway_to_host_connect_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_gateway_to_host_connect_fault) }),
        ("NamespaceWriteProtected", TypeInfo::Object { name: "NamespaceWriteProtected", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NamespaceWriteProtected))) }),
        ("VirtualPCIPassthroughOption", TypeInfo::Object { name: "VirtualPCIPassthroughOption", builder_fn: || Box::new(VirtualPciPassthroughOptionFields::new()) }),
        ("ArrayOfAccountRemovedEvent", TypeInfo::Value { name: "ArrayOfAccountRemovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_account_removed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_account_removed_event) }),
        ("ArrayOfDrsExitedStandbyModeEvent", TypeInfo::Value { name: "ArrayOfDrsExitedStandbyModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_exited_standby_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_exited_standby_mode_event) }),
        ("ClusterComputeResourceCryptoModePolicy", TypeInfo::Object { name: "ClusterComputeResourceCryptoModePolicy", builder_fn: || Box::new(ClusterComputeResourceCryptoModePolicyFields::new()) }),
        ("ArrayOfVmBeingDeployedEvent", TypeInfo::Value { name: "ArrayOfVmBeingDeployedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_being_deployed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_being_deployed_event) }),
        ("LinkLayerDiscoveryProtocolInfo", TypeInfo::Object { name: "LinkLayerDiscoveryProtocolInfo", builder_fn: || Box::new(LinkLayerDiscoveryProtocolInfoFields::new()) }),
        ("ArrayOfCnsVolumeCreateResult", TypeInfo::Value { name: "ArrayOfCnsVolumeCreateResult", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumeCreateResult>>(wrap_array_of_cns_volume_create_result), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumeCreateResult>>(v, wrap_array_of_cns_volume_create_result) }),
        ("ArrayOfDvsGreEncapNetworkRuleAction", TypeInfo::Value { name: "ArrayOfDvsGreEncapNetworkRuleAction", make_deserializer: || make_deser_with::<Vec<super::structs::DvsGreEncapNetworkRuleAction>>(wrap_array_of_dvs_gre_encap_network_rule_action), from_value: |v| from_val_with::<Vec<super::structs::DvsGreEncapNetworkRuleAction>>(v, wrap_array_of_dvs_gre_encap_network_rule_action) }),
        ("MemoryFileFormatNotSupportedByDatastore", TypeInfo::Object { name: "MemoryFileFormatNotSupportedByDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MemoryFileFormatNotSupportedByDatastore))) }),
        ("GuestRegValueNameSpec", TypeInfo::Object { name: "GuestRegValueNameSpec", builder_fn: || Box::new(GuestRegValueNameSpecFields::new()) }),
        ("ArrayOfVsanClusterHealthResultWithRemediation", TypeInfo::Value { name: "ArrayOfVsanClusterHealthResultWithRemediation", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthResultWithRemediation>>(wrap_array_of_vsan_cluster_health_result_with_remediation), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthResultWithRemediation>>(v, wrap_array_of_vsan_cluster_health_result_with_remediation) }),
        ("DirectPathProfileManagerTargetEntity", TypeInfo::Object { name: "DirectPathProfileManagerTargetEntity", builder_fn: || Box::new(DirectPathProfileManagerTargetEntityFields::new()) }),
        ("ArrayOfNoDiskFound", TypeInfo::Value { name: "ArrayOfNoDiskFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_disk_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_disk_found) }),
        ("VirtualVmxnet3Vrdma", TypeInfo::Object { name: "VirtualVmxnet3Vrdma", builder_fn: || Box::new(VirtualVmxnet3VrdmaFields::new()) }),
        ("NvdimmGuid", TypeInfo::Object { name: "NvdimmGuid", builder_fn: || Box::new(NvdimmGuidFields::new()) }),
        ("ArrayOfVsanClusterWhatifHostFailuresResult", TypeInfo::Value { name: "ArrayOfVsanClusterWhatifHostFailuresResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterWhatifHostFailuresResult>>(wrap_array_of_vsan_cluster_whatif_host_failures_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterWhatifHostFailuresResult>>(v, wrap_array_of_vsan_cluster_whatif_host_failures_result) }),
        ("ArrayOfDatacenterEvent", TypeInfo::Value { name: "ArrayOfDatacenterEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datacenter_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datacenter_event) }),
        ("ArrayOfEVCMode", TypeInfo::Value { name: "ArrayOfEVCMode", make_deserializer: || make_deser_with::<Vec<super::structs::EvcMode>>(wrap_array_of_evc_mode), from_value: |v| from_val_with::<Vec<super::structs::EvcMode>>(v, wrap_array_of_evc_mode) }),
        ("ArrayOfEventFilterSpecByTime", TypeInfo::Value { name: "ArrayOfEventFilterSpecByTime", make_deserializer: || make_deser_with::<Vec<super::structs::EventFilterSpecByTime>>(wrap_array_of_event_filter_spec_by_time), from_value: |v| from_val_with::<Vec<super::structs::EventFilterSpecByTime>>(v, wrap_array_of_event_filter_spec_by_time) }),
        ("DVSNetworkResourcePoolConfigSpec", TypeInfo::Object { name: "DVSNetworkResourcePoolConfigSpec", builder_fn: || Box::new(DvsNetworkResourcePoolConfigSpecFields::new()) }),
        ("VimVasaProviderStatePerArray", TypeInfo::Object { name: "VimVasaProviderStatePerArray", builder_fn: || Box::new(VimVasaProviderStatePerArrayFields::new()) }),
        ("NoCompatibleDatastore", TypeInfo::Object { name: "NoCompatibleDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoCompatibleDatastore))) }),
        ("ProviderNotFound", TypeInfo::Object { name: "ProviderNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProviderNotFound))) }),
        ("NoHost", TypeInfo::Object { name: "NoHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoHost))) }),
        ("HostVmfsSpec", TypeInfo::Object { name: "HostVmfsSpec", builder_fn: || Box::new(HostVmfsSpecFields::new()) }),
        ("ArrayOfKernelModuleSectionInfo", TypeInfo::Value { name: "ArrayOfKernelModuleSectionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::KernelModuleSectionInfo>>(wrap_array_of_kernel_module_section_info), from_value: |v| from_val_with::<Vec<super::structs::KernelModuleSectionInfo>>(v, wrap_array_of_kernel_module_section_info) }),
        ("ArrayOfSnapshotDisabled", TypeInfo::Value { name: "ArrayOfSnapshotDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_disabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_disabled) }),
        ("EVCAdmissionFailedVmActive", TypeInfo::Object { name: "EVCAdmissionFailedVmActive", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcAdmissionFailedVmActive))) }),
        ("ArrayOfMissingIpPool", TypeInfo::Value { name: "ArrayOfMissingIpPool", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_missing_ip_pool), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_missing_ip_pool) }),
        ("StorageDrsPodConfigInfo", TypeInfo::Object { name: "StorageDrsPodConfigInfo", builder_fn: || Box::new(StorageDrsPodConfigInfoFields::new()) }),
        ("ArrayOfFirewallProfile", TypeInfo::Value { name: "ArrayOfFirewallProfile", make_deserializer: || make_deser_with::<Vec<super::structs::FirewallProfile>>(wrap_array_of_firewall_profile), from_value: |v| from_val_with::<Vec<super::structs::FirewallProfile>>(v, wrap_array_of_firewall_profile) }),
        ("SharedBusControllerNotSupported", TypeInfo::Object { name: "SharedBusControllerNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SharedBusControllerNotSupported))) }),
        ("ArrayOfVsanObjectSpaceSummary", TypeInfo::Value { name: "ArrayOfVsanObjectSpaceSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectSpaceSummary>>(wrap_array_of_vsan_object_space_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectSpaceSummary>>(v, wrap_array_of_vsan_object_space_summary) }),
        ("ArrayOfVsanComparator", TypeInfo::Value { name: "ArrayOfVsanComparator", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_comparator_array)), from_value: |v| cast_to_vsan_comparator_array(from_value(v)?) }),
        ("SnapshotMoveFromNonHomeNotSupported", TypeInfo::Object { name: "SnapshotMoveFromNonHomeNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotMoveFromNonHomeNotSupported))) }),
        ("ArrayOfVsanPerfNodeInformation", TypeInfo::Value { name: "ArrayOfVsanPerfNodeInformation", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfNodeInformation>>(wrap_array_of_vsan_perf_node_information), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfNodeInformation>>(v, wrap_array_of_vsan_perf_node_information) }),
        ("NotEnoughLicenses", TypeInfo::Object { name: "NotEnoughLicenses", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotEnoughLicenses))) }),
        ("ClusterDasAdmissionControlPolicy", TypeInfo::Object { name: "ClusterDasAdmissionControlPolicy", builder_fn: || Box::new(ClusterDasAdmissionControlPolicyFields::new()) }),
        ("ArrayOfHbrReplicationTargetSpec", TypeInfo::Value { name: "ArrayOfHbrReplicationTargetSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_hbr_replication_target_spec_array)), from_value: |v| cast_to_hbr_replication_target_spec_array(from_value(v)?) }),
        ("HostProfileConfigInfo", TypeInfo::Object { name: "HostProfileConfigInfo", builder_fn: || Box::new(HostProfileConfigInfoFields::new()) }),
        ("SolutionsSolutionComplianceResult", TypeInfo::Object { name: "SolutionsSolutionComplianceResult", builder_fn: || Box::new(SolutionsSolutionComplianceResultFields::new()) }),
        ("InsufficientHostMemoryCapacityFault", TypeInfo::Object { name: "InsufficientHostMemoryCapacityFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientHostMemoryCapacityFault))) }),
        ("PhysicalNicCdpDeviceCapability", TypeInfo::Object { name: "PhysicalNicCdpDeviceCapability", builder_fn: || Box::new(PhysicalNicCdpDeviceCapabilityFields::new()) }),
        ("ArrayOfHostPosixAccountSpec", TypeInfo::Value { name: "ArrayOfHostPosixAccountSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostPosixAccountSpec>>(wrap_array_of_host_posix_account_spec), from_value: |v| from_val_with::<Vec<super::structs::HostPosixAccountSpec>>(v, wrap_array_of_host_posix_account_spec) }),
        ("HostStatusChangedEvent", TypeInfo::Object { name: "HostStatusChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostStatusChangedEvent))) }),
        ("ArrayOfBaseConfigInfo", TypeInfo::Value { name: "ArrayOfBaseConfigInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_base_config_info_array)), from_value: |v| cast_to_base_config_info_array(from_value(v)?) }),
        ("ArrayOfDvsHostStatusUpdated", TypeInfo::Value { name: "ArrayOfDvsHostStatusUpdated", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_host_status_updated), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_host_status_updated) }),
        ("ArrayOfIORMNotSupportedHostOnDatastore", TypeInfo::Value { name: "ArrayOfIORMNotSupportedHostOnDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iorm_not_supported_host_on_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iorm_not_supported_host_on_datastore) }),
        ("ArrayOfVirtualEthernetCardOpaqueNetworkBackingOption", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardOpaqueNetworkBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEthernetCardOpaqueNetworkBackingOption>>(wrap_array_of_virtual_ethernet_card_opaque_network_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualEthernetCardOpaqueNetworkBackingOption>>(v, wrap_array_of_virtual_ethernet_card_opaque_network_backing_option) }),
        ("ArrayOfVirtualVmxnet2", TypeInfo::Value { name: "ArrayOfVirtualVmxnet2", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualVmxnet2>>(wrap_array_of_virtual_vmxnet_2), from_value: |v| from_val_with::<Vec<super::structs::VirtualVmxnet2>>(v, wrap_array_of_virtual_vmxnet_2) }),
        ("ArrayOfCryptoManagerKmipCryptoKeyStatusWrappingRotationIntervalKeyInfo", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipCryptoKeyStatusWrappingRotationIntervalKeyInfo", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoManagerKmipCryptoKeyStatusWrappingRotationIntervalKeyInfo>>(wrap_array_of_crypto_manager_kmip_crypto_key_status_wrapping_rotation_interval_key_info), from_value: |v| from_val_with::<Vec<super::structs::CryptoManagerKmipCryptoKeyStatusWrappingRotationIntervalKeyInfo>>(v, wrap_array_of_crypto_manager_kmip_crypto_key_status_wrapping_rotation_interval_key_info) }),
        ("VirtualSwitchProfile", TypeInfo::Object { name: "VirtualSwitchProfile", builder_fn: || Box::new(VirtualSwitchProfileFields::new()) }),
        ("ArrayOfVsanPerfTopEntity", TypeInfo::Value { name: "ArrayOfVsanPerfTopEntity", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfTopEntity>>(wrap_array_of_vsan_perf_top_entity), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfTopEntity>>(v, wrap_array_of_vsan_perf_top_entity) }),
        ("VMotionAcrossNetworkNotSupported", TypeInfo::Object { name: "VMotionAcrossNetworkNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VMotionAcrossNetworkNotSupported))) }),
        ("ArrayOfVmSnapshotFileQuery", TypeInfo::Value { name: "ArrayOfVmSnapshotFileQuery", make_deserializer: || make_deser_with::<Vec<super::structs::VmSnapshotFileQuery>>(wrap_array_of_vm_snapshot_file_query), from_value: |v| from_val_with::<Vec<super::structs::VmSnapshotFileQuery>>(v, wrap_array_of_vm_snapshot_file_query) }),
        ("ArrayOfVirtualMachineSriovDevicePoolInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineSriovDevicePoolInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_sriov_device_pool_info_array)), from_value: |v| cast_to_virtual_machine_sriov_device_pool_info_array(from_value(v)?) }),
        ("NotSupportedByProvider", TypeInfo::Object { name: "NotSupportedByProvider", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedByProvider))) }),
        ("VsanHostConfigInfoEx", TypeInfo::Object { name: "VsanHostConfigInfoEx", builder_fn: || Box::new(VsanHostConfigInfoExFields::new()) }),
        ("SessionManagerServiceRequestSpec", TypeInfo::Object { name: "SessionManagerServiceRequestSpec", builder_fn: || Box::new(SessionManagerServiceRequestSpecFields::new()) }),
        ("ArrayOfVsanSpaceUsageWithDatastoreType", TypeInfo::Value { name: "ArrayOfVsanSpaceUsageWithDatastoreType", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSpaceUsageWithDatastoreType>>(wrap_array_of_vsan_space_usage_with_datastore_type), from_value: |v| from_val_with::<Vec<super::structs::VsanSpaceUsageWithDatastoreType>>(v, wrap_array_of_vsan_space_usage_with_datastore_type) }),
        ("ArrayOfEVCUnsupportedByHostHardware", TypeInfo::Value { name: "ArrayOfEVCUnsupportedByHostHardware", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_unsupported_by_host_hardware), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_unsupported_by_host_hardware) }),
        ("HostInternetScsiHbaIPv6Properties", TypeInfo::Object { name: "HostInternetScsiHbaIPv6Properties", builder_fn: || Box::new(HostInternetScsiHbaIPv6PropertiesFields::new()) }),
        ("ClusterDasData", TypeInfo::Object { name: "ClusterDasData", builder_fn: || Box::new(ClusterDasDataFields::new()) }),
        ("MissingAgentIpPool", TypeInfo::Object { name: "MissingAgentIpPool", builder_fn: || Box::new(MissingAgentIpPoolFields::new()) }),
        ("ArrayOfVirtualSATAControllerOption", TypeInfo::Value { name: "ArrayOfVirtualSATAControllerOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_sata_controller_option_array)), from_value: |v| cast_to_virtual_sata_controller_option_array(from_value(v)?) }),
        ("HostVirtualSwitchConfig", TypeInfo::Object { name: "HostVirtualSwitchConfig", builder_fn: || Box::new(HostVirtualSwitchConfigFields::new()) }),
        ("ArrayOfUserUpgradeEvent", TypeInfo::Value { name: "ArrayOfUserUpgradeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_user_upgrade_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_user_upgrade_event) }),
        ("VslmQueryDatastoreInfoResult", TypeInfo::Object { name: "VslmQueryDatastoreInfoResult", builder_fn: || Box::new(VslmQueryDatastoreInfoResultFields::new()) }),
        ("ClusterEVCManagerEVCState", TypeInfo::Object { name: "ClusterEVCManagerEVCState", builder_fn: || Box::new(ClusterEvcManagerEvcStateFields::new()) }),
        ("VslmCreateSpecRawDiskMappingBackingSpec", TypeInfo::Object { name: "VslmCreateSpecRawDiskMappingBackingSpec", builder_fn: || Box::new(VslmCreateSpecRawDiskMappingBackingSpecFields::new()) }),
        ("HostVFlashManagerVFlashResourceRunTimeInfo", TypeInfo::Object { name: "HostVFlashManagerVFlashResourceRunTimeInfo", builder_fn: || Box::new(HostVFlashManagerVFlashResourceRunTimeInfoFields::new()) }),
        ("ArrayOfVsanDatastoreInfo", TypeInfo::Value { name: "ArrayOfVsanDatastoreInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDatastoreInfo>>(wrap_array_of_vsan_datastore_info), from_value: |v| from_val_with::<Vec<super::structs::VsanDatastoreInfo>>(v, wrap_array_of_vsan_datastore_info) }),
        ("ArrayOfIscsiFaultInvalidVnic", TypeInfo::Value { name: "ArrayOfIscsiFaultInvalidVnic", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_invalid_vnic), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_invalid_vnic) }),
        ("ArrayOfTemplateConfigFileQuery", TypeInfo::Value { name: "ArrayOfTemplateConfigFileQuery", make_deserializer: || make_deser_with::<Vec<super::structs::TemplateConfigFileQuery>>(wrap_array_of_template_config_file_query), from_value: |v| from_val_with::<Vec<super::structs::TemplateConfigFileQuery>>(v, wrap_array_of_template_config_file_query) }),
        ("VsanHealthExtMgmtPreCheckResult", TypeInfo::Object { name: "VsanHealthExtMgmtPreCheckResult", builder_fn: || Box::new(VsanHealthExtMgmtPreCheckResultFields::new()) }),
        ("ToolsAlreadyUpgraded", TypeInfo::Object { name: "ToolsAlreadyUpgraded", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ToolsAlreadyUpgraded))) }),
        ("ArrayOfVslmTagEntry", TypeInfo::Value { name: "ArrayOfVslmTagEntry", make_deserializer: || make_deser_with::<Vec<super::structs::VslmTagEntry>>(wrap_array_of_vslm_tag_entry), from_value: |v| from_val_with::<Vec<super::structs::VslmTagEntry>>(v, wrap_array_of_vslm_tag_entry) }),
        ("PbmCapabilityVendorResourceTypeInfo", TypeInfo::Object { name: "PbmCapabilityVendorResourceTypeInfo", builder_fn: || Box::new(PbmCapabilityVendorResourceTypeInfoFields::new()) }),
        ("ArrayOfString", TypeInfo::Value { name: "ArrayOfString", make_deserializer: || make_deser_with::<Vec<String>>(wrap_array_of_string), from_value: |v| from_val_with::<Vec<String>>(v, wrap_array_of_string) }),
        ("ArrayOfVsanFileShareNetPermission", TypeInfo::Value { name: "ArrayOfVsanFileShareNetPermission", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShareNetPermission>>(wrap_array_of_vsan_file_share_net_permission), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShareNetPermission>>(v, wrap_array_of_vsan_file_share_net_permission) }),
        ("ArrayOfVsanXvcQueryPropertyValue", TypeInfo::Value { name: "ArrayOfVsanXvcQueryPropertyValue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcQueryPropertyValue>>(wrap_array_of_vsan_xvc_query_property_value), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcQueryPropertyValue>>(v, wrap_array_of_vsan_xvc_query_property_value) }),
        ("ArrayOfHostPortGroupProfile", TypeInfo::Value { name: "ArrayOfHostPortGroupProfile", make_deserializer: || make_deser_with::<Vec<super::structs::HostPortGroupProfile>>(wrap_array_of_host_port_group_profile), from_value: |v| from_val_with::<Vec<super::structs::HostPortGroupProfile>>(v, wrap_array_of_host_port_group_profile) }),
        ("ArrayOfHostDasDisablingEvent", TypeInfo::Value { name: "ArrayOfHostDasDisablingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_das_disabling_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_das_disabling_event) }),
        ("ArrayOfVsanRdmaConfig", TypeInfo::Value { name: "ArrayOfVsanRdmaConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanRdmaConfig>>(wrap_array_of_vsan_rdma_config), from_value: |v| from_val_with::<Vec<super::structs::VsanRdmaConfig>>(v, wrap_array_of_vsan_rdma_config) }),
        ("ArrayOfVmDeployed", TypeInfo::Value { name: "ArrayOfVmDeployed", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vm_deployed_array)), from_value: |v| cast_to_vm_deployed_array(from_value(v)?) }),
        ("VsanHostAssociatedObjectsResult", TypeInfo::Object { name: "VsanHostAssociatedObjectsResult", builder_fn: || Box::new(VsanHostAssociatedObjectsResultFields::new()) }),
        ("ArrayOfDiskIsUSB", TypeInfo::Value { name: "ArrayOfDiskIsUSB", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disk_is_usb), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disk_is_usb) }),
        ("OvfParseDescriptorParams", TypeInfo::Object { name: "OvfParseDescriptorParams", builder_fn: || Box::new(OvfParseDescriptorParamsFields::new()) }),
        ("ArrayOfDatastoreInfo", TypeInfo::Value { name: "ArrayOfDatastoreInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_datastore_info_array)), from_value: |v| cast_to_datastore_info_array(from_value(v)?) }),
        ("ArrayOfDistributedVirtualSwitchHostMemberPnicBacking", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchHostMemberPnicBacking", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberPnicBacking>>(wrap_array_of_distributed_virtual_switch_host_member_pnic_backing), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberPnicBacking>>(v, wrap_array_of_distributed_virtual_switch_host_member_pnic_backing) }),
        ("PhysicalNic", TypeInfo::Object { name: "PhysicalNic", builder_fn: || Box::new(PhysicalNicFields::new()) }),
        ("ArrayOfFaultToleranceAntiAffinityViolated", TypeInfo::Value { name: "ArrayOfFaultToleranceAntiAffinityViolated", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fault_tolerance_anti_affinity_violated), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fault_tolerance_anti_affinity_violated) }),
        ("ArrayOfHostLicenseConnectInfo", TypeInfo::Value { name: "ArrayOfHostLicenseConnectInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostLicenseConnectInfo>>(wrap_array_of_host_license_connect_info), from_value: |v| from_val_with::<Vec<super::structs::HostLicenseConnectInfo>>(v, wrap_array_of_host_license_connect_info) }),
        ("VsanHealthConfirmationDialog", TypeInfo::Object { name: "VsanHealthConfirmationDialog", builder_fn: || Box::new(VsanHealthConfirmationDialogFields::new()) }),
        ("VsanClusterGlobalDedupHealthSummary", TypeInfo::Object { name: "VsanClusterGlobalDedupHealthSummary", builder_fn: || Box::new(VsanClusterGlobalDedupHealthSummaryFields::new()) }),
        ("ArrayOfIoFilterQueryIssueResult", TypeInfo::Value { name: "ArrayOfIoFilterQueryIssueResult", make_deserializer: || make_deser_with::<Vec<super::structs::IoFilterQueryIssueResult>>(wrap_array_of_io_filter_query_issue_result), from_value: |v| from_val_with::<Vec<super::structs::IoFilterQueryIssueResult>>(v, wrap_array_of_io_filter_query_issue_result) }),
        ("ThirdPartyLicenseAssignmentFailed", TypeInfo::Object { name: "ThirdPartyLicenseAssignmentFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ThirdPartyLicenseAssignmentFailed))) }),
        ("NoMaintenanceModeDrsRecommendationForVM", TypeInfo::Object { name: "NoMaintenanceModeDrsRecommendationForVM", builder_fn: || Box::new(EventFields::new(Some(StructType::NoMaintenanceModeDrsRecommendationForVm))) }),
        ("ArrayOfHostInDomain", TypeInfo::Value { name: "ArrayOfHostInDomain", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_in_domain), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_in_domain) }),
        ("ArrayOfSmsResourceInUse", TypeInfo::Value { name: "ArrayOfSmsResourceInUse", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_sms_resource_in_use), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_sms_resource_in_use) }),
        ("PbmCapabilityNamespaceInfo", TypeInfo::Object { name: "PbmCapabilityNamespaceInfo", builder_fn: || Box::new(PbmCapabilityNamespaceInfoFields::new()) }),
        ("HostNasVolumeConfig", TypeInfo::Object { name: "HostNasVolumeConfig", builder_fn: || Box::new(HostNasVolumeConfigFields::new()) }),
        ("VsanFileServiceHealthSummary", TypeInfo::Object { name: "VsanFileServiceHealthSummary", builder_fn: || Box::new(VsanFileServiceHealthSummaryFields::new()) }),
        ("ArrayOfGuestMultipleMappings", TypeInfo::Value { name: "ArrayOfGuestMultipleMappings", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_multiple_mappings), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_multiple_mappings) }),
        ("ArrayOfPeerNotReachable", TypeInfo::Value { name: "ArrayOfPeerNotReachable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_peer_not_reachable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_peer_not_reachable) }),
        ("HostNoRedundantManagementNetworkEvent", TypeInfo::Object { name: "HostNoRedundantManagementNetworkEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostNoRedundantManagementNetworkEvent))) }),
        ("ArrayOfNetworkProfile", TypeInfo::Value { name: "ArrayOfNetworkProfile", make_deserializer: || make_deser_with::<Vec<super::structs::NetworkProfile>>(wrap_array_of_network_profile), from_value: |v| from_val_with::<Vec<super::structs::NetworkProfile>>(v, wrap_array_of_network_profile) }),
        ("HttpFault", TypeInfo::Object { name: "HttpFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HttpFault))) }),
        ("LinuxVolumeNotClean", TypeInfo::Object { name: "LinuxVolumeNotClean", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LinuxVolumeNotClean))) }),
        ("ArrayOfConfigTarget", TypeInfo::Value { name: "ArrayOfConfigTarget", make_deserializer: || make_deser_with::<Vec<super::structs::ConfigTarget>>(wrap_array_of_config_target), from_value: |v| from_val_with::<Vec<super::structs::ConfigTarget>>(v, wrap_array_of_config_target) }),
        ("ArrayOfPnicUplinkProfile", TypeInfo::Value { name: "ArrayOfPnicUplinkProfile", make_deserializer: || make_deser_with::<Vec<super::structs::PnicUplinkProfile>>(wrap_array_of_pnic_uplink_profile), from_value: |v| from_val_with::<Vec<super::structs::PnicUplinkProfile>>(v, wrap_array_of_pnic_uplink_profile) }),
        ("VsanVibInstallPreflightStatus", TypeInfo::Object { name: "VsanVibInstallPreflightStatus", builder_fn: || Box::new(VsanVibInstallPreflightStatusFields::new()) }),
        ("VsanClusterTelemetryProxyConfig", TypeInfo::Object { name: "VsanClusterTelemetryProxyConfig", builder_fn: || Box::new(VsanClusterTelemetryProxyConfigFields::new()) }),
        ("VsanHostsCompressionOnlyNotSupported", TypeInfo::Object { name: "VsanHostsCompressionOnlyNotSupported", builder_fn: || Box::new(VsanHostsCompressionOnlyNotSupportedFields::new()) }),
        ("AlreadyConnected", TypeInfo::Object { name: "AlreadyConnected", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AlreadyConnected))) }),
        ("ArrayOfVStorageObjectSnapshotInfo", TypeInfo::Value { name: "ArrayOfVStorageObjectSnapshotInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectSnapshotInfo>>(wrap_array_of_v_storage_object_snapshot_info), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectSnapshotInfo>>(v, wrap_array_of_v_storage_object_snapshot_info) }),
        ("ArrayOfVsanHostDiskResult", TypeInfo::Value { name: "ArrayOfVsanHostDiskResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_host_disk_result_array)), from_value: |v| cast_to_vsan_host_disk_result_array(from_value(v)?) }),
        ("GuestRegValueDwordSpec", TypeInfo::Object { name: "GuestRegValueDwordSpec", builder_fn: || Box::new(GuestRegValueDwordSpecFields::new()) }),
        ("VsanVcPostDeployConfigSpec", TypeInfo::Object { name: "VsanVcPostDeployConfigSpec", builder_fn: || Box::new(VsanVcPostDeployConfigSpecFields::new()) }),
        ("ArrayOfCnsNotRegisteredFault", TypeInfo::Value { name: "ArrayOfCnsNotRegisteredFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cns_not_registered_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cns_not_registered_fault) }),
        ("DrsSoftRuleViolationEvent", TypeInfo::Object { name: "DrsSoftRuleViolationEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsSoftRuleViolationEvent))) }),
        ("DistributedVirtualSwitchManagerHostDvsFilterSpec", TypeInfo::Object { name: "DistributedVirtualSwitchManagerHostDvsFilterSpec", builder_fn: || Box::new(DistributedVirtualSwitchManagerHostDvsFilterSpecFields::new()) }),
        ("ArrayOfVimClusterVsanFaultDomainsConfigSpec", TypeInfo::Value { name: "ArrayOfVimClusterVsanFaultDomainsConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VimClusterVsanFaultDomainsConfigSpec>>(wrap_array_of_vim_cluster_vsan_fault_domains_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VimClusterVsanFaultDomainsConfigSpec>>(v, wrap_array_of_vim_cluster_vsan_fault_domains_config_spec) }),
        ("CnsVolumeMetadata", TypeInfo::Object { name: "CnsVolumeMetadata", builder_fn: || Box::new(CnsVolumeMetadataFields::new()) }),
        ("ArrayOfVirtualSriovEthernetCardSriovBackingOption", TypeInfo::Value { name: "ArrayOfVirtualSriovEthernetCardSriovBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSriovEthernetCardSriovBackingOption>>(wrap_array_of_virtual_sriov_ethernet_card_sriov_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSriovEthernetCardSriovBackingOption>>(v, wrap_array_of_virtual_sriov_ethernet_card_sriov_backing_option) }),
        ("OperationDisallowedOnHost", TypeInfo::Object { name: "OperationDisallowedOnHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OperationDisallowedOnHost))) }),
        ("ArrayOfSnapshotMoveToNonHomeNotSupported", TypeInfo::Value { name: "ArrayOfSnapshotMoveToNonHomeNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_move_to_non_home_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_move_to_non_home_not_supported) }),
        ("ArrayOfClusterProfileCreateSpec", TypeInfo::Value { name: "ArrayOfClusterProfileCreateSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_profile_create_spec_array)), from_value: |v| cast_to_cluster_profile_create_spec_array(from_value(v)?) }),
        ("ArrayOfVsanDiskFault", TypeInfo::Value { name: "ArrayOfVsanDiskFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vsan_disk_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vsan_disk_fault) }),
        ("DVSCapability", TypeInfo::Object { name: "DVSCapability", builder_fn: || Box::new(DvsCapabilityFields::new()) }),
        ("ArrayOfNoCustomAgentVmNetwork", TypeInfo::Value { name: "ArrayOfNoCustomAgentVmNetwork", make_deserializer: || make_deser_with::<Vec<super::structs::NoCustomAgentVmNetwork>>(wrap_array_of_no_custom_agent_vm_network), from_value: |v| from_val_with::<Vec<super::structs::NoCustomAgentVmNetwork>>(v, wrap_array_of_no_custom_agent_vm_network) }),
        ("ArrayOfVmBeingClonedEvent", TypeInfo::Value { name: "ArrayOfVmBeingClonedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_being_cloned_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_being_cloned_event) }),
        ("ProfileUpdateFailed", TypeInfo::Object { name: "ProfileUpdateFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProfileUpdateFailed))) }),
        ("HostTpmDigestInfo", TypeInfo::Object { name: "HostTpmDigestInfo", builder_fn: || Box::new(HostTpmDigestInfoFields::new()) }),
        ("NumVirtualCpusIncompatible", TypeInfo::Object { name: "NumVirtualCpusIncompatible", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NumVirtualCpusIncompatible))) }),
        ("HostDigestInfo", TypeInfo::Object { name: "HostDigestInfo", builder_fn: || Box::new(HostDigestInfoFields::new()) }),
        ("WaitOptions", TypeInfo::Object { name: "WaitOptions", builder_fn: || Box::new(WaitOptionsFields::new()) }),
        ("InvalidCAMCertificate", TypeInfo::Object { name: "InvalidCAMCertificate", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidCamCertificate))) }),
        ("CustomizationIPSettings", TypeInfo::Object { name: "CustomizationIPSettings", builder_fn: || Box::new(CustomizationIpSettingsFields::new()) }),
        ("VsanClusterDitEncryptionHealthSummary", TypeInfo::Object { name: "VsanClusterDitEncryptionHealthSummary", builder_fn: || Box::new(VsanClusterDitEncryptionHealthSummaryFields::new()) }),
        ("ArrayOfOrphanedAgency", TypeInfo::Value { name: "ArrayOfOrphanedAgency", make_deserializer: || make_deser_with::<Vec<super::structs::OrphanedAgency>>(wrap_array_of_orphaned_agency), from_value: |v| from_val_with::<Vec<super::structs::OrphanedAgency>>(v, wrap_array_of_orphaned_agency) }),
        ("ArrayOfVsanObjectOverallHealth", TypeInfo::Value { name: "ArrayOfVsanObjectOverallHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectOverallHealth>>(wrap_array_of_vsan_object_overall_health), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectOverallHealth>>(v, wrap_array_of_vsan_object_overall_health) }),
        ("ArrayOfSystemError", TypeInfo::Value { name: "ArrayOfSystemError", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_system_error), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_system_error) }),
        ("AlarmActionTriggeredEvent", TypeInfo::Object { name: "AlarmActionTriggeredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmActionTriggeredEvent))) }),
        ("HostInternetScsiHbaDiscoveryProperties", TypeInfo::Object { name: "HostInternetScsiHbaDiscoveryProperties", builder_fn: || Box::new(HostInternetScsiHbaDiscoveryPropertiesFields::new()) }),
        ("MethodDescription", TypeInfo::Object { name: "MethodDescription", builder_fn: || Box::new(MethodDescriptionFields::new()) }),
        ("ResourceAllocationOption", TypeInfo::Object { name: "ResourceAllocationOption", builder_fn: || Box::new(ResourceAllocationOptionFields::new()) }),
        ("ArrayOfVsanCapability", TypeInfo::Value { name: "ArrayOfVsanCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VsanCapability>>(wrap_array_of_vsan_capability), from_value: |v| from_val_with::<Vec<super::structs::VsanCapability>>(v, wrap_array_of_vsan_capability) }),
        ("ArrayOfVirtualMachineConfigInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineConfigInfo>>(wrap_array_of_virtual_machine_config_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineConfigInfo>>(v, wrap_array_of_virtual_machine_config_info) }),
        ("ArrayOfHostDatastoreConnectInfo", TypeInfo::Value { name: "ArrayOfHostDatastoreConnectInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_datastore_connect_info_array)), from_value: |v| cast_to_host_datastore_connect_info_array(from_value(v)?) }),
        ("ArrayOfVmTimedoutStartingSecondaryEvent", TypeInfo::Value { name: "ArrayOfVmTimedoutStartingSecondaryEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_timedout_starting_secondary_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_timedout_starting_secondary_event) }),
        ("ArrayOfAlarmFilter", TypeInfo::Value { name: "ArrayOfAlarmFilter", make_deserializer: || make_deser_with::<Vec<super::structs::AlarmFilter>>(wrap_array_of_alarm_filter), from_value: |v| from_val_with::<Vec<super::structs::AlarmFilter>>(v, wrap_array_of_alarm_filter) }),
        ("ArrayOfManagedHostNotReachable", TypeInfo::Value { name: "ArrayOfManagedHostNotReachable", make_deserializer: || make_deser_with::<Vec<super::structs::ManagedHostNotReachable>>(wrap_array_of_managed_host_not_reachable), from_value: |v| from_val_with::<Vec<super::structs::ManagedHostNotReachable>>(v, wrap_array_of_managed_host_not_reachable) }),
        ("ArrayOfVirtualMachineToolsStatus", TypeInfo::Value { name: "ArrayOfVirtualMachineToolsStatus", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualMachineToolsStatusEnum>>(wrap_array_of_virtual_machine_tools_status), from_value: |v| from_val_with::<Vec<super::enums::VirtualMachineToolsStatusEnum>>(v, wrap_array_of_virtual_machine_tools_status) }),
        ("ArrayOfHostEnableAdminFailedEvent", TypeInfo::Value { name: "ArrayOfHostEnableAdminFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_enable_admin_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_enable_admin_failed_event) }),
        ("HostDiskMappingPartitionInfo", TypeInfo::Object { name: "HostDiskMappingPartitionInfo", builder_fn: || Box::new(HostDiskMappingPartitionInfoFields::new()) }),
        ("AlarmRemovedEvent", TypeInfo::Object { name: "AlarmRemovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmRemovedEvent))) }),
        ("VirtualUSBRemoteClientBackingInfo", TypeInfo::Object { name: "VirtualUSBRemoteClientBackingInfo", builder_fn: || Box::new(VirtualUsbRemoteClientBackingInfoFields::new()) }),
        ("EnumDescription", TypeInfo::Object { name: "EnumDescription", builder_fn: || Box::new(EnumDescriptionFields::new()) }),
        ("ArrayOfOvfDiskOrderConstraint", TypeInfo::Value { name: "ArrayOfOvfDiskOrderConstraint", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_disk_order_constraint), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_disk_order_constraint) }),
        ("HostTpmBootCompleteEventDetails", TypeInfo::Object { name: "HostTpmBootCompleteEventDetails", builder_fn: || Box::new(HostTpmBootCompleteEventDetailsFields::new()) }),
        ("ArrayOfVsanSmartParameter", TypeInfo::Value { name: "ArrayOfVsanSmartParameter", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSmartParameter>>(wrap_array_of_vsan_smart_parameter), from_value: |v| from_val_with::<Vec<super::structs::VsanSmartParameter>>(v, wrap_array_of_vsan_smart_parameter) }),
        ("DvsFilterConfig", TypeInfo::Object { name: "DvsFilterConfig", builder_fn: || Box::new(DvsFilterConfigFields::new()) }),
        ("ArrayOfVmUpgradingEvent", TypeInfo::Value { name: "ArrayOfVmUpgradingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_upgrading_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_upgrading_event) }),
        ("DVPortgroupConfigSpec", TypeInfo::Object { name: "DVPortgroupConfigSpec", builder_fn: || Box::new(DvPortgroupConfigSpecFields::new()) }),
        ("ArrayOfSolutionsStoragePolicy", TypeInfo::Value { name: "ArrayOfSolutionsStoragePolicy", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_solutions_storage_policy_array)), from_value: |v| cast_to_solutions_storage_policy_array(from_value(v)?) }),
        ("InvalidVmState", TypeInfo::Object { name: "InvalidVmState", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidVmState))) }),
        ("HostSyncFailedEvent", TypeInfo::Object { name: "HostSyncFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostSyncFailedEvent))) }),
        ("ArrayOfSnapshotCloneNotSupported", TypeInfo::Value { name: "ArrayOfSnapshotCloneNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_clone_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_clone_not_supported) }),
        ("ArrayOfCannotReconfigureVsanWhenHaEnabled", TypeInfo::Value { name: "ArrayOfCannotReconfigureVsanWhenHaEnabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_reconfigure_vsan_when_ha_enabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_reconfigure_vsan_when_ha_enabled) }),
        ("ArrayOfDatastoreNamespaceManagerDirectoryInfo", TypeInfo::Value { name: "ArrayOfDatastoreNamespaceManagerDirectoryInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DatastoreNamespaceManagerDirectoryInfo>>(wrap_array_of_datastore_namespace_manager_directory_info), from_value: |v| from_val_with::<Vec<super::structs::DatastoreNamespaceManagerDirectoryInfo>>(v, wrap_array_of_datastore_namespace_manager_directory_info) }),
        ("VsanHclNicInfo", TypeInfo::Object { name: "VsanHclNicInfo", builder_fn: || Box::new(VsanHclNicInfoFields::new()) }),
        ("VirtualMachineUUID", TypeInfo::Object { name: "VirtualMachineUUID", builder_fn: || Box::new(VirtualMachineUuidFields::new()) }),
        ("ArrayOfEventArgDesc", TypeInfo::Value { name: "ArrayOfEventArgDesc", make_deserializer: || make_deser_with::<Vec<super::structs::EventArgDesc>>(wrap_array_of_event_arg_desc), from_value: |v| from_val_with::<Vec<super::structs::EventArgDesc>>(v, wrap_array_of_event_arg_desc) }),
        ("ArrayOfAlarmSnmpCompletedEvent", TypeInfo::Value { name: "ArrayOfAlarmSnmpCompletedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_snmp_completed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_snmp_completed_event) }),
        ("FeatureEVCMode", TypeInfo::Object { name: "FeatureEVCMode", builder_fn: || Box::new(FeatureEvcModeFields::new()) }),
        ("SnapshotIncompatibleDeviceInVm", TypeInfo::Object { name: "SnapshotIncompatibleDeviceInVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotIncompatibleDeviceInVm))) }),
        ("ArrayOfFileBackedPortNotSupported", TypeInfo::Value { name: "ArrayOfFileBackedPortNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_file_backed_port_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_file_backed_port_not_supported) }),
        ("ArrayOfGuestNicInfo", TypeInfo::Value { name: "ArrayOfGuestNicInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestNicInfo>>(wrap_array_of_guest_nic_info), from_value: |v| from_val_with::<Vec<super::structs::GuestNicInfo>>(v, wrap_array_of_guest_nic_info) }),
        ("CannotAccessVmDisk", TypeInfo::Object { name: "CannotAccessVmDisk", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotAccessVmDisk))) }),
        ("ArrayOfVsanHclDriverInfo", TypeInfo::Value { name: "ArrayOfVsanHclDriverInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclDriverInfo>>(wrap_array_of_vsan_hcl_driver_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHclDriverInfo>>(v, wrap_array_of_vsan_hcl_driver_info) }),
        ("ArrayOfServiceLocatorSAMLCredential", TypeInfo::Value { name: "ArrayOfServiceLocatorSAMLCredential", make_deserializer: || make_deser_with::<Vec<super::structs::ServiceLocatorSamlCredential>>(wrap_array_of_service_locator_saml_credential), from_value: |v| from_val_with::<Vec<super::structs::ServiceLocatorSamlCredential>>(v, wrap_array_of_service_locator_saml_credential) }),
        ("ArrayOfPbmComplianceResult", TypeInfo::Value { name: "ArrayOfPbmComplianceResult", make_deserializer: || make_deser_with::<Vec<super::structs::PbmComplianceResult>>(wrap_array_of_pbm_compliance_result), from_value: |v| from_val_with::<Vec<super::structs::PbmComplianceResult>>(v, wrap_array_of_pbm_compliance_result) }),
        ("ArrayOfVsanUnknownScanIssue", TypeInfo::Value { name: "ArrayOfVsanUnknownScanIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUnknownScanIssue>>(wrap_array_of_vsan_unknown_scan_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUnknownScanIssue>>(v, wrap_array_of_vsan_unknown_scan_issue) }),
        ("ArrayOfVmfsDatastoreAllExtentOption", TypeInfo::Value { name: "ArrayOfVmfsDatastoreAllExtentOption", make_deserializer: || make_deser_with::<Vec<super::structs::VmfsDatastoreAllExtentOption>>(wrap_array_of_vmfs_datastore_all_extent_option), from_value: |v| from_val_with::<Vec<super::structs::VmfsDatastoreAllExtentOption>>(v, wrap_array_of_vmfs_datastore_all_extent_option) }),
        ("DvsPortDeletedEvent", TypeInfo::Object { name: "DvsPortDeletedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortDeletedEvent))) }),
        ("VmStartReplayingEvent", TypeInfo::Object { name: "VmStartReplayingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmStartReplayingEvent))) }),
        ("ArrayOfTaskScheduler", TypeInfo::Value { name: "ArrayOfTaskScheduler", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_task_scheduler_array)), from_value: |v| cast_to_task_scheduler_array(from_value(v)?) }),
        ("ArrayOfInsufficientCpuResourcesFault", TypeInfo::Value { name: "ArrayOfInsufficientCpuResourcesFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_cpu_resources_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_cpu_resources_fault) }),
        ("TooManyNativeCloneLevels", TypeInfo::Object { name: "TooManyNativeCloneLevels", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TooManyNativeCloneLevels))) }),
        ("KeyAnyValue", TypeInfo::Object { name: "KeyAnyValue", builder_fn: || Box::new(KeyAnyValueFields::new()) }),
        ("ArrayOfOvfUnsupportedPackage", TypeInfo::Value { name: "ArrayOfOvfUnsupportedPackage", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_package), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_package) }),
        ("HostLowLevelProvisioningManagerVmRecoveryInfo", TypeInfo::Object { name: "HostLowLevelProvisioningManagerVmRecoveryInfo", builder_fn: || Box::new(HostLowLevelProvisioningManagerVmRecoveryInfoFields::new()) }),
        ("ArrayOfSolutionsSolutionConfig", TypeInfo::Value { name: "ArrayOfSolutionsSolutionConfig", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsSolutionConfig>>(wrap_array_of_solutions_solution_config), from_value: |v| from_val_with::<Vec<super::structs::SolutionsSolutionConfig>>(v, wrap_array_of_solutions_solution_config) }),
        ("VirtualWDT", TypeInfo::Object { name: "VirtualWDT", builder_fn: || Box::new(VirtualWdtFields::new()) }),
        ("ArrayOfDiagnosticManagerAuditRecordResult", TypeInfo::Value { name: "ArrayOfDiagnosticManagerAuditRecordResult", make_deserializer: || make_deser_with::<Vec<super::structs::DiagnosticManagerAuditRecordResult>>(wrap_array_of_diagnostic_manager_audit_record_result), from_value: |v| from_val_with::<Vec<super::structs::DiagnosticManagerAuditRecordResult>>(v, wrap_array_of_diagnostic_manager_audit_record_result) }),
        ("HostEnableAdminFailedEvent", TypeInfo::Object { name: "HostEnableAdminFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostEnableAdminFailedEvent))) }),
        ("ArrayOfClusterNetworkConfigSpec", TypeInfo::Value { name: "ArrayOfClusterNetworkConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterNetworkConfigSpec>>(wrap_array_of_cluster_network_config_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterNetworkConfigSpec>>(v, wrap_array_of_cluster_network_config_spec) }),
        ("HostNetworkConfig", TypeInfo::Object { name: "HostNetworkConfig", builder_fn: || Box::new(HostNetworkConfigFields::new()) }),
        ("ArrayOfVibRequirementsNotMetByHost", TypeInfo::Value { name: "ArrayOfVibRequirementsNotMetByHost", make_deserializer: || make_deser_with::<Vec<super::structs::VibRequirementsNotMetByHost>>(wrap_array_of_vib_requirements_not_met_by_host), from_value: |v| from_val_with::<Vec<super::structs::VibRequirementsNotMetByHost>>(v, wrap_array_of_vib_requirements_not_met_by_host) }),
        ("ArrayOfSupportedVendorModelMapping", TypeInfo::Value { name: "ArrayOfSupportedVendorModelMapping", make_deserializer: || make_deser_with::<Vec<super::structs::SupportedVendorModelMapping>>(wrap_array_of_supported_vendor_model_mapping), from_value: |v| from_val_with::<Vec<super::structs::SupportedVendorModelMapping>>(v, wrap_array_of_supported_vendor_model_mapping) }),
        ("SystemEventInfo", TypeInfo::Object { name: "SystemEventInfo", builder_fn: || Box::new(SystemEventInfoFields::new()) }),
        ("ArrayOfHttpNfcLeaseDatastoreLeaseInfo", TypeInfo::Value { name: "ArrayOfHttpNfcLeaseDatastoreLeaseInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HttpNfcLeaseDatastoreLeaseInfo>>(wrap_array_of_http_nfc_lease_datastore_lease_info), from_value: |v| from_val_with::<Vec<super::structs::HttpNfcLeaseDatastoreLeaseInfo>>(v, wrap_array_of_http_nfc_lease_datastore_lease_info) }),
        ("ArrayOfVimVsanHostStoragePoolDiskInfo", TypeInfo::Value { name: "ArrayOfVimVsanHostStoragePoolDiskInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostStoragePoolDiskInfo>>(wrap_array_of_vim_vsan_host_storage_pool_disk_info), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostStoragePoolDiskInfo>>(v, wrap_array_of_vim_vsan_host_storage_pool_disk_info) }),
        ("ArrayOfVsanHealthCmdBasedAction", TypeInfo::Value { name: "ArrayOfVsanHealthCmdBasedAction", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthCmdBasedAction>>(wrap_array_of_vsan_health_cmd_based_action), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthCmdBasedAction>>(v, wrap_array_of_vsan_health_cmd_based_action) }),
        ("ArrayOfPowerSystemInfo", TypeInfo::Value { name: "ArrayOfPowerSystemInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PowerSystemInfo>>(wrap_array_of_power_system_info), from_value: |v| from_val_with::<Vec<super::structs::PowerSystemInfo>>(v, wrap_array_of_power_system_info) }),
        ("VsanUpgradeStatusEx", TypeInfo::Object { name: "VsanUpgradeStatusEx", builder_fn: || Box::new(VsanUpgradeStatusExFields::new()) }),
        ("ArrayOfVsanBasicDeviceInfo", TypeInfo::Value { name: "ArrayOfVsanBasicDeviceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanBasicDeviceInfo>>(wrap_array_of_vsan_basic_device_info), from_value: |v| from_val_with::<Vec<super::structs::VsanBasicDeviceInfo>>(v, wrap_array_of_vsan_basic_device_info) }),
        ("KmipServerSpecWrappingRotationIntervalKeySpec", TypeInfo::Object { name: "KmipServerSpecWrappingRotationIntervalKeySpec", builder_fn: || Box::new(KmipServerSpecWrappingRotationIntervalKeySpecFields::new()) }),
        ("CustomizationUnknownName", TypeInfo::Object { name: "CustomizationUnknownName", builder_fn: || Box::new(CustomizationUnknownNameFields::new()) }),
        ("ArrayOfDrsExitingStandbyModeEvent", TypeInfo::Value { name: "ArrayOfDrsExitingStandbyModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_exiting_standby_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_exiting_standby_mode_event) }),
        ("ArrayOfLicenseNonComplianceEvent", TypeInfo::Value { name: "ArrayOfLicenseNonComplianceEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_license_non_compliance_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_license_non_compliance_event) }),
        ("ArrayOfVAppProductInfo", TypeInfo::Value { name: "ArrayOfVAppProductInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VAppProductInfo>>(wrap_array_of_v_app_product_info), from_value: |v| from_val_with::<Vec<super::structs::VAppProductInfo>>(v, wrap_array_of_v_app_product_info) }),
        ("ArrayOfVsanComplianceQuerySpec", TypeInfo::Value { name: "ArrayOfVsanComplianceQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanComplianceQuerySpec>>(wrap_array_of_vsan_compliance_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanComplianceQuerySpec>>(v, wrap_array_of_vsan_compliance_query_spec) }),
        ("PlacementAction", TypeInfo::Object { name: "PlacementAction", builder_fn: || Box::new(PlacementActionFields::new()) }),
        ("ArrayOfScheduledTaskDetail", TypeInfo::Value { name: "ArrayOfScheduledTaskDetail", make_deserializer: || make_deser_with::<Vec<super::structs::ScheduledTaskDetail>>(wrap_array_of_scheduled_task_detail), from_value: |v| from_val_with::<Vec<super::structs::ScheduledTaskDetail>>(v, wrap_array_of_scheduled_task_detail) }),
        ("IpHostnameGeneratorError", TypeInfo::Object { name: "IpHostnameGeneratorError", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IpHostnameGeneratorError))) }),
        ("HostProfileHostBasedConfigSpec", TypeInfo::Object { name: "HostProfileHostBasedConfigSpec", builder_fn: || Box::new(HostProfileHostBasedConfigSpecFields::new()) }),
        ("IoFilterInfo", TypeInfo::Object { name: "IoFilterInfo", builder_fn: || Box::new(IoFilterInfoFields::new()) }),
        ("HostTpmVersionEventDetails", TypeInfo::Object { name: "HostTpmVersionEventDetails", builder_fn: || Box::new(HostTpmVersionEventDetailsFields::new()) }),
        ("ArrayOfVmDasBeingResetEvent", TypeInfo::Value { name: "ArrayOfVmDasBeingResetEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_das_being_reset_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_das_being_reset_event) }),
        ("ArrayOfGhostDvsProxySwitchRemovedEvent", TypeInfo::Value { name: "ArrayOfGhostDvsProxySwitchRemovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_ghost_dvs_proxy_switch_removed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_ghost_dvs_proxy_switch_removed_event) }),
        ("DatastoreSummary", TypeInfo::Object { name: "DatastoreSummary", builder_fn: || Box::new(DatastoreSummaryFields::new()) }),
        ("VirtualMachineIdeDiskDeviceInfo", TypeInfo::Object { name: "VirtualMachineIdeDiskDeviceInfo", builder_fn: || Box::new(VirtualMachineIdeDiskDeviceInfoFields::new()) }),
        ("ArrayOfDataObject", TypeInfo::Value { name: "ArrayOfDataObject", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_data_object_array)), from_value: |v| cast_to_data_object_array(from_value(v)?) }),
        ("ArrayOfClusterGroupSpec", TypeInfo::Value { name: "ArrayOfClusterGroupSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterGroupSpec>>(wrap_array_of_cluster_group_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterGroupSpec>>(v, wrap_array_of_cluster_group_spec) }),
        ("DVPortgroupSelection", TypeInfo::Object { name: "DVPortgroupSelection", builder_fn: || Box::new(DvPortgroupSelectionFields::new()) }),
        ("AgentOvfEnvironmentInfoOvfProperty", TypeInfo::Object { name: "AgentOvfEnvironmentInfoOvfProperty", builder_fn: || Box::new(AgentOvfEnvironmentInfoOvfPropertyFields::new()) }),
        ("ArrayOfVsanHostAssociatedObjectsResult", TypeInfo::Value { name: "ArrayOfVsanHostAssociatedObjectsResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostAssociatedObjectsResult>>(wrap_array_of_vsan_host_associated_objects_result), from_value: |v| from_val_with::<Vec<super::structs::VsanHostAssociatedObjectsResult>>(v, wrap_array_of_vsan_host_associated_objects_result) }),
        ("DvsPortRuntimeChangeEvent", TypeInfo::Object { name: "DvsPortRuntimeChangeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortRuntimeChangeEvent))) }),
        ("ArrayOfVmSuspendedEvent", TypeInfo::Value { name: "ArrayOfVmSuspendedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_suspended_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_suspended_event) }),
        ("ClusterComputeResourceHCIConfigInfo", TypeInfo::Object { name: "ClusterComputeResourceHCIConfigInfo", builder_fn: || Box::new(ClusterComputeResourceHciConfigInfoFields::new()) }),
        ("ArrayOfAlarmTriggeringAction", TypeInfo::Value { name: "ArrayOfAlarmTriggeringAction", make_deserializer: || make_deser_with::<Vec<super::structs::AlarmTriggeringAction>>(wrap_array_of_alarm_triggering_action), from_value: |v| from_val_with::<Vec<super::structs::AlarmTriggeringAction>>(v, wrap_array_of_alarm_triggering_action) }),
        ("NoCustomAgentVmDatastore", TypeInfo::Object { name: "NoCustomAgentVmDatastore", builder_fn: || Box::new(NoCustomAgentVmDatastoreFields::new()) }),
        ("StorageDrsIolbDisabledInternally", TypeInfo::Object { name: "StorageDrsIolbDisabledInternally", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsIolbDisabledInternally))) }),
        ("ArrayOfVslmVsoVStorageObjectResult", TypeInfo::Value { name: "ArrayOfVslmVsoVStorageObjectResult", make_deserializer: || make_deser_with::<Vec<super::structs::VslmVsoVStorageObjectResult>>(wrap_array_of_vslm_vso_v_storage_object_result), from_value: |v| from_val_with::<Vec<super::structs::VslmVsoVStorageObjectResult>>(v, wrap_array_of_vslm_vso_v_storage_object_result) }),
        ("PatchMetadataNotFound", TypeInfo::Object { name: "PatchMetadataNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PatchMetadataNotFound))) }),
        ("ArrayOfInvalidSession", TypeInfo::Value { name: "ArrayOfInvalidSession", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_session), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_session) }),
        ("ArrayOfVmHostAffinityRuleViolation", TypeInfo::Value { name: "ArrayOfVmHostAffinityRuleViolation", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_host_affinity_rule_violation), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_host_affinity_rule_violation) }),
        ("HostSnmpSystemAgentLimits", TypeInfo::Object { name: "HostSnmpSystemAgentLimits", builder_fn: || Box::new(HostSnmpSystemAgentLimitsFields::new()) }),
        ("VsanRdmaConfig", TypeInfo::Object { name: "VsanRdmaConfig", builder_fn: || Box::new(VsanRdmaConfigFields::new()) }),
        ("ArrayOfHostIpChangedEvent", TypeInfo::Value { name: "ArrayOfHostIpChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_ip_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_ip_changed_event) }),
        ("ArrayOfEventAlarmExpression", TypeInfo::Value { name: "ArrayOfEventAlarmExpression", make_deserializer: || make_deser_with::<Vec<super::structs::EventAlarmExpression>>(wrap_array_of_event_alarm_expression), from_value: |v| from_val_with::<Vec<super::structs::EventAlarmExpression>>(v, wrap_array_of_event_alarm_expression) }),
        ("ArrayOfVirtualPrecisionClockSystemClockBackingOption", TypeInfo::Value { name: "ArrayOfVirtualPrecisionClockSystemClockBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPrecisionClockSystemClockBackingOption>>(wrap_array_of_virtual_precision_clock_system_clock_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPrecisionClockSystemClockBackingOption>>(v, wrap_array_of_virtual_precision_clock_system_clock_backing_option) }),
        ("StorageLun", TypeInfo::Object { name: "StorageLun", builder_fn: || Box::new(StorageLunFields::new()) }),
        ("ArrayOfNoDiscoverableAgentVmNetwork", TypeInfo::Value { name: "ArrayOfNoDiscoverableAgentVmNetwork", make_deserializer: || make_deser_with::<Vec<super::structs::NoDiscoverableAgentVmNetwork>>(wrap_array_of_no_discoverable_agent_vm_network), from_value: |v| from_val_with::<Vec<super::structs::NoDiscoverableAgentVmNetwork>>(v, wrap_array_of_no_discoverable_agent_vm_network) }),
        ("VsanSpaceQuerySpec", TypeInfo::Object { name: "VsanSpaceQuerySpec", builder_fn: || Box::new(VsanSpaceQuerySpecFields::new()) }),
        ("VsanConfigInfoEx", TypeInfo::Object { name: "VsanConfigInfoEx", builder_fn: || Box::new(VsanConfigInfoExFields::new()) }),
        ("ArrayOfTooManyHosts", TypeInfo::Value { name: "ArrayOfTooManyHosts", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_too_many_hosts), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_too_many_hosts) }),
        ("VirtualMachineForkConfigInfo", TypeInfo::Object { name: "VirtualMachineForkConfigInfo", builder_fn: || Box::new(VirtualMachineForkConfigInfoFields::new()) }),
        ("CustomizationSpecItem", TypeInfo::Object { name: "CustomizationSpecItem", builder_fn: || Box::new(CustomizationSpecItemFields::new()) }),
        ("ArrayOfVirtualMachineVMotionStunTimeInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineVMotionStunTimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVMotionStunTimeInfo>>(wrap_array_of_virtual_machine_v_motion_stun_time_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVMotionStunTimeInfo>>(v, wrap_array_of_virtual_machine_v_motion_stun_time_info) }),
        ("CnsRankedLowerFault", TypeInfo::Object { name: "CnsRankedLowerFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CnsRankedLowerFault))) }),
        ("ArrayOfTargetDeviceId", TypeInfo::Value { name: "ArrayOfTargetDeviceId", make_deserializer: || make_deser_with::<Vec<super::structs::TargetDeviceId>>(wrap_array_of_target_device_id), from_value: |v| from_val_with::<Vec<super::structs::TargetDeviceId>>(v, wrap_array_of_target_device_id) }),
        ("Description", TypeInfo::Object { name: "Description", builder_fn: || Box::new(DescriptionFields::new()) }),
        ("ArrayOfOvfDuplicatedElementBoundary", TypeInfo::Value { name: "ArrayOfOvfDuplicatedElementBoundary", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_duplicated_element_boundary), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_duplicated_element_boundary) }),
        ("ArrayOfPropertyChangeOp", TypeInfo::Value { name: "ArrayOfPropertyChangeOp", make_deserializer: || make_deser_with::<Vec<super::enums::PropertyChangeOpEnum>>(wrap_array_of_property_change_op), from_value: |v| from_val_with::<Vec<super::enums::PropertyChangeOpEnum>>(v, wrap_array_of_property_change_op) }),
        ("VFlashModuleNotSupported", TypeInfo::Object { name: "VFlashModuleNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VFlashModuleNotSupported))) }),
        ("ArrayOfGroupErrorResult", TypeInfo::Value { name: "ArrayOfGroupErrorResult", make_deserializer: || make_deser_with::<Vec<super::structs::GroupErrorResult>>(wrap_array_of_group_error_result), from_value: |v| from_val_with::<Vec<super::structs::GroupErrorResult>>(v, wrap_array_of_group_error_result) }),
        ("FileNameTooLong", TypeInfo::Object { name: "FileNameTooLong", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FileNameTooLong))) }),
        ("ArrayOfVirtualWDT", TypeInfo::Value { name: "ArrayOfVirtualWDT", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualWdt>>(wrap_array_of_virtual_wdt), from_value: |v| from_val_with::<Vec<super::structs::VirtualWdt>>(v, wrap_array_of_virtual_wdt) }),
        ("ArrayOfHostLockdownMode", TypeInfo::Value { name: "ArrayOfHostLockdownMode", make_deserializer: || make_deser_with::<Vec<super::enums::HostLockdownModeEnum>>(wrap_array_of_host_lockdown_mode), from_value: |v| from_val_with::<Vec<super::enums::HostLockdownModeEnum>>(v, wrap_array_of_host_lockdown_mode) }),
        ("ArrayOfVirtualDiskFlatVer2BackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDiskFlatVer2BackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskFlatVer2BackingInfo>>(wrap_array_of_virtual_disk_flat_ver_2_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskFlatVer2BackingInfo>>(v, wrap_array_of_virtual_disk_flat_ver_2_backing_info) }),
        ("ArrayOfHostConnectSpec", TypeInfo::Value { name: "ArrayOfHostConnectSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostConnectSpec>>(wrap_array_of_host_connect_spec), from_value: |v| from_val_with::<Vec<super::structs::HostConnectSpec>>(v, wrap_array_of_host_connect_spec) }),
        ("HostLicenseSpec", TypeInfo::Object { name: "HostLicenseSpec", builder_fn: || Box::new(HostLicenseSpecFields::new()) }),
        ("ArrayOfHostRdmaDeviceConnectionInfo", TypeInfo::Value { name: "ArrayOfHostRdmaDeviceConnectionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostRdmaDeviceConnectionInfo>>(wrap_array_of_host_rdma_device_connection_info), from_value: |v| from_val_with::<Vec<super::structs::HostRdmaDeviceConnectionInfo>>(v, wrap_array_of_host_rdma_device_connection_info) }),
        ("ArrayOfGuestInfoVirtualDiskMapping", TypeInfo::Value { name: "ArrayOfGuestInfoVirtualDiskMapping", make_deserializer: || make_deser_with::<Vec<super::structs::GuestInfoVirtualDiskMapping>>(wrap_array_of_guest_info_virtual_disk_mapping), from_value: |v| from_val_with::<Vec<super::structs::GuestInfoVirtualDiskMapping>>(v, wrap_array_of_guest_info_virtual_disk_mapping) }),
        ("ArrayOfVsanHostCreateNativeKeyProviderSpec", TypeInfo::Value { name: "ArrayOfVsanHostCreateNativeKeyProviderSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostCreateNativeKeyProviderSpec>>(wrap_array_of_vsan_host_create_native_key_provider_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanHostCreateNativeKeyProviderSpec>>(v, wrap_array_of_vsan_host_create_native_key_provider_spec) }),
        ("ArrayOfHostSpecificationChangedEvent", TypeInfo::Value { name: "ArrayOfHostSpecificationChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_specification_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_specification_changed_event) }),
        ("ArrayOfClusterVmComponentProtectionSettings", TypeInfo::Value { name: "ArrayOfClusterVmComponentProtectionSettings", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterVmComponentProtectionSettings>>(wrap_array_of_cluster_vm_component_protection_settings), from_value: |v| from_val_with::<Vec<super::structs::ClusterVmComponentProtectionSettings>>(v, wrap_array_of_cluster_vm_component_protection_settings) }),
        ("ArrayOfMigrationHostErrorEvent", TypeInfo::Value { name: "ArrayOfMigrationHostErrorEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_migration_host_error_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_migration_host_error_event) }),
        ("ArrayOfHostStorageSystemScsiLunResult", TypeInfo::Value { name: "ArrayOfHostStorageSystemScsiLunResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostStorageSystemScsiLunResult>>(wrap_array_of_host_storage_system_scsi_lun_result), from_value: |v| from_val_with::<Vec<super::structs::HostStorageSystemScsiLunResult>>(v, wrap_array_of_host_storage_system_scsi_lun_result) }),
        ("ArrayOfUnrecognizedHost", TypeInfo::Value { name: "ArrayOfUnrecognizedHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_unrecognized_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_unrecognized_host) }),
        ("ArrayOfComputeResourceConfigInfo", TypeInfo::Value { name: "ArrayOfComputeResourceConfigInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_compute_resource_config_info_array)), from_value: |v| cast_to_compute_resource_config_info_array(from_value(v)?) }),
        ("ArrayOfAlreadyExists", TypeInfo::Value { name: "ArrayOfAlreadyExists", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_already_exists), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_already_exists) }),
        ("ProfileExecuteResult", TypeInfo::Object { name: "ProfileExecuteResult", builder_fn: || Box::new(ProfileExecuteResultFields::new()) }),
        ("DesiredSoftwareSpecBaseImageSpec", TypeInfo::Object { name: "DesiredSoftwareSpecBaseImageSpec", builder_fn: || Box::new(DesiredSoftwareSpecBaseImageSpecFields::new()) }),
        ("ArrayOfHostProfileConfigSpec", TypeInfo::Value { name: "ArrayOfHostProfileConfigSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_profile_config_spec_array)), from_value: |v| cast_to_host_profile_config_spec_array(from_value(v)?) }),
        ("VmBeingClonedEvent", TypeInfo::Object { name: "VmBeingClonedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmBeingClonedEvent))) }),
        ("ArrayOfNonADUserRequired", TypeInfo::Value { name: "ArrayOfNonADUserRequired", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_non_ad_user_required), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_non_ad_user_required) }),
        ("ArrayOfProfileEvent", TypeInfo::Value { name: "ArrayOfProfileEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_profile_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_profile_event) }),
        ("ArrayOfVsanFileShareSnapshot", TypeInfo::Value { name: "ArrayOfVsanFileShareSnapshot", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShareSnapshot>>(wrap_array_of_vsan_file_share_snapshot), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShareSnapshot>>(v, wrap_array_of_vsan_file_share_snapshot) }),
        ("ArrayOfTooManyConcurrentNativeClones", TypeInfo::Value { name: "ArrayOfTooManyConcurrentNativeClones", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_too_many_concurrent_native_clones), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_too_many_concurrent_native_clones) }),
        ("ArrayOfVsanIscsiTargetServiceDefaultConfigSpec", TypeInfo::Value { name: "ArrayOfVsanIscsiTargetServiceDefaultConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiTargetServiceDefaultConfigSpec>>(wrap_array_of_vsan_iscsi_target_service_default_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiTargetServiceDefaultConfigSpec>>(v, wrap_array_of_vsan_iscsi_target_service_default_config_spec) }),
        ("HostVsanInternalSystemVsanObjectOperationResult", TypeInfo::Object { name: "HostVsanInternalSystemVsanObjectOperationResult", builder_fn: || Box::new(HostVsanInternalSystemVsanObjectOperationResultFields::new()) }),
        ("EamInvalidState", TypeInfo::Object { name: "EamInvalidState", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EamInvalidState))) }),
        ("HostNotConnected", TypeInfo::Object { name: "HostNotConnected", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostNotConnected))) }),
        ("ArrayOfTeamingMisMatchEvent", TypeInfo::Value { name: "ArrayOfTeamingMisMatchEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_teaming_mis_match_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_teaming_mis_match_event) }),
        ("ArrayOfSolutionsSolutionValidationResult", TypeInfo::Value { name: "ArrayOfSolutionsSolutionValidationResult", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsSolutionValidationResult>>(wrap_array_of_solutions_solution_validation_result), from_value: |v| from_val_with::<Vec<super::structs::SolutionsSolutionValidationResult>>(v, wrap_array_of_solutions_solution_validation_result) }),
        ("ArrayOfCnsVolumeOperationBatchResult", TypeInfo::Value { name: "ArrayOfCnsVolumeOperationBatchResult", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumeOperationBatchResult>>(wrap_array_of_cns_volume_operation_batch_result), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumeOperationBatchResult>>(v, wrap_array_of_cns_volume_operation_batch_result) }),
        ("ArrayOfVsanHostDrsStats", TypeInfo::Value { name: "ArrayOfVsanHostDrsStats", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostDrsStats>>(wrap_array_of_vsan_host_drs_stats), from_value: |v| from_val_with::<Vec<super::structs::VsanHostDrsStats>>(v, wrap_array_of_vsan_host_drs_stats) }),
        ("ClusterGroupSpec", TypeInfo::Object { name: "ClusterGroupSpec", builder_fn: || Box::new(ClusterGroupSpecFields::new()) }),
        ("ArrayOfCnsVolumeExtendSpec", TypeInfo::Value { name: "ArrayOfCnsVolumeExtendSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumeExtendSpec>>(wrap_array_of_cns_volume_extend_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumeExtendSpec>>(v, wrap_array_of_cns_volume_extend_spec) }),
        ("ManagedEntityEventArgument", TypeInfo::Object { name: "ManagedEntityEventArgument", builder_fn: || Box::new(ManagedEntityEventArgumentFields::new()) }),
        ("ArrayOfVsanDiskFormatConversionCheckResult", TypeInfo::Value { name: "ArrayOfVsanDiskFormatConversionCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDiskFormatConversionCheckResult>>(wrap_array_of_vsan_disk_format_conversion_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanDiskFormatConversionCheckResult>>(v, wrap_array_of_vsan_disk_format_conversion_check_result) }),
        ("DVSManagerDvsConfigTarget", TypeInfo::Object { name: "DVSManagerDvsConfigTarget", builder_fn: || Box::new(DvsManagerDvsConfigTargetFields::new()) }),
        ("ArrayOfVsanAdvancedDatastoreConfig", TypeInfo::Value { name: "ArrayOfVsanAdvancedDatastoreConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanAdvancedDatastoreConfig>>(wrap_array_of_vsan_advanced_datastore_config), from_value: |v| from_val_with::<Vec<super::structs::VsanAdvancedDatastoreConfig>>(v, wrap_array_of_vsan_advanced_datastore_config) }),
        ("ArrayOfDvsRateLimitNetworkRuleAction", TypeInfo::Value { name: "ArrayOfDvsRateLimitNetworkRuleAction", make_deserializer: || make_deser_with::<Vec<super::structs::DvsRateLimitNetworkRuleAction>>(wrap_array_of_dvs_rate_limit_network_rule_action), from_value: |v| from_val_with::<Vec<super::structs::DvsRateLimitNetworkRuleAction>>(v, wrap_array_of_dvs_rate_limit_network_rule_action) }),
        ("ArrayOfIpPoolManagerIpAllocation", TypeInfo::Value { name: "ArrayOfIpPoolManagerIpAllocation", make_deserializer: || make_deser_with::<Vec<super::structs::IpPoolManagerIpAllocation>>(wrap_array_of_ip_pool_manager_ip_allocation), from_value: |v| from_val_with::<Vec<super::structs::IpPoolManagerIpAllocation>>(v, wrap_array_of_ip_pool_manager_ip_allocation) }),
        ("VAppConfigInfo", TypeInfo::Object { name: "VAppConfigInfo", builder_fn: || Box::new(VAppConfigInfoFields::new()) }),
        ("InsufficientHostCapacityFault", TypeInfo::Object { name: "InsufficientHostCapacityFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientHostCapacityFault))) }),
        ("ArrayOfCannotComputeFTCompatibleHosts", TypeInfo::Value { name: "ArrayOfCannotComputeFTCompatibleHosts", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_compute_ft_compatible_hosts), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_compute_ft_compatible_hosts) }),
        ("OvfPropertyExport", TypeInfo::Object { name: "OvfPropertyExport", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfPropertyExport))) }),
        ("ArrayOfHostSystemPowerState", TypeInfo::Value { name: "ArrayOfHostSystemPowerState", make_deserializer: || make_deser_with::<Vec<super::enums::HostSystemPowerStateEnum>>(wrap_array_of_host_system_power_state), from_value: |v| from_val_with::<Vec<super::enums::HostSystemPowerStateEnum>>(v, wrap_array_of_host_system_power_state) }),
        ("DVSFilterSpecVmConnecteeSpec", TypeInfo::Object { name: "DVSFilterSpecVmConnecteeSpec", builder_fn: || Box::new(DvsFilterSpecVmConnecteeSpecFields::new()) }),
        ("ArrayOfPersonalityAgencyPMIssue", TypeInfo::Value { name: "ArrayOfPersonalityAgencyPMIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_personality_agency_pm_issue_array)), from_value: |v| cast_to_personality_agency_pm_issue_array(from_value(v)?) }),
        ("VirtualMachinePciPassthroughInfo", TypeInfo::Object { name: "VirtualMachinePciPassthroughInfo", builder_fn: || Box::new(VirtualMachinePciPassthroughInfoFields::new()) }),
        ("ProfileCompositeExpression", TypeInfo::Object { name: "ProfileCompositeExpression", builder_fn: || Box::new(ProfileCompositeExpressionFields::new()) }),
        ("VimVsanHostVsanDirectStorage", TypeInfo::Object { name: "VimVsanHostVsanDirectStorage", builder_fn: || Box::new(VimVsanHostVsanDirectStorageFields::new()) }),
        ("GuestRegKeyRecordSpec", TypeInfo::Object { name: "GuestRegKeyRecordSpec", builder_fn: || Box::new(GuestRegKeyRecordSpecFields::new()) }),
        ("ArrayOfIscsiFaultVnicAlreadyBound", TypeInfo::Value { name: "ArrayOfIscsiFaultVnicAlreadyBound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_vnic_already_bound), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_vnic_already_bound) }),
        ("ClusterSystemVMsConfigSpec", TypeInfo::Object { name: "ClusterSystemVMsConfigSpec", builder_fn: || Box::new(ClusterSystemVMsConfigSpecFields::new()) }),
        ("ArrayOfHostInternetScsiHbaIPCapabilities", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaIPCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaIpCapabilities>>(wrap_array_of_host_internet_scsi_hba_ip_capabilities), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaIpCapabilities>>(v, wrap_array_of_host_internet_scsi_hba_ip_capabilities) }),
        ("ArrayOfMonthlyTaskScheduler", TypeInfo::Value { name: "ArrayOfMonthlyTaskScheduler", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_monthly_task_scheduler_array)), from_value: |v| cast_to_monthly_task_scheduler_array(from_value(v)?) }),
        ("ArrayOfNetworkDisruptedAndConfigRolledBack", TypeInfo::Value { name: "ArrayOfNetworkDisruptedAndConfigRolledBack", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_network_disrupted_and_config_rolled_back), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_network_disrupted_and_config_rolled_back) }),
        ("NoAvailableIp", TypeInfo::Object { name: "NoAvailableIp", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoAvailableIp))) }),
        ("ClusterDrsConfigInfo", TypeInfo::Object { name: "ClusterDrsConfigInfo", builder_fn: || Box::new(ClusterDrsConfigInfoFields::new()) }),
        ("ArrayOfVirtualMachinePrecisionClockInfo", TypeInfo::Value { name: "ArrayOfVirtualMachinePrecisionClockInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachinePrecisionClockInfo>>(wrap_array_of_virtual_machine_precision_clock_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachinePrecisionClockInfo>>(v, wrap_array_of_virtual_machine_precision_clock_info) }),
        ("LicenseFeatureInfo", TypeInfo::Object { name: "LicenseFeatureInfo", builder_fn: || Box::new(LicenseFeatureInfoFields::new()) }),
        ("DistributedVirtualPort", TypeInfo::Object { name: "DistributedVirtualPort", builder_fn: || Box::new(DistributedVirtualPortFields::new()) }),
        ("HostNumericSensorInfo", TypeInfo::Object { name: "HostNumericSensorInfo", builder_fn: || Box::new(HostNumericSensorInfoFields::new()) }),
        ("AlarmState", TypeInfo::Object { name: "AlarmState", builder_fn: || Box::new(AlarmStateFields::new()) }),
        ("ArrayOfMaintenanceModeFileMove", TypeInfo::Value { name: "ArrayOfMaintenanceModeFileMove", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_maintenance_mode_file_move), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_maintenance_mode_file_move) }),
        ("ArrayOfCustomizationVirtualMachineName", TypeInfo::Value { name: "ArrayOfCustomizationVirtualMachineName", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationVirtualMachineName>>(wrap_array_of_customization_virtual_machine_name), from_value: |v| from_val_with::<Vec<super::structs::CustomizationVirtualMachineName>>(v, wrap_array_of_customization_virtual_machine_name) }),
        ("CryptoManagerKmipCertificateInfo", TypeInfo::Object { name: "CryptoManagerKmipCertificateInfo", builder_fn: || Box::new(CryptoManagerKmipCertificateInfoFields::new()) }),
        ("VirtualFloppyImageBackingInfo", TypeInfo::Object { name: "VirtualFloppyImageBackingInfo", builder_fn: || Box::new(VirtualFloppyImageBackingInfoFields::new()) }),
        ("ArrayOfVMwareDvsLacpGroupSpec", TypeInfo::Value { name: "ArrayOfVMwareDvsLacpGroupSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsLacpGroupSpec>>(wrap_array_of_v_mware_dvs_lacp_group_spec), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsLacpGroupSpec>>(v, wrap_array_of_v_mware_dvs_lacp_group_spec) }),
        ("ArrayOfVirtualMachineConnection", TypeInfo::Value { name: "ArrayOfVirtualMachineConnection", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_connection_array)), from_value: |v| cast_to_virtual_machine_connection_array(from_value(v)?) }),
        ("ArrayOfVmStartReplayingEvent", TypeInfo::Value { name: "ArrayOfVmStartReplayingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_start_replaying_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_start_replaying_event) }),
        ("VimClusterVSANWitnessHostInfo", TypeInfo::Object { name: "VimClusterVSANWitnessHostInfo", builder_fn: || Box::new(VimClusterVsanWitnessHostInfoFields::new()) }),
        ("VsanHostConfigInfoNetworkInfo", TypeInfo::Object { name: "VsanHostConfigInfoNetworkInfo", builder_fn: || Box::new(VsanHostConfigInfoNetworkInfoFields::new()) }),
        ("ArrayOfVsanIscsiTarget", TypeInfo::Value { name: "ArrayOfVsanIscsiTarget", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiTarget>>(wrap_array_of_vsan_iscsi_target), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiTarget>>(v, wrap_array_of_vsan_iscsi_target) }),
        ("VsanPolicyStatus", TypeInfo::Object { name: "VsanPolicyStatus", builder_fn: || Box::new(VsanPolicyStatusFields::new()) }),
        ("ArrayOfPbmQueryProfileResult", TypeInfo::Value { name: "ArrayOfPbmQueryProfileResult", make_deserializer: || make_deser_with::<Vec<super::structs::PbmQueryProfileResult>>(wrap_array_of_pbm_query_profile_result), from_value: |v| from_val_with::<Vec<super::structs::PbmQueryProfileResult>>(v, wrap_array_of_pbm_query_profile_result) }),
        ("HostUnresolvedVmfsResignatureSpec", TypeInfo::Object { name: "HostUnresolvedVmfsResignatureSpec", builder_fn: || Box::new(HostUnresolvedVmfsResignatureSpecFields::new()) }),
        ("VmSmpFaultToleranceTooManyVMsOnHost", TypeInfo::Object { name: "VmSmpFaultToleranceTooManyVMsOnHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmSmpFaultToleranceTooManyVMsOnHost))) }),
        ("ArrayOfInvalidType", TypeInfo::Value { name: "ArrayOfInvalidType", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_type), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_type) }),
        ("VsanStorageOperationalStatus", TypeInfo::Object { name: "VsanStorageOperationalStatus", builder_fn: || Box::new(VsanStorageOperationalStatusFields::new()) }),
        ("BoolPolicy", TypeInfo::Object { name: "BoolPolicy", builder_fn: || Box::new(BoolPolicyFields::new()) }),
        ("DVSPolicy", TypeInfo::Object { name: "DVSPolicy", builder_fn: || Box::new(DvsPolicyFields::new()) }),
        ("HostAddedEvent", TypeInfo::Object { name: "HostAddedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostAddedEvent))) }),
        ("ArrayOfVsanRemoteVcInfo", TypeInfo::Value { name: "ArrayOfVsanRemoteVcInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_remote_vc_info_array)), from_value: |v| cast_to_vsan_remote_vc_info_array(from_value(v)?) }),
        ("ArrayOfOvfConsumerValidationFault", TypeInfo::Value { name: "ArrayOfOvfConsumerValidationFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_consumer_validation_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_consumer_validation_fault) }),
        ("HostFibreChannelTargetTransport", TypeInfo::Object { name: "HostFibreChannelTargetTransport", builder_fn: || Box::new(HostFibreChannelTargetTransportFields::new()) }),
        ("ArrayOfDirectPathProfileManagerVirtualDeviceGroupDirectPathConfig", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerVirtualDeviceGroupDirectPathConfig", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerVirtualDeviceGroupDirectPathConfig>>(wrap_array_of_direct_path_profile_manager_virtual_device_group_direct_path_config), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerVirtualDeviceGroupDirectPathConfig>>(v, wrap_array_of_direct_path_profile_manager_virtual_device_group_direct_path_config) }),
        ("ArrayOfFcoeFault", TypeInfo::Value { name: "ArrayOfFcoeFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fcoe_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fcoe_fault) }),
        ("ArrayOfHostShortNameInconsistentEvent", TypeInfo::Value { name: "ArrayOfHostShortNameInconsistentEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_short_name_inconsistent_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_short_name_inconsistent_event) }),
        ("ArrayOfOvfImportParams", TypeInfo::Value { name: "ArrayOfOvfImportParams", make_deserializer: || make_deser_with::<Vec<super::structs::OvfImportParams>>(wrap_array_of_ovf_import_params), from_value: |v| from_val_with::<Vec<super::structs::OvfImportParams>>(v, wrap_array_of_ovf_import_params) }),
        ("VibCannotPutHostOutOfMaintenanceMode", TypeInfo::Object { name: "VibCannotPutHostOutOfMaintenanceMode", builder_fn: || Box::new(VibCannotPutHostOutOfMaintenanceModeFields::new()) }),
        ("CertificateAuthorityFault", TypeInfo::Object { name: "CertificateAuthorityFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CertificateAuthorityFault))) }),
        ("ClusterAgentVmPoweredOn", TypeInfo::Object { name: "ClusterAgentVmPoweredOn", builder_fn: || Box::new(ClusterAgentVmPoweredOnFields::new()) }),
        ("ArrayOfFileFault", TypeInfo::Value { name: "ArrayOfFileFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_file_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_file_fault) }),
        ("HostServiceInfo", TypeInfo::Object { name: "HostServiceInfo", builder_fn: || Box::new(HostServiceInfoFields::new()) }),
        ("ArrayOfVsanIoInsightInstanceQuerySpec", TypeInfo::Value { name: "ArrayOfVsanIoInsightInstanceQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoInsightInstanceQuerySpec>>(wrap_array_of_vsan_io_insight_instance_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanIoInsightInstanceQuerySpec>>(v, wrap_array_of_vsan_io_insight_instance_query_spec) }),
        ("HostReconnectionFailedEvent", TypeInfo::Object { name: "HostReconnectionFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostReconnectionFailedEvent))) }),
        ("HostVirtualNicOpaqueNetworkSpec", TypeInfo::Object { name: "HostVirtualNicOpaqueNetworkSpec", builder_fn: || Box::new(HostVirtualNicOpaqueNetworkSpecFields::new()) }),
        ("ArrayOfMethodAction", TypeInfo::Value { name: "ArrayOfMethodAction", make_deserializer: || make_deser_with::<Vec<super::structs::MethodAction>>(wrap_array_of_method_action), from_value: |v| from_val_with::<Vec<super::structs::MethodAction>>(v, wrap_array_of_method_action) }),
        ("ArrayOfVirtualPointingDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualPointingDeviceBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPointingDeviceBackingOption>>(wrap_array_of_virtual_pointing_device_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPointingDeviceBackingOption>>(v, wrap_array_of_virtual_pointing_device_backing_option) }),
        ("ClusterVmToolsMonitoringSettings", TypeInfo::Object { name: "ClusterVmToolsMonitoringSettings", builder_fn: || Box::new(ClusterVmToolsMonitoringSettingsFields::new()) }),
        ("VirtualVideoCardOption", TypeInfo::Object { name: "VirtualVideoCardOption", builder_fn: || Box::new(VirtualVideoCardOptionFields::new()) }),
        ("HostProfileCompleteConfigSpec", TypeInfo::Object { name: "HostProfileCompleteConfigSpec", builder_fn: || Box::new(HostProfileCompleteConfigSpecFields::new()) }),
        ("VsanSpaceUsageDetailResult", TypeInfo::Object { name: "VsanSpaceUsageDetailResult", builder_fn: || Box::new(VsanSpaceUsageDetailResultFields::new()) }),
        ("HostUnresolvedVmfsResolutionSpec", TypeInfo::Object { name: "HostUnresolvedVmfsResolutionSpec", builder_fn: || Box::new(HostUnresolvedVmfsResolutionSpecFields::new()) }),
        ("ArrayOfVirtualMachineProfileSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineProfileSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_profile_spec_array)), from_value: |v| cast_to_virtual_machine_profile_spec_array(from_value(v)?) }),
        ("GatewayToHostTrustVerifyFault", TypeInfo::Object { name: "GatewayToHostTrustVerifyFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GatewayToHostTrustVerifyFault))) }),
        ("TestFailoverParam", TypeInfo::Object { name: "TestFailoverParam", builder_fn: || Box::new(TestFailoverParamFields::new()) }),
        ("InvalidBmcRole", TypeInfo::Object { name: "InvalidBmcRole", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidBmcRole))) }),
        ("VsanHostServerClusterUnicastInfo", TypeInfo::Object { name: "VsanHostServerClusterUnicastInfo", builder_fn: || Box::new(VsanHostServerClusterUnicastInfoFields::new()) }),
        ("MacAddress", TypeInfo::Object { name: "MacAddress", builder_fn: || Box::new(MacAddressFields::new()) }),
        ("Extension", TypeInfo::Object { name: "Extension", builder_fn: || Box::new(ExtensionFields::new()) }),
        ("ArrayOfVsanUpgradeSystemAPIBrokenIssue", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemAPIBrokenIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemApiBrokenIssue>>(wrap_array_of_vsan_upgrade_system_api_broken_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemApiBrokenIssue>>(v, wrap_array_of_vsan_upgrade_system_api_broken_issue) }),
        ("OvfUnexpectedElement", TypeInfo::Object { name: "OvfUnexpectedElement", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnexpectedElement))) }),
        ("CustomizationDhcpIpV6Generator", TypeInfo::Object { name: "CustomizationDhcpIpV6Generator", builder_fn: || Box::new(CustomizationDhcpIpV6GeneratorFields::new()) }),
        ("VirtualParallelPortDeviceBackingOption", TypeInfo::Object { name: "VirtualParallelPortDeviceBackingOption", builder_fn: || Box::new(VirtualParallelPortDeviceBackingOptionFields::new()) }),
        ("VsanClusterBalancePerDiskInfo", TypeInfo::Object { name: "VsanClusterBalancePerDiskInfo", builder_fn: || Box::new(VsanClusterBalancePerDiskInfoFields::new()) }),
        ("HostPosixAccountSpec", TypeInfo::Object { name: "HostPosixAccountSpec", builder_fn: || Box::new(HostPosixAccountSpecFields::new()) }),
        ("ArrayOfVirtualUSBControllerOption", TypeInfo::Value { name: "ArrayOfVirtualUSBControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbControllerOption>>(wrap_array_of_virtual_usb_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbControllerOption>>(v, wrap_array_of_virtual_usb_controller_option) }),
        ("ArrayOfAlarmCreatedEvent", TypeInfo::Value { name: "ArrayOfAlarmCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_created_event) }),
        ("TeamingMatchEvent", TypeInfo::Object { name: "TeamingMatchEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::TeamingMatchEvent))) }),
        ("ClusterDasHostRecommendation", TypeInfo::Object { name: "ClusterDasHostRecommendation", builder_fn: || Box::new(ClusterDasHostRecommendationFields::new()) }),
        ("VirtualMachineMessage", TypeInfo::Object { name: "VirtualMachineMessage", builder_fn: || Box::new(VirtualMachineMessageFields::new()) }),
        ("CustomizationAutoIpV6Generator", TypeInfo::Object { name: "CustomizationAutoIpV6Generator", builder_fn: || Box::new(CustomizationAutoIpV6GeneratorFields::new()) }),
        ("ArrayOfDasDisabledEvent", TypeInfo::Value { name: "ArrayOfDasDisabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_das_disabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_das_disabled_event) }),
        ("ArrayOfComputeResourceHostSPBMLicenseInfoHostSPBMLicenseState", TypeInfo::Value { name: "ArrayOfComputeResourceHostSPBMLicenseInfoHostSPBMLicenseState", make_deserializer: || make_deser_with::<Vec<super::enums::ComputeResourceHostSpbmLicenseInfoHostSpbmLicenseStateEnum>>(wrap_array_of_compute_resource_host_spbm_license_info_host_spbm_license_state), from_value: |v| from_val_with::<Vec<super::enums::ComputeResourceHostSpbmLicenseInfoHostSpbmLicenseStateEnum>>(v, wrap_array_of_compute_resource_host_spbm_license_info_host_spbm_license_state) }),
        ("ArrayOfSolutionsHookAcknowledgeConfig", TypeInfo::Value { name: "ArrayOfSolutionsHookAcknowledgeConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_solutions_hook_acknowledge_config_array)), from_value: |v| cast_to_solutions_hook_acknowledge_config_array(from_value(v)?) }),
        ("OvfUnsupportedAttributeValue", TypeInfo::Object { name: "OvfUnsupportedAttributeValue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedAttributeValue))) }),
        ("VmDasUpdateErrorEvent", TypeInfo::Object { name: "VmDasUpdateErrorEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDasUpdateErrorEvent))) }),
        ("OvfInvalidValueReference", TypeInfo::Object { name: "OvfInvalidValueReference", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfInvalidValueReference))) }),
        ("OvfUnknownDeviceBacking", TypeInfo::Object { name: "OvfUnknownDeviceBacking", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnknownDeviceBacking))) }),
        ("ArrayOfVsanSnapServiceConfig", TypeInfo::Value { name: "ArrayOfVsanSnapServiceConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSnapServiceConfig>>(wrap_array_of_vsan_snap_service_config), from_value: |v| from_val_with::<Vec<super::structs::VsanSnapServiceConfig>>(v, wrap_array_of_vsan_snap_service_config) }),
        ("BackupBlobWriteFailure", TypeInfo::Object { name: "BackupBlobWriteFailure", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::BackupBlobWriteFailure))) }),
        ("VsanIoInsightInfo", TypeInfo::Object { name: "VsanIoInsightInfo", builder_fn: || Box::new(VsanIoInsightInfoFields::new()) }),
        ("PbmCapabilityProfileCreateSpec", TypeInfo::Object { name: "PbmCapabilityProfileCreateSpec", builder_fn: || Box::new(PbmCapabilityProfileCreateSpecFields::new()) }),
        ("PerfMetricSeries", TypeInfo::Object { name: "PerfMetricSeries", builder_fn: || Box::new(PerfMetricSeriesFields::new()) }),
        ("FilesystemQuiesceFault", TypeInfo::Object { name: "FilesystemQuiesceFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FilesystemQuiesceFault))) }),
        ("ArrayOfVsanFileServiceOvfSpec", TypeInfo::Value { name: "ArrayOfVsanFileServiceOvfSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServiceOvfSpec>>(wrap_array_of_vsan_file_service_ovf_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServiceOvfSpec>>(v, wrap_array_of_vsan_file_service_ovf_spec) }),
        ("HostApplyProfile", TypeInfo::Object { name: "HostApplyProfile", builder_fn: || Box::new(HostApplyProfileFields::new()) }),
        ("PbmCapabilitySchema", TypeInfo::Object { name: "PbmCapabilitySchema", builder_fn: || Box::new(PbmCapabilitySchemaFields::new()) }),
        ("EntityBackup", TypeInfo::Object { name: "EntityBackup", builder_fn: || Box::new(EntityBackupFields::new()) }),
        ("ArrayOfStorageIORMInfo", TypeInfo::Value { name: "ArrayOfStorageIORMInfo", make_deserializer: || make_deser_with::<Vec<super::structs::StorageIormInfo>>(wrap_array_of_storage_iorm_info), from_value: |v| from_val_with::<Vec<super::structs::StorageIormInfo>>(v, wrap_array_of_storage_iorm_info) }),
        ("DvsPortLinkUpEvent", TypeInfo::Object { name: "DvsPortLinkUpEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortLinkUpEvent))) }),
        ("ArrayOfHostFlagInfo", TypeInfo::Value { name: "ArrayOfHostFlagInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostFlagInfo>>(wrap_array_of_host_flag_info), from_value: |v| from_val_with::<Vec<super::structs::HostFlagInfo>>(v, wrap_array_of_host_flag_info) }),
        ("ArrayOfInsufficientVFlashResourcesFault", TypeInfo::Value { name: "ArrayOfInsufficientVFlashResourcesFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_v_flash_resources_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_v_flash_resources_fault) }),
        ("VsanClusterNetworkHealthResult", TypeInfo::Object { name: "VsanClusterNetworkHealthResult", builder_fn: || Box::new(VsanClusterNetworkHealthResultFields::new()) }),
        ("ArrayOfVMwareDVSVlanHealthCheckResult", TypeInfo::Value { name: "ArrayOfVMwareDVSVlanHealthCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsVlanHealthCheckResult>>(wrap_array_of_v_mware_dvs_vlan_health_check_result), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsVlanHealthCheckResult>>(v, wrap_array_of_v_mware_dvs_vlan_health_check_result) }),
        ("AuthorizationDescription", TypeInfo::Object { name: "AuthorizationDescription", builder_fn: || Box::new(AuthorizationDescriptionFields::new()) }),
        ("ArrayOfVsanClusterHealthSummary", TypeInfo::Value { name: "ArrayOfVsanClusterHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthSummary>>(wrap_array_of_vsan_cluster_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthSummary>>(v, wrap_array_of_vsan_cluster_health_summary) }),
        ("VsanXVCDatastoreConfig", TypeInfo::Object { name: "VsanXVCDatastoreConfig", builder_fn: || Box::new(VsanXvcDatastoreConfigFields::new()) }),
        ("InvalidClientCertificate", TypeInfo::Object { name: "InvalidClientCertificate", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidClientCertificate))) }),
        ("HostEventArgument", TypeInfo::Object { name: "HostEventArgument", builder_fn: || Box::new(HostEventArgumentFields::new()) }),
        ("HostDiskDimensionsLba", TypeInfo::Object { name: "HostDiskDimensionsLba", builder_fn: || Box::new(HostDiskDimensionsLbaFields::new()) }),
        ("VmFailedStartingSecondaryEvent", TypeInfo::Object { name: "VmFailedStartingSecondaryEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedStartingSecondaryEvent))) }),
        ("ArrayOfHostPatchManagerPatchManagerOperationSpec", TypeInfo::Value { name: "ArrayOfHostPatchManagerPatchManagerOperationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostPatchManagerPatchManagerOperationSpec>>(wrap_array_of_host_patch_manager_patch_manager_operation_spec), from_value: |v| from_val_with::<Vec<super::structs::HostPatchManagerPatchManagerOperationSpec>>(v, wrap_array_of_host_patch_manager_patch_manager_operation_spec) }),
        ("ArrayOfTaskReasonAlarm", TypeInfo::Value { name: "ArrayOfTaskReasonAlarm", make_deserializer: || make_deser_with::<Vec<super::structs::TaskReasonAlarm>>(wrap_array_of_task_reason_alarm), from_value: |v| from_val_with::<Vec<super::structs::TaskReasonAlarm>>(v, wrap_array_of_task_reason_alarm) }),
        ("VMFSDatastoreExpandedEvent", TypeInfo::Object { name: "VMFSDatastoreExpandedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmfsDatastoreExpandedEvent))) }),
        ("OvfExport", TypeInfo::Object { name: "OvfExport", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfExport))) }),
        ("ArrayOfVAppCloneSpecNetworkMappingPair", TypeInfo::Value { name: "ArrayOfVAppCloneSpecNetworkMappingPair", make_deserializer: || make_deser_with::<Vec<super::structs::VAppCloneSpecNetworkMappingPair>>(wrap_array_of_v_app_clone_spec_network_mapping_pair), from_value: |v| from_val_with::<Vec<super::structs::VAppCloneSpecNetworkMappingPair>>(v, wrap_array_of_v_app_clone_spec_network_mapping_pair) }),
        ("ArrayOfVimVsanVsanPMemConfig", TypeInfo::Value { name: "ArrayOfVimVsanVsanPMemConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanVsanPMemConfig>>(wrap_array_of_vim_vsan_vsan_p_mem_config), from_value: |v| from_val_with::<Vec<super::structs::VimVsanVsanPMemConfig>>(v, wrap_array_of_vim_vsan_vsan_p_mem_config) }),
        ("SmsInvalidLogin", TypeInfo::Object { name: "SmsInvalidLogin", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SmsInvalidLogin))) }),
        ("DuplicateDisks", TypeInfo::Object { name: "DuplicateDisks", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DuplicateDisks))) }),
        ("ArrayOfPbmDatastoreSpaceStatistics", TypeInfo::Value { name: "ArrayOfPbmDatastoreSpaceStatistics", make_deserializer: || make_deser_with::<Vec<super::structs::PbmDatastoreSpaceStatistics>>(wrap_array_of_pbm_datastore_space_statistics), from_value: |v| from_val_with::<Vec<super::structs::PbmDatastoreSpaceStatistics>>(v, wrap_array_of_pbm_datastore_space_statistics) }),
        ("ArrayOfDiskClaimConfiguration", TypeInfo::Value { name: "ArrayOfDiskClaimConfiguration", make_deserializer: || make_deser_with::<Vec<super::structs::DiskClaimConfiguration>>(wrap_array_of_disk_claim_configuration), from_value: |v| from_val_with::<Vec<super::structs::DiskClaimConfiguration>>(v, wrap_array_of_disk_claim_configuration) }),
        ("AlarmSnmpCompletedEvent", TypeInfo::Object { name: "AlarmSnmpCompletedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmSnmpCompletedEvent))) }),
        ("ArrayOfVirtualMachineRelocateSpecDiskLocator", TypeInfo::Value { name: "ArrayOfVirtualMachineRelocateSpecDiskLocator", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineRelocateSpecDiskLocator>>(wrap_array_of_virtual_machine_relocate_spec_disk_locator), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineRelocateSpecDiskLocator>>(v, wrap_array_of_virtual_machine_relocate_spec_disk_locator) }),
        ("ArrayOfOptionDef", TypeInfo::Value { name: "ArrayOfOptionDef", make_deserializer: || make_deser_with::<Vec<super::structs::OptionDef>>(wrap_array_of_option_def), from_value: |v| from_val_with::<Vec<super::structs::OptionDef>>(v, wrap_array_of_option_def) }),
        ("ExtendedEvent", TypeInfo::Object { name: "ExtendedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ExtendedEvent))) }),
        ("ArrayOfVsanVmdkLoadTestResult", TypeInfo::Value { name: "ArrayOfVsanVmdkLoadTestResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVmdkLoadTestResult>>(wrap_array_of_vsan_vmdk_load_test_result), from_value: |v| from_val_with::<Vec<super::structs::VsanVmdkLoadTestResult>>(v, wrap_array_of_vsan_vmdk_load_test_result) }),
        ("NvdimmSummary", TypeInfo::Object { name: "NvdimmSummary", builder_fn: || Box::new(NvdimmSummaryFields::new()) }),
        ("VsanHostCreateNativeKeyProviderSpec", TypeInfo::Object { name: "VsanHostCreateNativeKeyProviderSpec", builder_fn: || Box::new(VsanHostCreateNativeKeyProviderSpecFields::new()) }),
        ("SSPIAuthentication", TypeInfo::Object { name: "SSPIAuthentication", builder_fn: || Box::new(SspiAuthenticationFields::new()) }),
        ("SolutionsHostComplianceResult", TypeInfo::Object { name: "SolutionsHostComplianceResult", builder_fn: || Box::new(SolutionsHostComplianceResultFields::new()) }),
        ("DvsUpgradeInProgressEvent", TypeInfo::Object { name: "DvsUpgradeInProgressEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsUpgradeInProgressEvent))) }),
        ("ArrayOfVirtualEthernetCardOpaqueNetworkBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualEthernetCardOpaqueNetworkBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEthernetCardOpaqueNetworkBackingInfo>>(wrap_array_of_virtual_ethernet_card_opaque_network_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualEthernetCardOpaqueNetworkBackingInfo>>(v, wrap_array_of_virtual_ethernet_card_opaque_network_backing_info) }),
        ("VsanXvcQuerySpec", TypeInfo::Object { name: "VsanXvcQuerySpec", builder_fn: || Box::new(VsanXvcQuerySpecFields::new()) }),
        ("FaultToleranceDiskSpec", TypeInfo::Object { name: "FaultToleranceDiskSpec", builder_fn: || Box::new(FaultToleranceDiskSpecFields::new()) }),
        ("ArrayOfCnsBaseCreateSpec", TypeInfo::Value { name: "ArrayOfCnsBaseCreateSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cns_base_create_spec_array)), from_value: |v| cast_to_cns_base_create_spec_array(from_value(v)?) }),
        ("TaskReason", TypeInfo::Object { name: "TaskReason", builder_fn: || Box::new(TaskReasonFields::new()) }),
        ("VirtualMachineMetadataManagerVmMetadataInput", TypeInfo::Object { name: "VirtualMachineMetadataManagerVmMetadataInput", builder_fn: || Box::new(VirtualMachineMetadataManagerVmMetadataInputFields::new()) }),
        ("ArrayOfInvalidResourcePoolStructureFault", TypeInfo::Value { name: "ArrayOfInvalidResourcePoolStructureFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_resource_pool_structure_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_resource_pool_structure_fault) }),
        ("VsanIscsiTargetAuthSpec", TypeInfo::Object { name: "VsanIscsiTargetAuthSpec", builder_fn: || Box::new(VsanIscsiTargetAuthSpecFields::new()) }),
        ("ArrayOfHostCnxFailedAlreadyManagedEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedAlreadyManagedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_already_managed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_already_managed_event) }),
        ("VsanResourceCheckVsanResult", TypeInfo::Object { name: "VsanResourceCheckVsanResult", builder_fn: || Box::new(VsanResourceCheckVsanResultFields::new()) }),
        ("SmsTaskInfo", TypeInfo::Object { name: "SmsTaskInfo", builder_fn: || Box::new(SmsTaskInfoFields::new()) }),
        ("ArrayOfSolutionUserRequired", TypeInfo::Value { name: "ArrayOfSolutionUserRequired", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_solution_user_required), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_solution_user_required) }),
        ("SiteAffinityInfo", TypeInfo::Object { name: "SiteAffinityInfo", builder_fn: || Box::new(SiteAffinityInfoFields::new()) }),
        ("DistributedVirtualSwitchHostMember", TypeInfo::Object { name: "DistributedVirtualSwitchHostMember", builder_fn: || Box::new(DistributedVirtualSwitchHostMemberFields::new()) }),
        ("VsanHostHclInfo", TypeInfo::Object { name: "VsanHostHclInfo", builder_fn: || Box::new(VsanHostHclInfoFields::new()) }),
        ("ArrayOfMemorySizeNotSupported", TypeInfo::Value { name: "ArrayOfMemorySizeNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_memory_size_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_memory_size_not_supported) }),
        ("HttpNfcLeaseCapabilities", TypeInfo::Object { name: "HttpNfcLeaseCapabilities", builder_fn: || Box::new(HttpNfcLeaseCapabilitiesFields::new()) }),
        ("ArrayOfClusterOvercommittedEvent", TypeInfo::Value { name: "ArrayOfClusterOvercommittedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_cluster_overcommitted_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_cluster_overcommitted_event) }),
        ("VsanFileShareSnapshotQueryResult", TypeInfo::Object { name: "VsanFileShareSnapshotQueryResult", builder_fn: || Box::new(VsanFileShareSnapshotQueryResultFields::new()) }),
        ("VirtualMachineStorageInfo", TypeInfo::Object { name: "VirtualMachineStorageInfo", builder_fn: || Box::new(VirtualMachineStorageInfoFields::new()) }),
        ("VmNoCompatibleHostForSecondaryEvent", TypeInfo::Object { name: "VmNoCompatibleHostForSecondaryEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmNoCompatibleHostForSecondaryEvent))) }),
        ("StorageDrsStaleHmsCollection", TypeInfo::Object { name: "StorageDrsStaleHmsCollection", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsStaleHmsCollection))) }),
        ("ClusterAgentVmInaccessible", TypeInfo::Object { name: "ClusterAgentVmInaccessible", builder_fn: || Box::new(ClusterAgentVmInaccessibleFields::new()) }),
        ("HostCnxFailedEvent", TypeInfo::Object { name: "HostCnxFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedEvent))) }),
        ("UnsupportedDatastore", TypeInfo::Object { name: "UnsupportedDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnsupportedDatastore))) }),
        ("ArrayOfVirtualSriovEthernetCard", TypeInfo::Value { name: "ArrayOfVirtualSriovEthernetCard", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSriovEthernetCard>>(wrap_array_of_virtual_sriov_ethernet_card), from_value: |v| from_val_with::<Vec<super::structs::VirtualSriovEthernetCard>>(v, wrap_array_of_virtual_sriov_ethernet_card) }),
        ("NetIpConfigInfoIpAddress", TypeInfo::Object { name: "NetIpConfigInfoIpAddress", builder_fn: || Box::new(NetIpConfigInfoIpAddressFields::new()) }),
        ("StorageDrsCannotMoveDiskInMultiWriterMode", TypeInfo::Object { name: "StorageDrsCannotMoveDiskInMultiWriterMode", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsCannotMoveDiskInMultiWriterMode))) }),
        ("ArrayOfAlarmEmailFailedEvent", TypeInfo::Value { name: "ArrayOfAlarmEmailFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_email_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_email_failed_event) }),
        ("ArrayOfDeviceBackedVirtualDiskSpec", TypeInfo::Value { name: "ArrayOfDeviceBackedVirtualDiskSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DeviceBackedVirtualDiskSpec>>(wrap_array_of_device_backed_virtual_disk_spec), from_value: |v| from_val_with::<Vec<super::structs::DeviceBackedVirtualDiskSpec>>(v, wrap_array_of_device_backed_virtual_disk_spec) }),
        ("ArrayOfDiskTooSmall", TypeInfo::Value { name: "ArrayOfDiskTooSmall", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disk_too_small), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disk_too_small) }),
        ("ArrayOfVirtualMachineQuickStats", TypeInfo::Value { name: "ArrayOfVirtualMachineQuickStats", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineQuickStats>>(wrap_array_of_virtual_machine_quick_stats), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineQuickStats>>(v, wrap_array_of_virtual_machine_quick_stats) }),
        ("HostIoFilterInfo", TypeInfo::Object { name: "HostIoFilterInfo", builder_fn: || Box::new(HostIoFilterInfoFields::new()) }),
        ("LargeRDMNotSupportedOnDatastore", TypeInfo::Object { name: "LargeRDMNotSupportedOnDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LargeRdmNotSupportedOnDatastore))) }),
        ("VirtualMachineConnectionState", TypeInfo::Value { name: "VirtualMachineConnectionState", make_deserializer: || make_deser_with::<super::enums::VirtualMachineConnectionStateEnum>(wrap_virtual_machine_connection_state), from_value: |v| from_val_with::<super::enums::VirtualMachineConnectionStateEnum>(v, wrap_virtual_machine_connection_state) }),
        ("VimClusterVSANPreferredFaultDomainInfo", TypeInfo::Object { name: "VimClusterVSANPreferredFaultDomainInfo", builder_fn: || Box::new(VimClusterVsanPreferredFaultDomainInfoFields::new()) }),
        ("ArrayOfVsanXvcQueryFilter", TypeInfo::Value { name: "ArrayOfVsanXvcQueryFilter", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcQueryFilter>>(wrap_array_of_vsan_xvc_query_filter), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcQueryFilter>>(v, wrap_array_of_vsan_xvc_query_filter) }),
        ("DvsNotAuthorized", TypeInfo::Object { name: "DvsNotAuthorized", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DvsNotAuthorized))) }),
        ("ArrayOfVsanSiteFaultDomain", TypeInfo::Value { name: "ArrayOfVsanSiteFaultDomain", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSiteFaultDomain>>(wrap_array_of_vsan_site_fault_domain), from_value: |v| from_val_with::<Vec<super::structs::VsanSiteFaultDomain>>(v, wrap_array_of_vsan_site_fault_domain) }),
        ("ArrayOfSmsInvalidLogin", TypeInfo::Value { name: "ArrayOfSmsInvalidLogin", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_sms_invalid_login), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_sms_invalid_login) }),
        ("GuestAuthAnySubject", TypeInfo::Object { name: "GuestAuthAnySubject", builder_fn: || Box::new(GuestAuthAnySubjectFields::new()) }),
        ("AgentAnyCertificate", TypeInfo::Object { name: "AgentAnyCertificate", builder_fn: || Box::new(AgentAnyCertificateFields::new()) }),
        ("ArrayOfImportSpec", TypeInfo::Value { name: "ArrayOfImportSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_import_spec_array)), from_value: |v| cast_to_import_spec_array(from_value(v)?) }),
        ("ArrayOfVsanObjectIdentityAndHealth", TypeInfo::Value { name: "ArrayOfVsanObjectIdentityAndHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectIdentityAndHealth>>(wrap_array_of_vsan_object_identity_and_health), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectIdentityAndHealth>>(v, wrap_array_of_vsan_object_identity_and_health) }),
        ("ArrayOfMissingWindowsCustResources", TypeInfo::Value { name: "ArrayOfMissingWindowsCustResources", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_missing_windows_cust_resources), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_missing_windows_cust_resources) }),
        ("VmFaultToleranceStateChangedEvent", TypeInfo::Object { name: "VmFaultToleranceStateChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFaultToleranceStateChangedEvent))) }),
        ("VsanCompliantDriver", TypeInfo::Object { name: "VsanCompliantDriver", builder_fn: || Box::new(VsanCompliantDriverFields::new()) }),
        ("ArrayOfExtensionFaultTypeInfo", TypeInfo::Value { name: "ArrayOfExtensionFaultTypeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensionFaultTypeInfo>>(wrap_array_of_extension_fault_type_info), from_value: |v| from_val_with::<Vec<super::structs::ExtensionFaultTypeInfo>>(v, wrap_array_of_extension_fault_type_info) }),
        ("ArrayOfNoAvailableIp", TypeInfo::Value { name: "ArrayOfNoAvailableIp", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_available_ip), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_available_ip) }),
        ("IncompatibleHostForVmReplication", TypeInfo::Object { name: "IncompatibleHostForVmReplication", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IncompatibleHostForVmReplication))) }),
        ("StaticRouteProfile", TypeInfo::Object { name: "StaticRouteProfile", builder_fn: || Box::new(StaticRouteProfileFields::new()) }),
        ("CnsVsanFileShareBackingDetails", TypeInfo::Object { name: "CnsVsanFileShareBackingDetails", builder_fn: || Box::new(CnsVsanFileShareBackingDetailsFields::new()) }),
        ("ArrayOfDVPortgroupConfigSpec", TypeInfo::Value { name: "ArrayOfDVPortgroupConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvPortgroupConfigSpec>>(wrap_array_of_dv_portgroup_config_spec), from_value: |v| from_val_with::<Vec<super::structs::DvPortgroupConfigSpec>>(v, wrap_array_of_dv_portgroup_config_spec) }),
        ("NasStorageProfile", TypeInfo::Object { name: "NasStorageProfile", builder_fn: || Box::new(NasStorageProfileFields::new()) }),
        ("ArrayOfPerformanceManagerCounterLevelMapping", TypeInfo::Value { name: "ArrayOfPerformanceManagerCounterLevelMapping", make_deserializer: || make_deser_with::<Vec<super::structs::PerformanceManagerCounterLevelMapping>>(wrap_array_of_performance_manager_counter_level_mapping), from_value: |v| from_val_with::<Vec<super::structs::PerformanceManagerCounterLevelMapping>>(v, wrap_array_of_performance_manager_counter_level_mapping) }),
        ("ArrayOfLicenseSourceUnavailable", TypeInfo::Value { name: "ArrayOfLicenseSourceUnavailable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_license_source_unavailable), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_license_source_unavailable) }),
        ("ArrayOfSecondaryVmAlreadyDisabled", TypeInfo::Value { name: "ArrayOfSecondaryVmAlreadyDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_secondary_vm_already_disabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_secondary_vm_already_disabled) }),
        ("ArrayOfVmRelocateFailedEvent", TypeInfo::Value { name: "ArrayOfVmRelocateFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_relocate_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_relocate_failed_event) }),
        ("RoleEventArgument", TypeInfo::Object { name: "RoleEventArgument", builder_fn: || Box::new(RoleEventArgumentFields::new()) }),
        ("GhostDvsProxySwitchRemovedEvent", TypeInfo::Object { name: "GhostDvsProxySwitchRemovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GhostDvsProxySwitchRemovedEvent))) }),
        ("ArrayOfHostVirtualSwitchSimpleBridge", TypeInfo::Value { name: "ArrayOfHostVirtualSwitchSimpleBridge", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualSwitchSimpleBridge>>(wrap_array_of_host_virtual_switch_simple_bridge), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualSwitchSimpleBridge>>(v, wrap_array_of_host_virtual_switch_simple_bridge) }),
        ("VmUuidAssignedEvent", TypeInfo::Object { name: "VmUuidAssignedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmUuidAssignedEvent))) }),
        ("ArrayOfVsanVdsPgMigrationHostInfo", TypeInfo::Value { name: "ArrayOfVsanVdsPgMigrationHostInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVdsPgMigrationHostInfo>>(wrap_array_of_vsan_vds_pg_migration_host_info), from_value: |v| from_val_with::<Vec<super::structs::VsanVdsPgMigrationHostInfo>>(v, wrap_array_of_vsan_vds_pg_migration_host_info) }),
        ("VmNotDeployed", TypeInfo::Object { name: "VmNotDeployed", builder_fn: || Box::new(VmNotDeployedFields::new()) }),
        ("HostSystemPowerState", TypeInfo::Value { name: "HostSystemPowerState", make_deserializer: || make_deser_with::<super::enums::HostSystemPowerStateEnum>(wrap_host_system_power_state), from_value: |v| from_val_with::<super::enums::HostSystemPowerStateEnum>(v, wrap_host_system_power_state) }),
        ("HostDasDisabledEvent", TypeInfo::Object { name: "HostDasDisabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostDasDisabledEvent))) }),
        ("ArrayOfConflictingDatastoreFound", TypeInfo::Value { name: "ArrayOfConflictingDatastoreFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_conflicting_datastore_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_conflicting_datastore_found) }),
        ("ArrayOfLicenseDowngradeDisallowed", TypeInfo::Value { name: "ArrayOfLicenseDowngradeDisallowed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_license_downgrade_disallowed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_license_downgrade_disallowed) }),
        ("GuestScreenInfo", TypeInfo::Object { name: "GuestScreenInfo", builder_fn: || Box::new(GuestScreenInfoFields::new()) }),
        ("ArrayOfVsanHostClusterStatus", TypeInfo::Value { name: "ArrayOfVsanHostClusterStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostClusterStatus>>(wrap_array_of_vsan_host_cluster_status), from_value: |v| from_val_with::<Vec<super::structs::VsanHostClusterStatus>>(v, wrap_array_of_vsan_host_cluster_status) }),
        ("ArrayOfRDMConversionNotSupported", TypeInfo::Value { name: "ArrayOfRDMConversionNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_rdm_conversion_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_rdm_conversion_not_supported) }),
        ("ArrayOfCannotMoveVmWithDeltaDisk", TypeInfo::Value { name: "ArrayOfCannotMoveVmWithDeltaDisk", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_move_vm_with_delta_disk), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_move_vm_with_delta_disk) }),
        ("ArrayOfNvdimmNamespaceDeleteSpec", TypeInfo::Value { name: "ArrayOfNvdimmNamespaceDeleteSpec", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmNamespaceDeleteSpec>>(wrap_array_of_nvdimm_namespace_delete_spec), from_value: |v| from_val_with::<Vec<super::structs::NvdimmNamespaceDeleteSpec>>(v, wrap_array_of_nvdimm_namespace_delete_spec) }),
        ("ArrayOfOvfConnectedDeviceIso", TypeInfo::Value { name: "ArrayOfOvfConnectedDeviceIso", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_connected_device_iso), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_connected_device_iso) }),
        ("DisconnectedHostsBlockingEVC", TypeInfo::Object { name: "DisconnectedHostsBlockingEVC", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DisconnectedHostsBlockingEvc))) }),
        ("VmfsDatastoreBaseOption", TypeInfo::Object { name: "VmfsDatastoreBaseOption", builder_fn: || Box::new(VmfsDatastoreBaseOptionFields::new()) }),
        ("HostFileSystemMountInfo", TypeInfo::Object { name: "HostFileSystemMountInfo", builder_fn: || Box::new(HostFileSystemMountInfoFields::new()) }),
        ("ArrayOfVmSecondaryAddedEvent", TypeInfo::Value { name: "ArrayOfVmSecondaryAddedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_secondary_added_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_secondary_added_event) }),
        ("ArrayOfExtendedEventPair", TypeInfo::Value { name: "ArrayOfExtendedEventPair", make_deserializer: || make_deser_with::<Vec<super::structs::ExtendedEventPair>>(wrap_array_of_extended_event_pair), from_value: |v| from_val_with::<Vec<super::structs::ExtendedEventPair>>(v, wrap_array_of_extended_event_pair) }),
        ("ArrayOfTaskFilterSpecByEntity", TypeInfo::Value { name: "ArrayOfTaskFilterSpecByEntity", make_deserializer: || make_deser_with::<Vec<super::structs::TaskFilterSpecByEntity>>(wrap_array_of_task_filter_spec_by_entity), from_value: |v| from_val_with::<Vec<super::structs::TaskFilterSpecByEntity>>(v, wrap_array_of_task_filter_spec_by_entity) }),
        ("VirtualCdromPassthroughBackingOption", TypeInfo::Object { name: "VirtualCdromPassthroughBackingOption", builder_fn: || Box::new(VirtualCdromPassthroughBackingOptionFields::new()) }),
        ("SwapDatastoreUnset", TypeInfo::Object { name: "SwapDatastoreUnset", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SwapDatastoreUnset))) }),
        ("ArrayOfReplicaQueryIntervalParam", TypeInfo::Value { name: "ArrayOfReplicaQueryIntervalParam", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicaQueryIntervalParam>>(wrap_array_of_replica_query_interval_param), from_value: |v| from_val_with::<Vec<super::structs::ReplicaQueryIntervalParam>>(v, wrap_array_of_replica_query_interval_param) }),
        ("DvsIpPortRange", TypeInfo::Object { name: "DvsIpPortRange", builder_fn: || Box::new(DvsIpPortRangeFields::new()) }),
        ("VirtualDiskRawDiskVer2BackingOption", TypeInfo::Object { name: "VirtualDiskRawDiskVer2BackingOption", builder_fn: || Box::new(VirtualDiskRawDiskVer2BackingOptionFields::new()) }),
        ("CnsVSANFileCreateSpec", TypeInfo::Object { name: "CnsVSANFileCreateSpec", builder_fn: || Box::new(CnsVsanFileCreateSpecFields::new()) }),
        ("ArrayOfHostVirtualSwitchBridge", TypeInfo::Value { name: "ArrayOfHostVirtualSwitchBridge", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_virtual_switch_bridge_array)), from_value: |v| cast_to_host_virtual_switch_bridge_array(from_value(v)?) }),
        ("MissingLinuxCustResources", TypeInfo::Object { name: "MissingLinuxCustResources", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MissingLinuxCustResources))) }),
        ("InvalidRequest", TypeInfo::Object { name: "InvalidRequest", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidRequest))) }),
        ("ArrayOfServiceContent", TypeInfo::Value { name: "ArrayOfServiceContent", make_deserializer: || make_deser_with::<Vec<super::structs::ServiceContent>>(wrap_array_of_service_content), from_value: |v| from_val_with::<Vec<super::structs::ServiceContent>>(v, wrap_array_of_service_content) }),
        ("VsanIscsiTargetServiceDefaultConfigSpec", TypeInfo::Object { name: "VsanIscsiTargetServiceDefaultConfigSpec", builder_fn: || Box::new(VsanIscsiTargetServiceDefaultConfigSpecFields::new()) }),
        ("ArrayOfAlarmTriggeringActionTransitionSpec", TypeInfo::Value { name: "ArrayOfAlarmTriggeringActionTransitionSpec", make_deserializer: || make_deser_with::<Vec<super::structs::AlarmTriggeringActionTransitionSpec>>(wrap_array_of_alarm_triggering_action_transition_spec), from_value: |v| from_val_with::<Vec<super::structs::AlarmTriggeringActionTransitionSpec>>(v, wrap_array_of_alarm_triggering_action_transition_spec) }),
        ("ArrayOfNodeNetworkSpec", TypeInfo::Value { name: "ArrayOfNodeNetworkSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_node_network_spec_array)), from_value: |v| cast_to_node_network_spec_array(from_value(v)?) }),
        ("ArrayOfVirtualAppLinkInfo", TypeInfo::Value { name: "ArrayOfVirtualAppLinkInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualAppLinkInfo>>(wrap_array_of_virtual_app_link_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualAppLinkInfo>>(v, wrap_array_of_virtual_app_link_info) }),
        ("ArrayOfDistributedVirtualSwitchHostMember", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchHostMember", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchHostMember>>(wrap_array_of_distributed_virtual_switch_host_member), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchHostMember>>(v, wrap_array_of_distributed_virtual_switch_host_member) }),
        ("ArrayOfDVSNetworkResourcePoolConfigSpec", TypeInfo::Value { name: "ArrayOfDVSNetworkResourcePoolConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsNetworkResourcePoolConfigSpec>>(wrap_array_of_dvs_network_resource_pool_config_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsNetworkResourcePoolConfigSpec>>(v, wrap_array_of_dvs_network_resource_pool_config_spec) }),
        ("DistributedVirtualSwitchPortCriteria", TypeInfo::Object { name: "DistributedVirtualSwitchPortCriteria", builder_fn: || Box::new(DistributedVirtualSwitchPortCriteriaFields::new()) }),
        ("ArrayOfVsanRemoteClusterQuerySpec", TypeInfo::Value { name: "ArrayOfVsanRemoteClusterQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanRemoteClusterQuerySpec>>(wrap_array_of_vsan_remote_cluster_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanRemoteClusterQuerySpec>>(v, wrap_array_of_vsan_remote_cluster_query_spec) }),
        ("ArrayOfVirtualE1000e", TypeInfo::Value { name: "ArrayOfVirtualE1000e", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualE1000E>>(wrap_array_of_virtual_e_1000_e), from_value: |v| from_val_with::<Vec<super::structs::VirtualE1000E>>(v, wrap_array_of_virtual_e_1000_e) }),
        ("ArrayOfVmOrphaned", TypeInfo::Value { name: "ArrayOfVmOrphaned", make_deserializer: || make_deser_with::<Vec<super::structs::VmOrphaned>>(wrap_array_of_vm_orphaned), from_value: |v| from_val_with::<Vec<super::structs::VmOrphaned>>(v, wrap_array_of_vm_orphaned) }),
        ("VirtualMachineSummary", TypeInfo::Object { name: "VirtualMachineSummary", builder_fn: || Box::new(VirtualMachineSummaryFields::new()) }),
        ("ArrayOfVsanFileShareSnapshotQueryResult", TypeInfo::Value { name: "ArrayOfVsanFileShareSnapshotQueryResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShareSnapshotQueryResult>>(wrap_array_of_vsan_file_share_snapshot_query_result), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShareSnapshotQueryResult>>(v, wrap_array_of_vsan_file_share_snapshot_query_result) }),
        ("ArrayOfSyncOngoing", TypeInfo::Value { name: "ArrayOfSyncOngoing", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_sync_ongoing), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_sync_ongoing) }),
        ("DatastoreNamespaceManagerDirectoryInfo", TypeInfo::Object { name: "DatastoreNamespaceManagerDirectoryInfo", builder_fn: || Box::new(DatastoreNamespaceManagerDirectoryInfoFields::new()) }),
        ("ArrayOfLicenseRestricted", TypeInfo::Value { name: "ArrayOfLicenseRestricted", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_license_restricted), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_license_restricted) }),
        ("ArrayOfHostFeatureCapability", TypeInfo::Value { name: "ArrayOfHostFeatureCapability", make_deserializer: || make_deser_with::<Vec<super::structs::HostFeatureCapability>>(wrap_array_of_host_feature_capability), from_value: |v| from_val_with::<Vec<super::structs::HostFeatureCapability>>(v, wrap_array_of_host_feature_capability) }),
        ("ArrayOfStateAlarmOperator", TypeInfo::Value { name: "ArrayOfStateAlarmOperator", make_deserializer: || make_deser_with::<Vec<super::enums::StateAlarmOperatorEnum>>(wrap_array_of_state_alarm_operator), from_value: |v| from_val_with::<Vec<super::enums::StateAlarmOperatorEnum>>(v, wrap_array_of_state_alarm_operator) }),
        ("EventAlarmExpressionComparison", TypeInfo::Object { name: "EventAlarmExpressionComparison", builder_fn: || Box::new(EventAlarmExpressionComparisonFields::new()) }),
        ("ArrayOfDrsInvocationFailedEvent", TypeInfo::Value { name: "ArrayOfDrsInvocationFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_invocation_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_invocation_failed_event) }),
        ("HostInternetScsiHbaNetworkBindingSupportType", TypeInfo::Value { name: "HostInternetScsiHbaNetworkBindingSupportType", make_deserializer: || make_deser_with::<super::enums::HostInternetScsiHbaNetworkBindingSupportTypeEnum>(wrap_host_internet_scsi_hba_network_binding_support_type), from_value: |v| from_val_with::<super::enums::HostInternetScsiHbaNetworkBindingSupportTypeEnum>(v, wrap_host_internet_scsi_hba_network_binding_support_type) }),
        ("ArrayOfVirtualFloppy", TypeInfo::Value { name: "ArrayOfVirtualFloppy", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualFloppy>>(wrap_array_of_virtual_floppy), from_value: |v| from_val_with::<Vec<super::structs::VirtualFloppy>>(v, wrap_array_of_virtual_floppy) }),
        ("ArrayOfVsanFileShareSnapshotConfig", TypeInfo::Value { name: "ArrayOfVsanFileShareSnapshotConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShareSnapshotConfig>>(wrap_array_of_vsan_file_share_snapshot_config), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShareSnapshotConfig>>(v, wrap_array_of_vsan_file_share_snapshot_config) }),
        ("HostProfileManagerHostToConfigSpecMap", TypeInfo::Object { name: "HostProfileManagerHostToConfigSpecMap", builder_fn: || Box::new(HostProfileManagerHostToConfigSpecMapFields::new()) }),
        ("ArrayOfVibCannotPutHostInMaintenanceMode", TypeInfo::Value { name: "ArrayOfVibCannotPutHostInMaintenanceMode", make_deserializer: || make_deser_with::<Vec<super::structs::VibCannotPutHostInMaintenanceMode>>(wrap_array_of_vib_cannot_put_host_in_maintenance_mode), from_value: |v| from_val_with::<Vec<super::structs::VibCannotPutHostInMaintenanceMode>>(v, wrap_array_of_vib_cannot_put_host_in_maintenance_mode) }),
        ("ArrayOfNvdimmSystemInfo", TypeInfo::Value { name: "ArrayOfNvdimmSystemInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmSystemInfo>>(wrap_array_of_nvdimm_system_info), from_value: |v| from_val_with::<Vec<super::structs::NvdimmSystemInfo>>(v, wrap_array_of_nvdimm_system_info) }),
        ("ArrayOfHostPciDevice", TypeInfo::Value { name: "ArrayOfHostPciDevice", make_deserializer: || make_deser_with::<Vec<super::structs::HostPciDevice>>(wrap_array_of_host_pci_device), from_value: |v| from_val_with::<Vec<super::structs::HostPciDevice>>(v, wrap_array_of_host_pci_device) }),
        ("ArrayOfHostCpuSchedulerInfo", TypeInfo::Value { name: "ArrayOfHostCpuSchedulerInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostCpuSchedulerInfo>>(wrap_array_of_host_cpu_scheduler_info), from_value: |v| from_val_with::<Vec<super::structs::HostCpuSchedulerInfo>>(v, wrap_array_of_host_cpu_scheduler_info) }),
        ("VsanGenericClusterBestPracticeHealth", TypeInfo::Object { name: "VsanGenericClusterBestPracticeHealth", builder_fn: || Box::new(VsanGenericClusterBestPracticeHealthFields::new()) }),
        ("LicenseAssignmentManagerLicenseAssignment", TypeInfo::Object { name: "LicenseAssignmentManagerLicenseAssignment", builder_fn: || Box::new(LicenseAssignmentManagerLicenseAssignmentFields::new()) }),
        ("ArrayOfWillModifyConfigCpuRequirements", TypeInfo::Value { name: "ArrayOfWillModifyConfigCpuRequirements", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_will_modify_config_cpu_requirements), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_will_modify_config_cpu_requirements) }),
        ("ArrayOfFaultToleranceVMConfigSpec", TypeInfo::Value { name: "ArrayOfFaultToleranceVMConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::FaultToleranceVmConfigSpec>>(wrap_array_of_fault_tolerance_vm_config_spec), from_value: |v| from_val_with::<Vec<super::structs::FaultToleranceVmConfigSpec>>(v, wrap_array_of_fault_tolerance_vm_config_spec) }),
        ("ArrayOfPbmResourceInUse", TypeInfo::Value { name: "ArrayOfPbmResourceInUse", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_resource_in_use), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_resource_in_use) }),
        ("OvfUnknownEntity", TypeInfo::Object { name: "OvfUnknownEntity", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnknownEntity))) }),
        ("ArrayOfInvalidName", TypeInfo::Value { name: "ArrayOfInvalidName", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_name), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_name) }),
        ("HostAssignableHardwareConfig", TypeInfo::Object { name: "HostAssignableHardwareConfig", builder_fn: || Box::new(HostAssignableHardwareConfigFields::new()) }),
        ("ArrayOfNodeDeploymentSpec", TypeInfo::Value { name: "ArrayOfNodeDeploymentSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_node_deployment_spec_array)), from_value: |v| cast_to_node_deployment_spec_array(from_value(v)?) }),
        ("ArrayOfPersonalityAgentBlockedByAgencyOperation", TypeInfo::Value { name: "ArrayOfPersonalityAgentBlockedByAgencyOperation", make_deserializer: || make_deser_with::<Vec<super::structs::PersonalityAgentBlockedByAgencyOperation>>(wrap_array_of_personality_agent_blocked_by_agency_operation), from_value: |v| from_val_with::<Vec<super::structs::PersonalityAgentBlockedByAgencyOperation>>(v, wrap_array_of_personality_agent_blocked_by_agency_operation) }),
        ("VirtualMachineCdromInfo", TypeInfo::Object { name: "VirtualMachineCdromInfo", builder_fn: || Box::new(VirtualMachineCdromInfoFields::new()) }),
        ("EVCUnsupportedByHostHardware", TypeInfo::Object { name: "EVCUnsupportedByHostHardware", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcUnsupportedByHostHardware))) }),
        ("VirtualMachineBootOptionsBootableCdromDevice", TypeInfo::Object { name: "VirtualMachineBootOptionsBootableCdromDevice", builder_fn: || Box::new(VirtualMachineBootOptionsBootableCdromDeviceFields::new()) }),
        ("ArrayOfVmCorrupted", TypeInfo::Value { name: "ArrayOfVmCorrupted", make_deserializer: || make_deser_with::<Vec<super::structs::VmCorrupted>>(wrap_array_of_vm_corrupted), from_value: |v| from_val_with::<Vec<super::structs::VmCorrupted>>(v, wrap_array_of_vm_corrupted) }),
        ("PbmFault", TypeInfo::Object { name: "PbmFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmFault))) }),
        ("ArrayOfHostQualifiedName", TypeInfo::Value { name: "ArrayOfHostQualifiedName", make_deserializer: || make_deser_with::<Vec<super::structs::HostQualifiedName>>(wrap_array_of_host_qualified_name), from_value: |v| from_val_with::<Vec<super::structs::HostQualifiedName>>(v, wrap_array_of_host_qualified_name) }),
        ("ArrayOfClusterOrchestrationInfo", TypeInfo::Value { name: "ArrayOfClusterOrchestrationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterOrchestrationInfo>>(wrap_array_of_cluster_orchestration_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterOrchestrationInfo>>(v, wrap_array_of_cluster_orchestration_info) }),
        ("ArrayOfVsanProactiveRebalanceInfo", TypeInfo::Value { name: "ArrayOfVsanProactiveRebalanceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanProactiveRebalanceInfo>>(wrap_array_of_vsan_proactive_rebalance_info), from_value: |v| from_val_with::<Vec<super::structs::VsanProactiveRebalanceInfo>>(v, wrap_array_of_vsan_proactive_rebalance_info) }),
        ("VsanVdsMigrationPlan", TypeInfo::Object { name: "VsanVdsMigrationPlan", builder_fn: || Box::new(VsanVdsMigrationPlanFields::new()) }),
        ("ArrayOfPortGroupProfile", TypeInfo::Value { name: "ArrayOfPortGroupProfile", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_port_group_profile_array)), from_value: |v| cast_to_port_group_profile_array(from_value(v)?) }),
        ("ArrayOfVmDiskFailedEvent", TypeInfo::Value { name: "ArrayOfVmDiskFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_disk_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_disk_failed_event) }),
        ("ArrayOfVirtualHardwareVersionNotSupported", TypeInfo::Value { name: "ArrayOfVirtualHardwareVersionNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_virtual_hardware_version_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_virtual_hardware_version_not_supported) }),
        ("FileTooLarge", TypeInfo::Object { name: "FileTooLarge", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FileTooLarge))) }),
        ("ArrayOfBoolOption", TypeInfo::Value { name: "ArrayOfBoolOption", make_deserializer: || make_deser_with::<Vec<super::structs::BoolOption>>(wrap_array_of_bool_option), from_value: |v| from_val_with::<Vec<super::structs::BoolOption>>(v, wrap_array_of_bool_option) }),
        ("PersonalityAgencyCannotConfigureSolutions", TypeInfo::Object { name: "PersonalityAgencyCannotConfigureSolutions", builder_fn: || Box::new(PersonalityAgencyCannotConfigureSolutionsFields::new()) }),
        ("ArrayOfVsanClusterHealthLinkBase", TypeInfo::Value { name: "ArrayOfVsanClusterHealthLinkBase", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_cluster_health_link_base_array)), from_value: |v| cast_to_vsan_cluster_health_link_base_array(from_value(v)?) }),
        ("CannotAccessVmConfig", TypeInfo::Object { name: "CannotAccessVmConfig", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotAccessVmConfig))) }),
        ("VirtualPCIController", TypeInfo::Object { name: "VirtualPCIController", builder_fn: || Box::new(VirtualPciControllerFields::new()) }),
        ("VmRequiresHostOutOfMaintenanceMode", TypeInfo::Object { name: "VmRequiresHostOutOfMaintenanceMode", builder_fn: || Box::new(VmRequiresHostOutOfMaintenanceModeFields::new()) }),
        ("ArrayOfDvsProfile", TypeInfo::Value { name: "ArrayOfDvsProfile", make_deserializer: || make_deser_with::<Vec<super::structs::DvsProfile>>(wrap_array_of_dvs_profile), from_value: |v| from_val_with::<Vec<super::structs::DvsProfile>>(v, wrap_array_of_dvs_profile) }),
        ("OvfMissingElement", TypeInfo::Object { name: "OvfMissingElement", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfMissingElement))) }),
        ("LicenseAssignmentFailed", TypeInfo::Object { name: "LicenseAssignmentFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LicenseAssignmentFailed))) }),
        ("MethodFault", TypeInfo::Object { name: "MethodFault", builder_fn: || Box::new(MethodFaultFields::new(None)) }),
        ("VsanIscsiLUNSpec", TypeInfo::Object { name: "VsanIscsiLUNSpec", builder_fn: || Box::new(VsanIscsiLunSpecFields::new()) }),
        ("ArrayOfVMwareDVSPvlanConfigSpec", TypeInfo::Value { name: "ArrayOfVMwareDVSPvlanConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsPvlanConfigSpec>>(wrap_array_of_v_mware_dvs_pvlan_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsPvlanConfigSpec>>(v, wrap_array_of_v_mware_dvs_pvlan_config_spec) }),
        ("VVolVmConfigFileUpdateResultFailedVmConfigFileInfo", TypeInfo::Object { name: "VVolVmConfigFileUpdateResultFailedVmConfigFileInfo", builder_fn: || Box::new(VVolVmConfigFileUpdateResultFailedVmConfigFileInfoFields::new()) }),
        ("SessionEvent", TypeInfo::Object { name: "SessionEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::SessionEvent))) }),
        ("ArrayOfVirtualSriovEthernetCardSriovBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualSriovEthernetCardSriovBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSriovEthernetCardSriovBackingInfo>>(wrap_array_of_virtual_sriov_ethernet_card_sriov_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualSriovEthernetCardSriovBackingInfo>>(v, wrap_array_of_virtual_sriov_ethernet_card_sriov_backing_info) }),
        ("VMwareDVSTeamingHealthCheckConfig", TypeInfo::Object { name: "VMwareDVSTeamingHealthCheckConfig", builder_fn: || Box::new(VMwareDvsTeamingHealthCheckConfigFields::new()) }),
        ("ArrayOfDVSUplinkPortPolicy", TypeInfo::Value { name: "ArrayOfDVSUplinkPortPolicy", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_uplink_port_policy_array)), from_value: |v| cast_to_dvs_uplink_port_policy_array(from_value(v)?) }),
        ("ArrayOfHostNvmeSpec", TypeInfo::Value { name: "ArrayOfHostNvmeSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_nvme_spec_array)), from_value: |v| cast_to_host_nvme_spec_array(from_value(v)?) }),
        ("OvfUnsupportedDeviceExport", TypeInfo::Object { name: "OvfUnsupportedDeviceExport", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedDeviceExport))) }),
        ("HostStorageDeviceInfo", TypeInfo::Object { name: "HostStorageDeviceInfo", builder_fn: || Box::new(HostStorageDeviceInfoFields::new()) }),
        ("InvalidIpmiMacAddress", TypeInfo::Object { name: "InvalidIpmiMacAddress", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidIpmiMacAddress))) }),
        ("CannotDisconnectHostWithFaultToleranceVm", TypeInfo::Object { name: "CannotDisconnectHostWithFaultToleranceVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotDisconnectHostWithFaultToleranceVm))) }),
        ("PatchIntegrityError", TypeInfo::Object { name: "PatchIntegrityError", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PatchIntegrityError))) }),
        ("ArrayOfVsanDiskResourceCheckResult", TypeInfo::Value { name: "ArrayOfVsanDiskResourceCheckResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_disk_resource_check_result_array)), from_value: |v| cast_to_vsan_disk_resource_check_result_array(from_value(v)?) }),
        ("DVSFeatureCapability", TypeInfo::Object { name: "DVSFeatureCapability", builder_fn: || Box::new(DvsFeatureCapabilityFields::new()) }),
        ("ArrayOfHostSystemSwapConfigurationHostCacheOption", TypeInfo::Value { name: "ArrayOfHostSystemSwapConfigurationHostCacheOption", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemSwapConfigurationHostCacheOption>>(wrap_array_of_host_system_swap_configuration_host_cache_option), from_value: |v| from_val_with::<Vec<super::structs::HostSystemSwapConfigurationHostCacheOption>>(v, wrap_array_of_host_system_swap_configuration_host_cache_option) }),
        ("ArrayOfHostReliableMemoryInfo", TypeInfo::Value { name: "ArrayOfHostReliableMemoryInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostReliableMemoryInfo>>(wrap_array_of_host_reliable_memory_info), from_value: |v| from_val_with::<Vec<super::structs::HostReliableMemoryInfo>>(v, wrap_array_of_host_reliable_memory_info) }),
        ("FileBackedVirtualDiskSpec", TypeInfo::Object { name: "FileBackedVirtualDiskSpec", builder_fn: || Box::new(FileBackedVirtualDiskSpecFields::new()) }),
        ("VirtualSIOController", TypeInfo::Object { name: "VirtualSIOController", builder_fn: || Box::new(VirtualSioControllerFields::new()) }),
        ("ArrayOfAuthMinimumAdminPermission", TypeInfo::Value { name: "ArrayOfAuthMinimumAdminPermission", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_auth_minimum_admin_permission), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_auth_minimum_admin_permission) }),
        ("ArrayOfHostNoAvailableNetworksEvent", TypeInfo::Value { name: "ArrayOfHostNoAvailableNetworksEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_no_available_networks_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_no_available_networks_event) }),
        ("ClusterAgentInsufficientClusterSpace", TypeInfo::Object { name: "ClusterAgentInsufficientClusterSpace", builder_fn: || Box::new(ClusterAgentInsufficientClusterSpaceFields::new()) }),
        ("VmwareDistributedVirtualSwitchVlanSpec", TypeInfo::Object { name: "VmwareDistributedVirtualSwitchVlanSpec", builder_fn: || Box::new(VmwareDistributedVirtualSwitchVlanSpecFields::new()) }),
        ("HostProfileManagerCompositionResult", TypeInfo::Object { name: "HostProfileManagerCompositionResult", builder_fn: || Box::new(HostProfileManagerCompositionResultFields::new()) }),
        ("ClusterProfileCompleteConfigSpec", TypeInfo::Object { name: "ClusterProfileCompleteConfigSpec", builder_fn: || Box::new(ClusterProfileCompleteConfigSpecFields::new()) }),
        ("DisallowedChangeByService", TypeInfo::Object { name: "DisallowedChangeByService", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DisallowedChangeByService))) }),
        ("VmFailedToPowerOffEvent", TypeInfo::Object { name: "VmFailedToPowerOffEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedToPowerOffEvent))) }),
        ("ArrayOfClockSkew", TypeInfo::Value { name: "ArrayOfClockSkew", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_clock_skew), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_clock_skew) }),
        ("ArrayOfCustomFieldValue", TypeInfo::Value { name: "ArrayOfCustomFieldValue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_custom_field_value_array)), from_value: |v| cast_to_custom_field_value_array(from_value(v)?) }),
        ("ArrayOfUserNotFound", TypeInfo::Value { name: "ArrayOfUserNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_user_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_user_not_found) }),
        ("ArrayOfHostNumericSensorInfo", TypeInfo::Value { name: "ArrayOfHostNumericSensorInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostNumericSensorInfo>>(wrap_array_of_host_numeric_sensor_info), from_value: |v| from_val_with::<Vec<super::structs::HostNumericSensorInfo>>(v, wrap_array_of_host_numeric_sensor_info) }),
        ("HostNvmeTopologyInterface", TypeInfo::Object { name: "HostNvmeTopologyInterface", builder_fn: || Box::new(HostNvmeTopologyInterfaceFields::new()) }),
        ("HostActiveDirectorySpec", TypeInfo::Object { name: "HostActiveDirectorySpec", builder_fn: || Box::new(HostActiveDirectorySpecFields::new()) }),
        ("InsufficientDisks", TypeInfo::Object { name: "InsufficientDisks", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientDisks))) }),
        ("RemoteTSMEnabledEvent", TypeInfo::Object { name: "RemoteTSMEnabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::RemoteTsmEnabledEvent))) }),
        ("CnsBaseCreateSpec", TypeInfo::Object { name: "CnsBaseCreateSpec", builder_fn: || Box::new(CnsBaseCreateSpecFields::new()) }),
        ("ArrayOfvslmInfrastructureObjectPolicySpec", TypeInfo::Value { name: "ArrayOfvslmInfrastructureObjectPolicySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VslmInfrastructureObjectPolicySpec>>(wrap_array_ofvslm_infrastructure_object_policy_spec), from_value: |v| from_val_with::<Vec<super::structs::VslmInfrastructureObjectPolicySpec>>(v, wrap_array_ofvslm_infrastructure_object_policy_spec) }),
        ("HostVirtualNicManagerNicTypeSelection", TypeInfo::Object { name: "HostVirtualNicManagerNicTypeSelection", builder_fn: || Box::new(HostVirtualNicManagerNicTypeSelectionFields::new()) }),
        ("VsanPerfDiagnoseQuerySpec", TypeInfo::Object { name: "VsanPerfDiagnoseQuerySpec", builder_fn: || Box::new(VsanPerfDiagnoseQuerySpecFields::new()) }),
        ("ArrayOfClusterComputeResourceHostConfigurationInput", TypeInfo::Value { name: "ArrayOfClusterComputeResourceHostConfigurationInput", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterComputeResourceHostConfigurationInput>>(wrap_array_of_cluster_compute_resource_host_configuration_input), from_value: |v| from_val_with::<Vec<super::structs::ClusterComputeResourceHostConfigurationInput>>(v, wrap_array_of_cluster_compute_resource_host_configuration_input) }),
        ("ArrayOfHealthSystemRuntime", TypeInfo::Value { name: "ArrayOfHealthSystemRuntime", make_deserializer: || make_deser_with::<Vec<super::structs::HealthSystemRuntime>>(wrap_array_of_health_system_runtime), from_value: |v| from_val_with::<Vec<super::structs::HealthSystemRuntime>>(v, wrap_array_of_health_system_runtime) }),
        ("VsanHealthActionBase", TypeInfo::Object { name: "VsanHealthActionBase", builder_fn: || Box::new(VsanHealthActionBaseFields::new()) }),
        ("VsanPolicySatisfiability", TypeInfo::Object { name: "VsanPolicySatisfiability", builder_fn: || Box::new(VsanPolicySatisfiabilityFields::new()) }),
        ("ArrayOfCnsFileBackingDetails", TypeInfo::Value { name: "ArrayOfCnsFileBackingDetails", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cns_file_backing_details_array)), from_value: |v| cast_to_cns_file_backing_details_array(from_value(v)?) }),
        ("ArrayOfHostVirtualNicIpRouteSpec", TypeInfo::Value { name: "ArrayOfHostVirtualNicIpRouteSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualNicIpRouteSpec>>(wrap_array_of_host_virtual_nic_ip_route_spec), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualNicIpRouteSpec>>(v, wrap_array_of_host_virtual_nic_ip_route_spec) }),
        ("ArrayOfVsanPhysicalDiskHealth", TypeInfo::Value { name: "ArrayOfVsanPhysicalDiskHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPhysicalDiskHealth>>(wrap_array_of_vsan_physical_disk_health), from_value: |v| from_val_with::<Vec<super::structs::VsanPhysicalDiskHealth>>(v, wrap_array_of_vsan_physical_disk_health) }),
        ("ArrayOfRecoveredDiskInfo", TypeInfo::Value { name: "ArrayOfRecoveredDiskInfo", make_deserializer: || make_deser_with::<Vec<super::structs::RecoveredDiskInfo>>(wrap_array_of_recovered_disk_info), from_value: |v| from_val_with::<Vec<super::structs::RecoveredDiskInfo>>(v, wrap_array_of_recovered_disk_info) }),
        ("ArrayOfMultipleSortSpecsNotSupported", TypeInfo::Value { name: "ArrayOfMultipleSortSpecsNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_multiple_sort_specs_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_multiple_sort_specs_not_supported) }),
        ("HbrTargetSpecReplacement", TypeInfo::Object { name: "HbrTargetSpecReplacement", builder_fn: || Box::new(HbrTargetSpecReplacementFields::new()) }),
        ("ArrayOfFaultToleranceSecondaryOpResult", TypeInfo::Value { name: "ArrayOfFaultToleranceSecondaryOpResult", make_deserializer: || make_deser_with::<Vec<super::structs::FaultToleranceSecondaryOpResult>>(wrap_array_of_fault_tolerance_secondary_op_result), from_value: |v| from_val_with::<Vec<super::structs::FaultToleranceSecondaryOpResult>>(v, wrap_array_of_fault_tolerance_secondary_op_result) }),
        ("CryptoManagerKmipCertSignRequest", TypeInfo::Object { name: "CryptoManagerKmipCertSignRequest", builder_fn: || Box::new(CryptoManagerKmipCertSignRequestFields::new()) }),
        ("StorageFileSystem", TypeInfo::Object { name: "StorageFileSystem", builder_fn: || Box::new(StorageFileSystemFields::new()) }),
        ("ArrayOfHostDatastoreNameConflictConnectInfo", TypeInfo::Value { name: "ArrayOfHostDatastoreNameConflictConnectInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostDatastoreNameConflictConnectInfo>>(wrap_array_of_host_datastore_name_conflict_connect_info), from_value: |v| from_val_with::<Vec<super::structs::HostDatastoreNameConflictConnectInfo>>(v, wrap_array_of_host_datastore_name_conflict_connect_info) }),
        ("NicSettingMismatch", TypeInfo::Object { name: "NicSettingMismatch", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NicSettingMismatch))) }),
        ("ArrayOfVsanComplianceDetail", TypeInfo::Value { name: "ArrayOfVsanComplianceDetail", make_deserializer: || make_deser_with::<Vec<super::structs::VsanComplianceDetail>>(wrap_array_of_vsan_compliance_detail), from_value: |v| from_val_with::<Vec<super::structs::VsanComplianceDetail>>(v, wrap_array_of_vsan_compliance_detail) }),
        ("OrphanedDvFilterSwitch", TypeInfo::Object { name: "OrphanedDvFilterSwitch", builder_fn: || Box::new(OrphanedDvFilterSwitchFields::new()) }),
        ("VirtualMachineNetworkShaperInfo", TypeInfo::Object { name: "VirtualMachineNetworkShaperInfo", builder_fn: || Box::new(VirtualMachineNetworkShaperInfoFields::new()) }),
        ("HostRemovedEvent", TypeInfo::Object { name: "HostRemovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostRemovedEvent))) }),
        ("ArrayOfProfileSerializedCreateSpec", TypeInfo::Value { name: "ArrayOfProfileSerializedCreateSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_profile_serialized_create_spec_array)), from_value: |v| cast_to_profile_serialized_create_spec_array(from_value(v)?) }),
        ("ArrayOfDvsMacRewriteNetworkRuleAction", TypeInfo::Value { name: "ArrayOfDvsMacRewriteNetworkRuleAction", make_deserializer: || make_deser_with::<Vec<super::structs::DvsMacRewriteNetworkRuleAction>>(wrap_array_of_dvs_mac_rewrite_network_rule_action), from_value: |v| from_val_with::<Vec<super::structs::DvsMacRewriteNetworkRuleAction>>(v, wrap_array_of_dvs_mac_rewrite_network_rule_action) }),
        ("ArrayOfVirtualMachineVirtualPMem", TypeInfo::Value { name: "ArrayOfVirtualMachineVirtualPMem", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVirtualPMem>>(wrap_array_of_virtual_machine_virtual_p_mem), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVirtualPMem>>(v, wrap_array_of_virtual_machine_virtual_p_mem) }),
        ("ArrayOfDvsHostBackInSyncEvent", TypeInfo::Value { name: "ArrayOfDvsHostBackInSyncEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_host_back_in_sync_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_host_back_in_sync_event) }),
        ("OvfInternalError", TypeInfo::Object { name: "OvfInternalError", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfInternalError))) }),
        ("VStorageObject", TypeInfo::Object { name: "VStorageObject", builder_fn: || Box::new(VStorageObjectFields::new()) }),
        ("ArrayOfClusterSystemVMsConfigInfo", TypeInfo::Value { name: "ArrayOfClusterSystemVMsConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterSystemVMsConfigInfo>>(wrap_array_of_cluster_system_v_ms_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterSystemVMsConfigInfo>>(v, wrap_array_of_cluster_system_v_ms_config_info) }),
        ("PersonalityAgencyInvalidDepot", TypeInfo::Object { name: "PersonalityAgencyInvalidDepot", builder_fn: || Box::new(PersonalityAgencyInvalidDepotFields::new()) }),
        ("ArrayOfAuthenticationProfile", TypeInfo::Value { name: "ArrayOfAuthenticationProfile", make_deserializer: || make_deser_with::<Vec<super::structs::AuthenticationProfile>>(wrap_array_of_authentication_profile), from_value: |v| from_val_with::<Vec<super::structs::AuthenticationProfile>>(v, wrap_array_of_authentication_profile) }),
        ("ArrayOfCnsKubernetesEntityMetadata", TypeInfo::Value { name: "ArrayOfCnsKubernetesEntityMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::CnsKubernetesEntityMetadata>>(wrap_array_of_cns_kubernetes_entity_metadata), from_value: |v| from_val_with::<Vec<super::structs::CnsKubernetesEntityMetadata>>(v, wrap_array_of_cns_kubernetes_entity_metadata) }),
        ("ArrayOfFaultDomainFilter", TypeInfo::Value { name: "ArrayOfFaultDomainFilter", make_deserializer: || make_deser_with::<Vec<super::structs::FaultDomainFilter>>(wrap_array_of_fault_domain_filter), from_value: |v| from_val_with::<Vec<super::structs::FaultDomainFilter>>(v, wrap_array_of_fault_domain_filter) }),
        ("ArrayOfVsanUpgradeSystemMissingHostsInClusterIssue", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemMissingHostsInClusterIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemMissingHostsInClusterIssue>>(wrap_array_of_vsan_upgrade_system_missing_hosts_in_cluster_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemMissingHostsInClusterIssue>>(v, wrap_array_of_vsan_upgrade_system_missing_hosts_in_cluster_issue) }),
        ("FaultToleranceVmNotDasProtected", TypeInfo::Object { name: "FaultToleranceVmNotDasProtected", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FaultToleranceVmNotDasProtected))) }),
        ("ArrayOfHostTpmAttestationReport", TypeInfo::Value { name: "ArrayOfHostTpmAttestationReport", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmAttestationReport>>(wrap_array_of_host_tpm_attestation_report), from_value: |v| from_val_with::<Vec<super::structs::HostTpmAttestationReport>>(v, wrap_array_of_host_tpm_attestation_report) }),
        ("MethodActionArgument", TypeInfo::Object { name: "MethodActionArgument", builder_fn: || Box::new(MethodActionArgumentFields::new()) }),
        ("ImportHostAddFailure", TypeInfo::Object { name: "ImportHostAddFailure", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ImportHostAddFailure))) }),
        ("ArrayOfHostPatchManagerResult", TypeInfo::Value { name: "ArrayOfHostPatchManagerResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostPatchManagerResult>>(wrap_array_of_host_patch_manager_result), from_value: |v| from_val_with::<Vec<super::structs::HostPatchManagerResult>>(v, wrap_array_of_host_patch_manager_result) }),
        ("ArrayOfOvfPropertyNetwork", TypeInfo::Value { name: "ArrayOfOvfPropertyNetwork", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_property_network), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_property_network) }),
        ("ArrayOfEventDescription", TypeInfo::Value { name: "ArrayOfEventDescription", make_deserializer: || make_deser_with::<Vec<super::structs::EventDescription>>(wrap_array_of_event_description), from_value: |v| from_val_with::<Vec<super::structs::EventDescription>>(v, wrap_array_of_event_description) }),
        ("RollbackEvent", TypeInfo::Object { name: "RollbackEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::RollbackEvent))) }),
        ("CustomFieldDefRemovedEvent", TypeInfo::Object { name: "CustomFieldDefRemovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomFieldDefRemovedEvent))) }),
        ("StoragePerformanceSummary", TypeInfo::Object { name: "StoragePerformanceSummary", builder_fn: || Box::new(StoragePerformanceSummaryFields::new()) }),
        ("ArrayOfEnteringMaintenanceModeEvent", TypeInfo::Value { name: "ArrayOfEnteringMaintenanceModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_entering_maintenance_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_entering_maintenance_mode_event) }),
        ("UserSession", TypeInfo::Object { name: "UserSession", builder_fn: || Box::new(UserSessionFields::new()) }),
        ("ArrayOfArrayUpdateOperation", TypeInfo::Value { name: "ArrayOfArrayUpdateOperation", make_deserializer: || make_deser_with::<Vec<super::enums::ArrayUpdateOperationEnum>>(wrap_array_of_array_update_operation), from_value: |v| from_val_with::<Vec<super::enums::ArrayUpdateOperationEnum>>(v, wrap_array_of_array_update_operation) }),
        ("ArrayOfPbmCapabilityVendorResourceTypeInfo", TypeInfo::Value { name: "ArrayOfPbmCapabilityVendorResourceTypeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityVendorResourceTypeInfo>>(wrap_array_of_pbm_capability_vendor_resource_type_info), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityVendorResourceTypeInfo>>(v, wrap_array_of_pbm_capability_vendor_resource_type_info) }),
        ("VsanStretchedClusterConfig", TypeInfo::Object { name: "VsanStretchedClusterConfig", builder_fn: || Box::new(VsanStretchedClusterConfigFields::new()) }),
        ("ArrayOfDatastoreMountPathDatastorePair", TypeInfo::Value { name: "ArrayOfDatastoreMountPathDatastorePair", make_deserializer: || make_deser_with::<Vec<super::structs::DatastoreMountPathDatastorePair>>(wrap_array_of_datastore_mount_path_datastore_pair), from_value: |v| from_val_with::<Vec<super::structs::DatastoreMountPathDatastorePair>>(v, wrap_array_of_datastore_mount_path_datastore_pair) }),
        ("ArrayOfHostMultipathInfoLogicalUnitPolicy", TypeInfo::Value { name: "ArrayOfHostMultipathInfoLogicalUnitPolicy", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_multipath_info_logical_unit_policy_array)), from_value: |v| cast_to_host_multipath_info_logical_unit_policy_array(from_value(v)?) }),
        ("ArrayOfDVSManagerPhysicalNicsList", TypeInfo::Value { name: "ArrayOfDVSManagerPhysicalNicsList", make_deserializer: || make_deser_with::<Vec<super::structs::DvsManagerPhysicalNicsList>>(wrap_array_of_dvs_manager_physical_nics_list), from_value: |v| from_val_with::<Vec<super::structs::DvsManagerPhysicalNicsList>>(v, wrap_array_of_dvs_manager_physical_nics_list) }),
        ("ArrayOfDvsHealthStatusChangeEvent", TypeInfo::Value { name: "ArrayOfDvsHealthStatusChangeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_health_status_change_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_health_status_change_event) }),
        ("ArrayOfOvfMissingElement", TypeInfo::Value { name: "ArrayOfOvfMissingElement", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_missing_element), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_missing_element) }),
        ("ArrayOfVsanHostRuntimeStats", TypeInfo::Value { name: "ArrayOfVsanHostRuntimeStats", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostRuntimeStats>>(wrap_array_of_vsan_host_runtime_stats), from_value: |v| from_val_with::<Vec<super::structs::VsanHostRuntimeStats>>(v, wrap_array_of_vsan_host_runtime_stats) }),
        ("NetIpRouteConfigInfoIpRoute", TypeInfo::Object { name: "NetIpRouteConfigInfoIpRoute", builder_fn: || Box::new(NetIpRouteConfigInfoIpRouteFields::new()) }),
        ("ArrayOfRestrictedByAdministrator", TypeInfo::Value { name: "ArrayOfRestrictedByAdministrator", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_restricted_by_administrator), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_restricted_by_administrator) }),
        ("ArrayOfOperationNotSupportedByGuest", TypeInfo::Value { name: "ArrayOfOperationNotSupportedByGuest", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_operation_not_supported_by_guest), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_operation_not_supported_by_guest) }),
        ("ArrayOfVsanAttachToSrOperation", TypeInfo::Value { name: "ArrayOfVsanAttachToSrOperation", make_deserializer: || make_deser_with::<Vec<super::structs::VsanAttachToSrOperation>>(wrap_array_of_vsan_attach_to_sr_operation), from_value: |v| from_val_with::<Vec<super::structs::VsanAttachToSrOperation>>(v, wrap_array_of_vsan_attach_to_sr_operation) }),
        ("EVCConfigFault", TypeInfo::Object { name: "EVCConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcConfigFault))) }),
        ("ArrayOfVsanDitEncryptionHealthSummary", TypeInfo::Value { name: "ArrayOfVsanDitEncryptionHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDitEncryptionHealthSummary>>(wrap_array_of_vsan_dit_encryption_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanDitEncryptionHealthSummary>>(v, wrap_array_of_vsan_dit_encryption_health_summary) }),
        ("ArrayOfNetDhcpConfigSpec", TypeInfo::Value { name: "ArrayOfNetDhcpConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::NetDhcpConfigSpec>>(wrap_array_of_net_dhcp_config_spec), from_value: |v| from_val_with::<Vec<super::structs::NetDhcpConfigSpec>>(v, wrap_array_of_net_dhcp_config_spec) }),
        ("ArrayOfHostSystemSwapConfiguration", TypeInfo::Value { name: "ArrayOfHostSystemSwapConfiguration", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemSwapConfiguration>>(wrap_array_of_host_system_swap_configuration), from_value: |v| from_val_with::<Vec<super::structs::HostSystemSwapConfiguration>>(v, wrap_array_of_host_system_swap_configuration) }),
        ("VirtualMachineFileLayoutSnapshotLayout", TypeInfo::Object { name: "VirtualMachineFileLayoutSnapshotLayout", builder_fn: || Box::new(VirtualMachineFileLayoutSnapshotLayoutFields::new()) }),
        ("VimVsanHostDiskResultEx", TypeInfo::Object { name: "VimVsanHostDiskResultEx", builder_fn: || Box::new(VimVsanHostDiskResultExFields::new()) }),
        ("HostCacheConfigurationInfo", TypeInfo::Object { name: "HostCacheConfigurationInfo", builder_fn: || Box::new(HostCacheConfigurationInfoFields::new()) }),
        ("ArrayOfPatchAlreadyInstalled", TypeInfo::Value { name: "ArrayOfPatchAlreadyInstalled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_patch_already_installed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_patch_already_installed) }),
        ("PbmCapabilityInstance", TypeInfo::Object { name: "PbmCapabilityInstance", builder_fn: || Box::new(PbmCapabilityInstanceFields::new()) }),
        ("PbmFaultNoPermission", TypeInfo::Object { name: "PbmFaultNoPermission", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmFaultNoPermission))) }),
        ("BaseConfigInfoFileBackingInfo", TypeInfo::Object { name: "BaseConfigInfoFileBackingInfo", builder_fn: || Box::new(BaseConfigInfoFileBackingInfoFields::new()) }),
        ("GuestOperationsFault", TypeInfo::Object { name: "GuestOperationsFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestOperationsFault))) }),
        ("PersonalityAgencyPMIssue", TypeInfo::Object { name: "PersonalityAgencyPMIssue", builder_fn: || Box::new(PersonalityAgencyPmIssueFields::new()) }),
        ("ReplicationVmFault", TypeInfo::Object { name: "ReplicationVmFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReplicationVmFault))) }),
        ("ArrayOfFileAlreadyExists", TypeInfo::Value { name: "ArrayOfFileAlreadyExists", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_file_already_exists), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_file_already_exists) }),
        ("ArrayOfShrinkDiskFault", TypeInfo::Value { name: "ArrayOfShrinkDiskFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_shrink_disk_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_shrink_disk_fault) }),
        ("ClusterFixedSizeSlotPolicy", TypeInfo::Object { name: "ClusterFixedSizeSlotPolicy", builder_fn: || Box::new(ClusterFixedSizeSlotPolicyFields::new()) }),
        ("ArrayOfClusterProfileCompleteConfigSpec", TypeInfo::Value { name: "ArrayOfClusterProfileCompleteConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterProfileCompleteConfigSpec>>(wrap_array_of_cluster_profile_complete_config_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterProfileCompleteConfigSpec>>(v, wrap_array_of_cluster_profile_complete_config_spec) }),
        ("ArrayOfSnapshotNoChange", TypeInfo::Value { name: "ArrayOfSnapshotNoChange", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_snapshot_no_change), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_snapshot_no_change) }),
        ("ArrayOfVirtualMachineFileLayout", TypeInfo::Value { name: "ArrayOfVirtualMachineFileLayout", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFileLayout>>(wrap_array_of_virtual_machine_file_layout), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFileLayout>>(v, wrap_array_of_virtual_machine_file_layout) }),
        ("VsanResourceCheckSpec", TypeInfo::Object { name: "VsanResourceCheckSpec", builder_fn: || Box::new(VsanResourceCheckSpecFields::new()) }),
        ("HostProfileManagerConfigTaskList", TypeInfo::Object { name: "HostProfileManagerConfigTaskList", builder_fn: || Box::new(HostProfileManagerConfigTaskListFields::new()) }),
        ("SolutionsValidateSpec", TypeInfo::Object { name: "SolutionsValidateSpec", builder_fn: || Box::new(SolutionsValidateSpecFields::new()) }),
        ("HostSpbmHashInfo", TypeInfo::Object { name: "HostSpbmHashInfo", builder_fn: || Box::new(HostSpbmHashInfoFields::new()) }),
        ("OpaqueNetworkTargetInfo", TypeInfo::Object { name: "OpaqueNetworkTargetInfo", builder_fn: || Box::new(OpaqueNetworkTargetInfoFields::new()) }),
        ("HostNatServiceSpec", TypeInfo::Object { name: "HostNatServiceSpec", builder_fn: || Box::new(HostNatServiceSpecFields::new()) }),
        ("InvalidGuestLogin", TypeInfo::Object { name: "InvalidGuestLogin", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidGuestLogin))) }),
        ("ArrayOfVsanPerfTopEntities", TypeInfo::Value { name: "ArrayOfVsanPerfTopEntities", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfTopEntities>>(wrap_array_of_vsan_perf_top_entities), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfTopEntities>>(v, wrap_array_of_vsan_perf_top_entities) }),
        ("ArrayOfInvalidDrsBehaviorForFtVm", TypeInfo::Value { name: "ArrayOfInvalidDrsBehaviorForFtVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_drs_behavior_for_ft_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_drs_behavior_for_ft_vm) }),
        ("VsanHostAbortWipeDiskStatus", TypeInfo::Object { name: "VsanHostAbortWipeDiskStatus", builder_fn: || Box::new(VsanHostAbortWipeDiskStatusFields::new()) }),
        ("ArrayOfVsanClusterProactiveTestResult", TypeInfo::Value { name: "ArrayOfVsanClusterProactiveTestResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterProactiveTestResult>>(wrap_array_of_vsan_cluster_proactive_test_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterProactiveTestResult>>(v, wrap_array_of_vsan_cluster_proactive_test_result) }),
        ("ArrayOfNumericRange", TypeInfo::Value { name: "ArrayOfNumericRange", make_deserializer: || make_deser_with::<Vec<super::structs::NumericRange>>(wrap_array_of_numeric_range), from_value: |v| from_val_with::<Vec<super::structs::NumericRange>>(v, wrap_array_of_numeric_range) }),
        ("OvfValidateHostParams", TypeInfo::Object { name: "OvfValidateHostParams", builder_fn: || Box::new(OvfValidateHostParamsFields::new()) }),
        ("HostInternetScsiTargetTransport", TypeInfo::Object { name: "HostInternetScsiTargetTransport", builder_fn: || Box::new(HostInternetScsiTargetTransportFields::new()) }),
        ("OptionProfile", TypeInfo::Object { name: "OptionProfile", builder_fn: || Box::new(OptionProfileFields::new()) }),
        ("ArrayOfVsanClusterCoreConfigSpec", TypeInfo::Value { name: "ArrayOfVsanClusterCoreConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterCoreConfigSpec>>(wrap_array_of_vsan_cluster_core_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterCoreConfigSpec>>(v, wrap_array_of_vsan_cluster_core_config_spec) }),
        ("NoPermissionOnAD", TypeInfo::Object { name: "NoPermissionOnAD", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoPermissionOnAd))) }),
        ("VsanDiskEncryptionHealth", TypeInfo::Object { name: "VsanDiskEncryptionHealth", builder_fn: || Box::new(VsanDiskEncryptionHealthFields::new()) }),
        ("ArrayOfVmFaultToleranceVmTerminatedEvent", TypeInfo::Value { name: "ArrayOfVmFaultToleranceVmTerminatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_fault_tolerance_vm_terminated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_fault_tolerance_vm_terminated_event) }),
        ("FolderFileQuery", TypeInfo::Object { name: "FolderFileQuery", builder_fn: || Box::new(FolderFileQueryFields::new()) }),
        ("DVSHostLocalPortInfo", TypeInfo::Object { name: "DVSHostLocalPortInfo", builder_fn: || Box::new(DvsHostLocalPortInfoFields::new()) }),
        ("DvsEventArgument", TypeInfo::Object { name: "DvsEventArgument", builder_fn: || Box::new(DvsEventArgumentFields::new()) }),
        ("DVSNameArrayUplinkPortPolicy", TypeInfo::Object { name: "DVSNameArrayUplinkPortPolicy", builder_fn: || Box::new(DvsNameArrayUplinkPortPolicyFields::new()) }),
        ("VmRemovedEvent", TypeInfo::Object { name: "VmRemovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRemovedEvent))) }),
        ("ArrayOfEamRuntimeFault", TypeInfo::Value { name: "ArrayOfEamRuntimeFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eam_runtime_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eam_runtime_fault) }),
        ("ClockSkew", TypeInfo::Object { name: "ClockSkew", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ClockSkew))) }),
        ("ProfileSerializedCreateSpec", TypeInfo::Object { name: "ProfileSerializedCreateSpec", builder_fn: || Box::new(ProfileSerializedCreateSpecFields::new()) }),
        ("ArrayOfDvsUpgradeInProgressEvent", TypeInfo::Value { name: "ArrayOfDvsUpgradeInProgressEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_upgrade_in_progress_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_upgrade_in_progress_event) }),
        ("ArrayOfSolutionsHookInfo", TypeInfo::Value { name: "ArrayOfSolutionsHookInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsHookInfo>>(wrap_array_of_solutions_hook_info), from_value: |v| from_val_with::<Vec<super::structs::SolutionsHookInfo>>(v, wrap_array_of_solutions_hook_info) }),
        ("ArrayOfVirtualMachineInstantCloneSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineInstantCloneSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineInstantCloneSpec>>(wrap_array_of_virtual_machine_instant_clone_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineInstantCloneSpec>>(v, wrap_array_of_virtual_machine_instant_clone_spec) }),
        ("VmInaccessible", TypeInfo::Object { name: "VmInaccessible", builder_fn: || Box::new(VmInaccessibleFields::new()) }),
        ("VSANStretchedClusterHostVirtualApplianceStatus", TypeInfo::Object { name: "VSANStretchedClusterHostVirtualApplianceStatus", builder_fn: || Box::new(VsanStretchedClusterHostVirtualApplianceStatusFields::new()) }),
        ("ArrayOfHostNatServiceNameServiceSpec", TypeInfo::Value { name: "ArrayOfHostNatServiceNameServiceSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostNatServiceNameServiceSpec>>(wrap_array_of_host_nat_service_name_service_spec), from_value: |v| from_val_with::<Vec<super::structs::HostNatServiceNameServiceSpec>>(v, wrap_array_of_host_nat_service_name_service_spec) }),
        ("HourlyTaskScheduler", TypeInfo::Object { name: "HourlyTaskScheduler", builder_fn: || Box::new(HourlyTaskSchedulerFields::new()) }),
        ("VirtualDiskFlatVer1BackingOption", TypeInfo::Object { name: "VirtualDiskFlatVer1BackingOption", builder_fn: || Box::new(VirtualDiskFlatVer1BackingOptionFields::new()) }),
        ("ArrayOfHostMemberHealthCheckResult", TypeInfo::Value { name: "ArrayOfHostMemberHealthCheckResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_member_health_check_result_array)), from_value: |v| cast_to_host_member_health_check_result_array(from_value(v)?) }),
        ("VmRelocatedEvent", TypeInfo::Object { name: "VmRelocatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRelocatedEvent))) }),
        ("EVCAdmissionFailedCPUVendorUnknown", TypeInfo::Object { name: "EVCAdmissionFailedCPUVendorUnknown", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcAdmissionFailedCpuVendorUnknown))) }),
        ("ArrayOfReplicationInvalidOptions", TypeInfo::Value { name: "ArrayOfReplicationInvalidOptions", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_replication_invalid_options), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_replication_invalid_options) }),
        ("VirtualSoundCardDeviceBackingInfo", TypeInfo::Object { name: "VirtualSoundCardDeviceBackingInfo", builder_fn: || Box::new(VirtualSoundCardDeviceBackingInfoFields::new()) }),
        ("ArrayOfHostDatastoreBrowserSearchResults", TypeInfo::Value { name: "ArrayOfHostDatastoreBrowserSearchResults", make_deserializer: || make_deser_with::<Vec<super::structs::HostDatastoreBrowserSearchResults>>(wrap_array_of_host_datastore_browser_search_results), from_value: |v| from_val_with::<Vec<super::structs::HostDatastoreBrowserSearchResults>>(v, wrap_array_of_host_datastore_browser_search_results) }),
        ("ArrayOfHostPatchManagerLocator", TypeInfo::Value { name: "ArrayOfHostPatchManagerLocator", make_deserializer: || make_deser_with::<Vec<super::structs::HostPatchManagerLocator>>(wrap_array_of_host_patch_manager_locator), from_value: |v| from_val_with::<Vec<super::structs::HostPatchManagerLocator>>(v, wrap_array_of_host_patch_manager_locator) }),
        ("SnapshotDisabled", TypeInfo::Object { name: "SnapshotDisabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotDisabled))) }),
        ("LatencySensitivitySensitivityLevel", TypeInfo::Value { name: "LatencySensitivitySensitivityLevel", make_deserializer: || make_deser_with::<super::enums::LatencySensitivitySensitivityLevelEnum>(wrap_latency_sensitivity_sensitivity_level), from_value: |v| from_val_with::<super::enums::LatencySensitivitySensitivityLevelEnum>(v, wrap_latency_sensitivity_sensitivity_level) }),
        ("ArrayOfPersonalityAgencyCannotUploadDepot", TypeInfo::Value { name: "ArrayOfPersonalityAgencyCannotUploadDepot", make_deserializer: || make_deser_with::<Vec<super::structs::PersonalityAgencyCannotUploadDepot>>(wrap_array_of_personality_agency_cannot_upload_depot), from_value: |v| from_val_with::<Vec<super::structs::PersonalityAgencyCannotUploadDepot>>(v, wrap_array_of_personality_agency_cannot_upload_depot) }),
        ("PerformClusterPowerActionSpec", TypeInfo::Object { name: "PerformClusterPowerActionSpec", builder_fn: || Box::new(PerformClusterPowerActionSpecFields::new()) }),
        ("ProfileDescription", TypeInfo::Object { name: "ProfileDescription", builder_fn: || Box::new(ProfileDescriptionFields::new()) }),
        ("ArrayOfVsanVcPostDeployConfigSpec", TypeInfo::Value { name: "ArrayOfVsanVcPostDeployConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVcPostDeployConfigSpec>>(wrap_array_of_vsan_vc_post_deploy_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanVcPostDeployConfigSpec>>(v, wrap_array_of_vsan_vc_post_deploy_config_spec) }),
        ("ArrayOfVirtualMachineConfigInfoOverheadInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineConfigInfoOverheadInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineConfigInfoOverheadInfo>>(wrap_array_of_virtual_machine_config_info_overhead_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineConfigInfoOverheadInfo>>(v, wrap_array_of_virtual_machine_config_info_overhead_info) }),
        ("ArrayOfCnsAsyncQueryResult", TypeInfo::Value { name: "ArrayOfCnsAsyncQueryResult", make_deserializer: || make_deser_with::<Vec<super::structs::CnsAsyncQueryResult>>(wrap_array_of_cns_async_query_result), from_value: |v| from_val_with::<Vec<super::structs::CnsAsyncQueryResult>>(v, wrap_array_of_cns_async_query_result) }),
        ("VibInvalidFormat", TypeInfo::Object { name: "VibInvalidFormat", builder_fn: || Box::new(VibInvalidFormatFields::new()) }),
        ("ArrayOfDvsPortLinkUpEvent", TypeInfo::Value { name: "ArrayOfDvsPortLinkUpEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_link_up_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_link_up_event) }),
        ("SmsFault", TypeInfo::Object { name: "SmsFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SmsFault))) }),
        ("VirtualDiskFlatVer1BackingInfo", TypeInfo::Object { name: "VirtualDiskFlatVer1BackingInfo", builder_fn: || Box::new(VirtualDiskFlatVer1BackingInfoFields::new()) }),
        ("PersonalityAgencyInaccessibleDepot", TypeInfo::Object { name: "PersonalityAgencyInaccessibleDepot", builder_fn: || Box::new(PersonalityAgencyInaccessibleDepotFields::new()) }),
        ("VsanWhatifCapacity", TypeInfo::Object { name: "VsanWhatifCapacity", builder_fn: || Box::new(VsanWhatifCapacityFields::new()) }),
        ("VirtualMachineCpuIdInfoSpec", TypeInfo::Object { name: "VirtualMachineCpuIdInfoSpec", builder_fn: || Box::new(VirtualMachineCpuIdInfoSpecFields::new()) }),
        ("HostMemberUplinkHealthCheckResult", TypeInfo::Object { name: "HostMemberUplinkHealthCheckResult", builder_fn: || Box::new(HostMemberUplinkHealthCheckResultFields::new()) }),
        ("ArrayOfCnsPlacementResult", TypeInfo::Value { name: "ArrayOfCnsPlacementResult", make_deserializer: || make_deser_with::<Vec<super::structs::CnsPlacementResult>>(wrap_array_of_cns_placement_result), from_value: |v| from_val_with::<Vec<super::structs::CnsPlacementResult>>(v, wrap_array_of_cns_placement_result) }),
        ("HostDhcpServiceSpec", TypeInfo::Object { name: "HostDhcpServiceSpec", builder_fn: || Box::new(HostDhcpServiceSpecFields::new()) }),
        ("MigrationFault", TypeInfo::Object { name: "MigrationFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MigrationFault))) }),
        ("VmfsAlreadyMounted", TypeInfo::Object { name: "VmfsAlreadyMounted", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmfsAlreadyMounted))) }),
        ("ArrayOfDigestNotSupported", TypeInfo::Value { name: "ArrayOfDigestNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_digest_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_digest_not_supported) }),
        ("ComputeResourceHostSPBMLicenseInfo", TypeInfo::Object { name: "ComputeResourceHostSPBMLicenseInfo", builder_fn: || Box::new(ComputeResourceHostSpbmLicenseInfoFields::new()) }),
        ("VasaProviderContainerSpec", TypeInfo::Object { name: "VasaProviderContainerSpec", builder_fn: || Box::new(VasaProviderContainerSpecFields::new()) }),
        ("VmDisconnectedEvent", TypeInfo::Object { name: "VmDisconnectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmDisconnectedEvent))) }),
        ("ArrayOfExtensionClientInfo", TypeInfo::Value { name: "ArrayOfExtensionClientInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensionClientInfo>>(wrap_array_of_extension_client_info), from_value: |v| from_val_with::<Vec<super::structs::ExtensionClientInfo>>(v, wrap_array_of_extension_client_info) }),
        ("VmStartRecordingEvent", TypeInfo::Object { name: "VmStartRecordingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmStartRecordingEvent))) }),
        ("ArrayOfHostTpmAttestationInfoAcceptanceStatus", TypeInfo::Value { name: "ArrayOfHostTpmAttestationInfoAcceptanceStatus", make_deserializer: || make_deser_with::<Vec<super::enums::HostTpmAttestationInfoAcceptanceStatusEnum>>(wrap_array_of_host_tpm_attestation_info_acceptance_status), from_value: |v| from_val_with::<Vec<super::enums::HostTpmAttestationInfoAcceptanceStatusEnum>>(v, wrap_array_of_host_tpm_attestation_info_acceptance_status) }),
        ("ArrayOfVmFaultToleranceOpIssuesList", TypeInfo::Value { name: "ArrayOfVmFaultToleranceOpIssuesList", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_fault_tolerance_op_issues_list), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_fault_tolerance_op_issues_list) }),
        ("ArrayOfVsanHostFaultDomainInfo", TypeInfo::Value { name: "ArrayOfVsanHostFaultDomainInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostFaultDomainInfo>>(wrap_array_of_vsan_host_fault_domain_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostFaultDomainInfo>>(v, wrap_array_of_vsan_host_fault_domain_info) }),
        ("boolean", TypeInfo::Value { name: "boolean", make_deserializer: || make_deser_with::<bool>(wrap_primitive_boolean), from_value: |v| from_val_with::<bool>(v, wrap_primitive_boolean) }),
        ("ArrayOfUnsharedSwapVMotionNotSupported", TypeInfo::Value { name: "ArrayOfUnsharedSwapVMotionNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_unshared_swap_v_motion_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_unshared_swap_v_motion_not_supported) }),
        ("VirtualMachineBootOptionsBootableFloppyDevice", TypeInfo::Object { name: "VirtualMachineBootOptionsBootableFloppyDevice", builder_fn: || Box::new(VirtualMachineBootOptionsBootableFloppyDeviceFields::new()) }),
        ("ArrayOfOvfPropertyExport", TypeInfo::Value { name: "ArrayOfOvfPropertyExport", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_property_export), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_property_export) }),
        ("ArrayOfPbmCapabilityPropertyMetadata", TypeInfo::Value { name: "ArrayOfPbmCapabilityPropertyMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityPropertyMetadata>>(wrap_array_of_pbm_capability_property_metadata), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityPropertyMetadata>>(v, wrap_array_of_pbm_capability_property_metadata) }),
        ("ArrayOfWakeOnLanNotSupportedByVmotionNIC", TypeInfo::Value { name: "ArrayOfWakeOnLanNotSupportedByVmotionNIC", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_wake_on_lan_not_supported_by_vmotion_nic), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_wake_on_lan_not_supported_by_vmotion_nic) }),
        ("ArrayOfVsanNestJsonComparator", TypeInfo::Value { name: "ArrayOfVsanNestJsonComparator", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNestJsonComparator>>(wrap_array_of_vsan_nest_json_comparator), from_value: |v| from_val_with::<Vec<super::structs::VsanNestJsonComparator>>(v, wrap_array_of_vsan_nest_json_comparator) }),
        ("ArrayOfAuthorizationRole", TypeInfo::Value { name: "ArrayOfAuthorizationRole", make_deserializer: || make_deser_with::<Vec<super::structs::AuthorizationRole>>(wrap_array_of_authorization_role), from_value: |v| from_val_with::<Vec<super::structs::AuthorizationRole>>(v, wrap_array_of_authorization_role) }),
        ("HostFibreChannelOverEthernetHbaLinkInfo", TypeInfo::Object { name: "HostFibreChannelOverEthernetHbaLinkInfo", builder_fn: || Box::new(HostFibreChannelOverEthernetHbaLinkInfoFields::new()) }),
        ("string", TypeInfo::Value { name: "string", make_deserializer: || make_deser_with::<String>(wrap_primitive_string), from_value: |v| from_val_with::<String>(v, wrap_primitive_string) }),
        ("ArrayOfVirtualMachineFileLayoutExDiskLayout", TypeInfo::Value { name: "ArrayOfVirtualMachineFileLayoutExDiskLayout", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFileLayoutExDiskLayout>>(wrap_array_of_virtual_machine_file_layout_ex_disk_layout), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFileLayoutExDiskLayout>>(v, wrap_array_of_virtual_machine_file_layout_ex_disk_layout) }),
        ("AnswerFileSerializedCreateSpec", TypeInfo::Object { name: "AnswerFileSerializedCreateSpec", builder_fn: || Box::new(AnswerFileSerializedCreateSpecFields::new()) }),
        ("ArrayOfVirtualMachineRelocateSpecDiskLocatorBackingSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineRelocateSpecDiskLocatorBackingSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineRelocateSpecDiskLocatorBackingSpec>>(wrap_array_of_virtual_machine_relocate_spec_disk_locator_backing_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineRelocateSpecDiskLocatorBackingSpec>>(v, wrap_array_of_virtual_machine_relocate_spec_disk_locator_backing_spec) }),
        ("DasConfigFault", TypeInfo::Object { name: "DasConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DasConfigFault))) }),
        ("ArrayOfDrsVmotionIncompatibleFault", TypeInfo::Value { name: "ArrayOfDrsVmotionIncompatibleFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_drs_vmotion_incompatible_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_drs_vmotion_incompatible_fault) }),
        ("VsanFileShare", TypeInfo::Object { name: "VsanFileShare", builder_fn: || Box::new(VsanFileShareFields::new()) }),
        ("InaccessibleDatastore", TypeInfo::Object { name: "InaccessibleDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InaccessibleDatastore))) }),
        ("HostSystemSwapConfigurationDisabledOption", TypeInfo::Object { name: "HostSystemSwapConfigurationDisabledOption", builder_fn: || Box::new(HostSystemSwapConfigurationDisabledOptionFields::new()) }),
        ("VirtualDevicePipeBackingInfo", TypeInfo::Object { name: "VirtualDevicePipeBackingInfo", builder_fn: || Box::new(VirtualDevicePipeBackingInfoFields::new()) }),
        ("HostNvmeOverFibreChannelParameters", TypeInfo::Object { name: "HostNvmeOverFibreChannelParameters", builder_fn: || Box::new(HostNvmeOverFibreChannelParametersFields::new()) }),
        ("ArrayOfHostDatastoreSystemVvolDatastoreSpec", TypeInfo::Value { name: "ArrayOfHostDatastoreSystemVvolDatastoreSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostDatastoreSystemVvolDatastoreSpec>>(wrap_array_of_host_datastore_system_vvol_datastore_spec), from_value: |v| from_val_with::<Vec<super::structs::HostDatastoreSystemVvolDatastoreSpec>>(v, wrap_array_of_host_datastore_system_vvol_datastore_spec) }),
        ("VMwareDVSVlanHealthCheckResult", TypeInfo::Object { name: "VMwareDVSVlanHealthCheckResult", builder_fn: || Box::new(VMwareDvsVlanHealthCheckResultFields::new()) }),
        ("ArrayOfPbmLineOfServiceInfo", TypeInfo::Value { name: "ArrayOfPbmLineOfServiceInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_pbm_line_of_service_info_array)), from_value: |v| cast_to_pbm_line_of_service_info_array(from_value(v)?) }),
        ("AlarmSetting", TypeInfo::Object { name: "AlarmSetting", builder_fn: || Box::new(AlarmSettingFields::new()) }),
        ("ArrayOfBase64Binary", TypeInfo::Value { name: "ArrayOfBase64Binary", make_deserializer: || make_deser_with::<Vec<Vec<u8>>>(wrap_array_of_binary), from_value: |v| from_val_with::<Vec<Vec<u8>>>(v, wrap_array_of_binary) }),
        ("VirtualDeviceFileBackingOption", TypeInfo::Object { name: "VirtualDeviceFileBackingOption", builder_fn: || Box::new(VirtualDeviceFileBackingOptionFields::new()) }),
        ("ClusterPowerContext", TypeInfo::Object { name: "ClusterPowerContext", builder_fn: || Box::new(ClusterPowerContextFields::new()) }),
        ("HostOpaqueNetworkInfo", TypeInfo::Object { name: "HostOpaqueNetworkInfo", builder_fn: || Box::new(HostOpaqueNetworkInfoFields::new()) }),
        ("VsanClusterConfig", TypeInfo::Object { name: "VsanClusterConfig", builder_fn: || Box::new(VsanClusterConfigFields::new()) }),
        ("HostGatewaySpec", TypeInfo::Object { name: "HostGatewaySpec", builder_fn: || Box::new(HostGatewaySpecFields::new()) }),
        ("VirtualMachineVirtualDeviceGroupsVendorDeviceGroup", TypeInfo::Object { name: "VirtualMachineVirtualDeviceGroupsVendorDeviceGroup", builder_fn: || Box::new(VirtualMachineVirtualDeviceGroupsVendorDeviceGroupFields::new()) }),
        ("ScheduledTaskEventArgument", TypeInfo::Object { name: "ScheduledTaskEventArgument", builder_fn: || Box::new(ScheduledTaskEventArgumentFields::new()) }),
        ("ArrayOfExtensionTaskTypeInfo", TypeInfo::Value { name: "ArrayOfExtensionTaskTypeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensionTaskTypeInfo>>(wrap_array_of_extension_task_type_info), from_value: |v| from_val_with::<Vec<super::structs::ExtensionTaskTypeInfo>>(v, wrap_array_of_extension_task_type_info) }),
        ("ArrayOfVsanEsaDiskConfiguration", TypeInfo::Value { name: "ArrayOfVsanEsaDiskConfiguration", make_deserializer: || make_deser_with::<Vec<super::structs::VsanEsaDiskConfiguration>>(wrap_array_of_vsan_esa_disk_configuration), from_value: |v| from_val_with::<Vec<super::structs::VsanEsaDiskConfiguration>>(v, wrap_array_of_vsan_esa_disk_configuration) }),
        ("ArrayOfUnusedVirtualDiskBlocksNotScrubbed", TypeInfo::Value { name: "ArrayOfUnusedVirtualDiskBlocksNotScrubbed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_unused_virtual_disk_blocks_not_scrubbed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_unused_virtual_disk_blocks_not_scrubbed) }),
        ("VMwareDVSMtuHealthCheckResult", TypeInfo::Object { name: "VMwareDVSMtuHealthCheckResult", builder_fn: || Box::new(VMwareDvsMtuHealthCheckResultFields::new()) }),
        ("ArrayOfUnlicensedVirtualMachinesEvent", TypeInfo::Value { name: "ArrayOfUnlicensedVirtualMachinesEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_unlicensed_virtual_machines_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_unlicensed_virtual_machines_event) }),
        ("ArrayOfVirtualMachineWipeResult", TypeInfo::Value { name: "ArrayOfVirtualMachineWipeResult", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineWipeResult>>(wrap_array_of_virtual_machine_wipe_result), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineWipeResult>>(v, wrap_array_of_virtual_machine_wipe_result) }),
        ("ArrayOfComplianceFailure", TypeInfo::Value { name: "ArrayOfComplianceFailure", make_deserializer: || make_deser_with::<Vec<super::structs::ComplianceFailure>>(wrap_array_of_compliance_failure), from_value: |v| from_val_with::<Vec<super::structs::ComplianceFailure>>(v, wrap_array_of_compliance_failure) }),
        ("VMwareDVSPortgroupPolicy", TypeInfo::Object { name: "VMwareDVSPortgroupPolicy", builder_fn: || Box::new(VMwareDvsPortgroupPolicyFields::new()) }),
        ("VsanAttachToSrOperation", TypeInfo::Object { name: "VsanAttachToSrOperation", builder_fn: || Box::new(VsanAttachToSrOperationFields::new()) }),
        ("DasClusterIsolatedEvent", TypeInfo::Object { name: "DasClusterIsolatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DasClusterIsolatedEvent))) }),
        ("ArrayOfVmConfigSpec", TypeInfo::Value { name: "ArrayOfVmConfigSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vm_config_spec_array)), from_value: |v| cast_to_vm_config_spec_array(from_value(v)?) }),
        ("ArrayOfVmAlreadyExistsInDatacenter", TypeInfo::Value { name: "ArrayOfVmAlreadyExistsInDatacenter", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_already_exists_in_datacenter), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_already_exists_in_datacenter) }),
        ("HostInventoryUnreadableEvent", TypeInfo::Object { name: "HostInventoryUnreadableEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostInventoryUnreadableEvent))) }),
        ("ArrayOfDvsEvent", TypeInfo::Value { name: "ArrayOfDvsEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_event) }),
        ("ArrayOfEamServiceNotInitialized", TypeInfo::Value { name: "ArrayOfEamServiceNotInitialized", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eam_service_not_initialized), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eam_service_not_initialized) }),
        ("FloatOption", TypeInfo::Object { name: "FloatOption", builder_fn: || Box::new(FloatOptionFields::new()) }),
        ("VmGuestStandbyEvent", TypeInfo::Object { name: "VmGuestStandbyEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmGuestStandbyEvent))) }),
        ("HostMultipathStateInfoPath", TypeInfo::Object { name: "HostMultipathStateInfoPath", builder_fn: || Box::new(HostMultipathStateInfoPathFields::new()) }),
        ("ArrayOfResourcePoolSummary", TypeInfo::Value { name: "ArrayOfResourcePoolSummary", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_resource_pool_summary_array)), from_value: |v| cast_to_resource_pool_summary_array(from_value(v)?) }),
        ("VirtualMachineVFlashModuleInfo", TypeInfo::Object { name: "VirtualMachineVFlashModuleInfo", builder_fn: || Box::new(VirtualMachineVFlashModuleInfoFields::new()) }),
        ("RepairTimerInfo", TypeInfo::Object { name: "RepairTimerInfo", builder_fn: || Box::new(RepairTimerInfoFields::new()) }),
        ("ArrayOfVmWwnConflict", TypeInfo::Value { name: "ArrayOfVmWwnConflict", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_wwn_conflict), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_wwn_conflict) }),
        ("HostVFlashManagerVFlashCacheConfigSpec", TypeInfo::Object { name: "HostVFlashManagerVFlashCacheConfigSpec", builder_fn: || Box::new(HostVFlashManagerVFlashCacheConfigSpecFields::new()) }),
        ("ArrayOfVmReloadFromPathFailedEvent", TypeInfo::Value { name: "ArrayOfVmReloadFromPathFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_reload_from_path_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_reload_from_path_failed_event) }),
        ("ArrayOfBaseConfigInfoRawDiskMappingBackingInfo", TypeInfo::Value { name: "ArrayOfBaseConfigInfoRawDiskMappingBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::BaseConfigInfoRawDiskMappingBackingInfo>>(wrap_array_of_base_config_info_raw_disk_mapping_backing_info), from_value: |v| from_val_with::<Vec<super::structs::BaseConfigInfoRawDiskMappingBackingInfo>>(v, wrap_array_of_base_config_info_raw_disk_mapping_backing_info) }),
        ("ArrayOfNotEnoughLicenses", TypeInfo::Value { name: "ArrayOfNotEnoughLicenses", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_enough_licenses), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_enough_licenses) }),
        ("VirtualMachineSgxInfo", TypeInfo::Object { name: "VirtualMachineSgxInfo", builder_fn: || Box::new(VirtualMachineSgxInfoFields::new()) }),
        ("ArrayOfVirtualMachineVirtualDeviceGroupsDeviceGroup", TypeInfo::Value { name: "ArrayOfVirtualMachineVirtualDeviceGroupsDeviceGroup", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_machine_virtual_device_groups_device_group_array)), from_value: |v| cast_to_virtual_machine_virtual_device_groups_device_group_array(from_value(v)?) }),
        ("ExtensionOvfConsumerInfo", TypeInfo::Object { name: "ExtensionOvfConsumerInfo", builder_fn: || Box::new(ExtensionOvfConsumerInfoFields::new()) }),
        ("ArrayOfVirtualSerialPortURIBackingOption", TypeInfo::Value { name: "ArrayOfVirtualSerialPortURIBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortUriBackingOption>>(wrap_array_of_virtual_serial_port_uri_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortUriBackingOption>>(v, wrap_array_of_virtual_serial_port_uri_backing_option) }),
        ("ArrayOfVirtualMachineMovePriority", TypeInfo::Value { name: "ArrayOfVirtualMachineMovePriority", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualMachineMovePriorityEnum>>(wrap_array_of_virtual_machine_move_priority), from_value: |v| from_val_with::<Vec<super::enums::VirtualMachineMovePriorityEnum>>(v, wrap_array_of_virtual_machine_move_priority) }),
        ("ArrayOfCannotAccessVmComponent", TypeInfo::Value { name: "ArrayOfCannotAccessVmComponent", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_access_vm_component), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_access_vm_component) }),
        ("VirtualSIOControllerOption", TypeInfo::Object { name: "VirtualSIOControllerOption", builder_fn: || Box::new(VirtualSioControllerOptionFields::new()) }),
        ("TargetToSourceInfo", TypeInfo::Object { name: "TargetToSourceInfo", builder_fn: || Box::new(TargetToSourceInfoFields::new()) }),
        ("VirtualMachineFaultToleranceState", TypeInfo::Value { name: "VirtualMachineFaultToleranceState", make_deserializer: || make_deser_with::<super::enums::VirtualMachineFaultToleranceStateEnum>(wrap_virtual_machine_fault_tolerance_state), from_value: |v| from_val_with::<super::enums::VirtualMachineFaultToleranceStateEnum>(v, wrap_virtual_machine_fault_tolerance_state) }),
        ("PerfEntityMetricBase", TypeInfo::Object { name: "PerfEntityMetricBase", builder_fn: || Box::new(PerfEntityMetricBaseFields::new()) }),
        ("ClusterComputeResourceHostEvacuationInfo", TypeInfo::Object { name: "ClusterComputeResourceHostEvacuationInfo", builder_fn: || Box::new(ClusterComputeResourceHostEvacuationInfoFields::new()) }),
        ("VsanIscsiLUN", TypeInfo::Object { name: "VsanIscsiLUN", builder_fn: || Box::new(VsanIscsiLunFields::new()) }),
        ("CustomFieldEvent", TypeInfo::Object { name: "CustomFieldEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomFieldEvent))) }),
        ("ArrayOfDVPortgroupDestroyedEvent", TypeInfo::Value { name: "ArrayOfDVPortgroupDestroyedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dv_portgroup_destroyed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dv_portgroup_destroyed_event) }),
        ("VsanVcStretchedClusterConfigSpec", TypeInfo::Object { name: "VsanVcStretchedClusterConfigSpec", builder_fn: || Box::new(VsanVcStretchedClusterConfigSpecFields::new()) }),
        ("ArrayOfDvsIpPortRange", TypeInfo::Value { name: "ArrayOfDvsIpPortRange", make_deserializer: || make_deser_with::<Vec<super::structs::DvsIpPortRange>>(wrap_array_of_dvs_ip_port_range), from_value: |v| from_val_with::<Vec<super::structs::DvsIpPortRange>>(v, wrap_array_of_dvs_ip_port_range) }),
        ("ArrayOfVirtualFloppyOption", TypeInfo::Value { name: "ArrayOfVirtualFloppyOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualFloppyOption>>(wrap_array_of_virtual_floppy_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualFloppyOption>>(v, wrap_array_of_virtual_floppy_option) }),
        ("ArrayOfVirtualMachineVirtualDeviceGroups", TypeInfo::Value { name: "ArrayOfVirtualMachineVirtualDeviceGroups", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVirtualDeviceGroups>>(wrap_array_of_virtual_machine_virtual_device_groups), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVirtualDeviceGroups>>(v, wrap_array_of_virtual_machine_virtual_device_groups) }),
        ("ArrayOfHostCnxFailedCcagentUpgradeEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedCcagentUpgradeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_ccagent_upgrade_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_ccagent_upgrade_event) }),
        ("RecoveredDiskInfo", TypeInfo::Object { name: "RecoveredDiskInfo", builder_fn: || Box::new(RecoveredDiskInfoFields::new()) }),
        ("DirectPathProfileManagerDirectPathConfig", TypeInfo::Object { name: "DirectPathProfileManagerDirectPathConfig", builder_fn: || Box::new(DirectPathProfileManagerDirectPathConfigFields::new()) }),
        ("ArrayOfDpuStatusInfo", TypeInfo::Value { name: "ArrayOfDpuStatusInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DpuStatusInfo>>(wrap_array_of_dpu_status_info), from_value: |v| from_val_with::<Vec<super::structs::DpuStatusInfo>>(v, wrap_array_of_dpu_status_info) }),
        ("VsanDataEfficiencyConfig", TypeInfo::Object { name: "VsanDataEfficiencyConfig", builder_fn: || Box::new(VsanDataEfficiencyConfigFields::new()) }),
        ("EventDescription", TypeInfo::Object { name: "EventDescription", builder_fn: || Box::new(EventDescriptionFields::new()) }),
        ("CustomizationCustomName", TypeInfo::Object { name: "CustomizationCustomName", builder_fn: || Box::new(CustomizationCustomNameFields::new()) }),
        ("ClusterDasAdvancedRuntimeInfo", TypeInfo::Object { name: "ClusterDasAdvancedRuntimeInfo", builder_fn: || Box::new(ClusterDasAdvancedRuntimeInfoFields::new()) }),
        ("VirtualMachineVirtualDeviceSwap", TypeInfo::Object { name: "VirtualMachineVirtualDeviceSwap", builder_fn: || Box::new(VirtualMachineVirtualDeviceSwapFields::new()) }),
        ("TemplateConfigFileQuery", TypeInfo::Object { name: "TemplateConfigFileQuery", builder_fn: || Box::new(TemplateConfigFileQueryFields::new()) }),
        ("DrsInvocationFailedEvent", TypeInfo::Object { name: "DrsInvocationFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsInvocationFailedEvent))) }),
        ("ExtensionEventTypeInfo", TypeInfo::Object { name: "ExtensionEventTypeInfo", builder_fn: || Box::new(ExtensionEventTypeInfoFields::new()) }),
        ("ArrayOfFcoeConfigFcoeSpecification", TypeInfo::Value { name: "ArrayOfFcoeConfigFcoeSpecification", make_deserializer: || make_deser_with::<Vec<super::structs::FcoeConfigFcoeSpecification>>(wrap_array_of_fcoe_config_fcoe_specification), from_value: |v| from_val_with::<Vec<super::structs::FcoeConfigFcoeSpecification>>(v, wrap_array_of_fcoe_config_fcoe_specification) }),
        ("VsanVipNetworkConfig", TypeInfo::Object { name: "VsanVipNetworkConfig", builder_fn: || Box::new(VsanVipNetworkConfigFields::new()) }),
        ("VsanNetworkConfigPortgroupWithNoRedundancyIssue", TypeInfo::Object { name: "VsanNetworkConfigPortgroupWithNoRedundancyIssue", builder_fn: || Box::new(VsanNetworkConfigPortgroupWithNoRedundancyIssueFields::new()) }),
        ("PbmFaultNoPermissionEntityPrivileges", TypeInfo::Object { name: "PbmFaultNoPermissionEntityPrivileges", builder_fn: || Box::new(PbmFaultNoPermissionEntityPrivilegesFields::new()) }),
        ("ArrayOfHostInternetScsiHbaIPProperties", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaIPProperties", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaIpProperties>>(wrap_array_of_host_internet_scsi_hba_ip_properties), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaIpProperties>>(v, wrap_array_of_host_internet_scsi_hba_ip_properties) }),
        ("HostScsiTopologyTarget", TypeInfo::Object { name: "HostScsiTopologyTarget", builder_fn: || Box::new(HostScsiTopologyTargetFields::new()) }),
        ("RemoteVsanSite", TypeInfo::Object { name: "RemoteVsanSite", builder_fn: || Box::new(RemoteVsanSiteFields::new()) }),
        ("LegacyNetworkInterfaceInUse", TypeInfo::Object { name: "LegacyNetworkInterfaceInUse", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LegacyNetworkInterfaceInUse))) }),
        ("ArrayOfAdminNotDisabled", TypeInfo::Value { name: "ArrayOfAdminNotDisabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_admin_not_disabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_admin_not_disabled) }),
        ("HostNatServiceNameServiceSpec", TypeInfo::Object { name: "HostNatServiceNameServiceSpec", builder_fn: || Box::new(HostNatServiceNameServiceSpecFields::new()) }),
        ("ArrayOfOvfInvalidPackage", TypeInfo::Value { name: "ArrayOfOvfInvalidPackage", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_invalid_package), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_invalid_package) }),
        ("OvfConsumerPowerOnFault", TypeInfo::Object { name: "OvfConsumerPowerOnFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConsumerPowerOnFault))) }),
        ("VirtualEnsoniq1371", TypeInfo::Object { name: "VirtualEnsoniq1371", builder_fn: || Box::new(VirtualEnsoniq1371Fields::new()) }),
        ("ArrayOfVirtualDiskSpec", TypeInfo::Value { name: "ArrayOfVirtualDiskSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_disk_spec_array)), from_value: |v| cast_to_virtual_disk_spec_array(from_value(v)?) }),
        ("CannotChangeVsanClusterUuid", TypeInfo::Object { name: "CannotChangeVsanClusterUuid", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotChangeVsanClusterUuid))) }),
        ("ArrayOfVStorageObject", TypeInfo::Value { name: "ArrayOfVStorageObject", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObject>>(wrap_array_of_v_storage_object), from_value: |v| from_val_with::<Vec<super::structs::VStorageObject>>(v, wrap_array_of_v_storage_object) }),
        ("ArrayOfSiteInfo", TypeInfo::Value { name: "ArrayOfSiteInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SiteInfo>>(wrap_array_of_site_info), from_value: |v| from_val_with::<Vec<super::structs::SiteInfo>>(v, wrap_array_of_site_info) }),
        ("ArrayOfClusterPowerContext", TypeInfo::Value { name: "ArrayOfClusterPowerContext", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterPowerContext>>(wrap_array_of_cluster_power_context), from_value: |v| from_val_with::<Vec<super::structs::ClusterPowerContext>>(v, wrap_array_of_cluster_power_context) }),
        ("ArrayOfVsanIscsiInitiatorGroup", TypeInfo::Value { name: "ArrayOfVsanIscsiInitiatorGroup", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiInitiatorGroup>>(wrap_array_of_vsan_iscsi_initiator_group), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiInitiatorGroup>>(v, wrap_array_of_vsan_iscsi_initiator_group) }),
        ("VcAgentUpgradeFailedEvent", TypeInfo::Object { name: "VcAgentUpgradeFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VcAgentUpgradeFailedEvent))) }),
        ("ScheduledTaskEvent", TypeInfo::Object { name: "ScheduledTaskEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ScheduledTaskEvent))) }),
        ("InvalidProfileReferenceHost", TypeInfo::Object { name: "InvalidProfileReferenceHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidProfileReferenceHost))) }),
        ("FcoeConfig", TypeInfo::Object { name: "FcoeConfig", builder_fn: || Box::new(FcoeConfigFields::new()) }),
        ("WillResetSnapshotDirectory", TypeInfo::Object { name: "WillResetSnapshotDirectory", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::WillResetSnapshotDirectory))) }),
        ("VsanUpgradeSystemUpgradeHistoryDiskGroupOpType", TypeInfo::Value { name: "VsanUpgradeSystemUpgradeHistoryDiskGroupOpType", make_deserializer: || make_deser_with::<super::enums::VsanUpgradeSystemUpgradeHistoryDiskGroupOpTypeEnum>(wrap_vsan_upgrade_system_upgrade_history_disk_group_op_type), from_value: |v| from_val_with::<super::enums::VsanUpgradeSystemUpgradeHistoryDiskGroupOpTypeEnum>(v, wrap_vsan_upgrade_system_upgrade_history_disk_group_op_type) }),
        ("ArrayOfVirtualDiskKey", TypeInfo::Value { name: "ArrayOfVirtualDiskKey", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskKey>>(wrap_array_of_virtual_disk_key), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskKey>>(v, wrap_array_of_virtual_disk_key) }),
        ("ArrayOfVimVsanHostDiskMapInfoEx", TypeInfo::Value { name: "ArrayOfVimVsanHostDiskMapInfoEx", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostDiskMapInfoEx>>(wrap_array_of_vim_vsan_host_disk_map_info_ex), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostDiskMapInfoEx>>(v, wrap_array_of_vim_vsan_host_disk_map_info_ex) }),
        ("HostVirtualNic", TypeInfo::Object { name: "HostVirtualNic", builder_fn: || Box::new(HostVirtualNicFields::new()) }),
        ("HostMissingNetworksEvent", TypeInfo::Object { name: "HostMissingNetworksEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostMissingNetworksEvent))) }),
        ("SyncOngoing", TypeInfo::Object { name: "SyncOngoing", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SyncOngoing))) }),
        ("ArrayOfVimVsanHostStoragePoolInfo", TypeInfo::Value { name: "ArrayOfVimVsanHostStoragePoolInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostStoragePoolInfo>>(wrap_array_of_vim_vsan_host_storage_pool_info), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostStoragePoolInfo>>(v, wrap_array_of_vim_vsan_host_storage_pool_info) }),
        ("OvfConsumerCallbackFault", TypeInfo::Object { name: "OvfConsumerCallbackFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConsumerCallbackFault))) }),
        ("ArrayOfClusterDpmHostConfigSpec", TypeInfo::Value { name: "ArrayOfClusterDpmHostConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDpmHostConfigSpec>>(wrap_array_of_cluster_dpm_host_config_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterDpmHostConfigSpec>>(v, wrap_array_of_cluster_dpm_host_config_spec) }),
        ("HostDasEnablingEvent", TypeInfo::Object { name: "HostDasEnablingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostDasEnablingEvent))) }),
        ("ArrayOfMethodActionArgument", TypeInfo::Value { name: "ArrayOfMethodActionArgument", make_deserializer: || make_deser_with::<Vec<super::structs::MethodActionArgument>>(wrap_array_of_method_action_argument), from_value: |v| from_val_with::<Vec<super::structs::MethodActionArgument>>(v, wrap_array_of_method_action_argument) }),
        ("ArrayOfCustomizationFixedIp", TypeInfo::Value { name: "ArrayOfCustomizationFixedIp", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationFixedIp>>(wrap_array_of_customization_fixed_ip), from_value: |v| from_val_with::<Vec<super::structs::CustomizationFixedIp>>(v, wrap_array_of_customization_fixed_ip) }),
        ("ArrayOfManagedByInfo", TypeInfo::Value { name: "ArrayOfManagedByInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ManagedByInfo>>(wrap_array_of_managed_by_info), from_value: |v| from_val_with::<Vec<super::structs::ManagedByInfo>>(v, wrap_array_of_managed_by_info) }),
        ("VsanNetworkHealthResult", TypeInfo::Object { name: "VsanNetworkHealthResult", builder_fn: || Box::new(VsanNetworkHealthResultFields::new()) }),
        ("ArrayOfVramLimitLicense", TypeInfo::Value { name: "ArrayOfVramLimitLicense", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vram_limit_license), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vram_limit_license) }),
        ("DatacenterMismatchArgument", TypeInfo::Object { name: "DatacenterMismatchArgument", builder_fn: || Box::new(DatacenterMismatchArgumentFields::new()) }),
        ("ArrayOfVsanStorageWorkloadType", TypeInfo::Value { name: "ArrayOfVsanStorageWorkloadType", make_deserializer: || make_deser_with::<Vec<super::structs::VsanStorageWorkloadType>>(wrap_array_of_vsan_storage_workload_type), from_value: |v| from_val_with::<Vec<super::structs::VsanStorageWorkloadType>>(v, wrap_array_of_vsan_storage_workload_type) }),
        ("ArrayOfUplinkPortMtuSupportEvent", TypeInfo::Value { name: "ArrayOfUplinkPortMtuSupportEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_uplink_port_mtu_support_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_uplink_port_mtu_support_event) }),
        ("NonVmwareOuiMacNotSupportedHost", TypeInfo::Object { name: "NonVmwareOuiMacNotSupportedHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NonVmwareOuiMacNotSupportedHost))) }),
        ("ArrayOfVsanHealthQuerySpec", TypeInfo::Value { name: "ArrayOfVsanHealthQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthQuerySpec>>(wrap_array_of_vsan_health_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthQuerySpec>>(v, wrap_array_of_vsan_health_query_spec) }),
        ("ArrayOfHostVMotionManagerDstInstantCloneResult", TypeInfo::Value { name: "ArrayOfHostVMotionManagerDstInstantCloneResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostVMotionManagerDstInstantCloneResult>>(wrap_array_of_host_v_motion_manager_dst_instant_clone_result), from_value: |v| from_val_with::<Vec<super::structs::HostVMotionManagerDstInstantCloneResult>>(v, wrap_array_of_host_v_motion_manager_dst_instant_clone_result) }),
        ("ArrayOfHostCnxFailedNetworkErrorEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedNetworkErrorEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_network_error_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_network_error_event) }),
        ("ArrayOfDVSSelection", TypeInfo::Value { name: "ArrayOfDVSSelection", make_deserializer: || make_deser_with::<Vec<super::structs::DvsSelection>>(wrap_array_of_dvs_selection), from_value: |v| from_val_with::<Vec<super::structs::DvsSelection>>(v, wrap_array_of_dvs_selection) }),
        ("ArrayOfVsanUpgradeSystemUpgradeHistoryStoragePoolOp", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemUpgradeHistoryStoragePoolOp", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemUpgradeHistoryStoragePoolOp>>(wrap_array_of_vsan_upgrade_system_upgrade_history_storage_pool_op), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemUpgradeHistoryStoragePoolOp>>(v, wrap_array_of_vsan_upgrade_system_upgrade_history_storage_pool_op) }),
        ("AboutInfo", TypeInfo::Object { name: "AboutInfo", builder_fn: || Box::new(AboutInfoFields::new()) }),
        ("ArrayOfVmFailedToRebootGuestEvent", TypeInfo::Value { name: "ArrayOfVmFailedToRebootGuestEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_to_reboot_guest_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_to_reboot_guest_event) }),
        ("VsanNetworkConfigVdsScopeIssue", TypeInfo::Object { name: "VsanNetworkConfigVdsScopeIssue", builder_fn: || Box::new(VsanNetworkConfigVdsScopeIssueFields::new()) }),
        ("VirtualPointingDeviceBackingOption", TypeInfo::Object { name: "VirtualPointingDeviceBackingOption", builder_fn: || Box::new(VirtualPointingDeviceBackingOptionFields::new()) }),
        ("NonVIWorkloadDetectedOnDatastoreEvent", TypeInfo::Object { name: "NonVIWorkloadDetectedOnDatastoreEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::NonViWorkloadDetectedOnDatastoreEvent))) }),
        ("CustomizationWinOptions", TypeInfo::Object { name: "CustomizationWinOptions", builder_fn: || Box::new(CustomizationWinOptionsFields::new()) }),
        ("VirtualMachineRelocateSpec", TypeInfo::Object { name: "VirtualMachineRelocateSpec", builder_fn: || Box::new(VirtualMachineRelocateSpecFields::new()) }),
        ("ArrayOfClusterFailoverResourcesAdmissionControlInfo", TypeInfo::Value { name: "ArrayOfClusterFailoverResourcesAdmissionControlInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterFailoverResourcesAdmissionControlInfo>>(wrap_array_of_cluster_failover_resources_admission_control_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterFailoverResourcesAdmissionControlInfo>>(v, wrap_array_of_cluster_failover_resources_admission_control_info) }),
        ("ArrayOfVmWwnAssignedEvent", TypeInfo::Value { name: "ArrayOfVmWwnAssignedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_wwn_assigned_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_wwn_assigned_event) }),
        ("ArrayOfNamePasswordAuthentication", TypeInfo::Value { name: "ArrayOfNamePasswordAuthentication", make_deserializer: || make_deser_with::<Vec<super::structs::NamePasswordAuthentication>>(wrap_array_of_name_password_authentication), from_value: |v| from_val_with::<Vec<super::structs::NamePasswordAuthentication>>(v, wrap_array_of_name_password_authentication) }),
        ("EamInvalidUrl", TypeInfo::Object { name: "EamInvalidUrl", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EamInvalidUrl))) }),
        ("VsanHealthQuerySpec", TypeInfo::Object { name: "VsanHealthQuerySpec", builder_fn: || Box::new(VsanHealthQuerySpecFields::new()) }),
        ("VirtualDeviceRemoteDeviceBackingOption", TypeInfo::Object { name: "VirtualDeviceRemoteDeviceBackingOption", builder_fn: || Box::new(VirtualDeviceRemoteDeviceBackingOptionFields::new()) }),
        ("ArrayOfChoiceOption", TypeInfo::Value { name: "ArrayOfChoiceOption", make_deserializer: || make_deser_with::<Vec<super::structs::ChoiceOption>>(wrap_array_of_choice_option), from_value: |v| from_val_with::<Vec<super::structs::ChoiceOption>>(v, wrap_array_of_choice_option) }),
        ("ArrayOfVimVasaProviderVirtualHostConfig", TypeInfo::Value { name: "ArrayOfVimVasaProviderVirtualHostConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VimVasaProviderVirtualHostConfig>>(wrap_array_of_vim_vasa_provider_virtual_host_config), from_value: |v| from_val_with::<Vec<super::structs::VimVasaProviderVirtualHostConfig>>(v, wrap_array_of_vim_vasa_provider_virtual_host_config) }),
        ("HostSgxInfo", TypeInfo::Object { name: "HostSgxInfo", builder_fn: || Box::new(HostSgxInfoFields::new()) }),
        ("ArrayOfHostAddFailedEvent", TypeInfo::Value { name: "ArrayOfHostAddFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_add_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_add_failed_event) }),
        ("SessionManagerGenericServiceTicket", TypeInfo::Object { name: "SessionManagerGenericServiceTicket", builder_fn: || Box::new(SessionManagerGenericServiceTicketFields::new()) }),
        ("VmwareDistributedVirtualSwitchTrunkVlanSpec", TypeInfo::Object { name: "VmwareDistributedVirtualSwitchTrunkVlanSpec", builder_fn: || Box::new(VmwareDistributedVirtualSwitchTrunkVlanSpecFields::new()) }),
        ("ArrayOfVirtualMachineMetadataManagerVmMetadataResult", TypeInfo::Value { name: "ArrayOfVirtualMachineMetadataManagerVmMetadataResult", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineMetadataManagerVmMetadataResult>>(wrap_array_of_virtual_machine_metadata_manager_vm_metadata_result), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineMetadataManagerVmMetadataResult>>(v, wrap_array_of_virtual_machine_metadata_manager_vm_metadata_result) }),
        ("MigrationEvent", TypeInfo::Object { name: "MigrationEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::MigrationEvent))) }),
        ("DVPortState", TypeInfo::Object { name: "DVPortState", builder_fn: || Box::new(DvPortStateFields::new()) }),
        ("ArrayOfMultipleCertificatesVerifyFaultThumbprintData", TypeInfo::Value { name: "ArrayOfMultipleCertificatesVerifyFaultThumbprintData", make_deserializer: || make_deser_with::<Vec<super::structs::MultipleCertificatesVerifyFaultThumbprintData>>(wrap_array_of_multiple_certificates_verify_fault_thumbprint_data), from_value: |v| from_val_with::<Vec<super::structs::MultipleCertificatesVerifyFaultThumbprintData>>(v, wrap_array_of_multiple_certificates_verify_fault_thumbprint_data) }),
        ("ArrayOfVirtualEnsoniq1371", TypeInfo::Value { name: "ArrayOfVirtualEnsoniq1371", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEnsoniq1371>>(wrap_array_of_virtual_ensoniq_1371), from_value: |v| from_val_with::<Vec<super::structs::VirtualEnsoniq1371>>(v, wrap_array_of_virtual_ensoniq_1371) }),
        ("ArrayOfTaskReasonSchedule", TypeInfo::Value { name: "ArrayOfTaskReasonSchedule", make_deserializer: || make_deser_with::<Vec<super::structs::TaskReasonSchedule>>(wrap_array_of_task_reason_schedule), from_value: |v| from_val_with::<Vec<super::structs::TaskReasonSchedule>>(v, wrap_array_of_task_reason_schedule) }),
        ("LatencySensitivity", TypeInfo::Object { name: "LatencySensitivity", builder_fn: || Box::new(LatencySensitivityFields::new()) }),
        ("ArrayOfVirtualMachineCapability", TypeInfo::Value { name: "ArrayOfVirtualMachineCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineCapability>>(wrap_array_of_virtual_machine_capability), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineCapability>>(v, wrap_array_of_virtual_machine_capability) }),
        ("VmEventArgument", TypeInfo::Object { name: "VmEventArgument", builder_fn: || Box::new(VmEventArgumentFields::new()) }),
        ("HostGetShortNameFailedEvent", TypeInfo::Object { name: "HostGetShortNameFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostGetShortNameFailedEvent))) }),
        ("ArrayOfDvsUpgradeAvailableEvent", TypeInfo::Value { name: "ArrayOfDvsUpgradeAvailableEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_upgrade_available_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_upgrade_available_event) }),
        ("ArrayOfHostCnxFailedNoLicenseEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedNoLicenseEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_no_license_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_no_license_event) }),
        ("VmHealthMonitoringStateChangedEvent", TypeInfo::Object { name: "VmHealthMonitoringStateChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmHealthMonitoringStateChangedEvent))) }),
        ("ArrayOfCustomizationOptions", TypeInfo::Value { name: "ArrayOfCustomizationOptions", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_customization_options_array)), from_value: |v| cast_to_customization_options_array(from_value(v)?) }),
        ("ArrayOfPlacementRankSpec", TypeInfo::Value { name: "ArrayOfPlacementRankSpec", make_deserializer: || make_deser_with::<Vec<super::structs::PlacementRankSpec>>(wrap_array_of_placement_rank_spec), from_value: |v| from_val_with::<Vec<super::structs::PlacementRankSpec>>(v, wrap_array_of_placement_rank_spec) }),
        ("ArrayOfDVSFeatureCapability", TypeInfo::Value { name: "ArrayOfDVSFeatureCapability", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_feature_capability_array)), from_value: |v| cast_to_dvs_feature_capability_array(from_value(v)?) }),
        ("ScsiLunDescriptor", TypeInfo::Object { name: "ScsiLunDescriptor", builder_fn: || Box::new(ScsiLunDescriptorFields::new()) }),
        ("ArrayOfVirtualPCIPassthroughVmiopBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughVmiopBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthroughVmiopBackingInfo>>(wrap_array_of_virtual_pci_passthrough_vmiop_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthroughVmiopBackingInfo>>(v, wrap_array_of_virtual_pci_passthrough_vmiop_backing_info) }),
        ("PropertyFilterSpec", TypeInfo::Object { name: "PropertyFilterSpec", builder_fn: || Box::new(PropertyFilterSpecFields::new()) }),
        ("ArrayOfVsanHostCreateVmHealthTestResult", TypeInfo::Value { name: "ArrayOfVsanHostCreateVmHealthTestResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostCreateVmHealthTestResult>>(wrap_array_of_vsan_host_create_vm_health_test_result), from_value: |v| from_val_with::<Vec<super::structs::VsanHostCreateVmHealthTestResult>>(v, wrap_array_of_vsan_host_create_vm_health_test_result) }),
        ("ArrayOfHostEventArgument", TypeInfo::Value { name: "ArrayOfHostEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::HostEventArgument>>(wrap_array_of_host_event_argument), from_value: |v| from_val_with::<Vec<super::structs::HostEventArgument>>(v, wrap_array_of_host_event_argument) }),
        ("FcoeConfigFcoeCapabilities", TypeInfo::Object { name: "FcoeConfigFcoeCapabilities", builder_fn: || Box::new(FcoeConfigFcoeCapabilitiesFields::new()) }),
        ("CnsVolumeCreateSpec", TypeInfo::Object { name: "CnsVolumeCreateSpec", builder_fn: || Box::new(CnsVolumeCreateSpecFields::new()) }),
        ("ArrayOfSolutionsComplianceSpec", TypeInfo::Value { name: "ArrayOfSolutionsComplianceSpec", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsComplianceSpec>>(wrap_array_of_solutions_compliance_spec), from_value: |v| from_val_with::<Vec<super::structs::SolutionsComplianceSpec>>(v, wrap_array_of_solutions_compliance_spec) }),
        ("ArrayOfVmUpgradeCompleteEvent", TypeInfo::Value { name: "ArrayOfVmUpgradeCompleteEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_upgrade_complete_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_upgrade_complete_event) }),
        ("ArrayOfHostHyperThreadScheduleInfo", TypeInfo::Value { name: "ArrayOfHostHyperThreadScheduleInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostHyperThreadScheduleInfo>>(wrap_array_of_host_hyper_thread_schedule_info), from_value: |v| from_val_with::<Vec<super::structs::HostHyperThreadScheduleInfo>>(v, wrap_array_of_host_hyper_thread_schedule_info) }),
        ("CannotMoveVsanEnabledHost", TypeInfo::Object { name: "CannotMoveVsanEnabledHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotMoveVsanEnabledHost))) }),
        ("DvsPortEnteredPassthruEvent", TypeInfo::Object { name: "DvsPortEnteredPassthruEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortEnteredPassthruEvent))) }),
        ("ArrayOfVsanObjectHealthTelemetrySummary", TypeInfo::Value { name: "ArrayOfVsanObjectHealthTelemetrySummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectHealthTelemetrySummary>>(wrap_array_of_vsan_object_health_telemetry_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectHealthTelemetrySummary>>(v, wrap_array_of_vsan_object_health_telemetry_summary) }),
        ("EnteredStandbyModeEvent", TypeInfo::Object { name: "EnteredStandbyModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::EnteredStandbyModeEvent))) }),
        ("ArrayOfHostNtpConfig", TypeInfo::Value { name: "ArrayOfHostNtpConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostNtpConfig>>(wrap_array_of_host_ntp_config), from_value: |v| from_val_with::<Vec<super::structs::HostNtpConfig>>(v, wrap_array_of_host_ntp_config) }),
        ("VimClusterVSANStretchedClusterCapability", TypeInfo::Object { name: "VimClusterVSANStretchedClusterCapability", builder_fn: || Box::new(VimClusterVsanStretchedClusterCapabilityFields::new()) }),
        ("ArrayOfOvfMissingHardware", TypeInfo::Value { name: "ArrayOfOvfMissingHardware", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_missing_hardware), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_missing_hardware) }),
        ("ArrayOfDvsFilterConfigSpec", TypeInfo::Value { name: "ArrayOfDvsFilterConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DvsFilterConfigSpec>>(wrap_array_of_dvs_filter_config_spec), from_value: |v| from_val_with::<Vec<super::structs::DvsFilterConfigSpec>>(v, wrap_array_of_dvs_filter_config_spec) }),
        ("NasVolumeNotMounted", TypeInfo::Object { name: "NasVolumeNotMounted", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NasVolumeNotMounted))) }),
        ("ArrayOfVmwareDistributedVirtualSwitchVlanSpec", TypeInfo::Value { name: "ArrayOfVmwareDistributedVirtualSwitchVlanSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vmware_distributed_virtual_switch_vlan_spec_array)), from_value: |v| cast_to_vmware_distributed_virtual_switch_vlan_spec_array(from_value(v)?) }),
        ("ArrayOfVsanClusterHealthTest", TypeInfo::Value { name: "ArrayOfVsanClusterHealthTest", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthTest>>(wrap_array_of_vsan_cluster_health_test), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthTest>>(v, wrap_array_of_vsan_cluster_health_test) }),
        ("HostNtpConfig", TypeInfo::Object { name: "HostNtpConfig", builder_fn: || Box::new(HostNtpConfigFields::new()) }),
        ("ArrayOfOvfConsumerCommunicationError", TypeInfo::Value { name: "ArrayOfOvfConsumerCommunicationError", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_consumer_communication_error), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_consumer_communication_error) }),
        ("ArrayOfDatastoreRemovedOnHostEvent", TypeInfo::Value { name: "ArrayOfDatastoreRemovedOnHostEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_removed_on_host_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_removed_on_host_event) }),
        ("StorageDrsPlacementRankVmSpec", TypeInfo::Object { name: "StorageDrsPlacementRankVmSpec", builder_fn: || Box::new(StorageDrsPlacementRankVmSpecFields::new()) }),
        ("IpPoolIpPoolConfigInfo", TypeInfo::Object { name: "IpPoolIpPoolConfigInfo", builder_fn: || Box::new(IpPoolIpPoolConfigInfoFields::new()) }),
        ("HostInAuditModeEvent", TypeInfo::Object { name: "HostInAuditModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostInAuditModeEvent))) }),
        ("HostOpaqueSwitch", TypeInfo::Object { name: "HostOpaqueSwitch", builder_fn: || Box::new(HostOpaqueSwitchFields::new()) }),
        ("PbmFaultProfileStorageFault", TypeInfo::Object { name: "PbmFaultProfileStorageFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmFaultProfileStorageFault))) }),
        ("ArrayOfMigrationHostWarningEvent", TypeInfo::Value { name: "ArrayOfMigrationHostWarningEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_migration_host_warning_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_migration_host_warning_event) }),
        ("ArrayOfAlarmActionTriggeredEvent", TypeInfo::Value { name: "ArrayOfAlarmActionTriggeredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_action_triggered_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_action_triggered_event) }),
        ("VirtualEthernetCardOpaqueNetworkBackingOption", TypeInfo::Object { name: "VirtualEthernetCardOpaqueNetworkBackingOption", builder_fn: || Box::new(VirtualEthernetCardOpaqueNetworkBackingOptionFields::new()) }),
        ("OvfUnsupportedDeviceBackingInfo", TypeInfo::Object { name: "OvfUnsupportedDeviceBackingInfo", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedDeviceBackingInfo))) }),
        ("VirtualMachineScsiDiskDeviceInfo", TypeInfo::Object { name: "VirtualMachineScsiDiskDeviceInfo", builder_fn: || Box::new(VirtualMachineScsiDiskDeviceInfoFields::new()) }),
        ("ArrayOfAgentSslTrust", TypeInfo::Value { name: "ArrayOfAgentSslTrust", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_agent_ssl_trust_array)), from_value: |v| cast_to_agent_ssl_trust_array(from_value(v)?) }),
        ("ArrayOfAlarmState", TypeInfo::Value { name: "ArrayOfAlarmState", make_deserializer: || make_deser_with::<Vec<super::structs::AlarmState>>(wrap_array_of_alarm_state), from_value: |v| from_val_with::<Vec<super::structs::AlarmState>>(v, wrap_array_of_alarm_state) }),
        ("CannotAccessFile", TypeInfo::Object { name: "CannotAccessFile", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotAccessFile))) }),
        ("ArrayOfPbmAboutInfo", TypeInfo::Value { name: "ArrayOfPbmAboutInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PbmAboutInfo>>(wrap_array_of_pbm_about_info), from_value: |v| from_val_with::<Vec<super::structs::PbmAboutInfo>>(v, wrap_array_of_pbm_about_info) }),
        ("ArrayOfCannotDisableDrsOnClustersWithVApps", TypeInfo::Value { name: "ArrayOfCannotDisableDrsOnClustersWithVApps", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_disable_drs_on_clusters_with_v_apps), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_disable_drs_on_clusters_with_v_apps) }),
        ("ProxyRegistrationFailed", TypeInfo::Object { name: "ProxyRegistrationFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProxyRegistrationFailed))) }),
        ("ArrayOfHostRuntimeInfoNetworkRuntimeInfo", TypeInfo::Value { name: "ArrayOfHostRuntimeInfoNetworkRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostRuntimeInfoNetworkRuntimeInfo>>(wrap_array_of_host_runtime_info_network_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::HostRuntimeInfoNetworkRuntimeInfo>>(v, wrap_array_of_host_runtime_info_network_runtime_info) }),
        ("StorageDrsAutomationConfig", TypeInfo::Object { name: "StorageDrsAutomationConfig", builder_fn: || Box::new(StorageDrsAutomationConfigFields::new()) }),
        ("ArrayOfHostMultipathInfoHppLogicalUnitPolicy", TypeInfo::Value { name: "ArrayOfHostMultipathInfoHppLogicalUnitPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::HostMultipathInfoHppLogicalUnitPolicy>>(wrap_array_of_host_multipath_info_hpp_logical_unit_policy), from_value: |v| from_val_with::<Vec<super::structs::HostMultipathInfoHppLogicalUnitPolicy>>(v, wrap_array_of_host_multipath_info_hpp_logical_unit_policy) }),
        ("ArrayOfClusterDasDataSummary", TypeInfo::Value { name: "ArrayOfClusterDasDataSummary", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasDataSummary>>(wrap_array_of_cluster_das_data_summary), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasDataSummary>>(v, wrap_array_of_cluster_das_data_summary) }),
        ("ArrayOfVmDasUpdateErrorEvent", TypeInfo::Value { name: "ArrayOfVmDasUpdateErrorEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_das_update_error_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_das_update_error_event) }),
        ("ArrayOfHostProfileCompleteConfigSpec", TypeInfo::Value { name: "ArrayOfHostProfileCompleteConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileCompleteConfigSpec>>(wrap_array_of_host_profile_complete_config_spec), from_value: |v| from_val_with::<Vec<super::structs::HostProfileCompleteConfigSpec>>(v, wrap_array_of_host_profile_complete_config_spec) }),
        ("ArrayOfClusterAgentVmHookTimedout", TypeInfo::Value { name: "ArrayOfClusterAgentVmHookTimedout", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentVmHookTimedout>>(wrap_array_of_cluster_agent_vm_hook_timedout), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentVmHookTimedout>>(v, wrap_array_of_cluster_agent_vm_hook_timedout) }),
        ("ArrayOfVspanPortConflict", TypeInfo::Value { name: "ArrayOfVspanPortConflict", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vspan_port_conflict), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vspan_port_conflict) }),
        ("VirtualUSBRemoteHostBackingOption", TypeInfo::Object { name: "VirtualUSBRemoteHostBackingOption", builder_fn: || Box::new(VirtualUsbRemoteHostBackingOptionFields::new()) }),
        ("SnapshotFault", TypeInfo::Object { name: "SnapshotFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotFault))) }),
        ("ArrayOfVmDiskFileEncryptionInfo", TypeInfo::Value { name: "ArrayOfVmDiskFileEncryptionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VmDiskFileEncryptionInfo>>(wrap_array_of_vm_disk_file_encryption_info), from_value: |v| from_val_with::<Vec<super::structs::VmDiskFileEncryptionInfo>>(v, wrap_array_of_vm_disk_file_encryption_info) }),
        ("ArrayOfVAppTaskInProgress", TypeInfo::Value { name: "ArrayOfVAppTaskInProgress", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_app_task_in_progress), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_app_task_in_progress) }),
        ("ArrayOfSmsTaskInfo", TypeInfo::Value { name: "ArrayOfSmsTaskInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SmsTaskInfo>>(wrap_array_of_sms_task_info), from_value: |v| from_val_with::<Vec<super::structs::SmsTaskInfo>>(v, wrap_array_of_sms_task_info) }),
        ("HostNicTeamingPolicy", TypeInfo::Object { name: "HostNicTeamingPolicy", builder_fn: || Box::new(HostNicTeamingPolicyFields::new()) }),
        ("ArrayOfInvalidCAMCertificate", TypeInfo::Value { name: "ArrayOfInvalidCAMCertificate", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_cam_certificate), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_cam_certificate) }),
        ("ClusterComplianceCheckedEvent", TypeInfo::Object { name: "ClusterComplianceCheckedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ClusterComplianceCheckedEvent))) }),
        ("GatewayToHostConnectFault", TypeInfo::Object { name: "GatewayToHostConnectFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GatewayToHostConnectFault))) }),
        ("SendEmailAction", TypeInfo::Object { name: "SendEmailAction", builder_fn: || Box::new(SendEmailActionFields::new()) }),
        ("GuestAuthentication", TypeInfo::Object { name: "GuestAuthentication", builder_fn: || Box::new(GuestAuthenticationFields::new()) }),
        ("ArrayOfVsanUpdateItem", TypeInfo::Value { name: "ArrayOfVsanUpdateItem", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpdateItem>>(wrap_array_of_vsan_update_item), from_value: |v| from_val_with::<Vec<super::structs::VsanUpdateItem>>(v, wrap_array_of_vsan_update_item) }),
        ("VAppProductSpec", TypeInfo::Object { name: "VAppProductSpec", builder_fn: || Box::new(VAppProductSpecFields::new()) }),
        ("PlacementRankResult", TypeInfo::Object { name: "PlacementRankResult", builder_fn: || Box::new(PlacementRankResultFields::new()) }),
        ("HostListSummary", TypeInfo::Object { name: "HostListSummary", builder_fn: || Box::new(HostListSummaryFields::new()) }),
        ("ArrayOfVmSecondaryDisabledEvent", TypeInfo::Value { name: "ArrayOfVmSecondaryDisabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_secondary_disabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_secondary_disabled_event) }),
        ("ArrayOfNegatableExpression", TypeInfo::Value { name: "ArrayOfNegatableExpression", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_negatable_expression_array)), from_value: |v| cast_to_negatable_expression_array(from_value(v)?) }),
        ("ArrayOfAlreadyConnected", TypeInfo::Value { name: "ArrayOfAlreadyConnected", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_already_connected), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_already_connected) }),
        ("VslmEventVslmEventInfoState", TypeInfo::Value { name: "VslmEventVslmEventInfoState", make_deserializer: || make_deser_with::<super::enums::VslmEventVslmEventInfoStateEnum>(wrap_vslm_event_vslm_event_info_state), from_value: |v| from_val_with::<super::enums::VslmEventVslmEventInfoStateEnum>(v, wrap_vslm_event_vslm_event_info_state) }),
        ("ArrayOfFolderEventArgument", TypeInfo::Value { name: "ArrayOfFolderEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::FolderEventArgument>>(wrap_array_of_folder_event_argument), from_value: |v| from_val_with::<Vec<super::structs::FolderEventArgument>>(v, wrap_array_of_folder_event_argument) }),
        ("ProductComponentInfo", TypeInfo::Object { name: "ProductComponentInfo", builder_fn: || Box::new(ProductComponentInfoFields::new()) }),
        ("ArrayOfVmPrimaryFailoverEvent", TypeInfo::Value { name: "ArrayOfVmPrimaryFailoverEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_primary_failover_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_primary_failover_event) }),
        ("ArrayOfDatastoreIORMReconfiguredEvent", TypeInfo::Value { name: "ArrayOfDatastoreIORMReconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_iorm_reconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_iorm_reconfigured_event) }),
        ("ArrayOfVmfsMountFault", TypeInfo::Value { name: "ArrayOfVmfsMountFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vmfs_mount_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vmfs_mount_fault) }),
        ("ArrayOfVirtualMachineParallelInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineParallelInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineParallelInfo>>(wrap_array_of_virtual_machine_parallel_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineParallelInfo>>(v, wrap_array_of_virtual_machine_parallel_info) }),
        ("VmFailedToSuspendEvent", TypeInfo::Object { name: "VmFailedToSuspendEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedToSuspendEvent))) }),
        ("VmotionInterfaceNotEnabled", TypeInfo::Object { name: "VmotionInterfaceNotEnabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmotionInterfaceNotEnabled))) }),
        ("StringExpression", TypeInfo::Object { name: "StringExpression", builder_fn: || Box::new(StringExpressionFields::new()) }),
        ("ArrayOfVsanBurnInTestCheckResult", TypeInfo::Value { name: "ArrayOfVsanBurnInTestCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanBurnInTestCheckResult>>(wrap_array_of_vsan_burn_in_test_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanBurnInTestCheckResult>>(v, wrap_array_of_vsan_burn_in_test_check_result) }),
        ("DvsPortBlockedEvent", TypeInfo::Object { name: "DvsPortBlockedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortBlockedEvent))) }),
        ("ArrayOfAnswerFileOptionsCreateSpec", TypeInfo::Value { name: "ArrayOfAnswerFileOptionsCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::AnswerFileOptionsCreateSpec>>(wrap_array_of_answer_file_options_create_spec), from_value: |v| from_val_with::<Vec<super::structs::AnswerFileOptionsCreateSpec>>(v, wrap_array_of_answer_file_options_create_spec) }),
        ("HostAccountSpec", TypeInfo::Object { name: "HostAccountSpec", builder_fn: || Box::new(HostAccountSpecFields::new()) }),
        ("ArrayOfVsanHostAssociatedObjects", TypeInfo::Value { name: "ArrayOfVsanHostAssociatedObjects", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostAssociatedObjects>>(wrap_array_of_vsan_host_associated_objects), from_value: |v| from_val_with::<Vec<super::structs::VsanHostAssociatedObjects>>(v, wrap_array_of_vsan_host_associated_objects) }),
        ("ImportOperationBulkFaultFaultOnImport", TypeInfo::Object { name: "ImportOperationBulkFaultFaultOnImport", builder_fn: || Box::new(ImportOperationBulkFaultFaultOnImportFields::new()) }),
        ("ArrayOfNvdimmNamespaceDetails", TypeInfo::Value { name: "ArrayOfNvdimmNamespaceDetails", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmNamespaceDetails>>(wrap_array_of_nvdimm_namespace_details), from_value: |v| from_val_with::<Vec<super::structs::NvdimmNamespaceDetails>>(v, wrap_array_of_nvdimm_namespace_details) }),
        ("NotAFile", TypeInfo::Object { name: "NotAFile", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotAFile))) }),
        ("OvfConsumerUndefinedPrefix", TypeInfo::Object { name: "OvfConsumerUndefinedPrefix", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConsumerUndefinedPrefix))) }),
        ("ReverseReplicationSuccessResult", TypeInfo::Object { name: "ReverseReplicationSuccessResult", builder_fn: || Box::new(ReverseReplicationSuccessResultFields::new()) }),
        ("ArrayOfVirtualMachineDatastoreInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineDatastoreInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineDatastoreInfo>>(wrap_array_of_virtual_machine_datastore_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineDatastoreInfo>>(v, wrap_array_of_virtual_machine_datastore_info) }),
        ("VmStoppingEvent", TypeInfo::Object { name: "VmStoppingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmStoppingEvent))) }),
        ("ArrayOfUplinkPortVlanTrunkedEvent", TypeInfo::Value { name: "ArrayOfUplinkPortVlanTrunkedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_uplink_port_vlan_trunked_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_uplink_port_vlan_trunked_event) }),
        ("SwapPlacementOverrideNotSupported", TypeInfo::Object { name: "SwapPlacementOverrideNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SwapPlacementOverrideNotSupported))) }),
        ("ArrayOfFaultToleranceNotSameBuild", TypeInfo::Value { name: "ArrayOfFaultToleranceNotSameBuild", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fault_tolerance_not_same_build), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fault_tolerance_not_same_build) }),
        ("ArrayOfOvfDiskMappingNotFound", TypeInfo::Value { name: "ArrayOfOvfDiskMappingNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_disk_mapping_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_disk_mapping_not_found) }),
        ("ArrayOfVmfsDatastoreInfo", TypeInfo::Value { name: "ArrayOfVmfsDatastoreInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VmfsDatastoreInfo>>(wrap_array_of_vmfs_datastore_info), from_value: |v| from_val_with::<Vec<super::structs::VmfsDatastoreInfo>>(v, wrap_array_of_vmfs_datastore_info) }),
        ("ArrayOfHostCertificateManagerCertificateInfo", TypeInfo::Value { name: "ArrayOfHostCertificateManagerCertificateInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostCertificateManagerCertificateInfo>>(wrap_array_of_host_certificate_manager_certificate_info), from_value: |v| from_val_with::<Vec<super::structs::HostCertificateManagerCertificateInfo>>(v, wrap_array_of_host_certificate_manager_certificate_info) }),
        ("ArrayOfResourceAllocationOption", TypeInfo::Value { name: "ArrayOfResourceAllocationOption", make_deserializer: || make_deser_with::<Vec<super::structs::ResourceAllocationOption>>(wrap_array_of_resource_allocation_option), from_value: |v| from_val_with::<Vec<super::structs::ResourceAllocationOption>>(v, wrap_array_of_resource_allocation_option) }),
        ("ArrayOfCnsBlockVolumeRelocateSpec", TypeInfo::Value { name: "ArrayOfCnsBlockVolumeRelocateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsBlockVolumeRelocateSpec>>(wrap_array_of_cns_block_volume_relocate_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsBlockVolumeRelocateSpec>>(v, wrap_array_of_cns_block_volume_relocate_spec) }),
        ("InsufficientStorageIops", TypeInfo::Object { name: "InsufficientStorageIops", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientStorageIops))) }),
        ("ArrayOfVirtualMachineDeviceRuntimeInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineDeviceRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineDeviceRuntimeInfo>>(wrap_array_of_virtual_machine_device_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineDeviceRuntimeInfo>>(v, wrap_array_of_virtual_machine_device_runtime_info) }),
        ("ArrayOfVVolId", TypeInfo::Value { name: "ArrayOfVVolId", make_deserializer: || make_deser_with::<Vec<super::structs::VVolId>>(wrap_array_of_v_vol_id), from_value: |v| from_val_with::<Vec<super::structs::VVolId>>(v, wrap_array_of_v_vol_id) }),
        ("ArrayOfDirectPathProfileManagerCapacityResult", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerCapacityResult", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_direct_path_profile_manager_capacity_result_array)), from_value: |v| cast_to_direct_path_profile_manager_capacity_result_array(from_value(v)?) }),
        ("VirtualPrecisionClockOption", TypeInfo::Object { name: "VirtualPrecisionClockOption", builder_fn: || Box::new(VirtualPrecisionClockOptionFields::new()) }),
        ("PbmPropertyMismatchFault", TypeInfo::Object { name: "PbmPropertyMismatchFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmPropertyMismatchFault))) }),
        ("ArrayOfHostSgxRegistrationInfo", TypeInfo::Value { name: "ArrayOfHostSgxRegistrationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSgxRegistrationInfo>>(wrap_array_of_host_sgx_registration_info), from_value: |v| from_val_with::<Vec<super::structs::HostSgxRegistrationInfo>>(v, wrap_array_of_host_sgx_registration_info) }),
        ("ExtendedEventPair", TypeInfo::Object { name: "ExtendedEventPair", builder_fn: || Box::new(ExtendedEventPairFields::new()) }),
        ("VsanPerfGraph", TypeInfo::Object { name: "VsanPerfGraph", builder_fn: || Box::new(VsanPerfGraphFields::new()) }),
        ("ArrayOfVsanHostReference", TypeInfo::Value { name: "ArrayOfVsanHostReference", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostReference>>(wrap_array_of_vsan_host_reference), from_value: |v| from_val_with::<Vec<super::structs::VsanHostReference>>(v, wrap_array_of_vsan_host_reference) }),
        ("ArrayOfFaultsByHost", TypeInfo::Value { name: "ArrayOfFaultsByHost", make_deserializer: || make_deser_with::<Vec<super::structs::FaultsByHost>>(wrap_array_of_faults_by_host), from_value: |v| from_val_with::<Vec<super::structs::FaultsByHost>>(v, wrap_array_of_faults_by_host) }),
        ("DpuStatusInfoOperationalInfo", TypeInfo::Object { name: "DpuStatusInfoOperationalInfo", builder_fn: || Box::new(DpuStatusInfoOperationalInfoFields::new()) }),
        ("VirtualMachineDefaultPowerOpInfo", TypeInfo::Object { name: "VirtualMachineDefaultPowerOpInfo", builder_fn: || Box::new(VirtualMachineDefaultPowerOpInfoFields::new()) }),
        ("VirtualFloppy", TypeInfo::Object { name: "VirtualFloppy", builder_fn: || Box::new(VirtualFloppyFields::new()) }),
        ("NetDhcpConfigSpecDhcpOptionsSpec", TypeInfo::Object { name: "NetDhcpConfigSpecDhcpOptionsSpec", builder_fn: || Box::new(NetDhcpConfigSpecDhcpOptionsSpecFields::new()) }),
        ("VimClusterVsanDiskMappingsConfigSpec", TypeInfo::Object { name: "VimClusterVsanDiskMappingsConfigSpec", builder_fn: || Box::new(VimClusterVsanDiskMappingsConfigSpecFields::new()) }),
        ("HostTpmEventDetails", TypeInfo::Object { name: "HostTpmEventDetails", builder_fn: || Box::new(HostTpmEventDetailsFields::new()) }),
        ("VsanResourceCheckDataPersistenceResult", TypeInfo::Object { name: "VsanResourceCheckDataPersistenceResult", builder_fn: || Box::new(VsanResourceCheckDataPersistenceResultFields::new()) }),
        ("InvalidLogin", TypeInfo::Object { name: "InvalidLogin", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidLogin))) }),
        ("VsanHostClusterStatusState", TypeInfo::Object { name: "VsanHostClusterStatusState", builder_fn: || Box::new(VsanHostClusterStatusStateFields::new()) }),
        ("Permission", TypeInfo::Object { name: "Permission", builder_fn: || Box::new(PermissionFields::new()) }),
        ("DvsImportEvent", TypeInfo::Object { name: "DvsImportEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsImportEvent))) }),
        ("HostVvolVolumeSpecification", TypeInfo::Object { name: "HostVvolVolumeSpecification", builder_fn: || Box::new(HostVvolVolumeSpecificationFields::new()) }),
        ("PbmPlacementMatchingReplicationResources", TypeInfo::Object { name: "PbmPlacementMatchingReplicationResources", builder_fn: || Box::new(PbmPlacementMatchingReplicationResourcesFields::new()) }),
        ("ArrayOfVsanHostWipeDiskStatus", TypeInfo::Value { name: "ArrayOfVsanHostWipeDiskStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostWipeDiskStatus>>(wrap_array_of_vsan_host_wipe_disk_status), from_value: |v| from_val_with::<Vec<super::structs::VsanHostWipeDiskStatus>>(v, wrap_array_of_vsan_host_wipe_disk_status) }),
        ("HostVirtualNicConnection", TypeInfo::Object { name: "HostVirtualNicConnection", builder_fn: || Box::new(HostVirtualNicConnectionFields::new()) }),
        ("DvsOutOfSyncHostArgument", TypeInfo::Object { name: "DvsOutOfSyncHostArgument", builder_fn: || Box::new(DvsOutOfSyncHostArgumentFields::new()) }),
        ("InsufficientCpuResourcesFault", TypeInfo::Object { name: "InsufficientCpuResourcesFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientCpuResourcesFault))) }),
        ("ArrayOfVirtualMachineVendorDeviceGroupInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineVendorDeviceGroupInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVendorDeviceGroupInfo>>(wrap_array_of_virtual_machine_vendor_device_group_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVendorDeviceGroupInfo>>(v, wrap_array_of_virtual_machine_vendor_device_group_info) }),
        ("ArrayOfVirtualMachineBootOptionsBootableDiskDevice", TypeInfo::Value { name: "ArrayOfVirtualMachineBootOptionsBootableDiskDevice", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineBootOptionsBootableDiskDevice>>(wrap_array_of_virtual_machine_boot_options_bootable_disk_device), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineBootOptionsBootableDiskDevice>>(v, wrap_array_of_virtual_machine_boot_options_bootable_disk_device) }),
        ("ArrayOfGuestAuthNamedSubject", TypeInfo::Value { name: "ArrayOfGuestAuthNamedSubject", make_deserializer: || make_deser_with::<Vec<super::structs::GuestAuthNamedSubject>>(wrap_array_of_guest_auth_named_subject), from_value: |v| from_val_with::<Vec<super::structs::GuestAuthNamedSubject>>(v, wrap_array_of_guest_auth_named_subject) }),
        ("ArrayOfVsanSpaceQuerySpec", TypeInfo::Value { name: "ArrayOfVsanSpaceQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSpaceQuerySpec>>(wrap_array_of_vsan_space_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanSpaceQuerySpec>>(v, wrap_array_of_vsan_space_query_spec) }),
        ("EVCAdmissionFailed", TypeInfo::Object { name: "EVCAdmissionFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EvcAdmissionFailed))) }),
        ("SoftRuleVioCorrectionImpact", TypeInfo::Object { name: "SoftRuleVioCorrectionImpact", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SoftRuleVioCorrectionImpact))) }),
        ("ArrayOfVmFaultToleranceTooManyVMsOnHost", TypeInfo::Value { name: "ArrayOfVmFaultToleranceTooManyVMsOnHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_fault_tolerance_too_many_v_ms_on_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_fault_tolerance_too_many_v_ms_on_host) }),
        ("NoAgentVmDatastore", TypeInfo::Object { name: "NoAgentVmDatastore", builder_fn: || Box::new(NoAgentVmDatastoreFields::new()) }),
        ("ArrayOfCannotAccessAgentOVF", TypeInfo::Value { name: "ArrayOfCannotAccessAgentOVF", make_deserializer: || make_deser_with::<Vec<super::structs::CannotAccessAgentOvf>>(wrap_array_of_cannot_access_agent_ovf), from_value: |v| from_val_with::<Vec<super::structs::CannotAccessAgentOvf>>(v, wrap_array_of_cannot_access_agent_ovf) }),
        ("VsanHostServerClusterUnicastConfig", TypeInfo::Object { name: "VsanHostServerClusterUnicastConfig", builder_fn: || Box::new(VsanHostServerClusterUnicastConfigFields::new()) }),
        ("ArrayOfReplicationVmConfigFault", TypeInfo::Value { name: "ArrayOfReplicationVmConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_replication_vm_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_replication_vm_config_fault) }),
        ("HostDateTimeSystemServiceTestResult", TypeInfo::Object { name: "HostDateTimeSystemServiceTestResult", builder_fn: || Box::new(HostDateTimeSystemServiceTestResultFields::new()) }),
        ("MissingWindowsCustResources", TypeInfo::Object { name: "MissingWindowsCustResources", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MissingWindowsCustResources))) }),
        ("ArrayOfDVPortgroupRenamedEvent", TypeInfo::Value { name: "ArrayOfDVPortgroupRenamedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dv_portgroup_renamed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dv_portgroup_renamed_event) }),
        ("VsanConfigNotAllDisksClaimedIssue", TypeInfo::Object { name: "VsanConfigNotAllDisksClaimedIssue", builder_fn: || Box::new(VsanConfigNotAllDisksClaimedIssueFields::new()) }),
        ("RequestCanceled", TypeInfo::Object { name: "RequestCanceled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RequestCanceled))) }),
        ("ArrayOfVmSecondaryStartedEvent", TypeInfo::Value { name: "ArrayOfVmSecondaryStartedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_secondary_started_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_secondary_started_event) }),
        ("VsanUpgradeSystemPreflightCheckIssue", TypeInfo::Object { name: "VsanUpgradeSystemPreflightCheckIssue", builder_fn: || Box::new(VsanUpgradeSystemPreflightCheckIssueFields::new()) }),
        ("VsanUpgradeSystemUpgradeHistoryDiskGroupOp", TypeInfo::Object { name: "VsanUpgradeSystemUpgradeHistoryDiskGroupOp", builder_fn: || Box::new(VsanUpgradeSystemUpgradeHistoryDiskGroupOpFields::new()) }),
        ("ArrayOfAlarmDescription", TypeInfo::Value { name: "ArrayOfAlarmDescription", make_deserializer: || make_deser_with::<Vec<super::structs::AlarmDescription>>(wrap_array_of_alarm_description), from_value: |v| from_val_with::<Vec<super::structs::AlarmDescription>>(v, wrap_array_of_alarm_description) }),
        ("VirtualMachineDiskDeviceInfo", TypeInfo::Object { name: "VirtualMachineDiskDeviceInfo", builder_fn: || Box::new(VirtualMachineDiskDeviceInfoFields::new()) }),
        ("EntityBackupConfig", TypeInfo::Object { name: "EntityBackupConfig", builder_fn: || Box::new(EntityBackupConfigFields::new()) }),
        ("ArrayOfVirtualMachineVirtualDeviceGroupsVendorDeviceGroup", TypeInfo::Value { name: "ArrayOfVirtualMachineVirtualDeviceGroupsVendorDeviceGroup", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVirtualDeviceGroupsVendorDeviceGroup>>(wrap_array_of_virtual_machine_virtual_device_groups_vendor_device_group), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVirtualDeviceGroupsVendorDeviceGroup>>(v, wrap_array_of_virtual_machine_virtual_device_groups_vendor_device_group) }),
        ("ArrayOfStorageDrsCannotMoveSharedDisk", TypeInfo::Value { name: "ArrayOfStorageDrsCannotMoveSharedDisk", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_cannot_move_shared_disk), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_cannot_move_shared_disk) }),
        ("ArrayOfSessionEvent", TypeInfo::Value { name: "ArrayOfSessionEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_session_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_session_event) }),
        ("ArrayOfClusterEVCManagerEVCState", TypeInfo::Value { name: "ArrayOfClusterEVCManagerEVCState", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterEvcManagerEvcState>>(wrap_array_of_cluster_evc_manager_evc_state), from_value: |v| from_val_with::<Vec<super::structs::ClusterEvcManagerEvcState>>(v, wrap_array_of_cluster_evc_manager_evc_state) }),
        ("ArrayOfVsanSslVerifyCertFault", TypeInfo::Value { name: "ArrayOfVsanSslVerifyCertFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vsan_ssl_verify_cert_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vsan_ssl_verify_cert_fault) }),
        ("ArrayOfCnsVolumeNotFoundFault", TypeInfo::Value { name: "ArrayOfCnsVolumeNotFoundFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cns_volume_not_found_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cns_volume_not_found_fault) }),
        ("ArrayOfExtensionPrivilegeInfo", TypeInfo::Value { name: "ArrayOfExtensionPrivilegeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ExtensionPrivilegeInfo>>(wrap_array_of_extension_privilege_info), from_value: |v| from_val_with::<Vec<super::structs::ExtensionPrivilegeInfo>>(v, wrap_array_of_extension_privilege_info) }),
        ("ArrayOfVSANEntityCompatibilityResult", TypeInfo::Value { name: "ArrayOfVSANEntityCompatibilityResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanEntityCompatibilityResult>>(wrap_array_of_vsan_entity_compatibility_result), from_value: |v| from_val_with::<Vec<super::structs::VsanEntityCompatibilityResult>>(v, wrap_array_of_vsan_entity_compatibility_result) }),
        ("ClusterComputeResourceSummary", TypeInfo::Object { name: "ClusterComputeResourceSummary", builder_fn: || Box::new(ClusterComputeResourceSummaryFields::new()) }),
        ("VslmCloneSpec", TypeInfo::Object { name: "VslmCloneSpec", builder_fn: || Box::new(VslmCloneSpecFields::new()) }),
        ("ArrayOfWipeDiskFault", TypeInfo::Value { name: "ArrayOfWipeDiskFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_wipe_disk_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_wipe_disk_fault) }),
        ("InsufficientFailoverResourcesEvent", TypeInfo::Object { name: "InsufficientFailoverResourcesEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::InsufficientFailoverResourcesEvent))) }),
        ("DvsEvent", TypeInfo::Object { name: "DvsEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsEvent))) }),
        ("TaskManagerViewByStartId", TypeInfo::Object { name: "TaskManagerViewByStartId", builder_fn: || Box::new(TaskManagerViewByStartIdFields::new()) }),
        ("ArrayOfTraversalSpec", TypeInfo::Value { name: "ArrayOfTraversalSpec", make_deserializer: || make_deser_with::<Vec<super::structs::TraversalSpec>>(wrap_array_of_traversal_spec), from_value: |v| from_val_with::<Vec<super::structs::TraversalSpec>>(v, wrap_array_of_traversal_spec) }),
        ("ArrayOfVsanPrepareVsanForVcsaSpec", TypeInfo::Value { name: "ArrayOfVsanPrepareVsanForVcsaSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPrepareVsanForVcsaSpec>>(wrap_array_of_vsan_prepare_vsan_for_vcsa_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanPrepareVsanForVcsaSpec>>(v, wrap_array_of_vsan_prepare_vsan_for_vcsa_spec) }),
        ("ArrayOfPbmDefaultProfileInfo", TypeInfo::Value { name: "ArrayOfPbmDefaultProfileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PbmDefaultProfileInfo>>(wrap_array_of_pbm_default_profile_info), from_value: |v| from_val_with::<Vec<super::structs::PbmDefaultProfileInfo>>(v, wrap_array_of_pbm_default_profile_info) }),
        ("NetIpRouteConfigInfoGateway", TypeInfo::Object { name: "NetIpRouteConfigInfoGateway", builder_fn: || Box::new(NetIpRouteConfigInfoGatewayFields::new()) }),
        ("HostIsolationIpPingFailedEvent", TypeInfo::Object { name: "HostIsolationIpPingFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostIsolationIpPingFailedEvent))) }),
        ("ArrayOfProfileExpressionMetadata", TypeInfo::Value { name: "ArrayOfProfileExpressionMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileExpressionMetadata>>(wrap_array_of_profile_expression_metadata), from_value: |v| from_val_with::<Vec<super::structs::ProfileExpressionMetadata>>(v, wrap_array_of_profile_expression_metadata) }),
        ("ArrayOfRDMNotPreserved", TypeInfo::Value { name: "ArrayOfRDMNotPreserved", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_rdm_not_preserved), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_rdm_not_preserved) }),
        ("ArrayOfVmHookTimedout", TypeInfo::Value { name: "ArrayOfVmHookTimedout", make_deserializer: || make_deser_with::<Vec<super::structs::VmHookTimedout>>(wrap_array_of_vm_hook_timedout), from_value: |v| from_val_with::<Vec<super::structs::VmHookTimedout>>(v, wrap_array_of_vm_hook_timedout) }),
        ("ArrayOfFaultToleranceNeedsThickDisk", TypeInfo::Value { name: "ArrayOfFaultToleranceNeedsThickDisk", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fault_tolerance_needs_thick_disk), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fault_tolerance_needs_thick_disk) }),
        ("VirtualUSBUSBBackingOption", TypeInfo::Object { name: "VirtualUSBUSBBackingOption", builder_fn: || Box::new(VirtualUsbusbBackingOptionFields::new()) }),
        ("ArrayOfVmNoNetworkAccessEvent", TypeInfo::Value { name: "ArrayOfVmNoNetworkAccessEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_no_network_access_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_no_network_access_event) }),
        ("ArrayOfVirtualCdromPassthroughBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualCdromPassthroughBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromPassthroughBackingInfo>>(wrap_array_of_virtual_cdrom_passthrough_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromPassthroughBackingInfo>>(v, wrap_array_of_virtual_cdrom_passthrough_backing_info) }),
        ("ArrayOfHostFibreChannelTargetTransport", TypeInfo::Value { name: "ArrayOfHostFibreChannelTargetTransport", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_fibre_channel_target_transport_array)), from_value: |v| cast_to_host_fibre_channel_target_transport_array(from_value(v)?) }),
        ("DvsHostInfrastructureTrafficResource", TypeInfo::Object { name: "DvsHostInfrastructureTrafficResource", builder_fn: || Box::new(DvsHostInfrastructureTrafficResourceFields::new()) }),
        ("VStorageObjectAssociationsVmDiskAssociations", TypeInfo::Object { name: "VStorageObjectAssociationsVmDiskAssociations", builder_fn: || Box::new(VStorageObjectAssociationsVmDiskAssociationsFields::new()) }),
        ("HostLicenseConnectInfo", TypeInfo::Object { name: "HostLicenseConnectInfo", builder_fn: || Box::new(HostLicenseConnectInfoFields::new()) }),
        ("ArrayOfHostFirewallConfig", TypeInfo::Value { name: "ArrayOfHostFirewallConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostFirewallConfig>>(wrap_array_of_host_firewall_config), from_value: |v| from_val_with::<Vec<super::structs::HostFirewallConfig>>(v, wrap_array_of_host_firewall_config) }),
        ("DirectoryNotEmpty", TypeInfo::Object { name: "DirectoryNotEmpty", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DirectoryNotEmpty))) }),
        ("AuthConnectionFailed", TypeInfo::Object { name: "AuthConnectionFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AuthConnectionFailed))) }),
        ("ArrayOfHostTpmEventLogEntry", TypeInfo::Value { name: "ArrayOfHostTpmEventLogEntry", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmEventLogEntry>>(wrap_array_of_host_tpm_event_log_entry), from_value: |v| from_val_with::<Vec<super::structs::HostTpmEventLogEntry>>(v, wrap_array_of_host_tpm_event_log_entry) }),
        ("ArrayOfGuestStackInfo", TypeInfo::Value { name: "ArrayOfGuestStackInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestStackInfo>>(wrap_array_of_guest_stack_info), from_value: |v| from_val_with::<Vec<super::structs::GuestStackInfo>>(v, wrap_array_of_guest_stack_info) }),
        ("VmMetadataManagerFault", TypeInfo::Object { name: "VmMetadataManagerFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmMetadataManagerFault))) }),
        ("ArrayOfVirtualMachineUsageOnDatastore", TypeInfo::Value { name: "ArrayOfVirtualMachineUsageOnDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineUsageOnDatastore>>(wrap_array_of_virtual_machine_usage_on_datastore), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineUsageOnDatastore>>(v, wrap_array_of_virtual_machine_usage_on_datastore) }),
        ("VirtualSerialPortPipeBackingInfo", TypeInfo::Object { name: "VirtualSerialPortPipeBackingInfo", builder_fn: || Box::new(VirtualSerialPortPipeBackingInfoFields::new()) }),
        ("ArrayOfVsanClusterHealthSystemObjectsRepairResult", TypeInfo::Value { name: "ArrayOfVsanClusterHealthSystemObjectsRepairResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthSystemObjectsRepairResult>>(wrap_array_of_vsan_cluster_health_system_objects_repair_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthSystemObjectsRepairResult>>(v, wrap_array_of_vsan_cluster_health_system_objects_repair_result) }),
        ("ArrayOfVMwareDVSFeatureCapability", TypeInfo::Value { name: "ArrayOfVMwareDVSFeatureCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsFeatureCapability>>(wrap_array_of_v_mware_dvs_feature_capability), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsFeatureCapability>>(v, wrap_array_of_v_mware_dvs_feature_capability) }),
        ("VsanIODiagnosticsFailedCheck", TypeInfo::Object { name: "VsanIODiagnosticsFailedCheck", builder_fn: || Box::new(VsanIoDiagnosticsFailedCheckFields::new()) }),
        ("ArrayOfUpdateVirtualMachineFilesResultFailedVmFileInfo", TypeInfo::Value { name: "ArrayOfUpdateVirtualMachineFilesResultFailedVmFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::UpdateVirtualMachineFilesResultFailedVmFileInfo>>(wrap_array_of_update_virtual_machine_files_result_failed_vm_file_info), from_value: |v| from_val_with::<Vec<super::structs::UpdateVirtualMachineFilesResultFailedVmFileInfo>>(v, wrap_array_of_update_virtual_machine_files_result_failed_vm_file_info) }),
        ("ArrayOfVirtualDiskSparseVer1BackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDiskSparseVer1BackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskSparseVer1BackingInfo>>(wrap_array_of_virtual_disk_sparse_ver_1_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskSparseVer1BackingInfo>>(v, wrap_array_of_virtual_disk_sparse_ver_1_backing_info) }),
        ("ArrayOfStorageDrsAutomationConfig", TypeInfo::Value { name: "ArrayOfStorageDrsAutomationConfig", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsAutomationConfig>>(wrap_array_of_storage_drs_automation_config), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsAutomationConfig>>(v, wrap_array_of_storage_drs_automation_config) }),
        ("OutOfSyncDvsHost", TypeInfo::Object { name: "OutOfSyncDvsHost", builder_fn: || Box::new(EventFields::new(Some(StructType::OutOfSyncDvsHost))) }),
        ("ClusterAgentVmHookTimedout", TypeInfo::Object { name: "ClusterAgentVmHookTimedout", builder_fn: || Box::new(ClusterAgentVmHookTimedoutFields::new()) }),
        ("ArrayOfHostImageProfileSummary", TypeInfo::Value { name: "ArrayOfHostImageProfileSummary", make_deserializer: || make_deser_with::<Vec<super::structs::HostImageProfileSummary>>(wrap_array_of_host_image_profile_summary), from_value: |v| from_val_with::<Vec<super::structs::HostImageProfileSummary>>(v, wrap_array_of_host_image_profile_summary) }),
        ("ClusterAction", TypeInfo::Object { name: "ClusterAction", builder_fn: || Box::new(ClusterActionFields::new()) }),
        ("ArrayOfPhysicalNicLinkInfo", TypeInfo::Value { name: "ArrayOfPhysicalNicLinkInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PhysicalNicLinkInfo>>(wrap_array_of_physical_nic_link_info), from_value: |v| from_val_with::<Vec<super::structs::PhysicalNicLinkInfo>>(v, wrap_array_of_physical_nic_link_info) }),
        ("ArrayOfEVCAdmissionFailedVmActive", TypeInfo::Value { name: "ArrayOfEVCAdmissionFailedVmActive", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_admission_failed_vm_active), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_admission_failed_vm_active) }),
        ("ArrayOfDrsRuleViolationEvent", TypeInfo::Value { name: "ArrayOfDrsRuleViolationEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_rule_violation_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_rule_violation_event) }),
        ("ArrayOfVirtualCdromOption", TypeInfo::Value { name: "ArrayOfVirtualCdromOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromOption>>(wrap_array_of_virtual_cdrom_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromOption>>(v, wrap_array_of_virtual_cdrom_option) }),
        ("ArrayOfVirtualHdAudioCardOption", TypeInfo::Value { name: "ArrayOfVirtualHdAudioCardOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualHdAudioCardOption>>(wrap_array_of_virtual_hd_audio_card_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualHdAudioCardOption>>(v, wrap_array_of_virtual_hd_audio_card_option) }),
        ("ArrayOfFaultsByVM", TypeInfo::Value { name: "ArrayOfFaultsByVM", make_deserializer: || make_deser_with::<Vec<super::structs::FaultsByVm>>(wrap_array_of_faults_by_vm), from_value: |v| from_val_with::<Vec<super::structs::FaultsByVm>>(v, wrap_array_of_faults_by_vm) }),
        ("OvfNoSupportedHardwareFamily", TypeInfo::Object { name: "OvfNoSupportedHardwareFamily", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfNoSupportedHardwareFamily))) }),
        ("ArrayOfVMOnConflictDVPort", TypeInfo::Value { name: "ArrayOfVMOnConflictDVPort", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_on_conflict_dv_port), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_on_conflict_dv_port) }),
        ("HostPlugStoreTopologyDevice", TypeInfo::Object { name: "HostPlugStoreTopologyDevice", builder_fn: || Box::new(HostPlugStoreTopologyDeviceFields::new()) }),
        ("VsanVsanClusterPcapResult", TypeInfo::Object { name: "VsanVsanClusterPcapResult", builder_fn: || Box::new(VsanVsanClusterPcapResultFields::new()) }),
        ("CnsVolumeOperationResult", TypeInfo::Object { name: "CnsVolumeOperationResult", builder_fn: || Box::new(CnsVolumeOperationResultFields::new()) }),
        ("ArrayOfVsanHostDiskResultState", TypeInfo::Value { name: "ArrayOfVsanHostDiskResultState", make_deserializer: || make_deser_with::<Vec<super::enums::VsanHostDiskResultStateEnum>>(wrap_array_of_vsan_host_disk_result_state), from_value: |v| from_val_with::<Vec<super::enums::VsanHostDiskResultStateEnum>>(v, wrap_array_of_vsan_host_disk_result_state) }),
        ("ArrayOfStorageDrsCannotMoveVmInUserFolder", TypeInfo::Value { name: "ArrayOfStorageDrsCannotMoveVmInUserFolder", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_cannot_move_vm_in_user_folder), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_cannot_move_vm_in_user_folder) }),
        ("ArrayOfClusterRecommendation", TypeInfo::Value { name: "ArrayOfClusterRecommendation", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterRecommendation>>(wrap_array_of_cluster_recommendation), from_value: |v| from_val_with::<Vec<super::structs::ClusterRecommendation>>(v, wrap_array_of_cluster_recommendation) }),
        ("ArrayOfOvfDatastoreMapping", TypeInfo::Value { name: "ArrayOfOvfDatastoreMapping", make_deserializer: || make_deser_with::<Vec<super::structs::OvfDatastoreMapping>>(wrap_array_of_ovf_datastore_mapping), from_value: |v| from_val_with::<Vec<super::structs::OvfDatastoreMapping>>(v, wrap_array_of_ovf_datastore_mapping) }),
        ("UnrecognizedHost", TypeInfo::Object { name: "UnrecognizedHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnrecognizedHost))) }),
        ("ArrayOfHostFirewallRulePortType", TypeInfo::Value { name: "ArrayOfHostFirewallRulePortType", make_deserializer: || make_deser_with::<Vec<super::enums::HostFirewallRulePortTypeEnum>>(wrap_array_of_host_firewall_rule_port_type), from_value: |v| from_val_with::<Vec<super::enums::HostFirewallRulePortTypeEnum>>(v, wrap_array_of_host_firewall_rule_port_type) }),
        ("ManagedByInfo", TypeInfo::Object { name: "ManagedByInfo", builder_fn: || Box::new(ManagedByInfoFields::new()) }),
        ("ArrayOfNoReplicationTarget", TypeInfo::Value { name: "ArrayOfNoReplicationTarget", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_replication_target), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_replication_target) }),
        ("DigestNotSupported", TypeInfo::Object { name: "DigestNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DigestNotSupported))) }),
        ("ArrayOfHostPlugStoreTopology", TypeInfo::Value { name: "ArrayOfHostPlugStoreTopology", make_deserializer: || make_deser_with::<Vec<super::structs::HostPlugStoreTopology>>(wrap_array_of_host_plug_store_topology), from_value: |v| from_val_with::<Vec<super::structs::HostPlugStoreTopology>>(v, wrap_array_of_host_plug_store_topology) }),
        ("HostTpmCommandEventDetails", TypeInfo::Object { name: "HostTpmCommandEventDetails", builder_fn: || Box::new(HostTpmCommandEventDetailsFields::new()) }),
        ("ArrayOfVmConfigFileQuery", TypeInfo::Value { name: "ArrayOfVmConfigFileQuery", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vm_config_file_query_array)), from_value: |v| cast_to_vm_config_file_query_array(from_value(v)?) }),
        ("RecoveredTargetGroupMemberInfo", TypeInfo::Object { name: "RecoveredTargetGroupMemberInfo", builder_fn: || Box::new(RecoveredTargetGroupMemberInfoFields::new()) }),
        ("LicenseAvailabilityInfo", TypeInfo::Object { name: "LicenseAvailabilityInfo", builder_fn: || Box::new(LicenseAvailabilityInfoFields::new()) }),
        ("ArrayOfVsanClusterGlobalDedupHealthSummary", TypeInfo::Value { name: "ArrayOfVsanClusterGlobalDedupHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterGlobalDedupHealthSummary>>(wrap_array_of_vsan_cluster_global_dedup_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterGlobalDedupHealthSummary>>(v, wrap_array_of_vsan_cluster_global_dedup_health_summary) }),
        ("ArrayOfAlarmStatusChangedEvent", TypeInfo::Value { name: "ArrayOfAlarmStatusChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_status_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_status_changed_event) }),
        ("ArrayOfDirectPathProfileManagerCapacityUnknown", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerCapacityUnknown", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerCapacityUnknown>>(wrap_array_of_direct_path_profile_manager_capacity_unknown), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerCapacityUnknown>>(v, wrap_array_of_direct_path_profile_manager_capacity_unknown) }),
        ("VspanPortPromiscChangeFault", TypeInfo::Object { name: "VspanPortPromiscChangeFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VspanPortPromiscChangeFault))) }),
        ("VcRemoteVsanServerClusterInfo", TypeInfo::Object { name: "VcRemoteVsanServerClusterInfo", builder_fn: || Box::new(VcRemoteVsanServerClusterInfoFields::new()) }),
        ("ArrayOfFcoeConfigVlanRange", TypeInfo::Value { name: "ArrayOfFcoeConfigVlanRange", make_deserializer: || make_deser_with::<Vec<super::structs::FcoeConfigVlanRange>>(wrap_array_of_fcoe_config_vlan_range), from_value: |v| from_val_with::<Vec<super::structs::FcoeConfigVlanRange>>(v, wrap_array_of_fcoe_config_vlan_range) }),
        ("ScheduledTaskReconfiguredEvent", TypeInfo::Object { name: "ScheduledTaskReconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ScheduledTaskReconfiguredEvent))) }),
        ("ArrayOfSyncInProgress", TypeInfo::Value { name: "ArrayOfSyncInProgress", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_sync_in_progress), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_sync_in_progress) }),
        ("ArrayOfVmMaxRestartCountReached", TypeInfo::Value { name: "ArrayOfVmMaxRestartCountReached", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_max_restart_count_reached), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_max_restart_count_reached) }),
        ("ArrayOfDatacenterRenamedEvent", TypeInfo::Value { name: "ArrayOfDatacenterRenamedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datacenter_renamed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datacenter_renamed_event) }),
        ("VirtualSerialPortURIBackingOption", TypeInfo::Object { name: "VirtualSerialPortURIBackingOption", builder_fn: || Box::new(VirtualSerialPortUriBackingOptionFields::new()) }),
        ("ArrayOfOvfNoSupportedHardwareFamily", TypeInfo::Value { name: "ArrayOfOvfNoSupportedHardwareFamily", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_no_supported_hardware_family), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_no_supported_hardware_family) }),
        ("ArrayOfDesiredSoftwareSpecBaseImageSpec", TypeInfo::Value { name: "ArrayOfDesiredSoftwareSpecBaseImageSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DesiredSoftwareSpecBaseImageSpec>>(wrap_array_of_desired_software_spec_base_image_spec), from_value: |v| from_val_with::<Vec<super::structs::DesiredSoftwareSpecBaseImageSpec>>(v, wrap_array_of_desired_software_spec_base_image_spec) }),
        ("TaskScheduler", TypeInfo::Object { name: "TaskScheduler", builder_fn: || Box::new(TaskSchedulerFields::new()) }),
        ("VsanPerfThreshold", TypeInfo::Object { name: "VsanPerfThreshold", builder_fn: || Box::new(VsanPerfThresholdFields::new()) }),
        ("DistributedVirtualSwitchHostMemberTransportZoneInfo", TypeInfo::Object { name: "DistributedVirtualSwitchHostMemberTransportZoneInfo", builder_fn: || Box::new(DistributedVirtualSwitchHostMemberTransportZoneInfoFields::new()) }),
        ("ArrayOfDatastoreDestroyedEvent", TypeInfo::Value { name: "ArrayOfDatastoreDestroyedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_destroyed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_destroyed_event) }),
        ("ArrayOfTargetGroupMemberInfo", TypeInfo::Value { name: "ArrayOfTargetGroupMemberInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_target_group_member_info_array)), from_value: |v| cast_to_target_group_member_info_array(from_value(v)?) }),
        ("ArrayOfVmVnicPoolReservationViolationClearEvent", TypeInfo::Value { name: "ArrayOfVmVnicPoolReservationViolationClearEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_vnic_pool_reservation_violation_clear_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_vnic_pool_reservation_violation_clear_event) }),
        ("ClusterUsageSummary", TypeInfo::Object { name: "ClusterUsageSummary", builder_fn: || Box::new(ClusterUsageSummaryFields::new()) }),
        ("ArrayOfPbmDefaultProfileAppliesFault", TypeInfo::Value { name: "ArrayOfPbmDefaultProfileAppliesFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_default_profile_applies_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_default_profile_applies_fault) }),
        ("HostSslThumbprintInfo", TypeInfo::Object { name: "HostSslThumbprintInfo", builder_fn: || Box::new(HostSslThumbprintInfoFields::new()) }),
        ("ArrayOfInvalidState", TypeInfo::Value { name: "ArrayOfInvalidState", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_state), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_state) }),
        ("OvfPropertyNetworkExport", TypeInfo::Object { name: "OvfPropertyNetworkExport", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfPropertyNetworkExport))) }),
        ("DayOfWeek", TypeInfo::Value { name: "DayOfWeek", make_deserializer: || make_deser_with::<super::enums::DayOfWeekEnum>(wrap_day_of_week), from_value: |v| from_val_with::<super::enums::DayOfWeekEnum>(v, wrap_day_of_week) }),
        ("TaskReasonSystem", TypeInfo::Object { name: "TaskReasonSystem", builder_fn: || Box::new(TaskReasonSystemFields::new()) }),
        ("ArrayOfInsufficientMemoryResourcesFault", TypeInfo::Value { name: "ArrayOfInsufficientMemoryResourcesFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_memory_resources_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_memory_resources_fault) }),
        ("ArrayOfHostInMaintenanceMode", TypeInfo::Value { name: "ArrayOfHostInMaintenanceMode", make_deserializer: || make_deser_with::<Vec<super::structs::HostInMaintenanceMode>>(wrap_array_of_host_in_maintenance_mode), from_value: |v| from_val_with::<Vec<super::structs::HostInMaintenanceMode>>(v, wrap_array_of_host_in_maintenance_mode) }),
        ("VsanDatastoreInfo", TypeInfo::Object { name: "VsanDatastoreInfo", builder_fn: || Box::new(VsanDatastoreInfoFields::new()) }),
        ("ArrayOfCnsNFSAccessControlSpec", TypeInfo::Value { name: "ArrayOfCnsNFSAccessControlSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsNfsAccessControlSpec>>(wrap_array_of_cns_nfs_access_control_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsNfsAccessControlSpec>>(v, wrap_array_of_cns_nfs_access_control_spec) }),
        ("ArrayOfVirtualMachineFaultToleranceState", TypeInfo::Value { name: "ArrayOfVirtualMachineFaultToleranceState", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualMachineFaultToleranceStateEnum>>(wrap_array_of_virtual_machine_fault_tolerance_state), from_value: |v| from_val_with::<Vec<super::enums::VirtualMachineFaultToleranceStateEnum>>(v, wrap_array_of_virtual_machine_fault_tolerance_state) }),
        ("TemplateUpgradeEvent", TypeInfo::Object { name: "TemplateUpgradeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::TemplateUpgradeEvent))) }),
        ("ArrayOfDvsPortLinkDownEvent", TypeInfo::Value { name: "ArrayOfDvsPortLinkDownEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_link_down_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_link_down_event) }),
        ("ArrayOfVirtualTPMOption", TypeInfo::Value { name: "ArrayOfVirtualTPMOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualTpmOption>>(wrap_array_of_virtual_tpm_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualTpmOption>>(v, wrap_array_of_virtual_tpm_option) }),
        ("GuestInfoVirtualDiskMapping", TypeInfo::Object { name: "GuestInfoVirtualDiskMapping", builder_fn: || Box::new(GuestInfoVirtualDiskMappingFields::new()) }),
        ("ArrayOfClusterFailoverHostAdmissionControlInfo", TypeInfo::Value { name: "ArrayOfClusterFailoverHostAdmissionControlInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterFailoverHostAdmissionControlInfo>>(wrap_array_of_cluster_failover_host_admission_control_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterFailoverHostAdmissionControlInfo>>(v, wrap_array_of_cluster_failover_host_admission_control_info) }),
        ("HostSriovInfo", TypeInfo::Object { name: "HostSriovInfo", builder_fn: || Box::new(HostSriovInfoFields::new()) }),
        ("VsanStoragePoolResourceCheckResult", TypeInfo::Object { name: "VsanStoragePoolResourceCheckResult", builder_fn: || Box::new(VsanStoragePoolResourceCheckResultFields::new()) }),
        ("Action", TypeInfo::Object { name: "Action", builder_fn: || Box::new(ActionFields::new()) }),
        ("VirtualDiskModeNotSupported", TypeInfo::Object { name: "VirtualDiskModeNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VirtualDiskModeNotSupported))) }),
        ("ArrayOfHostFirewallRuleset", TypeInfo::Value { name: "ArrayOfHostFirewallRuleset", make_deserializer: || make_deser_with::<Vec<super::structs::HostFirewallRuleset>>(wrap_array_of_host_firewall_ruleset), from_value: |v| from_val_with::<Vec<super::structs::HostFirewallRuleset>>(v, wrap_array_of_host_firewall_ruleset) }),
        ("ArrayOfIncorrectHostInformationEvent", TypeInfo::Value { name: "ArrayOfIncorrectHostInformationEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_incorrect_host_information_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_incorrect_host_information_event) }),
        ("ArrayOfServiceConsolePortGroupProfile", TypeInfo::Value { name: "ArrayOfServiceConsolePortGroupProfile", make_deserializer: || make_deser_with::<Vec<super::structs::ServiceConsolePortGroupProfile>>(wrap_array_of_service_console_port_group_profile), from_value: |v| from_val_with::<Vec<super::structs::ServiceConsolePortGroupProfile>>(v, wrap_array_of_service_console_port_group_profile) }),
        ("LicenseUsageInfo", TypeInfo::Object { name: "LicenseUsageInfo", builder_fn: || Box::new(LicenseUsageInfoFields::new()) }),
        ("ArrayOfMethodNotFound", TypeInfo::Value { name: "ArrayOfMethodNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_method_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_method_not_found) }),
        ("ExitingStandbyModeEvent", TypeInfo::Object { name: "ExitingStandbyModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ExitingStandbyModeEvent))) }),
        ("VAppCloneSpec", TypeInfo::Object { name: "VAppCloneSpec", builder_fn: || Box::new(VAppCloneSpecFields::new()) }),
        ("ArrayOfVsanConfigInfoEx", TypeInfo::Value { name: "ArrayOfVsanConfigInfoEx", make_deserializer: || make_deser_with::<Vec<super::structs::VsanConfigInfoEx>>(wrap_array_of_vsan_config_info_ex), from_value: |v| from_val_with::<Vec<super::structs::VsanConfigInfoEx>>(v, wrap_array_of_vsan_config_info_ex) }),
        ("ArrayOfCreateTaskAction", TypeInfo::Value { name: "ArrayOfCreateTaskAction", make_deserializer: || make_deser_with::<Vec<super::structs::CreateTaskAction>>(wrap_array_of_create_task_action), from_value: |v| from_val_with::<Vec<super::structs::CreateTaskAction>>(v, wrap_array_of_create_task_action) }),
        ("ReplicationVmConfigFault", TypeInfo::Object { name: "ReplicationVmConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReplicationVmConfigFault))) }),
        ("ArrayOfPermissionRemovedEvent", TypeInfo::Value { name: "ArrayOfPermissionRemovedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_permission_removed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_permission_removed_event) }),
        ("VmGuestOSCrashedEvent", TypeInfo::Object { name: "VmGuestOSCrashedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmGuestOsCrashedEvent))) }),
        ("NotADirectory", TypeInfo::Object { name: "NotADirectory", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotADirectory))) }),
        ("NetworkProfileDnsConfigProfile", TypeInfo::Object { name: "NetworkProfileDnsConfigProfile", builder_fn: || Box::new(NetworkProfileDnsConfigProfileFields::new()) }),
        ("NamePasswordAuthentication", TypeInfo::Object { name: "NamePasswordAuthentication", builder_fn: || Box::new(NamePasswordAuthenticationFields::new()) }),
        ("VsanFaultDomainResourceCheckResult", TypeInfo::Object { name: "VsanFaultDomainResourceCheckResult", builder_fn: || Box::new(VsanFaultDomainResourceCheckResultFields::new()) }),
        ("ArrayOfHostInternetScsiHbaIscsiIpv6AddressAddressConfigurationType", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaIscsiIpv6AddressAddressConfigurationType", make_deserializer: || make_deser_with::<Vec<super::enums::HostInternetScsiHbaIscsiIpv6AddressAddressConfigurationTypeEnum>>(wrap_array_of_host_internet_scsi_hba_iscsi_ipv_6_address_address_configuration_type), from_value: |v| from_val_with::<Vec<super::enums::HostInternetScsiHbaIscsiIpv6AddressAddressConfigurationTypeEnum>>(v, wrap_array_of_host_internet_scsi_hba_iscsi_ipv_6_address_address_configuration_type) }),
        ("ArrayOfServiceManagerServiceInfo", TypeInfo::Value { name: "ArrayOfServiceManagerServiceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ServiceManagerServiceInfo>>(wrap_array_of_service_manager_service_info), from_value: |v| from_val_with::<Vec<super::structs::ServiceManagerServiceInfo>>(v, wrap_array_of_service_manager_service_info) }),
        ("CryptoManagerKmipCryptoKeyStatusKeyInfo", TypeInfo::Object { name: "CryptoManagerKmipCryptoKeyStatusKeyInfo", builder_fn: || Box::new(CryptoManagerKmipCryptoKeyStatusKeyInfoFields::new()) }),
        ("HostVFlashManagerVFlashConfigInfo", TypeInfo::Object { name: "HostVFlashManagerVFlashConfigInfo", builder_fn: || Box::new(HostVFlashManagerVFlashConfigInfoFields::new()) }),
        ("ArrayOfPropertyChange", TypeInfo::Value { name: "ArrayOfPropertyChange", make_deserializer: || make_deser_with::<Vec<super::structs::PropertyChange>>(wrap_array_of_property_change), from_value: |v| from_val_with::<Vec<super::structs::PropertyChange>>(v, wrap_array_of_property_change) }),
        ("ArrayOfHostSystemIdentificationInfo", TypeInfo::Value { name: "ArrayOfHostSystemIdentificationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemIdentificationInfo>>(wrap_array_of_host_system_identification_info), from_value: |v| from_val_with::<Vec<super::structs::HostSystemIdentificationInfo>>(v, wrap_array_of_host_system_identification_info) }),
        ("FailToLockFaultToleranceVMs", TypeInfo::Object { name: "FailToLockFaultToleranceVMs", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FailToLockFaultToleranceVMs))) }),
        ("ArrayOfTaskTimeoutEvent", TypeInfo::Value { name: "ArrayOfTaskTimeoutEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_task_timeout_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_task_timeout_event) }),
        ("MemorySizeNotSupported", TypeInfo::Object { name: "MemorySizeNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MemorySizeNotSupported))) }),
        ("IoFilterHostIssue", TypeInfo::Object { name: "IoFilterHostIssue", builder_fn: || Box::new(IoFilterHostIssueFields::new()) }),
        ("ArrayOfInsufficientResourcesFault", TypeInfo::Value { name: "ArrayOfInsufficientResourcesFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_resources_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_resources_fault) }),
        ("AlarmReconfiguredEvent", TypeInfo::Object { name: "AlarmReconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmReconfiguredEvent))) }),
        ("InvalidOperationOnSecondaryVm", TypeInfo::Object { name: "InvalidOperationOnSecondaryVm", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidOperationOnSecondaryVm))) }),
        ("ArrayOfCustomizationPending", TypeInfo::Value { name: "ArrayOfCustomizationPending", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_customization_pending), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_customization_pending) }),
        ("VirtualEthernetCard", TypeInfo::Object { name: "VirtualEthernetCard", builder_fn: || Box::new(VirtualEthernetCardFields::new()) }),
        ("ArrayOfPbmPlacementMatchingReplicationResources", TypeInfo::Value { name: "ArrayOfPbmPlacementMatchingReplicationResources", make_deserializer: || make_deser_with::<Vec<super::structs::PbmPlacementMatchingReplicationResources>>(wrap_array_of_pbm_placement_matching_replication_resources), from_value: |v| from_val_with::<Vec<super::structs::PbmPlacementMatchingReplicationResources>>(v, wrap_array_of_pbm_placement_matching_replication_resources) }),
        ("ArrayOfHostProfileConfigInfo", TypeInfo::Value { name: "ArrayOfHostProfileConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileConfigInfo>>(wrap_array_of_host_profile_config_info), from_value: |v| from_val_with::<Vec<super::structs::HostProfileConfigInfo>>(v, wrap_array_of_host_profile_config_info) }),
        ("NasSessionCredentialConflict", TypeInfo::Object { name: "NasSessionCredentialConflict", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NasSessionCredentialConflict))) }),
        ("ArrayOfFloat", TypeInfo::Value { name: "ArrayOfFloat", make_deserializer: || make_deser_with::<Vec<f32>>(wrap_array_of_float), from_value: |v| from_val_with::<Vec<f32>>(v, wrap_array_of_float) }),
        ("DVSConfigSpec", TypeInfo::Object { name: "DVSConfigSpec", builder_fn: || Box::new(DvsConfigSpecFields::new()) }),
        ("ArrayOfHostConfigInfo", TypeInfo::Value { name: "ArrayOfHostConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostConfigInfo>>(wrap_array_of_host_config_info), from_value: |v| from_val_with::<Vec<super::structs::HostConfigInfo>>(v, wrap_array_of_host_config_info) }),
        ("ArrayOfVirtualMachineSriovNetworkDevicePoolInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineSriovNetworkDevicePoolInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineSriovNetworkDevicePoolInfo>>(wrap_array_of_virtual_machine_sriov_network_device_pool_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineSriovNetworkDevicePoolInfo>>(v, wrap_array_of_virtual_machine_sriov_network_device_pool_info) }),
        ("ArrayOfVirtualControllerOption", TypeInfo::Value { name: "ArrayOfVirtualControllerOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_controller_option_array)), from_value: |v| cast_to_virtual_controller_option_array(from_value(v)?) }),
        ("ArrayOfPbmServerObjectRef", TypeInfo::Value { name: "ArrayOfPbmServerObjectRef", make_deserializer: || make_deser_with::<Vec<super::structs::PbmServerObjectRef>>(wrap_array_of_pbm_server_object_ref), from_value: |v| from_val_with::<Vec<super::structs::PbmServerObjectRef>>(v, wrap_array_of_pbm_server_object_ref) }),
        ("HostSubSpecification", TypeInfo::Object { name: "HostSubSpecification", builder_fn: || Box::new(HostSubSpecificationFields::new()) }),
        ("VlanProfile", TypeInfo::Object { name: "VlanProfile", builder_fn: || Box::new(VlanProfileFields::new()) }),
        ("ProfileSimpleExpression", TypeInfo::Object { name: "ProfileSimpleExpression", builder_fn: || Box::new(ProfileSimpleExpressionFields::new()) }),
        ("UntrustedCertificate", TypeInfo::Object { name: "UntrustedCertificate", builder_fn: || Box::new(UntrustedCertificateFields::new()) }),
        ("ArrayOfNasConfigFault", TypeInfo::Value { name: "ArrayOfNasConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_nas_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_nas_config_fault) }),
        ("HostNetworkResourceRuntime", TypeInfo::Object { name: "HostNetworkResourceRuntime", builder_fn: || Box::new(HostNetworkResourceRuntimeFields::new()) }),
        ("ArrayOfHostSystemResourceInfo", TypeInfo::Value { name: "ArrayOfHostSystemResourceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemResourceInfo>>(wrap_array_of_host_system_resource_info), from_value: |v| from_val_with::<Vec<super::structs::HostSystemResourceInfo>>(v, wrap_array_of_host_system_resource_info) }),
        ("VnicPortArgument", TypeInfo::Object { name: "VnicPortArgument", builder_fn: || Box::new(VnicPortArgumentFields::new()) }),
        ("DvsOperationBulkFault", TypeInfo::Object { name: "DvsOperationBulkFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DvsOperationBulkFault))) }),
        ("ArrayOfVsanHclDiskConstraint", TypeInfo::Value { name: "ArrayOfVsanHclDiskConstraint", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclDiskConstraint>>(wrap_array_of_vsan_hcl_disk_constraint), from_value: |v| from_val_with::<Vec<super::structs::VsanHclDiskConstraint>>(v, wrap_array_of_vsan_hcl_disk_constraint) }),
        ("ArrayOfVsanHostNodeState", TypeInfo::Value { name: "ArrayOfVsanHostNodeState", make_deserializer: || make_deser_with::<Vec<super::enums::VsanHostNodeStateEnum>>(wrap_array_of_vsan_host_node_state), from_value: |v| from_val_with::<Vec<super::enums::VsanHostNodeStateEnum>>(v, wrap_array_of_vsan_host_node_state) }),
        ("ArrayOfVStorageObjectSnapshot", TypeInfo::Value { name: "ArrayOfVStorageObjectSnapshot", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectSnapshot>>(wrap_array_of_v_storage_object_snapshot), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectSnapshot>>(v, wrap_array_of_v_storage_object_snapshot) }),
        ("ArrayOfHostDiskMappingInfo", TypeInfo::Value { name: "ArrayOfHostDiskMappingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskMappingInfo>>(wrap_array_of_host_disk_mapping_info), from_value: |v| from_val_with::<Vec<super::structs::HostDiskMappingInfo>>(v, wrap_array_of_host_disk_mapping_info) }),
        ("ArrayOfCustomizationLinuxPrep", TypeInfo::Value { name: "ArrayOfCustomizationLinuxPrep", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationLinuxPrep>>(wrap_array_of_customization_linux_prep), from_value: |v| from_val_with::<Vec<super::structs::CustomizationLinuxPrep>>(v, wrap_array_of_customization_linux_prep) }),
        ("HostSgxRegistrationInfo", TypeInfo::Object { name: "HostSgxRegistrationInfo", builder_fn: || Box::new(HostSgxRegistrationInfoFields::new()) }),
        ("RDMNotPreserved", TypeInfo::Object { name: "RDMNotPreserved", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RdmNotPreserved))) }),
        ("VsanHostHealthSystemVersionResult", TypeInfo::Object { name: "VsanHostHealthSystemVersionResult", builder_fn: || Box::new(VsanHostHealthSystemVersionResultFields::new()) }),
        ("QueryReplicationPeerResult", TypeInfo::Object { name: "QueryReplicationPeerResult", builder_fn: || Box::new(QueryReplicationPeerResultFields::new()) }),
        ("HostFirewallRuleset", TypeInfo::Object { name: "HostFirewallRuleset", builder_fn: || Box::new(HostFirewallRulesetFields::new()) }),
        ("SolutionsVmResourceSpec", TypeInfo::Object { name: "SolutionsVmResourceSpec", builder_fn: || Box::new(SolutionsVmResourceSpecFields::new()) }),
        ("VsanClusterNetworkLoadTestResult", TypeInfo::Object { name: "VsanClusterNetworkLoadTestResult", builder_fn: || Box::new(VsanClusterNetworkLoadTestResultFields::new()) }),
        ("DvsPortLeavePortgroupEvent", TypeInfo::Object { name: "DvsPortLeavePortgroupEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsPortLeavePortgroupEvent))) }),
        ("PbmCapabilityTimeSpan", TypeInfo::Object { name: "PbmCapabilityTimeSpan", builder_fn: || Box::new(PbmCapabilityTimeSpanFields::new()) }),
        ("ArrayOfVsanHclMinFwConstraint", TypeInfo::Value { name: "ArrayOfVsanHclMinFwConstraint", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclMinFwConstraint>>(wrap_array_of_vsan_hcl_min_fw_constraint), from_value: |v| from_val_with::<Vec<super::structs::VsanHclMinFwConstraint>>(v, wrap_array_of_vsan_hcl_min_fw_constraint) }),
        ("ArrayOfKeyValue", TypeInfo::Value { name: "ArrayOfKeyValue", make_deserializer: || make_deser_with::<Vec<super::structs::KeyValue>>(wrap_array_of_key_value), from_value: |v| from_val_with::<Vec<super::structs::KeyValue>>(v, wrap_array_of_key_value) }),
        ("ArrayOfProfileAssociatedEvent", TypeInfo::Value { name: "ArrayOfProfileAssociatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_profile_associated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_profile_associated_event) }),
        ("OvfNetworkMappingNotSupported", TypeInfo::Object { name: "OvfNetworkMappingNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfNetworkMappingNotSupported))) }),
        ("ArrayOfVirtualDiskAntiAffinityRuleSpec", TypeInfo::Value { name: "ArrayOfVirtualDiskAntiAffinityRuleSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskAntiAffinityRuleSpec>>(wrap_array_of_virtual_disk_anti_affinity_rule_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskAntiAffinityRuleSpec>>(v, wrap_array_of_virtual_disk_anti_affinity_rule_spec) }),
        ("ArrayOfVirtualParallelPortDeviceBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualParallelPortDeviceBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualParallelPortDeviceBackingInfo>>(wrap_array_of_virtual_parallel_port_device_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualParallelPortDeviceBackingInfo>>(v, wrap_array_of_virtual_parallel_port_device_backing_info) }),
        ("VmMigratedEvent", TypeInfo::Object { name: "VmMigratedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmMigratedEvent))) }),
        ("HostPtpConfigPtpPort", TypeInfo::Object { name: "HostPtpConfigPtpPort", builder_fn: || Box::new(HostPtpConfigPtpPortFields::new()) }),
        ("ServerLicenseExpiredEvent", TypeInfo::Object { name: "ServerLicenseExpiredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ServerLicenseExpiredEvent))) }),
        ("ProfilePolicy", TypeInfo::Object { name: "ProfilePolicy", builder_fn: || Box::new(ProfilePolicyFields::new()) }),
        ("ArrayOfToolsUpgradeCancelled", TypeInfo::Value { name: "ArrayOfToolsUpgradeCancelled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_tools_upgrade_cancelled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_tools_upgrade_cancelled) }),
        ("TraversalSpec", TypeInfo::Object { name: "TraversalSpec", builder_fn: || Box::new(TraversalSpecFields::new()) }),
        ("ArrayOfInvalidAgencyScope", TypeInfo::Value { name: "ArrayOfInvalidAgencyScope", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_agency_scope), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_agency_scope) }),
        ("HostIpRouteOp", TypeInfo::Object { name: "HostIpRouteOp", builder_fn: || Box::new(HostIpRouteOpFields::new()) }),
        ("HostShortNameInconsistentEvent", TypeInfo::Object { name: "HostShortNameInconsistentEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostShortNameInconsistentEvent))) }),
        ("HostProfilesEntityCustomizations", TypeInfo::Object { name: "HostProfilesEntityCustomizations", builder_fn: || Box::new(HostProfilesEntityCustomizationsFields::new()) }),
        ("VirtualDiskAntiAffinityRuleSpec", TypeInfo::Object { name: "VirtualDiskAntiAffinityRuleSpec", builder_fn: || Box::new(VirtualDiskAntiAffinityRuleSpecFields::new()) }),
        ("CustomizationStatelessIpV6Generator", TypeInfo::Object { name: "CustomizationStatelessIpV6Generator", builder_fn: || Box::new(CustomizationStatelessIpV6GeneratorFields::new()) }),
        ("ArrayOfVirtualMachineEmptyProfileSpec", TypeInfo::Value { name: "ArrayOfVirtualMachineEmptyProfileSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineEmptyProfileSpec>>(wrap_array_of_virtual_machine_empty_profile_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineEmptyProfileSpec>>(v, wrap_array_of_virtual_machine_empty_profile_spec) }),
        ("ArrayOfCnsQueryResult", TypeInfo::Value { name: "ArrayOfCnsQueryResult", make_deserializer: || make_deser_with::<Vec<super::structs::CnsQueryResult>>(wrap_array_of_cns_query_result), from_value: |v| from_val_with::<Vec<super::structs::CnsQueryResult>>(v, wrap_array_of_cns_query_result) }),
        ("VspanPromiscuousPortNotSupported", TypeInfo::Object { name: "VspanPromiscuousPortNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VspanPromiscuousPortNotSupported))) }),
        ("VirtualSerialPortFileBackingOption", TypeInfo::Object { name: "VirtualSerialPortFileBackingOption", builder_fn: || Box::new(VirtualSerialPortFileBackingOptionFields::new()) }),
        ("ProfileParameterMetadataParameterRelationMetadata", TypeInfo::Object { name: "ProfileParameterMetadataParameterRelationMetadata", builder_fn: || Box::new(ProfileParameterMetadataParameterRelationMetadataFields::new()) }),
        ("FileAlreadyExists", TypeInfo::Object { name: "FileAlreadyExists", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FileAlreadyExists))) }),
        ("HostPciPassthruConfig", TypeInfo::Object { name: "HostPciPassthruConfig", builder_fn: || Box::new(HostPciPassthruConfigFields::new()) }),
        ("LifecyclePreCheckResult", TypeInfo::Object { name: "LifecyclePreCheckResult", builder_fn: || Box::new(LifecyclePreCheckResultFields::new()) }),
        ("VASAStorageArrayDiscoverySvcInfo", TypeInfo::Object { name: "VASAStorageArrayDiscoverySvcInfo", builder_fn: || Box::new(VasaStorageArrayDiscoverySvcInfoFields::new()) }),
        ("HostCnxFailedBadCcagentEvent", TypeInfo::Object { name: "HostCnxFailedBadCcagentEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostCnxFailedBadCcagentEvent))) }),
        ("StorageDrsSpaceLoadBalanceConfig", TypeInfo::Object { name: "StorageDrsSpaceLoadBalanceConfig", builder_fn: || Box::new(StorageDrsSpaceLoadBalanceConfigFields::new()) }),
        ("DistributedVirtualSwitchManagerHostContainer", TypeInfo::Object { name: "DistributedVirtualSwitchManagerHostContainer", builder_fn: || Box::new(DistributedVirtualSwitchManagerHostContainerFields::new()) }),
        ("ArrayOfTaskInfo", TypeInfo::Value { name: "ArrayOfTaskInfo", make_deserializer: || make_deser_with::<Vec<super::structs::TaskInfo>>(wrap_array_of_task_info), from_value: |v| from_val_with::<Vec<super::structs::TaskInfo>>(v, wrap_array_of_task_info) }),
        ("ArrayOfVmConfigInfo", TypeInfo::Value { name: "ArrayOfVmConfigInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vm_config_info_array)), from_value: |v| cast_to_vm_config_info_array(from_value(v)?) }),
        ("ArrayOfStorageDrsConfigInfo", TypeInfo::Value { name: "ArrayOfStorageDrsConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsConfigInfo>>(wrap_array_of_storage_drs_config_info), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsConfigInfo>>(v, wrap_array_of_storage_drs_config_info) }),
        ("NoValidReplica", TypeInfo::Object { name: "NoValidReplica", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoValidReplica))) }),
        ("VirtualMachineVirtualDeviceGroups", TypeInfo::Object { name: "VirtualMachineVirtualDeviceGroups", builder_fn: || Box::new(VirtualMachineVirtualDeviceGroupsFields::new()) }),
        ("ArrayOfTeamingMatchEvent", TypeInfo::Value { name: "ArrayOfTeamingMatchEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_teaming_match_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_teaming_match_event) }),
        ("ExitMaintenanceModeEvent", TypeInfo::Object { name: "ExitMaintenanceModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ExitMaintenanceModeEvent))) }),
        ("ArrayOfInsufficientHostCapacityFault", TypeInfo::Value { name: "ArrayOfInsufficientHostCapacityFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_host_capacity_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_host_capacity_fault) }),
        ("VirtualMachineVirtualDeviceSwapDeviceSwapInfo", TypeInfo::Object { name: "VirtualMachineVirtualDeviceSwapDeviceSwapInfo", builder_fn: || Box::new(VirtualMachineVirtualDeviceSwapDeviceSwapInfoFields::new()) }),
        ("ArrayOfPerfQuerySpec", TypeInfo::Value { name: "ArrayOfPerfQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::PerfQuerySpec>>(wrap_array_of_perf_query_spec), from_value: |v| from_val_with::<Vec<super::structs::PerfQuerySpec>>(v, wrap_array_of_perf_query_spec) }),
        ("MigrationHostErrorEvent", TypeInfo::Object { name: "MigrationHostErrorEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::MigrationHostErrorEvent))) }),
        ("ArrayOfCnsFault", TypeInfo::Value { name: "ArrayOfCnsFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cns_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cns_fault) }),
        ("VirtualWDTOption", TypeInfo::Object { name: "VirtualWDTOption", builder_fn: || Box::new(VirtualWdtOptionFields::new()) }),
        ("VsanHclMinFwConstraint", TypeInfo::Object { name: "VsanHclMinFwConstraint", builder_fn: || Box::new(VsanHclMinFwConstraintFields::new()) }),
        ("ArrayOfOutOfBounds", TypeInfo::Value { name: "ArrayOfOutOfBounds", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_out_of_bounds), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_out_of_bounds) }),
        ("ArrayOfStorageDrsHmsMoveInProgress", TypeInfo::Value { name: "ArrayOfStorageDrsHmsMoveInProgress", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_hms_move_in_progress), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_hms_move_in_progress) }),
        ("ArrayOfEamInvalidUrl", TypeInfo::Value { name: "ArrayOfEamInvalidUrl", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_eam_invalid_url), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_eam_invalid_url) }),
        ("ArrayOfHostConnectedEvent", TypeInfo::Value { name: "ArrayOfHostConnectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_connected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_connected_event) }),
        ("VsanPerfDiagnosticResult", TypeInfo::Object { name: "VsanPerfDiagnosticResult", builder_fn: || Box::new(VsanPerfDiagnosticResultFields::new()) }),
        ("ArrayOfProviderRegistrationFault", TypeInfo::Value { name: "ArrayOfProviderRegistrationFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_provider_registration_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_provider_registration_fault) }),
        ("VsanObjectExtraAttributes", TypeInfo::Object { name: "VsanObjectExtraAttributes", builder_fn: || Box::new(VsanObjectExtraAttributesFields::new()) }),
        ("DVPortgroupEvent", TypeInfo::Object { name: "DVPortgroupEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvPortgroupEvent))) }),
        ("NASDatastoreCreatedEvent", TypeInfo::Object { name: "NASDatastoreCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::NasDatastoreCreatedEvent))) }),
        ("VmWrongFolder", TypeInfo::Object { name: "VmWrongFolder", builder_fn: || Box::new(VmWrongFolderFields::new()) }),
        ("ArrayOfPbmFaultInvalidLogin", TypeInfo::Value { name: "ArrayOfPbmFaultInvalidLogin", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_fault_invalid_login), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_fault_invalid_login) }),
        ("DVPortgroupDestroyedEvent", TypeInfo::Object { name: "DVPortgroupDestroyedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvPortgroupDestroyedEvent))) }),
        ("ClusterSlotPolicy", TypeInfo::Object { name: "ClusterSlotPolicy", builder_fn: || Box::new(ClusterSlotPolicyFields::new()) }),
        ("ArrayOfVirtualMachineSummary", TypeInfo::Value { name: "ArrayOfVirtualMachineSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineSummary>>(wrap_array_of_virtual_machine_summary), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineSummary>>(v, wrap_array_of_virtual_machine_summary) }),
        ("ArrayOfHostTpmBootSecurityOptionEventDetails", TypeInfo::Value { name: "ArrayOfHostTpmBootSecurityOptionEventDetails", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_tpm_boot_security_option_event_details_array)), from_value: |v| cast_to_host_tpm_boot_security_option_event_details_array(from_value(v)?) }),
        ("ArrayOfVMwareUplinkLacpPolicy", TypeInfo::Value { name: "ArrayOfVMwareUplinkLacpPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareUplinkLacpPolicy>>(wrap_array_of_v_mware_uplink_lacp_policy), from_value: |v| from_val_with::<Vec<super::structs::VMwareUplinkLacpPolicy>>(v, wrap_array_of_v_mware_uplink_lacp_policy) }),
        ("ArrayOfDvpgImportEvent", TypeInfo::Value { name: "ArrayOfDvpgImportEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvpg_import_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvpg_import_event) }),
        ("ArrayOfCnsVolumeAttachDetachSpec", TypeInfo::Value { name: "ArrayOfCnsVolumeAttachDetachSpec", make_deserializer: || make_deser_with::<Vec<super::structs::CnsVolumeAttachDetachSpec>>(wrap_array_of_cns_volume_attach_detach_spec), from_value: |v| from_val_with::<Vec<super::structs::CnsVolumeAttachDetachSpec>>(v, wrap_array_of_cns_volume_attach_detach_spec) }),
        ("HostNvmeNamespace", TypeInfo::Object { name: "HostNvmeNamespace", builder_fn: || Box::new(HostNvmeNamespaceFields::new()) }),
        ("ArrayOfDeltaDiskFormatNotSupported", TypeInfo::Value { name: "ArrayOfDeltaDiskFormatNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_delta_disk_format_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_delta_disk_format_not_supported) }),
        ("ArrayOfHostNetOffloadCapabilities", TypeInfo::Value { name: "ArrayOfHostNetOffloadCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetOffloadCapabilities>>(wrap_array_of_host_net_offload_capabilities), from_value: |v| from_val_with::<Vec<super::structs::HostNetOffloadCapabilities>>(v, wrap_array_of_host_net_offload_capabilities) }),
        ("ArrayOfCannotDisableSnapshot", TypeInfo::Value { name: "ArrayOfCannotDisableSnapshot", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_disable_snapshot), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_disable_snapshot) }),
        ("ArrayOfVmFailedUpdatingSecondaryConfig", TypeInfo::Value { name: "ArrayOfVmFailedUpdatingSecondaryConfig", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_updating_secondary_config), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_updating_secondary_config) }),
        ("IscsiFaultVnicHasWrongUplink", TypeInfo::Object { name: "IscsiFaultVnicHasWrongUplink", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultVnicHasWrongUplink))) }),
        ("BoolOption", TypeInfo::Object { name: "BoolOption", builder_fn: || Box::new(BoolOptionFields::new()) }),
        ("ArrayOfNasStorageProfile", TypeInfo::Value { name: "ArrayOfNasStorageProfile", make_deserializer: || make_deser_with::<Vec<super::structs::NasStorageProfile>>(wrap_array_of_nas_storage_profile), from_value: |v| from_val_with::<Vec<super::structs::NasStorageProfile>>(v, wrap_array_of_nas_storage_profile) }),
        ("CnsSnapshotNotFoundFault", TypeInfo::Object { name: "CnsSnapshotNotFoundFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CnsSnapshotNotFoundFault))) }),
        ("ArrayOfDrsDisabledOnVm", TypeInfo::Value { name: "ArrayOfDrsDisabledOnVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_drs_disabled_on_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_drs_disabled_on_vm) }),
        ("ArrayOfVsanNetworkConfigVsanNotOnVdsIssue", TypeInfo::Value { name: "ArrayOfVsanNetworkConfigVsanNotOnVdsIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkConfigVsanNotOnVdsIssue>>(wrap_array_of_vsan_network_config_vsan_not_on_vds_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkConfigVsanNotOnVdsIssue>>(v, wrap_array_of_vsan_network_config_vsan_not_on_vds_issue) }),
        ("ArrayOfVsanUnmapConfig", TypeInfo::Value { name: "ArrayOfVsanUnmapConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUnmapConfig>>(wrap_array_of_vsan_unmap_config), from_value: |v| from_val_with::<Vec<super::structs::VsanUnmapConfig>>(v, wrap_array_of_vsan_unmap_config) }),
        ("CustomizationPrefixName", TypeInfo::Object { name: "CustomizationPrefixName", builder_fn: || Box::new(CustomizationPrefixNameFields::new()) }),
        ("ArrayOfVirtualMachineVideoCard", TypeInfo::Value { name: "ArrayOfVirtualMachineVideoCard", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVideoCard>>(wrap_array_of_virtual_machine_video_card), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVideoCard>>(v, wrap_array_of_virtual_machine_video_card) }),
        ("ArrayOfOvfConsumerInvalidSection", TypeInfo::Value { name: "ArrayOfOvfConsumerInvalidSection", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_consumer_invalid_section), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_consumer_invalid_section) }),
        ("ArrayOfVmBeingClonedNoFolderEvent", TypeInfo::Value { name: "ArrayOfVmBeingClonedNoFolderEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_being_cloned_no_folder_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_being_cloned_no_folder_event) }),
        ("HostInternetScsiHbaParamValue", TypeInfo::Object { name: "HostInternetScsiHbaParamValue", builder_fn: || Box::new(HostInternetScsiHbaParamValueFields::new()) }),
        ("ArrayOfVslmVsoVStorageObjectAssociations", TypeInfo::Value { name: "ArrayOfVslmVsoVStorageObjectAssociations", make_deserializer: || make_deser_with::<Vec<super::structs::VslmVsoVStorageObjectAssociations>>(wrap_array_of_vslm_vso_v_storage_object_associations), from_value: |v| from_val_with::<Vec<super::structs::VslmVsoVStorageObjectAssociations>>(v, wrap_array_of_vslm_vso_v_storage_object_associations) }),
        ("PointInTimeReplicaId", TypeInfo::Object { name: "PointInTimeReplicaId", builder_fn: || Box::new(PointInTimeReplicaIdFields::new()) }),
        ("ArrayOfMtuMatchEvent", TypeInfo::Value { name: "ArrayOfMtuMatchEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_mtu_match_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_mtu_match_event) }),
        ("ArrayOfEventDescriptionEventDetail", TypeInfo::Value { name: "ArrayOfEventDescriptionEventDetail", make_deserializer: || make_deser_with::<Vec<super::structs::EventDescriptionEventDetail>>(wrap_array_of_event_description_event_detail), from_value: |v| from_val_with::<Vec<super::structs::EventDescriptionEventDetail>>(v, wrap_array_of_event_description_event_detail) }),
        ("AnswerFileOptionsCreateSpec", TypeInfo::Object { name: "AnswerFileOptionsCreateSpec", builder_fn: || Box::new(AnswerFileOptionsCreateSpecFields::new()) }),
        ("HostNewNetworkConnectInfo", TypeInfo::Object { name: "HostNewNetworkConnectInfo", builder_fn: || Box::new(HostNewNetworkConnectInfoFields::new()) }),
        ("VibCannotPutHostInMaintenanceMode", TypeInfo::Object { name: "VibCannotPutHostInMaintenanceMode", builder_fn: || Box::new(VibCannotPutHostInMaintenanceModeFields::new()) }),
        ("ArrayOfGatewayConnectFault", TypeInfo::Value { name: "ArrayOfGatewayConnectFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_gateway_connect_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_gateway_connect_fault) }),
        ("ArrayOfVsanHclQuerySpec", TypeInfo::Value { name: "ArrayOfVsanHclQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclQuerySpec>>(wrap_array_of_vsan_hcl_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanHclQuerySpec>>(v, wrap_array_of_vsan_hcl_query_spec) }),
        ("VmRelocateFailedEvent", TypeInfo::Object { name: "VmRelocateFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRelocateFailedEvent))) }),
        ("ArrayOfBaseConfigInfoBackingInfo", TypeInfo::Value { name: "ArrayOfBaseConfigInfoBackingInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_base_config_info_backing_info_array)), from_value: |v| cast_to_base_config_info_backing_info_array(from_value(v)?) }),
        ("CannotAddHostWithFTVmToDifferentCluster", TypeInfo::Object { name: "CannotAddHostWithFTVmToDifferentCluster", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotAddHostWithFtVmToDifferentCluster))) }),
        ("ArrayOfOvfConstraint", TypeInfo::Value { name: "ArrayOfOvfConstraint", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_constraint), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_constraint) }),
        ("ArrayOfCustomizationFailed", TypeInfo::Value { name: "ArrayOfCustomizationFailed", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_customization_failed), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_customization_failed) }),
        ("HostSnmpAgentCapability", TypeInfo::Value { name: "HostSnmpAgentCapability", make_deserializer: || make_deser_with::<super::enums::HostSnmpAgentCapabilityEnum>(wrap_host_snmp_agent_capability), from_value: |v| from_val_with::<super::enums::HostSnmpAgentCapabilityEnum>(v, wrap_host_snmp_agent_capability) }),
        ("ArrayOfGuestRegValueStringSpec", TypeInfo::Value { name: "ArrayOfGuestRegValueStringSpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegValueStringSpec>>(wrap_array_of_guest_reg_value_string_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegValueStringSpec>>(v, wrap_array_of_guest_reg_value_string_spec) }),
        ("ArrayOfVsanBurnInTest", TypeInfo::Value { name: "ArrayOfVsanBurnInTest", make_deserializer: || make_deser_with::<Vec<super::structs::VsanBurnInTest>>(wrap_array_of_vsan_burn_in_test), from_value: |v| from_val_with::<Vec<super::structs::VsanBurnInTest>>(v, wrap_array_of_vsan_burn_in_test) }),
        ("DisabledClusterFault", TypeInfo::Object { name: "DisabledClusterFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DisabledClusterFault))) }),
        ("HostBlockAdapterTargetTransport", TypeInfo::Object { name: "HostBlockAdapterTargetTransport", builder_fn: || Box::new(HostBlockAdapterTargetTransportFields::new()) }),
        ("ArrayOfModeInfo", TypeInfo::Value { name: "ArrayOfModeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ModeInfo>>(wrap_array_of_mode_info), from_value: |v| from_val_with::<Vec<super::structs::ModeInfo>>(v, wrap_array_of_mode_info) }),
        ("FtIssuesOnHostHostSelectionType", TypeInfo::Value { name: "FtIssuesOnHostHostSelectionType", make_deserializer: || make_deser_with::<super::enums::FtIssuesOnHostHostSelectionTypeEnum>(wrap_ft_issues_on_host_host_selection_type), from_value: |v| from_val_with::<super::enums::FtIssuesOnHostHostSelectionTypeEnum>(v, wrap_ft_issues_on_host_host_selection_type) }),
        ("HostCpuPackage", TypeInfo::Object { name: "HostCpuPackage", builder_fn: || Box::new(HostCpuPackageFields::new()) }),
        ("ResourceAllocationInfo", TypeInfo::Object { name: "ResourceAllocationInfo", builder_fn: || Box::new(ResourceAllocationInfoFields::new()) }),
        ("ArrayOfNoCustomAgentVmDatastore", TypeInfo::Value { name: "ArrayOfNoCustomAgentVmDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::NoCustomAgentVmDatastore>>(wrap_array_of_no_custom_agent_vm_datastore), from_value: |v| from_val_with::<Vec<super::structs::NoCustomAgentVmDatastore>>(v, wrap_array_of_no_custom_agent_vm_datastore) }),
        ("ArrayOfVsanIOLatencyMetrics", TypeInfo::Value { name: "ArrayOfVsanIOLatencyMetrics", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoLatencyMetrics>>(wrap_array_of_vsan_io_latency_metrics), from_value: |v| from_val_with::<Vec<super::structs::VsanIoLatencyMetrics>>(v, wrap_array_of_vsan_io_latency_metrics) }),
        ("VsanRemoteClusterNotCompatible", TypeInfo::Object { name: "VsanRemoteClusterNotCompatible", builder_fn: || Box::new(VsanRemoteClusterNotCompatibleFields::new()) }),
        ("VirtualParallelPortDeviceBackingInfo", TypeInfo::Object { name: "VirtualParallelPortDeviceBackingInfo", builder_fn: || Box::new(VirtualParallelPortDeviceBackingInfoFields::new()) }),
        ("ArrayOfCnsSnapshotVolumeSource", TypeInfo::Value { name: "ArrayOfCnsSnapshotVolumeSource", make_deserializer: || make_deser_with::<Vec<super::structs::CnsSnapshotVolumeSource>>(wrap_array_of_cns_snapshot_volume_source), from_value: |v| from_val_with::<Vec<super::structs::CnsSnapshotVolumeSource>>(v, wrap_array_of_cns_snapshot_volume_source) }),
        ("StorageDrsCannotMoveVmWithMountedCDROM", TypeInfo::Object { name: "StorageDrsCannotMoveVmWithMountedCDROM", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsCannotMoveVmWithMountedCdrom))) }),
        ("ArrayOfPbmNonExistentHubs", TypeInfo::Value { name: "ArrayOfPbmNonExistentHubs", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_non_existent_hubs), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_non_existent_hubs) }),
        ("ClusterDasHostInfo", TypeInfo::Object { name: "ClusterDasHostInfo", builder_fn: || Box::new(ClusterDasHostInfoFields::new()) }),
        ("ArrayOfHostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult", TypeInfo::Value { name: "ArrayOfHostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult>>(wrap_array_of_host_vsan_internal_system_vsan_physical_disk_diagnostics_result), from_value: |v| from_val_with::<Vec<super::structs::HostVsanInternalSystemVsanPhysicalDiskDiagnosticsResult>>(v, wrap_array_of_host_vsan_internal_system_vsan_physical_disk_diagnostics_result) }),
        ("ArrayOfVmStaticMacConflictEvent", TypeInfo::Value { name: "ArrayOfVmStaticMacConflictEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_static_mac_conflict_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_static_mac_conflict_event) }),
        ("ArrayOfVsanHostServerClusterUnicastConfig", TypeInfo::Value { name: "ArrayOfVsanHostServerClusterUnicastConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostServerClusterUnicastConfig>>(wrap_array_of_vsan_host_server_cluster_unicast_config), from_value: |v| from_val_with::<Vec<super::structs::VsanHostServerClusterUnicastConfig>>(v, wrap_array_of_vsan_host_server_cluster_unicast_config) }),
        ("ArrayOfSsdDiskNotAvailable", TypeInfo::Value { name: "ArrayOfSsdDiskNotAvailable", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ssd_disk_not_available), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ssd_disk_not_available) }),
        ("FailoverParam", TypeInfo::Object { name: "FailoverParam", builder_fn: || Box::new(FailoverParamFields::new()) }),
        ("ProfileExpressionMetadata", TypeInfo::Object { name: "ProfileExpressionMetadata", builder_fn: || Box::new(ProfileExpressionMetadataFields::new()) }),
        ("ArrayOfVchaClusterHealth", TypeInfo::Value { name: "ArrayOfVchaClusterHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VchaClusterHealth>>(wrap_array_of_vcha_cluster_health), from_value: |v| from_val_with::<Vec<super::structs::VchaClusterHealth>>(v, wrap_array_of_vcha_cluster_health) }),
        ("ResourcePoolSummary", TypeInfo::Object { name: "ResourcePoolSummary", builder_fn: || Box::new(ResourcePoolSummaryFields::new()) }),
        ("ArrayOfProductComponentInfo", TypeInfo::Value { name: "ArrayOfProductComponentInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ProductComponentInfo>>(wrap_array_of_product_component_info), from_value: |v| from_val_with::<Vec<super::structs::ProductComponentInfo>>(v, wrap_array_of_product_component_info) }),
        ("IpRange", TypeInfo::Object { name: "IpRange", builder_fn: || Box::new(IpRangeFields::new()) }),
        ("ArrayOfVimClusterVsanDiskMappingsConfigSpec", TypeInfo::Value { name: "ArrayOfVimClusterVsanDiskMappingsConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VimClusterVsanDiskMappingsConfigSpec>>(wrap_array_of_vim_cluster_vsan_disk_mappings_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VimClusterVsanDiskMappingsConfigSpec>>(v, wrap_array_of_vim_cluster_vsan_disk_mappings_config_spec) }),
        ("VirtualPCIPassthroughDeviceBackingInfo", TypeInfo::Object { name: "VirtualPCIPassthroughDeviceBackingInfo", builder_fn: || Box::new(VirtualPciPassthroughDeviceBackingInfoFields::new()) }),
        ("ArrayOfVirtualDiskLocalPMemBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDiskLocalPMemBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskLocalPMemBackingInfo>>(wrap_array_of_virtual_disk_local_p_mem_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskLocalPMemBackingInfo>>(v, wrap_array_of_virtual_disk_local_p_mem_backing_info) }),
        ("ArrayOfHostTpmOptionEventDetails", TypeInfo::Value { name: "ArrayOfHostTpmOptionEventDetails", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmOptionEventDetails>>(wrap_array_of_host_tpm_option_event_details), from_value: |v| from_val_with::<Vec<super::structs::HostTpmOptionEventDetails>>(v, wrap_array_of_host_tpm_option_event_details) }),
        ("ArrayOfVsanXVCDatastoreConfig", TypeInfo::Value { name: "ArrayOfVsanXVCDatastoreConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcDatastoreConfig>>(wrap_array_of_vsan_xvc_datastore_config), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcDatastoreConfig>>(v, wrap_array_of_vsan_xvc_datastore_config) }),
        ("HostEnterMaintenanceResult", TypeInfo::Object { name: "HostEnterMaintenanceResult", builder_fn: || Box::new(HostEnterMaintenanceResultFields::new()) }),
        ("ArrayOfHostNonCompliantEvent", TypeInfo::Value { name: "ArrayOfHostNonCompliantEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_non_compliant_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_non_compliant_event) }),
        ("VsanResourceCheckComponentResult", TypeInfo::Object { name: "VsanResourceCheckComponentResult", builder_fn: || Box::new(VsanResourceCheckComponentResultFields::new()) }),
        ("ArrayOfHostCpuIdInfo", TypeInfo::Value { name: "ArrayOfHostCpuIdInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostCpuIdInfo>>(wrap_array_of_host_cpu_id_info), from_value: |v| from_val_with::<Vec<super::structs::HostCpuIdInfo>>(v, wrap_array_of_host_cpu_id_info) }),
        ("ArrayOfIntegrityAgencyCannotDeleteSoftware", TypeInfo::Value { name: "ArrayOfIntegrityAgencyCannotDeleteSoftware", make_deserializer: || make_deser_with::<Vec<super::structs::IntegrityAgencyCannotDeleteSoftware>>(wrap_array_of_integrity_agency_cannot_delete_software), from_value: |v| from_val_with::<Vec<super::structs::IntegrityAgencyCannotDeleteSoftware>>(v, wrap_array_of_integrity_agency_cannot_delete_software) }),
        ("ArrayOfApplicationQuiesceFault", TypeInfo::Value { name: "ArrayOfApplicationQuiesceFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_application_quiesce_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_application_quiesce_fault) }),
        ("ArrayOfVirtualMachineProfileDetails", TypeInfo::Value { name: "ArrayOfVirtualMachineProfileDetails", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineProfileDetails>>(wrap_array_of_virtual_machine_profile_details), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineProfileDetails>>(v, wrap_array_of_virtual_machine_profile_details) }),
        ("VmReloadFromPathEvent", TypeInfo::Object { name: "VmReloadFromPathEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmReloadFromPathEvent))) }),
        ("ReplicationTargetInfo", TypeInfo::Object { name: "ReplicationTargetInfo", builder_fn: || Box::new(ReplicationTargetInfoFields::new()) }),
        ("VirtualCdrom", TypeInfo::Object { name: "VirtualCdrom", builder_fn: || Box::new(VirtualCdromFields::new()) }),
        ("ArrayOfIntExpression", TypeInfo::Value { name: "ArrayOfIntExpression", make_deserializer: || make_deser_with::<Vec<super::structs::IntExpression>>(wrap_array_of_int_expression), from_value: |v| from_val_with::<Vec<super::structs::IntExpression>>(v, wrap_array_of_int_expression) }),
        ("IscsiFaultInvalidVnic", TypeInfo::Object { name: "IscsiFaultInvalidVnic", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultInvalidVnic))) }),
        ("AuthorizationPrivilege", TypeInfo::Object { name: "AuthorizationPrivilege", builder_fn: || Box::new(AuthorizationPrivilegeFields::new()) }),
        ("LocalLicenseSource", TypeInfo::Object { name: "LocalLicenseSource", builder_fn: || Box::new(LocalLicenseSourceFields::new()) }),
        ("ArrayOfDvsCopyNetworkRuleAction", TypeInfo::Value { name: "ArrayOfDvsCopyNetworkRuleAction", make_deserializer: || make_deser_with::<Vec<super::structs::DvsCopyNetworkRuleAction>>(wrap_array_of_dvs_copy_network_rule_action), from_value: |v| from_val_with::<Vec<super::structs::DvsCopyNetworkRuleAction>>(v, wrap_array_of_dvs_copy_network_rule_action) }),
        ("ArrayOfProfilePolicyOptionMetadata", TypeInfo::Value { name: "ArrayOfProfilePolicyOptionMetadata", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_profile_policy_option_metadata_array)), from_value: |v| cast_to_profile_policy_option_metadata_array(from_value(v)?) }),
        ("ArrayOfHAErrorsAtDest", TypeInfo::Value { name: "ArrayOfHAErrorsAtDest", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ha_errors_at_dest), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ha_errors_at_dest) }),
        ("VsanUpgradeSystemUpgradeHistoryItem", TypeInfo::Object { name: "VsanUpgradeSystemUpgradeHistoryItem", builder_fn: || Box::new(VsanUpgradeSystemUpgradeHistoryItemFields::new()) }),
        ("ArrayOfNasVolumeNotMounted", TypeInfo::Value { name: "ArrayOfNasVolumeNotMounted", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_nas_volume_not_mounted), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_nas_volume_not_mounted) }),
        ("HostInternetScsiHbaStaticTarget", TypeInfo::Object { name: "HostInternetScsiHbaStaticTarget", builder_fn: || Box::new(HostInternetScsiHbaStaticTargetFields::new()) }),
        ("CustomizationName", TypeInfo::Object { name: "CustomizationName", builder_fn: || Box::new(CustomizationNameFields::new()) }),
        ("NetIpConfigSpecIpAddressSpec", TypeInfo::Object { name: "NetIpConfigSpecIpAddressSpec", builder_fn: || Box::new(NetIpConfigSpecIpAddressSpecFields::new()) }),
        ("InsufficientAgentVmsDeployed", TypeInfo::Object { name: "InsufficientAgentVmsDeployed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InsufficientAgentVmsDeployed))) }),
        ("DeviceId", TypeInfo::Object { name: "DeviceId", builder_fn: || Box::new(DeviceIdFields::new()) }),
        ("VsanVumConfig", TypeInfo::Object { name: "VsanVumConfig", builder_fn: || Box::new(VsanVumConfigFields::new()) }),
        ("ArrayOfVmwareDistributedVirtualSwitchRealTimeConfig", TypeInfo::Value { name: "ArrayOfVmwareDistributedVirtualSwitchRealTimeConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VmwareDistributedVirtualSwitchRealTimeConfig>>(wrap_array_of_vmware_distributed_virtual_switch_real_time_config), from_value: |v| from_val_with::<Vec<super::structs::VmwareDistributedVirtualSwitchRealTimeConfig>>(v, wrap_array_of_vmware_distributed_virtual_switch_real_time_config) }),
        ("ArrayOfInsufficientIpAddresses", TypeInfo::Value { name: "ArrayOfInsufficientIpAddresses", make_deserializer: || make_deser_with::<Vec<super::structs::InsufficientIpAddresses>>(wrap_array_of_insufficient_ip_addresses), from_value: |v| from_val_with::<Vec<super::structs::InsufficientIpAddresses>>(v, wrap_array_of_insufficient_ip_addresses) }),
        ("ArrayOfHostInAuditModeEvent", TypeInfo::Value { name: "ArrayOfHostInAuditModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_in_audit_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_in_audit_mode_event) }),
        ("VsanHostNodeState", TypeInfo::Value { name: "VsanHostNodeState", make_deserializer: || make_deser_with::<super::enums::VsanHostNodeStateEnum>(wrap_vsan_host_node_state), from_value: |v| from_val_with::<super::enums::VsanHostNodeStateEnum>(v, wrap_vsan_host_node_state) }),
        ("AlarmAcknowledgedEvent", TypeInfo::Object { name: "AlarmAcknowledgedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmAcknowledgedEvent))) }),
        ("VsanUpgradeSystemRogueHostsInClusterIssue", TypeInfo::Object { name: "VsanUpgradeSystemRogueHostsInClusterIssue", builder_fn: || Box::new(VsanUpgradeSystemRogueHostsInClusterIssueFields::new()) }),
        ("NoConnectedDatastore", TypeInfo::Object { name: "NoConnectedDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoConnectedDatastore))) }),
        ("HostIpConfig", TypeInfo::Object { name: "HostIpConfig", builder_fn: || Box::new(HostIpConfigFields::new()) }),
        ("InvalidDeviceBacking", TypeInfo::Object { name: "InvalidDeviceBacking", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidDeviceBacking))) }),
        ("LicenseServerSource", TypeInfo::Object { name: "LicenseServerSource", builder_fn: || Box::new(LicenseServerSourceFields::new()) }),
        ("ArrayOfDisconnectedHostsBlockingEVC", TypeInfo::Value { name: "ArrayOfDisconnectedHostsBlockingEVC", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disconnected_hosts_blocking_evc), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disconnected_hosts_blocking_evc) }),
        ("DvsLogNetworkRuleAction", TypeInfo::Object { name: "DvsLogNetworkRuleAction", builder_fn: || Box::new(DvsLogNetworkRuleActionFields::new()) }),
        ("ArrayOfAnswerFile", TypeInfo::Value { name: "ArrayOfAnswerFile", make_deserializer: || make_deser_with::<Vec<super::structs::AnswerFile>>(wrap_array_of_answer_file), from_value: |v| from_val_with::<Vec<super::structs::AnswerFile>>(v, wrap_array_of_answer_file) }),
        ("ArrayOfVslmAboutInfo", TypeInfo::Value { name: "ArrayOfVslmAboutInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VslmAboutInfo>>(wrap_array_of_vslm_about_info), from_value: |v| from_val_with::<Vec<super::structs::VslmAboutInfo>>(v, wrap_array_of_vslm_about_info) }),
        ("ArrayOfHostScsiTopologyLun", TypeInfo::Value { name: "ArrayOfHostScsiTopologyLun", make_deserializer: || make_deser_with::<Vec<super::structs::HostScsiTopologyLun>>(wrap_array_of_host_scsi_topology_lun), from_value: |v| from_val_with::<Vec<super::structs::HostScsiTopologyLun>>(v, wrap_array_of_host_scsi_topology_lun) }),
        ("ArrayOfVMwareDVSPortSetting", TypeInfo::Value { name: "ArrayOfVMwareDVSPortSetting", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsPortSetting>>(wrap_array_of_v_mware_dvs_port_setting), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsPortSetting>>(v, wrap_array_of_v_mware_dvs_port_setting) }),
        ("DistributedVirtualSwitchInfo", TypeInfo::Object { name: "DistributedVirtualSwitchInfo", builder_fn: || Box::new(DistributedVirtualSwitchInfoFields::new()) }),
        ("ServiceLocatorSAMLCredential", TypeInfo::Object { name: "ServiceLocatorSAMLCredential", builder_fn: || Box::new(ServiceLocatorSamlCredentialFields::new()) }),
        ("HostPortGroup", TypeInfo::Object { name: "HostPortGroup", builder_fn: || Box::new(HostPortGroupFields::new()) }),
        ("VmRelayoutUpToDateEvent", TypeInfo::Object { name: "VmRelayoutUpToDateEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRelayoutUpToDateEvent))) }),
        ("PortGroupProfile", TypeInfo::Object { name: "PortGroupProfile", builder_fn: || Box::new(PortGroupProfileFields::new()) }),
        ("ArrayOfBackingStoragePool", TypeInfo::Value { name: "ArrayOfBackingStoragePool", make_deserializer: || make_deser_with::<Vec<super::structs::BackingStoragePool>>(wrap_array_of_backing_storage_pool), from_value: |v| from_val_with::<Vec<super::structs::BackingStoragePool>>(v, wrap_array_of_backing_storage_pool) }),
        ("ArrayOfMismatchedBundle", TypeInfo::Value { name: "ArrayOfMismatchedBundle", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_mismatched_bundle), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_mismatched_bundle) }),
        ("DasAdmissionControlDisabledEvent", TypeInfo::Object { name: "DasAdmissionControlDisabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DasAdmissionControlDisabledEvent))) }),
        ("ArrayOfPerfStatsType", TypeInfo::Value { name: "ArrayOfPerfStatsType", make_deserializer: || make_deser_with::<Vec<super::enums::PerfStatsTypeEnum>>(wrap_array_of_perf_stats_type), from_value: |v| from_val_with::<Vec<super::enums::PerfStatsTypeEnum>>(v, wrap_array_of_perf_stats_type) }),
        ("VirtualFloppyRemoteDeviceBackingOption", TypeInfo::Object { name: "VirtualFloppyRemoteDeviceBackingOption", builder_fn: || Box::new(VirtualFloppyRemoteDeviceBackingOptionFields::new()) }),
        ("ArrayOfInvalidDiskFormat", TypeInfo::Value { name: "ArrayOfInvalidDiskFormat", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_disk_format), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_disk_format) }),
        ("ArrayOfVimHostVSANStretchedClusterHostCapability", TypeInfo::Value { name: "ArrayOfVimHostVSANStretchedClusterHostCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VimHostVsanStretchedClusterHostCapability>>(wrap_array_of_vim_host_vsan_stretched_cluster_host_capability), from_value: |v| from_val_with::<Vec<super::structs::VimHostVsanStretchedClusterHostCapability>>(v, wrap_array_of_vim_host_vsan_stretched_cluster_host_capability) }),
        ("ArrayOfVmMessageErrorEvent", TypeInfo::Value { name: "ArrayOfVmMessageErrorEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_message_error_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_message_error_event) }),
        ("NamespaceFull", TypeInfo::Object { name: "NamespaceFull", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NamespaceFull))) }),
        ("ArrayOfExitedStandbyModeEvent", TypeInfo::Value { name: "ArrayOfExitedStandbyModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_exited_standby_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_exited_standby_mode_event) }),
        ("ArrayOfPhysicalNicConfig", TypeInfo::Value { name: "ArrayOfPhysicalNicConfig", make_deserializer: || make_deser_with::<Vec<super::structs::PhysicalNicConfig>>(wrap_array_of_physical_nic_config), from_value: |v| from_val_with::<Vec<super::structs::PhysicalNicConfig>>(v, wrap_array_of_physical_nic_config) }),
        ("ArrayOfVsanXVCDatastoreInfo", TypeInfo::Value { name: "ArrayOfVsanXVCDatastoreInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanXvcDatastoreInfo>>(wrap_array_of_vsan_xvc_datastore_info), from_value: |v| from_val_with::<Vec<super::structs::VsanXvcDatastoreInfo>>(v, wrap_array_of_vsan_xvc_datastore_info) }),
        ("ArrayOfInvalidProfile", TypeInfo::Value { name: "ArrayOfInvalidProfile", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_profile), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_profile) }),
        ("ArrayOfLicenseServerUnavailableEvent", TypeInfo::Value { name: "ArrayOfLicenseServerUnavailableEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_license_server_unavailable_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_license_server_unavailable_event) }),
        ("ReplicationFault", TypeInfo::Object { name: "ReplicationFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReplicationFault))) }),
        ("ArrayOfVStorageObjectSnapshotDetails", TypeInfo::Value { name: "ArrayOfVStorageObjectSnapshotDetails", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectSnapshotDetails>>(wrap_array_of_v_storage_object_snapshot_details), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectSnapshotDetails>>(v, wrap_array_of_v_storage_object_snapshot_details) }),
        ("VmFailedMigrateEvent", TypeInfo::Object { name: "VmFailedMigrateEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFailedMigrateEvent))) }),
        ("ArrayOfCryptoManagerKmipCryptoKeyStatusKeyInfo", TypeInfo::Value { name: "ArrayOfCryptoManagerKmipCryptoKeyStatusKeyInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_crypto_manager_kmip_crypto_key_status_key_info_array)), from_value: |v| cast_to_crypto_manager_kmip_crypto_key_status_key_info_array(from_value(v)?) }),
        ("RecordReplayDisabled", TypeInfo::Object { name: "RecordReplayDisabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RecordReplayDisabled))) }),
        ("AgentVmHook", TypeInfo::Object { name: "AgentVmHook", builder_fn: || Box::new(AgentVmHookFields::new()) }),
        ("ArrayOfVmCloneEvent", TypeInfo::Value { name: "ArrayOfVmCloneEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_clone_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_clone_event) }),
        ("VslmCreateSpecDiskFileBackingSpec", TypeInfo::Object { name: "VslmCreateSpecDiskFileBackingSpec", builder_fn: || Box::new(VslmCreateSpecDiskFileBackingSpecFields::new()) }),
        ("ArrayOfVsanHostConfigInfoStorageInfo", TypeInfo::Value { name: "ArrayOfVsanHostConfigInfoStorageInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostConfigInfoStorageInfo>>(wrap_array_of_vsan_host_config_info_storage_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostConfigInfoStorageInfo>>(v, wrap_array_of_vsan_host_config_info_storage_info) }),
        ("ArrayOfScheduledTaskDescription", TypeInfo::Value { name: "ArrayOfScheduledTaskDescription", make_deserializer: || make_deser_with::<Vec<super::structs::ScheduledTaskDescription>>(wrap_array_of_scheduled_task_description), from_value: |v| from_val_with::<Vec<super::structs::ScheduledTaskDescription>>(v, wrap_array_of_scheduled_task_description) }),
        ("ArrayOfOvfPropertyQualifierIgnored", TypeInfo::Value { name: "ArrayOfOvfPropertyQualifierIgnored", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_property_qualifier_ignored), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_property_qualifier_ignored) }),
        ("VirtualDiskDeltaDiskFormatsSupported", TypeInfo::Object { name: "VirtualDiskDeltaDiskFormatsSupported", builder_fn: || Box::new(VirtualDiskDeltaDiskFormatsSupportedFields::new()) }),
        ("ArrayOfVsanDatastoreSourcePrecheckItem", TypeInfo::Value { name: "ArrayOfVsanDatastoreSourcePrecheckItem", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDatastoreSourcePrecheckItem>>(wrap_array_of_vsan_datastore_source_precheck_item), from_value: |v| from_val_with::<Vec<super::structs::VsanDatastoreSourcePrecheckItem>>(v, wrap_array_of_vsan_datastore_source_precheck_item) }),
        ("DvsRestoreEvent", TypeInfo::Object { name: "DvsRestoreEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsRestoreEvent))) }),
        ("VAppOvfSectionInfo", TypeInfo::Object { name: "VAppOvfSectionInfo", builder_fn: || Box::new(VAppOvfSectionInfoFields::new()) }),
        ("OvfConsumerInvalidSection", TypeInfo::Object { name: "OvfConsumerInvalidSection", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfConsumerInvalidSection))) }),
        ("DatabaseSizeParam", TypeInfo::Object { name: "DatabaseSizeParam", builder_fn: || Box::new(DatabaseSizeParamFields::new()) }),
        ("VirtualMachinePrecisionClockInfo", TypeInfo::Object { name: "VirtualMachinePrecisionClockInfo", builder_fn: || Box::new(VirtualMachinePrecisionClockInfoFields::new()) }),
        ("HostDiskMappingOption", TypeInfo::Object { name: "HostDiskMappingOption", builder_fn: || Box::new(HostDiskMappingOptionFields::new()) }),
        ("ClusterComputeResourceDVSSetting", TypeInfo::Object { name: "ClusterComputeResourceDVSSetting", builder_fn: || Box::new(ClusterComputeResourceDvsSettingFields::new()) }),
        ("EntityReferenceEntityType", TypeInfo::Value { name: "EntityReferenceEntityType", make_deserializer: || make_deser_with::<super::enums::EntityReferenceEntityTypeEnum>(wrap_entity_reference_entity_type), from_value: |v| from_val_with::<super::enums::EntityReferenceEntityTypeEnum>(v, wrap_entity_reference_entity_type) }),
        ("ArrayOfHostActiveDirectory", TypeInfo::Value { name: "ArrayOfHostActiveDirectory", make_deserializer: || make_deser_with::<Vec<super::structs::HostActiveDirectory>>(wrap_array_of_host_active_directory), from_value: |v| from_val_with::<Vec<super::structs::HostActiveDirectory>>(v, wrap_array_of_host_active_directory) }),
        ("CustomizationSysprep", TypeInfo::Object { name: "CustomizationSysprep", builder_fn: || Box::new(CustomizationSysprepFields::new()) }),
        ("ArrayOfHostVMotionInfo", TypeInfo::Value { name: "ArrayOfHostVMotionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostVMotionInfo>>(wrap_array_of_host_v_motion_info), from_value: |v| from_val_with::<Vec<super::structs::HostVMotionInfo>>(v, wrap_array_of_host_v_motion_info) }),
        ("ArrayOfVsanDiskUnhealthIssue", TypeInfo::Value { name: "ArrayOfVsanDiskUnhealthIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDiskUnhealthIssue>>(wrap_array_of_vsan_disk_unhealth_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanDiskUnhealthIssue>>(v, wrap_array_of_vsan_disk_unhealth_issue) }),
        ("InfoUpgradeEvent", TypeInfo::Object { name: "InfoUpgradeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::InfoUpgradeEvent))) }),
        ("HostReliableMemoryInfo", TypeInfo::Object { name: "HostReliableMemoryInfo", builder_fn: || Box::new(HostReliableMemoryInfoFields::new()) }),
        ("ArrayOfHostAccessMode", TypeInfo::Value { name: "ArrayOfHostAccessMode", make_deserializer: || make_deser_with::<Vec<super::enums::HostAccessModeEnum>>(wrap_array_of_host_access_mode), from_value: |v| from_val_with::<Vec<super::enums::HostAccessModeEnum>>(v, wrap_array_of_host_access_mode) }),
        ("ArrayOfHttpNfcLeaseSourceFile", TypeInfo::Value { name: "ArrayOfHttpNfcLeaseSourceFile", make_deserializer: || make_deser_with::<Vec<super::structs::HttpNfcLeaseSourceFile>>(wrap_array_of_http_nfc_lease_source_file), from_value: |v| from_val_with::<Vec<super::structs::HttpNfcLeaseSourceFile>>(v, wrap_array_of_http_nfc_lease_source_file) }),
        ("ReplicationSpec", TypeInfo::Object { name: "ReplicationSpec", builder_fn: || Box::new(ReplicationSpecFields::new()) }),
        ("ArrayOfUnSupportedDatastoreForVFlash", TypeInfo::Value { name: "ArrayOfUnSupportedDatastoreForVFlash", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_un_supported_datastore_for_v_flash), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_un_supported_datastore_for_v_flash) }),
        ("ArrayOfVirtualController", TypeInfo::Value { name: "ArrayOfVirtualController", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_controller_array)), from_value: |v| cast_to_virtual_controller_array(from_value(v)?) }),
        ("ArrayOfHttpNfcLeaseManifestEntry", TypeInfo::Value { name: "ArrayOfHttpNfcLeaseManifestEntry", make_deserializer: || make_deser_with::<Vec<super::structs::HttpNfcLeaseManifestEntry>>(wrap_array_of_http_nfc_lease_manifest_entry), from_value: |v| from_val_with::<Vec<super::structs::HttpNfcLeaseManifestEntry>>(v, wrap_array_of_http_nfc_lease_manifest_entry) }),
        ("ArrayOfCannotMoveHostWithFaultToleranceVm", TypeInfo::Value { name: "ArrayOfCannotMoveHostWithFaultToleranceVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_move_host_with_fault_tolerance_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_move_host_with_fault_tolerance_vm) }),
        ("ArrayOfHostParallelScsiTargetTransport", TypeInfo::Value { name: "ArrayOfHostParallelScsiTargetTransport", make_deserializer: || make_deser_with::<Vec<super::structs::HostParallelScsiTargetTransport>>(wrap_array_of_host_parallel_scsi_target_transport), from_value: |v| from_val_with::<Vec<super::structs::HostParallelScsiTargetTransport>>(v, wrap_array_of_host_parallel_scsi_target_transport) }),
        ("MetricAlarmExpression", TypeInfo::Object { name: "MetricAlarmExpression", builder_fn: || Box::new(MetricAlarmExpressionFields::new()) }),
        ("ArrayOfReplicationConfigSpec", TypeInfo::Value { name: "ArrayOfReplicationConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicationConfigSpec>>(wrap_array_of_replication_config_spec), from_value: |v| from_val_with::<Vec<super::structs::ReplicationConfigSpec>>(v, wrap_array_of_replication_config_spec) }),
        ("ClusterAgentVmSuspended", TypeInfo::Object { name: "ClusterAgentVmSuspended", builder_fn: || Box::new(ClusterAgentVmSuspendedFields::new()) }),
        ("ArrayOfVirtualParallelPortDeviceBackingOption", TypeInfo::Value { name: "ArrayOfVirtualParallelPortDeviceBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualParallelPortDeviceBackingOption>>(wrap_array_of_virtual_parallel_port_device_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualParallelPortDeviceBackingOption>>(v, wrap_array_of_virtual_parallel_port_device_backing_option) }),
        ("ArrayOfHostIpRouteConfigSpec", TypeInfo::Value { name: "ArrayOfHostIpRouteConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostIpRouteConfigSpec>>(wrap_array_of_host_ip_route_config_spec), from_value: |v| from_val_with::<Vec<super::structs::HostIpRouteConfigSpec>>(v, wrap_array_of_host_ip_route_config_spec) }),
        ("ArrayOfVsanIscsiHomeObjectSpec", TypeInfo::Value { name: "ArrayOfVsanIscsiHomeObjectSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiHomeObjectSpec>>(wrap_array_of_vsan_iscsi_home_object_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiHomeObjectSpec>>(v, wrap_array_of_vsan_iscsi_home_object_spec) }),
        ("SolutionsHookConfig", TypeInfo::Object { name: "SolutionsHookConfig", builder_fn: || Box::new(SolutionsHookConfigFields::new()) }),
        ("ArrayOfVirtualCdromIsoBackingOption", TypeInfo::Value { name: "ArrayOfVirtualCdromIsoBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualCdromIsoBackingOption>>(wrap_array_of_virtual_cdrom_iso_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualCdromIsoBackingOption>>(v, wrap_array_of_virtual_cdrom_iso_backing_option) }),
        ("ArrayOfProfileDissociatedEvent", TypeInfo::Value { name: "ArrayOfProfileDissociatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_profile_dissociated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_profile_dissociated_event) }),
        ("HostNvmeTopology", TypeInfo::Object { name: "HostNvmeTopology", builder_fn: || Box::new(HostNvmeTopologyFields::new()) }),
        ("HostCpuSchedulerInfo", TypeInfo::Object { name: "HostCpuSchedulerInfo", builder_fn: || Box::new(HostCpuSchedulerInfoFields::new()) }),
        ("VirtualDiskPartitionedRawDiskVer2BackingInfo", TypeInfo::Object { name: "VirtualDiskPartitionedRawDiskVer2BackingInfo", builder_fn: || Box::new(VirtualDiskPartitionedRawDiskVer2BackingInfoFields::new()) }),
        ("ArrayOfPatchIntegrityError", TypeInfo::Value { name: "ArrayOfPatchIntegrityError", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_patch_integrity_error), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_patch_integrity_error) }),
        ("ArrayOfVmwareDistributedVirtualSwitchDpuFailoverPolicy", TypeInfo::Value { name: "ArrayOfVmwareDistributedVirtualSwitchDpuFailoverPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::VmwareDistributedVirtualSwitchDpuFailoverPolicy>>(wrap_array_of_vmware_distributed_virtual_switch_dpu_failover_policy), from_value: |v| from_val_with::<Vec<super::structs::VmwareDistributedVirtualSwitchDpuFailoverPolicy>>(v, wrap_array_of_vmware_distributed_virtual_switch_dpu_failover_policy) }),
        ("ArrayOfDistributedVirtualSwitchHostMemberConfigSpec", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchHostMemberConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberConfigSpec>>(wrap_array_of_distributed_virtual_switch_host_member_config_spec), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberConfigSpec>>(v, wrap_array_of_distributed_virtual_switch_host_member_config_spec) }),
        ("ArrayOfInvalidCertificate", TypeInfo::Value { name: "ArrayOfInvalidCertificate", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_certificate), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_certificate) }),
        ("PbmFaultNotFound", TypeInfo::Object { name: "PbmFaultNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmFaultNotFound))) }),
        ("NotEnoughCpus", TypeInfo::Object { name: "NotEnoughCpus", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotEnoughCpus))) }),
        ("InvalidEditionEvent", TypeInfo::Object { name: "InvalidEditionEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::InvalidEditionEvent))) }),
        ("VsanUpgradeSystemNetworkPartitionInfo", TypeInfo::Object { name: "VsanUpgradeSystemNetworkPartitionInfo", builder_fn: || Box::new(VsanUpgradeSystemNetworkPartitionInfoFields::new()) }),
        ("ArrayOfOpaqueNetworkCapability", TypeInfo::Value { name: "ArrayOfOpaqueNetworkCapability", make_deserializer: || make_deser_with::<Vec<super::structs::OpaqueNetworkCapability>>(wrap_array_of_opaque_network_capability), from_value: |v| from_val_with::<Vec<super::structs::OpaqueNetworkCapability>>(v, wrap_array_of_opaque_network_capability) }),
        ("ArrayOfDvsResourceRuntimeInfo", TypeInfo::Value { name: "ArrayOfDvsResourceRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DvsResourceRuntimeInfo>>(wrap_array_of_dvs_resource_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::DvsResourceRuntimeInfo>>(v, wrap_array_of_dvs_resource_runtime_info) }),
        ("ArrayOfHostSpecificationRequireEvent", TypeInfo::Value { name: "ArrayOfHostSpecificationRequireEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_specification_require_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_specification_require_event) }),
        ("OvfUnsupportedSubType", TypeInfo::Object { name: "OvfUnsupportedSubType", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedSubType))) }),
        ("VsanClusterHealthResultKeyValuePair", TypeInfo::Object { name: "VsanClusterHealthResultKeyValuePair", builder_fn: || Box::new(VsanClusterHealthResultKeyValuePairFields::new()) }),
        ("ArrayOfVsanIODiagnosticsInstanceEvent", TypeInfo::Value { name: "ArrayOfVsanIODiagnosticsInstanceEvent", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIoDiagnosticsInstanceEvent>>(wrap_array_of_vsan_io_diagnostics_instance_event), from_value: |v| from_val_with::<Vec<super::structs::VsanIoDiagnosticsInstanceEvent>>(v, wrap_array_of_vsan_io_diagnostics_instance_event) }),
        ("ClusterFailoverHostAdmissionControlPolicy", TypeInfo::Object { name: "ClusterFailoverHostAdmissionControlPolicy", builder_fn: || Box::new(ClusterFailoverHostAdmissionControlPolicyFields::new()) }),
        ("VsanHostVirtualApplianceInfo", TypeInfo::Object { name: "VsanHostVirtualApplianceInfo", builder_fn: || Box::new(VsanHostVirtualApplianceInfoFields::new()) }),
        ("ArrayOfHostListSummary", TypeInfo::Value { name: "ArrayOfHostListSummary", make_deserializer: || make_deser_with::<Vec<super::structs::HostListSummary>>(wrap_array_of_host_list_summary), from_value: |v| from_val_with::<Vec<super::structs::HostListSummary>>(v, wrap_array_of_host_list_summary) }),
        ("HostPatchManagerStatus", TypeInfo::Object { name: "HostPatchManagerStatus", builder_fn: || Box::new(HostPatchManagerStatusFields::new()) }),
        ("ArrayOfInvalidOperationOnSecondaryVm", TypeInfo::Value { name: "ArrayOfInvalidOperationOnSecondaryVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_operation_on_secondary_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_operation_on_secondary_vm) }),
        ("DVSFilterSpecPnicConnecteeSpec", TypeInfo::Object { name: "DVSFilterSpecPnicConnecteeSpec", builder_fn: || Box::new(DvsFilterSpecPnicConnecteeSpecFields::new()) }),
        ("VsanDirectoryServerConfig", TypeInfo::Object { name: "VsanDirectoryServerConfig", builder_fn: || Box::new(VsanDirectoryServerConfigFields::new()) }),
        ("ArrayOfDvsCreatedEvent", TypeInfo::Value { name: "ArrayOfDvsCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_created_event) }),
        ("SyncReplicationGroupSuccessResult", TypeInfo::Object { name: "SyncReplicationGroupSuccessResult", builder_fn: || Box::new(SyncReplicationGroupSuccessResultFields::new()) }),
        ("HostPoweredOff", TypeInfo::Object { name: "HostPoweredOff", builder_fn: || Box::new(HostPoweredOffFields::new()) }),
        ("ServiceConsoleReservationInfo", TypeInfo::Object { name: "ServiceConsoleReservationInfo", builder_fn: || Box::new(ServiceConsoleReservationInfoFields::new()) }),
        ("RoleEvent", TypeInfo::Object { name: "RoleEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::RoleEvent))) }),
        ("ArrayOfVVolVmConfigFileUpdateResult", TypeInfo::Value { name: "ArrayOfVVolVmConfigFileUpdateResult", make_deserializer: || make_deser_with::<Vec<super::structs::VVolVmConfigFileUpdateResult>>(wrap_array_of_v_vol_vm_config_file_update_result), from_value: |v| from_val_with::<Vec<super::structs::VVolVmConfigFileUpdateResult>>(v, wrap_array_of_v_vol_vm_config_file_update_result) }),
        ("SsdDiskNotAvailable", TypeInfo::Object { name: "SsdDiskNotAvailable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SsdDiskNotAvailable))) }),
        ("SecurityProfile", TypeInfo::Object { name: "SecurityProfile", builder_fn: || Box::new(SecurityProfileFields::new()) }),
        ("ArrayOfHostVirtualSwitchBeaconConfig", TypeInfo::Value { name: "ArrayOfHostVirtualSwitchBeaconConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualSwitchBeaconConfig>>(wrap_array_of_host_virtual_switch_beacon_config), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualSwitchBeaconConfig>>(v, wrap_array_of_host_virtual_switch_beacon_config) }),
        ("VmPoweringOnWithCustomizedDVPortEvent", TypeInfo::Object { name: "VmPoweringOnWithCustomizedDVPortEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmPoweringOnWithCustomizedDvPortEvent))) }),
        ("ArrayOfObjectContent", TypeInfo::Value { name: "ArrayOfObjectContent", make_deserializer: || make_deser_with::<Vec<super::structs::ObjectContent>>(wrap_array_of_object_content), from_value: |v| from_val_with::<Vec<super::structs::ObjectContent>>(v, wrap_array_of_object_content) }),
        ("ArrayOfToolsConfigInfoToolsLastInstallInfo", TypeInfo::Value { name: "ArrayOfToolsConfigInfoToolsLastInstallInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ToolsConfigInfoToolsLastInstallInfo>>(wrap_array_of_tools_config_info_tools_last_install_info), from_value: |v| from_val_with::<Vec<super::structs::ToolsConfigInfoToolsLastInstallInfo>>(v, wrap_array_of_tools_config_info_tools_last_install_info) }),
        ("SessionManagerLocalTicket", TypeInfo::Object { name: "SessionManagerLocalTicket", builder_fn: || Box::new(SessionManagerLocalTicketFields::new()) }),
        ("ArrayOfHostLicensableResourceInfo", TypeInfo::Value { name: "ArrayOfHostLicensableResourceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostLicensableResourceInfo>>(wrap_array_of_host_licensable_resource_info), from_value: |v| from_val_with::<Vec<super::structs::HostLicensableResourceInfo>>(v, wrap_array_of_host_licensable_resource_info) }),
        ("DrsMigrationCapabilityResult", TypeInfo::Object { name: "DrsMigrationCapabilityResult", builder_fn: || Box::new(DrsMigrationCapabilityResultFields::new()) }),
        ("ArrayOfDvsPortDisconnectedEvent", TypeInfo::Value { name: "ArrayOfDvsPortDisconnectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_disconnected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_disconnected_event) }),
        ("ArrayOfVslmCloneSpec", TypeInfo::Value { name: "ArrayOfVslmCloneSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VslmCloneSpec>>(wrap_array_of_vslm_clone_spec), from_value: |v| from_val_with::<Vec<super::structs::VslmCloneSpec>>(v, wrap_array_of_vslm_clone_spec) }),
        ("ArrayOfVspanSameSessionPortConflict", TypeInfo::Value { name: "ArrayOfVspanSameSessionPortConflict", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vspan_same_session_port_conflict), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vspan_same_session_port_conflict) }),
        ("CnsSnapshotCreateSpec", TypeInfo::Object { name: "CnsSnapshotCreateSpec", builder_fn: || Box::new(CnsSnapshotCreateSpecFields::new()) }),
        ("MismatchedVMotionNetworkNames", TypeInfo::Object { name: "MismatchedVMotionNetworkNames", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MismatchedVMotionNetworkNames))) }),
        ("ArrayOfVsanPropertyConstraint", TypeInfo::Value { name: "ArrayOfVsanPropertyConstraint", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPropertyConstraint>>(wrap_array_of_vsan_property_constraint), from_value: |v| from_val_with::<Vec<super::structs::VsanPropertyConstraint>>(v, wrap_array_of_vsan_property_constraint) }),
        ("ArrayOfPbmPlacementCapabilityProfileRequirement", TypeInfo::Value { name: "ArrayOfPbmPlacementCapabilityProfileRequirement", make_deserializer: || make_deser_with::<Vec<super::structs::PbmPlacementCapabilityProfileRequirement>>(wrap_array_of_pbm_placement_capability_profile_requirement), from_value: |v| from_val_with::<Vec<super::structs::PbmPlacementCapabilityProfileRequirement>>(v, wrap_array_of_pbm_placement_capability_profile_requirement) }),
        ("ArrayOfHostVvolVolumeSpecification", TypeInfo::Value { name: "ArrayOfHostVvolVolumeSpecification", make_deserializer: || make_deser_with::<Vec<super::structs::HostVvolVolumeSpecification>>(wrap_array_of_host_vvol_volume_specification), from_value: |v| from_val_with::<Vec<super::structs::HostVvolVolumeSpecification>>(v, wrap_array_of_host_vvol_volume_specification) }),
        ("ArrayOfAgencyComputeResourceScope", TypeInfo::Value { name: "ArrayOfAgencyComputeResourceScope", make_deserializer: || make_deser_with::<Vec<super::structs::AgencyComputeResourceScope>>(wrap_array_of_agency_compute_resource_scope), from_value: |v| from_val_with::<Vec<super::structs::AgencyComputeResourceScope>>(v, wrap_array_of_agency_compute_resource_scope) }),
        ("VimVasaProvider", TypeInfo::Object { name: "VimVasaProvider", builder_fn: || Box::new(VimVasaProviderFields::new()) }),
        ("ScsiLunCapabilities", TypeInfo::Object { name: "ScsiLunCapabilities", builder_fn: || Box::new(ScsiLunCapabilitiesFields::new()) }),
        ("ArrayOfTimedOutHostOperationEvent", TypeInfo::Value { name: "ArrayOfTimedOutHostOperationEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_timed_out_host_operation_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_timed_out_host_operation_event) }),
        ("PatchSuperseded", TypeInfo::Object { name: "PatchSuperseded", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PatchSuperseded))) }),
        ("ArrayOfHostMemberRuntimeInfo", TypeInfo::Value { name: "ArrayOfHostMemberRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostMemberRuntimeInfo>>(wrap_array_of_host_member_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::HostMemberRuntimeInfo>>(v, wrap_array_of_host_member_runtime_info) }),
        ("ArrayOfDailyTaskScheduler", TypeInfo::Value { name: "ArrayOfDailyTaskScheduler", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_daily_task_scheduler_array)), from_value: |v| cast_to_daily_task_scheduler_array(from_value(v)?) }),
        ("ArrayOfHostTpmSignerEventDetails", TypeInfo::Value { name: "ArrayOfHostTpmSignerEventDetails", make_deserializer: || make_deser_with::<Vec<super::structs::HostTpmSignerEventDetails>>(wrap_array_of_host_tpm_signer_event_details), from_value: |v| from_val_with::<Vec<super::structs::HostTpmSignerEventDetails>>(v, wrap_array_of_host_tpm_signer_event_details) }),
        ("ArrayOfPhysicalNicHintInfo", TypeInfo::Value { name: "ArrayOfPhysicalNicHintInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PhysicalNicHintInfo>>(wrap_array_of_physical_nic_hint_info), from_value: |v| from_val_with::<Vec<super::structs::PhysicalNicHintInfo>>(v, wrap_array_of_physical_nic_hint_info) }),
        ("OvfOptionInfo", TypeInfo::Object { name: "OvfOptionInfo", builder_fn: || Box::new(OvfOptionInfoFields::new()) }),
        ("VirtualEthernetCardOpaqueNetworkBackingInfo", TypeInfo::Object { name: "VirtualEthernetCardOpaqueNetworkBackingInfo", builder_fn: || Box::new(VirtualEthernetCardOpaqueNetworkBackingInfoFields::new()) }),
        ("ArrayOfInsufficientDisks", TypeInfo::Value { name: "ArrayOfInsufficientDisks", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_disks), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_disks) }),
        ("ArrayOfVsanClusterObjectExtAttrs", TypeInfo::Value { name: "ArrayOfVsanClusterObjectExtAttrs", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterObjectExtAttrs>>(wrap_array_of_vsan_cluster_object_ext_attrs), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterObjectExtAttrs>>(v, wrap_array_of_vsan_cluster_object_ext_attrs) }),
        ("HostConfigFault", TypeInfo::Object { name: "HostConfigFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostConfigFault))) }),
        ("GuestInfo", TypeInfo::Object { name: "GuestInfo", builder_fn: || Box::new(GuestInfoFields::new()) }),
        ("ArrayOfProfileProfileStructureProperty", TypeInfo::Value { name: "ArrayOfProfileProfileStructureProperty", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileProfileStructureProperty>>(wrap_array_of_profile_profile_structure_property), from_value: |v| from_val_with::<Vec<super::structs::ProfileProfileStructureProperty>>(v, wrap_array_of_profile_profile_structure_property) }),
        ("SolutionsDeploymentUnitComplianceResult", TypeInfo::Object { name: "SolutionsDeploymentUnitComplianceResult", builder_fn: || Box::new(SolutionsDeploymentUnitComplianceResultFields::new()) }),
        ("VirtualNVDIMMControllerOption", TypeInfo::Object { name: "VirtualNVDIMMControllerOption", builder_fn: || Box::new(VirtualNvdimmControllerOptionFields::new()) }),
        ("DistributedVirtualSwitchHostProductSpec", TypeInfo::Object { name: "DistributedVirtualSwitchHostProductSpec", builder_fn: || Box::new(DistributedVirtualSwitchHostProductSpecFields::new()) }),
        ("ArrayOfClusterNotAttemptedVmInfo", TypeInfo::Value { name: "ArrayOfClusterNotAttemptedVmInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterNotAttemptedVmInfo>>(wrap_array_of_cluster_not_attempted_vm_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterNotAttemptedVmInfo>>(v, wrap_array_of_cluster_not_attempted_vm_info) }),
        ("ArrayOfSoftRuleVioCorrectionDisallowed", TypeInfo::Value { name: "ArrayOfSoftRuleVioCorrectionDisallowed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_soft_rule_vio_correction_disallowed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_soft_rule_vio_correction_disallowed) }),
        ("HostAssignableHardwareBinding", TypeInfo::Object { name: "HostAssignableHardwareBinding", builder_fn: || Box::new(HostAssignableHardwareBindingFields::new()) }),
        ("ArrayOfAboutInfo", TypeInfo::Value { name: "ArrayOfAboutInfo", make_deserializer: || make_deser_with::<Vec<super::structs::AboutInfo>>(wrap_array_of_about_info), from_value: |v| from_val_with::<Vec<super::structs::AboutInfo>>(v, wrap_array_of_about_info) }),
        ("VsanFileShareRuntimeInfo", TypeInfo::Object { name: "VsanFileShareRuntimeInfo", builder_fn: || Box::new(VsanFileShareRuntimeInfoFields::new()) }),
        ("ArrayOfEventEx", TypeInfo::Value { name: "ArrayOfEventEx", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_event_ex), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_event_ex) }),
        ("ArrayOfVsanDiskEncryptionHealth", TypeInfo::Value { name: "ArrayOfVsanDiskEncryptionHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDiskEncryptionHealth>>(wrap_array_of_vsan_disk_encryption_health), from_value: |v| from_val_with::<Vec<super::structs::VsanDiskEncryptionHealth>>(v, wrap_array_of_vsan_disk_encryption_health) }),
        ("VsanHostEMMSummary", TypeInfo::Object { name: "VsanHostEMMSummary", builder_fn: || Box::new(VsanHostEmmSummaryFields::new()) }),
        ("ArrayOfHostNetworkConfigResult", TypeInfo::Value { name: "ArrayOfHostNetworkConfigResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetworkConfigResult>>(wrap_array_of_host_network_config_result), from_value: |v| from_val_with::<Vec<super::structs::HostNetworkConfigResult>>(v, wrap_array_of_host_network_config_result) }),
        ("ClusterAgentMissingClusterVmNetwork", TypeInfo::Object { name: "ClusterAgentMissingClusterVmNetwork", builder_fn: || Box::new(ClusterAgentMissingClusterVmNetworkFields::new()) }),
        ("CustomizationFixedIp", TypeInfo::Object { name: "CustomizationFixedIp", builder_fn: || Box::new(CustomizationFixedIpFields::new()) }),
        ("ArrayOfVMwareDVSVlanMtuHealthCheckConfig", TypeInfo::Value { name: "ArrayOfVMwareDVSVlanMtuHealthCheckConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsVlanMtuHealthCheckConfig>>(wrap_array_of_v_mware_dvs_vlan_mtu_health_check_config), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsVlanMtuHealthCheckConfig>>(v, wrap_array_of_v_mware_dvs_vlan_mtu_health_check_config) }),
        ("ArrayOfInvalidEditionLicense", TypeInfo::Value { name: "ArrayOfInvalidEditionLicense", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_edition_license), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_edition_license) }),
        ("VirtualMachineId", TypeInfo::Object { name: "VirtualMachineId", builder_fn: || Box::new(VirtualMachineIdFields::new()) }),
        ("ArrayOfResourceAllocationInfo", TypeInfo::Value { name: "ArrayOfResourceAllocationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ResourceAllocationInfo>>(wrap_array_of_resource_allocation_info), from_value: |v| from_val_with::<Vec<super::structs::ResourceAllocationInfo>>(v, wrap_array_of_resource_allocation_info) }),
        ("VsanUpgradeSystemWrongEsxVersionIssue", TypeInfo::Object { name: "VsanUpgradeSystemWrongEsxVersionIssue", builder_fn: || Box::new(VsanUpgradeSystemWrongEsxVersionIssueFields::new()) }),
        ("VirtualMachineVcpuConfig", TypeInfo::Object { name: "VirtualMachineVcpuConfig", builder_fn: || Box::new(VirtualMachineVcpuConfigFields::new()) }),
        ("ArrayOfHostIpmiInfo", TypeInfo::Value { name: "ArrayOfHostIpmiInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostIpmiInfo>>(wrap_array_of_host_ipmi_info), from_value: |v| from_val_with::<Vec<super::structs::HostIpmiInfo>>(v, wrap_array_of_host_ipmi_info) }),
        ("ArrayOfDirectPathProfileManagerTargetEntity", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerTargetEntity", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_direct_path_profile_manager_target_entity_array)), from_value: |v| cast_to_direct_path_profile_manager_target_entity_array(from_value(v)?) }),
        ("NoLicenseServerConfigured", TypeInfo::Object { name: "NoLicenseServerConfigured", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoLicenseServerConfigured))) }),
        ("ArrayOfHostGatewaySpec", TypeInfo::Value { name: "ArrayOfHostGatewaySpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostGatewaySpec>>(wrap_array_of_host_gateway_spec), from_value: |v| from_val_with::<Vec<super::structs::HostGatewaySpec>>(v, wrap_array_of_host_gateway_spec) }),
        ("ArrayOfVirtualDiskLocalPMemBackingOption", TypeInfo::Value { name: "ArrayOfVirtualDiskLocalPMemBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskLocalPMemBackingOption>>(wrap_array_of_virtual_disk_local_p_mem_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskLocalPMemBackingOption>>(v, wrap_array_of_virtual_disk_local_p_mem_backing_option) }),
        ("ArrayOfParaVirtualSCSIControllerOption", TypeInfo::Value { name: "ArrayOfParaVirtualSCSIControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::ParaVirtualScsiControllerOption>>(wrap_array_of_para_virtual_scsi_controller_option), from_value: |v| from_val_with::<Vec<super::structs::ParaVirtualScsiControllerOption>>(v, wrap_array_of_para_virtual_scsi_controller_option) }),
        ("ArrayOfClusterResourceUsageSummary", TypeInfo::Value { name: "ArrayOfClusterResourceUsageSummary", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterResourceUsageSummary>>(wrap_array_of_cluster_resource_usage_summary), from_value: |v| from_val_with::<Vec<super::structs::ClusterResourceUsageSummary>>(v, wrap_array_of_cluster_resource_usage_summary) }),
        ("InvalidDiskFormat", TypeInfo::Object { name: "InvalidDiskFormat", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidDiskFormat))) }),
        ("ArrayOfFaultDomainInfo", TypeInfo::Value { name: "ArrayOfFaultDomainInfo", make_deserializer: || make_deser_with::<Vec<super::structs::FaultDomainInfo>>(wrap_array_of_fault_domain_info), from_value: |v| from_val_with::<Vec<super::structs::FaultDomainInfo>>(v, wrap_array_of_fault_domain_info) }),
        ("ArrayOfVsanJsonComparator", TypeInfo::Value { name: "ArrayOfVsanJsonComparator", make_deserializer: || make_deser_with::<Vec<super::structs::VsanJsonComparator>>(wrap_array_of_vsan_json_comparator), from_value: |v| from_val_with::<Vec<super::structs::VsanJsonComparator>>(v, wrap_array_of_vsan_json_comparator) }),
        ("ArrayOfToolsAlreadyUpgraded", TypeInfo::Value { name: "ArrayOfToolsAlreadyUpgraded", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_tools_already_upgraded), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_tools_already_upgraded) }),
        ("ArrayOfNoAgentVmDatastore", TypeInfo::Value { name: "ArrayOfNoAgentVmDatastore", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_no_agent_vm_datastore_array)), from_value: |v| cast_to_no_agent_vm_datastore_array(from_value(v)?) }),
        ("DasVmPriority", TypeInfo::Value { name: "DasVmPriority", make_deserializer: || make_deser_with::<super::enums::DasVmPriorityEnum>(wrap_das_vm_priority), from_value: |v| from_val_with::<super::enums::DasVmPriorityEnum>(v, wrap_das_vm_priority) }),
        ("ArrayOfVslmCreateSpecBackingSpec", TypeInfo::Value { name: "ArrayOfVslmCreateSpecBackingSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vslm_create_spec_backing_spec_array)), from_value: |v| cast_to_vslm_create_spec_backing_spec_array(from_value(v)?) }),
        ("ArrayOfHostDiagnosticPartition", TypeInfo::Value { name: "ArrayOfHostDiagnosticPartition", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiagnosticPartition>>(wrap_array_of_host_diagnostic_partition), from_value: |v| from_val_with::<Vec<super::structs::HostDiagnosticPartition>>(v, wrap_array_of_host_diagnostic_partition) }),
        ("HostSystemConnectionState", TypeInfo::Value { name: "HostSystemConnectionState", make_deserializer: || make_deser_with::<super::enums::HostSystemConnectionStateEnum>(wrap_host_system_connection_state), from_value: |v| from_val_with::<super::enums::HostSystemConnectionStateEnum>(v, wrap_host_system_connection_state) }),
        ("ArrayOfVsanMetricsConfig", TypeInfo::Value { name: "ArrayOfVsanMetricsConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMetricsConfig>>(wrap_array_of_vsan_metrics_config), from_value: |v| from_val_with::<Vec<super::structs::VsanMetricsConfig>>(v, wrap_array_of_vsan_metrics_config) }),
        ("CnsVolumeRelocateSpec", TypeInfo::Object { name: "CnsVolumeRelocateSpec", builder_fn: || Box::new(CnsVolumeRelocateSpecFields::new()) }),
        ("ArrayOfHostScsiDiskPartition", TypeInfo::Value { name: "ArrayOfHostScsiDiskPartition", make_deserializer: || make_deser_with::<Vec<super::structs::HostScsiDiskPartition>>(wrap_array_of_host_scsi_disk_partition), from_value: |v| from_val_with::<Vec<super::structs::HostScsiDiskPartition>>(v, wrap_array_of_host_scsi_disk_partition) }),
        ("ArrayOfInheritablePolicy", TypeInfo::Value { name: "ArrayOfInheritablePolicy", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_inheritable_policy_array)), from_value: |v| cast_to_inheritable_policy_array(from_value(v)?) }),
        ("ArrayOfPbmComplianceOperationalStatus", TypeInfo::Value { name: "ArrayOfPbmComplianceOperationalStatus", make_deserializer: || make_deser_with::<Vec<super::structs::PbmComplianceOperationalStatus>>(wrap_array_of_pbm_compliance_operational_status), from_value: |v| from_val_with::<Vec<super::structs::PbmComplianceOperationalStatus>>(v, wrap_array_of_pbm_compliance_operational_status) }),
        ("ArrayOfClusterAction", TypeInfo::Value { name: "ArrayOfClusterAction", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_action_array)), from_value: |v| cast_to_cluster_action_array(from_value(v)?) }),
        ("ArrayOfVirtualUSBController", TypeInfo::Value { name: "ArrayOfVirtualUSBController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbController>>(wrap_array_of_virtual_usb_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbController>>(v, wrap_array_of_virtual_usb_controller) }),
        ("SoftRuleVioCorrectionDisallowed", TypeInfo::Object { name: "SoftRuleVioCorrectionDisallowed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SoftRuleVioCorrectionDisallowed))) }),
        ("ActiveVsanDirectoryServerConfig", TypeInfo::Object { name: "ActiveVsanDirectoryServerConfig", builder_fn: || Box::new(ActiveVsanDirectoryServerConfigFields::new()) }),
        ("ArrayOfVirtualMachineLegacyNetworkSwitchInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineLegacyNetworkSwitchInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineLegacyNetworkSwitchInfo>>(wrap_array_of_virtual_machine_legacy_network_switch_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineLegacyNetworkSwitchInfo>>(v, wrap_array_of_virtual_machine_legacy_network_switch_info) }),
        ("UnsharedSwapVMotionNotSupported", TypeInfo::Object { name: "UnsharedSwapVMotionNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnsharedSwapVMotionNotSupported))) }),
        ("HostHardwareElementInfo", TypeInfo::Object { name: "HostHardwareElementInfo", builder_fn: || Box::new(HostHardwareElementInfoFields::new()) }),
        ("CompositePolicyOption", TypeInfo::Object { name: "CompositePolicyOption", builder_fn: || Box::new(CompositePolicyOptionFields::new()) }),
        ("ArrayOfCryptoSpecEncrypt", TypeInfo::Value { name: "ArrayOfCryptoSpecEncrypt", make_deserializer: || make_deser_with::<Vec<super::structs::CryptoSpecEncrypt>>(wrap_array_of_crypto_spec_encrypt), from_value: |v| from_val_with::<Vec<super::structs::CryptoSpecEncrypt>>(v, wrap_array_of_crypto_spec_encrypt) }),
        ("ArrayOfCannotDecryptPasswords", TypeInfo::Value { name: "ArrayOfCannotDecryptPasswords", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_decrypt_passwords), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_decrypt_passwords) }),
        ("ArrayOfSolutionsHookConfig", TypeInfo::Value { name: "ArrayOfSolutionsHookConfig", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsHookConfig>>(wrap_array_of_solutions_hook_config), from_value: |v| from_val_with::<Vec<super::structs::SolutionsHookConfig>>(v, wrap_array_of_solutions_hook_config) }),
        ("PbmExtendedElementDescription", TypeInfo::Object { name: "PbmExtendedElementDescription", builder_fn: || Box::new(PbmExtendedElementDescriptionFields::new()) }),
        ("VsanHealthThreshold", TypeInfo::Object { name: "VsanHealthThreshold", builder_fn: || Box::new(VsanHealthThresholdFields::new()) }),
        ("ArrayOfVirtualMachineScsiDiskDeviceInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineScsiDiskDeviceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineScsiDiskDeviceInfo>>(wrap_array_of_virtual_machine_scsi_disk_device_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineScsiDiskDeviceInfo>>(v, wrap_array_of_virtual_machine_scsi_disk_device_info) }),
        ("ArrayOfCustomizationLicenseFilePrintData", TypeInfo::Value { name: "ArrayOfCustomizationLicenseFilePrintData", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationLicenseFilePrintData>>(wrap_array_of_customization_license_file_print_data), from_value: |v| from_val_with::<Vec<super::structs::CustomizationLicenseFilePrintData>>(v, wrap_array_of_customization_license_file_print_data) }),
        ("ArrayOfDirectPathProfileManagerCapacityQueryByDeviceConfig", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerCapacityQueryByDeviceConfig", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerCapacityQueryByDeviceConfig>>(wrap_array_of_direct_path_profile_manager_capacity_query_by_device_config), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerCapacityQueryByDeviceConfig>>(v, wrap_array_of_direct_path_profile_manager_capacity_query_by_device_config) }),
        ("DrsExitingStandbyModeEvent", TypeInfo::Object { name: "DrsExitingStandbyModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsExitingStandbyModeEvent))) }),
        ("ArrayOfHourlyTaskScheduler", TypeInfo::Value { name: "ArrayOfHourlyTaskScheduler", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_hourly_task_scheduler_array)), from_value: |v| cast_to_hourly_task_scheduler_array(from_value(v)?) }),
        ("ArrayOfDrsExitStandbyModeFailedEvent", TypeInfo::Value { name: "ArrayOfDrsExitStandbyModeFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_exit_standby_mode_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_exit_standby_mode_failed_event) }),
        ("OvfHardwareCheck", TypeInfo::Object { name: "OvfHardwareCheck", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfHardwareCheck))) }),
        ("MissingNetworkIpConfig", TypeInfo::Object { name: "MissingNetworkIpConfig", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MissingNetworkIpConfig))) }),
        ("ArrayOfDistributedVirtualSwitchManagerHostContainer", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchManagerHostContainer", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchManagerHostContainer>>(wrap_array_of_distributed_virtual_switch_manager_host_container), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchManagerHostContainer>>(v, wrap_array_of_distributed_virtual_switch_manager_host_container) }),
        ("ArrayOfSecondaryVmNotRegistered", TypeInfo::Value { name: "ArrayOfSecondaryVmNotRegistered", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_secondary_vm_not_registered), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_secondary_vm_not_registered) }),
        ("ArrayOfVsanUpgradeSystemUpgradeHistoryDiskGroupOpType", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemUpgradeHistoryDiskGroupOpType", make_deserializer: || make_deser_with::<Vec<super::enums::VsanUpgradeSystemUpgradeHistoryDiskGroupOpTypeEnum>>(wrap_array_of_vsan_upgrade_system_upgrade_history_disk_group_op_type), from_value: |v| from_val_with::<Vec<super::enums::VsanUpgradeSystemUpgradeHistoryDiskGroupOpTypeEnum>>(v, wrap_array_of_vsan_upgrade_system_upgrade_history_disk_group_op_type) }),
        ("ArrayOfIscsiFaultVnicNotFound", TypeInfo::Value { name: "ArrayOfIscsiFaultVnicNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_vnic_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_vnic_not_found) }),
        ("ArrayOfHostProxySwitch", TypeInfo::Value { name: "ArrayOfHostProxySwitch", make_deserializer: || make_deser_with::<Vec<super::structs::HostProxySwitch>>(wrap_array_of_host_proxy_switch), from_value: |v| from_val_with::<Vec<super::structs::HostProxySwitch>>(v, wrap_array_of_host_proxy_switch) }),
        ("ArrayOfVmFaultToleranceConfigIssue", TypeInfo::Value { name: "ArrayOfVmFaultToleranceConfigIssue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_fault_tolerance_config_issue), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_fault_tolerance_config_issue) }),
        ("SmsAboutInfo", TypeInfo::Object { name: "SmsAboutInfo", builder_fn: || Box::new(SmsAboutInfoFields::new()) }),
        ("EntityResourceCheckDetails", TypeInfo::Object { name: "EntityResourceCheckDetails", builder_fn: || Box::new(EntityResourceCheckDetailsFields::new()) }),
        ("ArrayOfPhysicalNicCdpDeviceCapability", TypeInfo::Value { name: "ArrayOfPhysicalNicCdpDeviceCapability", make_deserializer: || make_deser_with::<Vec<super::structs::PhysicalNicCdpDeviceCapability>>(wrap_array_of_physical_nic_cdp_device_capability), from_value: |v| from_val_with::<Vec<super::structs::PhysicalNicCdpDeviceCapability>>(v, wrap_array_of_physical_nic_cdp_device_capability) }),
        ("ArrayOfHostVirtualSwitch", TypeInfo::Value { name: "ArrayOfHostVirtualSwitch", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualSwitch>>(wrap_array_of_host_virtual_switch), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualSwitch>>(v, wrap_array_of_host_virtual_switch) }),
        ("ArrayOfHostTcpHba", TypeInfo::Value { name: "ArrayOfHostTcpHba", make_deserializer: || make_deser_with::<Vec<super::structs::HostTcpHba>>(wrap_array_of_host_tcp_hba), from_value: |v| from_val_with::<Vec<super::structs::HostTcpHba>>(v, wrap_array_of_host_tcp_hba) }),
        ("ArrayOfVsanPerfsvcConfig", TypeInfo::Value { name: "ArrayOfVsanPerfsvcConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfsvcConfig>>(wrap_array_of_vsan_perfsvc_config), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfsvcConfig>>(v, wrap_array_of_vsan_perfsvc_config) }),
        ("ReplicationIncompatibleWithFT", TypeInfo::Object { name: "ReplicationIncompatibleWithFT", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ReplicationIncompatibleWithFt))) }),
        ("ArrayOfVsanUpgradeSystemUpgradeHistoryDiskGroupOp", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemUpgradeHistoryDiskGroupOp", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemUpgradeHistoryDiskGroupOp>>(wrap_array_of_vsan_upgrade_system_upgrade_history_disk_group_op), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemUpgradeHistoryDiskGroupOp>>(v, wrap_array_of_vsan_upgrade_system_upgrade_history_disk_group_op) }),
        ("ArrayOfNoConnectionToVCenter", TypeInfo::Value { name: "ArrayOfNoConnectionToVCenter", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_connection_to_v_center), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_connection_to_v_center) }),
        ("ArrayOfUplinkPortVlanUntrunkedEvent", TypeInfo::Value { name: "ArrayOfUplinkPortVlanUntrunkedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_uplink_port_vlan_untrunked_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_uplink_port_vlan_untrunked_event) }),
        ("VirtualUSBController", TypeInfo::Object { name: "VirtualUSBController", builder_fn: || Box::new(VirtualUsbControllerFields::new()) }),
        ("ArrayOfPatchBinariesNotFound", TypeInfo::Value { name: "ArrayOfPatchBinariesNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_patch_binaries_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_patch_binaries_not_found) }),
        ("ArrayOfPbmCapabilityPropertyInstance", TypeInfo::Value { name: "ArrayOfPbmCapabilityPropertyInstance", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilityPropertyInstance>>(wrap_array_of_pbm_capability_property_instance), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilityPropertyInstance>>(v, wrap_array_of_pbm_capability_property_instance) }),
        ("ArrayOfInsufficientStandbyMemoryResource", TypeInfo::Value { name: "ArrayOfInsufficientStandbyMemoryResource", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_standby_memory_resource), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_standby_memory_resource) }),
        ("ClusterCryptoConfigInfo", TypeInfo::Object { name: "ClusterCryptoConfigInfo", builder_fn: || Box::new(ClusterCryptoConfigInfoFields::new()) }),
        ("ArrayOfVsanNetworkConfigVdsScopeIssue", TypeInfo::Value { name: "ArrayOfVsanNetworkConfigVdsScopeIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkConfigVdsScopeIssue>>(wrap_array_of_vsan_network_config_vds_scope_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkConfigVdsScopeIssue>>(v, wrap_array_of_vsan_network_config_vds_scope_issue) }),
        ("ArrayOfVmConfigFileQueryFilter", TypeInfo::Value { name: "ArrayOfVmConfigFileQueryFilter", make_deserializer: || make_deser_with::<Vec<super::structs::VmConfigFileQueryFilter>>(wrap_array_of_vm_config_file_query_filter), from_value: |v| from_val_with::<Vec<super::structs::VmConfigFileQueryFilter>>(v, wrap_array_of_vm_config_file_query_filter) }),
        ("ArrayOfClusterComputeResourceValidationResultBase", TypeInfo::Value { name: "ArrayOfClusterComputeResourceValidationResultBase", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_compute_resource_validation_result_base_array)), from_value: |v| cast_to_cluster_compute_resource_validation_result_base_array(from_value(v)?) }),
        ("IpPool", TypeInfo::Object { name: "IpPool", builder_fn: || Box::new(IpPoolFields::new()) }),
        ("CustomizationOptions", TypeInfo::Object { name: "CustomizationOptions", builder_fn: || Box::new(CustomizationOptionsFields::new()) }),
        ("UnsupportedGuest", TypeInfo::Object { name: "UnsupportedGuest", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnsupportedGuest))) }),
        ("VirtualMachineQuestionInfo", TypeInfo::Object { name: "VirtualMachineQuestionInfo", builder_fn: || Box::new(VirtualMachineQuestionInfoFields::new()) }),
        ("ArrayOfPerfMetricIntSeries", TypeInfo::Value { name: "ArrayOfPerfMetricIntSeries", make_deserializer: || make_deser_with::<Vec<super::structs::PerfMetricIntSeries>>(wrap_array_of_perf_metric_int_series), from_value: |v| from_val_with::<Vec<super::structs::PerfMetricIntSeries>>(v, wrap_array_of_perf_metric_int_series) }),
        ("CustomizationGuiRunOnce", TypeInfo::Object { name: "CustomizationGuiRunOnce", builder_fn: || Box::new(CustomizationGuiRunOnceFields::new()) }),
        ("ArrayOfVmUuidChangedEvent", TypeInfo::Value { name: "ArrayOfVmUuidChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_uuid_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_uuid_changed_event) }),
        ("OvfDiskMappingNotFound", TypeInfo::Object { name: "OvfDiskMappingNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfDiskMappingNotFound))) }),
        ("ArrayOfLargeRDMNotSupportedOnDatastore", TypeInfo::Value { name: "ArrayOfLargeRDMNotSupportedOnDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_large_rdm_not_supported_on_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_large_rdm_not_supported_on_datastore) }),
        ("ArrayOfMissingPowerOffConfiguration", TypeInfo::Value { name: "ArrayOfMissingPowerOffConfiguration", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_missing_power_off_configuration), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_missing_power_off_configuration) }),
        ("ArrayOfTooManyDevices", TypeInfo::Value { name: "ArrayOfTooManyDevices", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_too_many_devices), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_too_many_devices) }),
        ("ClusterDrsFaultsFaultsByVm", TypeInfo::Object { name: "ClusterDrsFaultsFaultsByVm", builder_fn: || Box::new(ClusterDrsFaultsFaultsByVmFields::new()) }),
        ("ArrayOfHostIpConfigIpV6Address", TypeInfo::Value { name: "ArrayOfHostIpConfigIpV6Address", make_deserializer: || make_deser_with::<Vec<super::structs::HostIpConfigIpV6Address>>(wrap_array_of_host_ip_config_ip_v_6_address), from_value: |v| from_val_with::<Vec<super::structs::HostIpConfigIpV6Address>>(v, wrap_array_of_host_ip_config_ip_v_6_address) }),
        ("SSPIChallenge", TypeInfo::Object { name: "SSPIChallenge", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SspiChallenge))) }),
        ("ArrayOfCannotAccessVmDevice", TypeInfo::Value { name: "ArrayOfCannotAccessVmDevice", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_access_vm_device), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_access_vm_device) }),
        ("ArrayOfKeyNotFound", TypeInfo::Value { name: "ArrayOfKeyNotFound", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_key_not_found), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_key_not_found) }),
        ("ArrayOfVsanHealthApiBasedAction", TypeInfo::Value { name: "ArrayOfVsanHealthApiBasedAction", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthApiBasedAction>>(wrap_array_of_vsan_health_api_based_action), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthApiBasedAction>>(v, wrap_array_of_vsan_health_api_based_action) }),
        ("ArrayOfVsanClusterNetworkPerfTaskSpec", TypeInfo::Value { name: "ArrayOfVsanClusterNetworkPerfTaskSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterNetworkPerfTaskSpec>>(wrap_array_of_vsan_cluster_network_perf_task_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterNetworkPerfTaskSpec>>(v, wrap_array_of_vsan_cluster_network_perf_task_spec) }),
        ("DeviceUnsupportedForVmVersion", TypeInfo::Object { name: "DeviceUnsupportedForVmVersion", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DeviceUnsupportedForVmVersion))) }),
        ("ChangesInfoEventArgument", TypeInfo::Object { name: "ChangesInfoEventArgument", builder_fn: || Box::new(ChangesInfoEventArgumentFields::new()) }),
        ("BackupBlobReadFailure", TypeInfo::Object { name: "BackupBlobReadFailure", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::BackupBlobReadFailure))) }),
        ("ArrayOfVsanIscsiVipDVswitchConfig", TypeInfo::Value { name: "ArrayOfVsanIscsiVipDVswitchConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiVipDVswitchConfig>>(wrap_array_of_vsan_iscsi_vip_d_vswitch_config), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiVipDVswitchConfig>>(v, wrap_array_of_vsan_iscsi_vip_d_vswitch_config) }),
        ("ArrayOfCustomizationAdapterMapping", TypeInfo::Value { name: "ArrayOfCustomizationAdapterMapping", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationAdapterMapping>>(wrap_array_of_customization_adapter_mapping), from_value: |v| from_val_with::<Vec<super::structs::CustomizationAdapterMapping>>(v, wrap_array_of_customization_adapter_mapping) }),
        ("InvalidDatastoreState", TypeInfo::Object { name: "InvalidDatastoreState", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidDatastoreState))) }),
        ("VsanNodeNotMaster", TypeInfo::Object { name: "VsanNodeNotMaster", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VsanNodeNotMaster))) }),
        ("OvfInvalidPackage", TypeInfo::Object { name: "OvfInvalidPackage", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfInvalidPackage))) }),
        ("VsanUpgradeSystemAutoClaimEnabledOnHostsIssue", TypeInfo::Object { name: "VsanUpgradeSystemAutoClaimEnabledOnHostsIssue", builder_fn: || Box::new(VsanUpgradeSystemAutoClaimEnabledOnHostsIssueFields::new()) }),
        ("ClusterOvercommittedEvent", TypeInfo::Object { name: "ClusterOvercommittedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ClusterOvercommittedEvent))) }),
        ("CpuIncompatible1ECX", TypeInfo::Object { name: "CpuIncompatible1ECX", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CpuIncompatible1Ecx))) }),
        ("VASAStorageArrayDiscoveryIpTransport", TypeInfo::Object { name: "VASAStorageArrayDiscoveryIpTransport", builder_fn: || Box::new(VasaStorageArrayDiscoveryIpTransportFields::new()) }),
        ("VirtualCdromRemoteAtapiBackingInfo", TypeInfo::Object { name: "VirtualCdromRemoteAtapiBackingInfo", builder_fn: || Box::new(VirtualCdromRemoteAtapiBackingInfoFields::new()) }),
        ("DatastoreRenamedOnHostEvent", TypeInfo::Object { name: "DatastoreRenamedOnHostEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreRenamedOnHostEvent))) }),
        ("DasEnabledEvent", TypeInfo::Object { name: "DasEnabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DasEnabledEvent))) }),
        ("ArrayOfPbmFaultNoPermissionEntityPrivileges", TypeInfo::Value { name: "ArrayOfPbmFaultNoPermissionEntityPrivileges", make_deserializer: || make_deser_with::<Vec<super::structs::PbmFaultNoPermissionEntityPrivileges>>(wrap_array_of_pbm_fault_no_permission_entity_privileges), from_value: |v| from_val_with::<Vec<super::structs::PbmFaultNoPermissionEntityPrivileges>>(v, wrap_array_of_pbm_fault_no_permission_entity_privileges) }),
        ("ArrayOfDirectoryNotEmpty", TypeInfo::Value { name: "ArrayOfDirectoryNotEmpty", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_directory_not_empty), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_directory_not_empty) }),
        ("HostNasVolumeSpec", TypeInfo::Object { name: "HostNasVolumeSpec", builder_fn: || Box::new(HostNasVolumeSpecFields::new()) }),
        ("ArrayOfExitStandbyModeFailedEvent", TypeInfo::Value { name: "ArrayOfExitStandbyModeFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_exit_standby_mode_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_exit_standby_mode_failed_event) }),
        ("ArrayOfIDEDiskNotSupported", TypeInfo::Value { name: "ArrayOfIDEDiskNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ide_disk_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ide_disk_not_supported) }),
        ("ArrayOfOvfInvalidFormat", TypeInfo::Value { name: "ArrayOfOvfInvalidFormat", make_deserializer: || make_deser_with::<Vec<super::structs::OvfInvalidFormat>>(wrap_array_of_ovf_invalid_format), from_value: |v| from_val_with::<Vec<super::structs::OvfInvalidFormat>>(v, wrap_array_of_ovf_invalid_format) }),
        ("ArrayOfReplicationGroupFilter", TypeInfo::Value { name: "ArrayOfReplicationGroupFilter", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicationGroupFilter>>(wrap_array_of_replication_group_filter), from_value: |v| from_val_with::<Vec<super::structs::ReplicationGroupFilter>>(v, wrap_array_of_replication_group_filter) }),
        ("InvalidScheduledTask", TypeInfo::Object { name: "InvalidScheduledTask", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidScheduledTask))) }),
        ("ArrayOfNetDhcpConfigInfo", TypeInfo::Value { name: "ArrayOfNetDhcpConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::NetDhcpConfigInfo>>(wrap_array_of_net_dhcp_config_info), from_value: |v| from_val_with::<Vec<super::structs::NetDhcpConfigInfo>>(v, wrap_array_of_net_dhcp_config_info) }),
        ("ArrayOfMismatchedNetworkPolicies", TypeInfo::Value { name: "ArrayOfMismatchedNetworkPolicies", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_mismatched_network_policies), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_mismatched_network_policies) }),
        ("ArrayOfVmFailedToSuspendEvent", TypeInfo::Value { name: "ArrayOfVmFailedToSuspendEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_to_suspend_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_to_suspend_event) }),
        ("ArrayOfVsanHostClusterStatusState", TypeInfo::Value { name: "ArrayOfVsanHostClusterStatusState", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostClusterStatusState>>(wrap_array_of_vsan_host_cluster_status_state), from_value: |v| from_val_with::<Vec<super::structs::VsanHostClusterStatusState>>(v, wrap_array_of_vsan_host_cluster_status_state) }),
        ("ArrayOfHostHostBusAdapter", TypeInfo::Value { name: "ArrayOfHostHostBusAdapter", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_host_bus_adapter_array)), from_value: |v| cast_to_host_host_bus_adapter_array(from_value(v)?) }),
        ("VsanDeconvergedNetConfig", TypeInfo::Object { name: "VsanDeconvergedNetConfig", builder_fn: || Box::new(VsanDeconvergedNetConfigFields::new()) }),
        ("TaskInfoFilterSpecFilterTaskResults", TypeInfo::Object { name: "TaskInfoFilterSpecFilterTaskResults", builder_fn: || Box::new(TaskInfoFilterSpecFilterTaskResultsFields::new()) }),
        ("ArrayOfOvfPropertyQualifier", TypeInfo::Value { name: "ArrayOfOvfPropertyQualifier", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_property_qualifier), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_property_qualifier) }),
        ("VsanClusterHealthSummary", TypeInfo::Object { name: "VsanClusterHealthSummary", builder_fn: || Box::new(VsanClusterHealthSummaryFields::new()) }),
        ("ArrayOfLocalDatastoreInfo", TypeInfo::Value { name: "ArrayOfLocalDatastoreInfo", make_deserializer: || make_deser_with::<Vec<super::structs::LocalDatastoreInfo>>(wrap_array_of_local_datastore_info), from_value: |v| from_val_with::<Vec<super::structs::LocalDatastoreInfo>>(v, wrap_array_of_local_datastore_info) }),
        ("ArrayOfErrorUpgradeEvent", TypeInfo::Value { name: "ArrayOfErrorUpgradeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_error_upgrade_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_error_upgrade_event) }),
        ("ArrayOfSolutionsClusterBoundSolutionConfig", TypeInfo::Value { name: "ArrayOfSolutionsClusterBoundSolutionConfig", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsClusterBoundSolutionConfig>>(wrap_array_of_solutions_cluster_bound_solution_config), from_value: |v| from_val_with::<Vec<super::structs::SolutionsClusterBoundSolutionConfig>>(v, wrap_array_of_solutions_cluster_bound_solution_config) }),
        ("DvsUpgradeAvailableEvent", TypeInfo::Object { name: "DvsUpgradeAvailableEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsUpgradeAvailableEvent))) }),
        ("ArrayOfHostProtocolEndpoint", TypeInfo::Value { name: "ArrayOfHostProtocolEndpoint", make_deserializer: || make_deser_with::<Vec<super::structs::HostProtocolEndpoint>>(wrap_array_of_host_protocol_endpoint), from_value: |v| from_val_with::<Vec<super::structs::HostProtocolEndpoint>>(v, wrap_array_of_host_protocol_endpoint) }),
        ("ArrayOfOvfUnableToExportDisk", TypeInfo::Value { name: "ArrayOfOvfUnableToExportDisk", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unable_to_export_disk), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unable_to_export_disk) }),
        ("ArrayOfCannotAccessVmDisk", TypeInfo::Value { name: "ArrayOfCannotAccessVmDisk", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_access_vm_disk), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_access_vm_disk) }),
        ("ArrayOfVirtualMachineScsiPassthroughInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineScsiPassthroughInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineScsiPassthroughInfo>>(wrap_array_of_virtual_machine_scsi_passthrough_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineScsiPassthroughInfo>>(v, wrap_array_of_virtual_machine_scsi_passthrough_info) }),
        ("LicenseSourceUnavailable", TypeInfo::Object { name: "LicenseSourceUnavailable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LicenseSourceUnavailable))) }),
        ("LongOption", TypeInfo::Object { name: "LongOption", builder_fn: || Box::new(LongOptionFields::new()) }),
        ("ArrayOfVsanObjSnapParams", TypeInfo::Value { name: "ArrayOfVsanObjSnapParams", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjSnapParams>>(wrap_array_of_vsan_obj_snap_params), from_value: |v| from_val_with::<Vec<super::structs::VsanObjSnapParams>>(v, wrap_array_of_vsan_obj_snap_params) }),
        ("ArrayOfVsanVsanClusterPcapResult", TypeInfo::Value { name: "ArrayOfVsanVsanClusterPcapResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVsanClusterPcapResult>>(wrap_array_of_vsan_vsan_cluster_pcap_result), from_value: |v| from_val_with::<Vec<super::structs::VsanVsanClusterPcapResult>>(v, wrap_array_of_vsan_vsan_cluster_pcap_result) }),
        ("ArrayOfVslmDatastoreSyncStatus", TypeInfo::Value { name: "ArrayOfVslmDatastoreSyncStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VslmDatastoreSyncStatus>>(wrap_array_of_vslm_datastore_sync_status), from_value: |v| from_val_with::<Vec<super::structs::VslmDatastoreSyncStatus>>(v, wrap_array_of_vslm_datastore_sync_status) }),
        ("ArrayOfQueryReplicationGroupSuccessResult", TypeInfo::Value { name: "ArrayOfQueryReplicationGroupSuccessResult", make_deserializer: || make_deser_with::<Vec<super::structs::QueryReplicationGroupSuccessResult>>(wrap_array_of_query_replication_group_success_result), from_value: |v| from_val_with::<Vec<super::structs::QueryReplicationGroupSuccessResult>>(v, wrap_array_of_query_replication_group_success_result) }),
        ("ArrayOfVsanRemoteClusterNotCompatible", TypeInfo::Value { name: "ArrayOfVsanRemoteClusterNotCompatible", make_deserializer: || make_deser_with::<Vec<super::structs::VsanRemoteClusterNotCompatible>>(wrap_array_of_vsan_remote_cluster_not_compatible), from_value: |v| from_val_with::<Vec<super::structs::VsanRemoteClusterNotCompatible>>(v, wrap_array_of_vsan_remote_cluster_not_compatible) }),
        ("QuiesceDatastoreIOForHAFailed", TypeInfo::Object { name: "QuiesceDatastoreIOForHAFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::QuiesceDatastoreIoForHaFailed))) }),
        ("HostStorageArrayTypePolicyOption", TypeInfo::Object { name: "HostStorageArrayTypePolicyOption", builder_fn: || Box::new(HostStorageArrayTypePolicyOptionFields::new()) }),
        ("ArrayOfVirtualMachineRuntimeInfoDasProtectionState", TypeInfo::Value { name: "ArrayOfVirtualMachineRuntimeInfoDasProtectionState", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineRuntimeInfoDasProtectionState>>(wrap_array_of_virtual_machine_runtime_info_das_protection_state), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineRuntimeInfoDasProtectionState>>(v, wrap_array_of_virtual_machine_runtime_info_das_protection_state) }),
        ("ArrayOfVirtualMachineVendorDeviceGroupInfoComponentDeviceInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineVendorDeviceGroupInfoComponentDeviceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVendorDeviceGroupInfoComponentDeviceInfo>>(wrap_array_of_virtual_machine_vendor_device_group_info_component_device_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVendorDeviceGroupInfoComponentDeviceInfo>>(v, wrap_array_of_virtual_machine_vendor_device_group_info_component_device_info) }),
        ("ArrayOfHostTcpTargetTransport", TypeInfo::Value { name: "ArrayOfHostTcpTargetTransport", make_deserializer: || make_deser_with::<Vec<super::structs::HostTcpTargetTransport>>(wrap_array_of_host_tcp_target_transport), from_value: |v| from_val_with::<Vec<super::structs::HostTcpTargetTransport>>(v, wrap_array_of_host_tcp_target_transport) }),
        ("ArrayOfInvalidLocale", TypeInfo::Value { name: "ArrayOfInvalidLocale", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_locale), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_locale) }),
        ("VsanPerfMasterInformation", TypeInfo::Object { name: "VsanPerfMasterInformation", builder_fn: || Box::new(VsanPerfMasterInformationFields::new()) }),
        ("ArrayOfVsanUpgradeSystemPreflightCheckIssue", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemPreflightCheckIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_upgrade_system_preflight_check_issue_array)), from_value: |v| cast_to_vsan_upgrade_system_preflight_check_issue_array(from_value(v)?) }),
        ("ArrayOfInsufficientNetworkCapacity", TypeInfo::Value { name: "ArrayOfInsufficientNetworkCapacity", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_network_capacity), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_network_capacity) }),
        ("VsanSiteFaultDomain", TypeInfo::Object { name: "VsanSiteFaultDomain", builder_fn: || Box::new(VsanSiteFaultDomainFields::new()) }),
        ("ArrayOfPhysicalNicNameHint", TypeInfo::Value { name: "ArrayOfPhysicalNicNameHint", make_deserializer: || make_deser_with::<Vec<super::structs::PhysicalNicNameHint>>(wrap_array_of_physical_nic_name_hint), from_value: |v| from_val_with::<Vec<super::structs::PhysicalNicNameHint>>(v, wrap_array_of_physical_nic_name_hint) }),
        ("VsanFileShareSmbOptions", TypeInfo::Object { name: "VsanFileShareSmbOptions", builder_fn: || Box::new(VsanFileShareSmbOptionsFields::new()) }),
        ("InvalidPropertyType", TypeInfo::Object { name: "InvalidPropertyType", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidPropertyType))) }),
        ("ArrayOfDvsAcceptNetworkRuleAction", TypeInfo::Value { name: "ArrayOfDvsAcceptNetworkRuleAction", make_deserializer: || make_deser_with::<Vec<super::structs::DvsAcceptNetworkRuleAction>>(wrap_array_of_dvs_accept_network_rule_action), from_value: |v| from_val_with::<Vec<super::structs::DvsAcceptNetworkRuleAction>>(v, wrap_array_of_dvs_accept_network_rule_action) }),
        ("VmFaultToleranceTurnedOffEvent", TypeInfo::Object { name: "VmFaultToleranceTurnedOffEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmFaultToleranceTurnedOffEvent))) }),
        ("CannotAccessVmDevice", TypeInfo::Object { name: "CannotAccessVmDevice", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotAccessVmDevice))) }),
        ("HostSpbmDatastoreInfo", TypeInfo::Object { name: "HostSpbmDatastoreInfo", builder_fn: || Box::new(HostSpbmDatastoreInfoFields::new()) }),
        ("HostIpConfigIpV6AddressConfiguration", TypeInfo::Object { name: "HostIpConfigIpV6AddressConfiguration", builder_fn: || Box::new(HostIpConfigIpV6AddressConfigurationFields::new()) }),
        ("ConflictingConfiguration", TypeInfo::Object { name: "ConflictingConfiguration", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ConflictingConfiguration))) }),
        ("ExtensionHealthInfo", TypeInfo::Object { name: "ExtensionHealthInfo", builder_fn: || Box::new(ExtensionHealthInfoFields::new()) }),
        ("ArrayOfIntegrityAgencyVUMUnavailable", TypeInfo::Value { name: "ArrayOfIntegrityAgencyVUMUnavailable", make_deserializer: || make_deser_with::<Vec<super::structs::IntegrityAgencyVumUnavailable>>(wrap_array_of_integrity_agency_vum_unavailable), from_value: |v| from_val_with::<Vec<super::structs::IntegrityAgencyVumUnavailable>>(v, wrap_array_of_integrity_agency_vum_unavailable) }),
        ("FailoverNodeInfo", TypeInfo::Object { name: "FailoverNodeInfo", builder_fn: || Box::new(FailoverNodeInfoFields::new()) }),
        ("ArrayOfHostPlugStoreTopologyTarget", TypeInfo::Value { name: "ArrayOfHostPlugStoreTopologyTarget", make_deserializer: || make_deser_with::<Vec<super::structs::HostPlugStoreTopologyTarget>>(wrap_array_of_host_plug_store_topology_target), from_value: |v| from_val_with::<Vec<super::structs::HostPlugStoreTopologyTarget>>(v, wrap_array_of_host_plug_store_topology_target) }),
        ("ArrayOfGeneralHostWarningEvent", TypeInfo::Value { name: "ArrayOfGeneralHostWarningEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_general_host_warning_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_general_host_warning_event) }),
        ("IDEDiskNotSupported", TypeInfo::Object { name: "IDEDiskNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IdeDiskNotSupported))) }),
        ("ArrayOfHostInternetScsiHbaIPv6Properties", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaIPv6Properties", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaIPv6Properties>>(wrap_array_of_host_internet_scsi_hba_i_pv_6_properties), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaIPv6Properties>>(v, wrap_array_of_host_internet_scsi_hba_i_pv_6_properties) }),
        ("FileLocked", TypeInfo::Object { name: "FileLocked", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FileLocked))) }),
        ("VmCloneFailedEvent", TypeInfo::Object { name: "VmCloneFailedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmCloneFailedEvent))) }),
        ("OvfCreateDescriptorResult", TypeInfo::Object { name: "OvfCreateDescriptorResult", builder_fn: || Box::new(OvfCreateDescriptorResultFields::new()) }),
        ("ArrayOfVirtualDiskSparseVer2BackingOption", TypeInfo::Value { name: "ArrayOfVirtualDiskSparseVer2BackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskSparseVer2BackingOption>>(wrap_array_of_virtual_disk_sparse_ver_2_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskSparseVer2BackingOption>>(v, wrap_array_of_virtual_disk_sparse_ver_2_backing_option) }),
        ("ArrayOfVsanClusterHealthConfigs", TypeInfo::Value { name: "ArrayOfVsanClusterHealthConfigs", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterHealthConfigs>>(wrap_array_of_vsan_cluster_health_configs), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterHealthConfigs>>(v, wrap_array_of_vsan_cluster_health_configs) }),
        ("ClusterComputeResourceVcsSlots", TypeInfo::Object { name: "ClusterComputeResourceVcsSlots", builder_fn: || Box::new(ClusterComputeResourceVcsSlotsFields::new()) }),
        ("LifecycleConfigDetails", TypeInfo::Object { name: "LifecycleConfigDetails", builder_fn: || Box::new(LifecycleConfigDetailsFields::new()) }),
        ("FaultToleranceAntiAffinityViolated", TypeInfo::Object { name: "FaultToleranceAntiAffinityViolated", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FaultToleranceAntiAffinityViolated))) }),
        ("ArrayOfVmEndRecordingEvent", TypeInfo::Value { name: "ArrayOfVmEndRecordingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_end_recording_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_end_recording_event) }),
        ("VsanPerfNodeInformation", TypeInfo::Object { name: "VsanPerfNodeInformation", builder_fn: || Box::new(VsanPerfNodeInformationFields::new()) }),
        ("PlacementSpec", TypeInfo::Object { name: "PlacementSpec", builder_fn: || Box::new(PlacementSpecFields::new()) }),
        ("ArrayOfVchaClusterConfigSpec", TypeInfo::Value { name: "ArrayOfVchaClusterConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VchaClusterConfigSpec>>(wrap_array_of_vcha_cluster_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VchaClusterConfigSpec>>(v, wrap_array_of_vcha_cluster_config_spec) }),
        ("MissingIpPool", TypeInfo::Object { name: "MissingIpPool", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MissingIpPool))) }),
        ("DVSRuntimeInfo", TypeInfo::Object { name: "DVSRuntimeInfo", builder_fn: || Box::new(DvsRuntimeInfoFields::new()) }),
        ("ArrayOfHostIpConfig", TypeInfo::Value { name: "ArrayOfHostIpConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_ip_config_array)), from_value: |v| cast_to_host_ip_config_array(from_value(v)?) }),
        ("ArrayOfAdminPasswordNotChangedEvent", TypeInfo::Value { name: "ArrayOfAdminPasswordNotChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_admin_password_not_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_admin_password_not_changed_event) }),
        ("ArrayOfReplicationVmInProgressFault", TypeInfo::Value { name: "ArrayOfReplicationVmInProgressFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_replication_vm_in_progress_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_replication_vm_in_progress_fault) }),
        ("VMFSDatastoreCreatedEvent", TypeInfo::Object { name: "VMFSDatastoreCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmfsDatastoreCreatedEvent))) }),
        ("WitnessNodeInfo", TypeInfo::Object { name: "WitnessNodeInfo", builder_fn: || Box::new(WitnessNodeInfoFields::new()) }),
        ("DvsUpdateTagNetworkRuleAction", TypeInfo::Object { name: "DvsUpdateTagNetworkRuleAction", builder_fn: || Box::new(DvsUpdateTagNetworkRuleActionFields::new()) }),
        ("VsanClusterVmdkLoadTestResult", TypeInfo::Object { name: "VsanClusterVmdkLoadTestResult", builder_fn: || Box::new(VsanClusterVmdkLoadTestResultFields::new()) }),
        ("VmRelocateSpecEvent", TypeInfo::Object { name: "VmRelocateSpecEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRelocateSpecEvent))) }),
        ("ArrayOfGuestMappedAliases", TypeInfo::Value { name: "ArrayOfGuestMappedAliases", make_deserializer: || make_deser_with::<Vec<super::structs::GuestMappedAliases>>(wrap_array_of_guest_mapped_aliases), from_value: |v| from_val_with::<Vec<super::structs::GuestMappedAliases>>(v, wrap_array_of_guest_mapped_aliases) }),
        ("CnsAccessControlSpec", TypeInfo::Object { name: "CnsAccessControlSpec", builder_fn: || Box::new(CnsAccessControlSpecFields::new()) }),
        ("CryptoSpecNoOp", TypeInfo::Object { name: "CryptoSpecNoOp", builder_fn: || Box::new(CryptoSpecNoOpFields::new()) }),
        ("ProfileCreatedEvent", TypeInfo::Object { name: "ProfileCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ProfileCreatedEvent))) }),
        ("ArrayOfClusterAgentVmProtected", TypeInfo::Value { name: "ArrayOfClusterAgentVmProtected", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentVmProtected>>(wrap_array_of_cluster_agent_vm_protected), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentVmProtected>>(v, wrap_array_of_cluster_agent_vm_protected) }),
        ("ArrayOfHostProfilesEntityCustomizations", TypeInfo::Value { name: "ArrayOfHostProfilesEntityCustomizations", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_profiles_entity_customizations_array)), from_value: |v| cast_to_host_profiles_entity_customizations_array(from_value(v)?) }),
        ("ArrayOfVimVsanHostTrimDiskEntry", TypeInfo::Value { name: "ArrayOfVimVsanHostTrimDiskEntry", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostTrimDiskEntry>>(wrap_array_of_vim_vsan_host_trim_disk_entry), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostTrimDiskEntry>>(v, wrap_array_of_vim_vsan_host_trim_disk_entry) }),
        ("AgencyVMFolder", TypeInfo::Object { name: "AgencyVMFolder", builder_fn: || Box::new(AgencyVmFolderFields::new()) }),
        ("PbmCapabilityTypeInfo", TypeInfo::Object { name: "PbmCapabilityTypeInfo", builder_fn: || Box::new(PbmCapabilityTypeInfoFields::new()) }),
        ("VsanDiskFault", TypeInfo::Object { name: "VsanDiskFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VsanDiskFault))) }),
        ("vslmInfrastructureObjectPolicy", TypeInfo::Object { name: "vslmInfrastructureObjectPolicy", builder_fn: || Box::new(VslmInfrastructureObjectPolicyFields::new()) }),
        ("ArrayOfNoPermission", TypeInfo::Value { name: "ArrayOfNoPermission", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_permission), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_permission) }),
        ("ArrayOfClusterFailoverLevelAdmissionControlPolicy", TypeInfo::Value { name: "ArrayOfClusterFailoverLevelAdmissionControlPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterFailoverLevelAdmissionControlPolicy>>(wrap_array_of_cluster_failover_level_admission_control_policy), from_value: |v| from_val_with::<Vec<super::structs::ClusterFailoverLevelAdmissionControlPolicy>>(v, wrap_array_of_cluster_failover_level_admission_control_policy) }),
        ("CnsVolumeSource", TypeInfo::Object { name: "CnsVolumeSource", builder_fn: || Box::new(CnsVolumeSourceFields::new()) }),
        ("NoHostSuitableForFtSecondary", TypeInfo::Object { name: "NoHostSuitableForFtSecondary", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoHostSuitableForFtSecondary))) }),
        ("ArrayOfHostMountInfo", TypeInfo::Value { name: "ArrayOfHostMountInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostMountInfo>>(wrap_array_of_host_mount_info), from_value: |v| from_val_with::<Vec<super::structs::HostMountInfo>>(v, wrap_array_of_host_mount_info) }),
        ("MissingBmcSupport", TypeInfo::Object { name: "MissingBmcSupport", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MissingBmcSupport))) }),
        ("ArrayOfVirtualHdAudioCard", TypeInfo::Value { name: "ArrayOfVirtualHdAudioCard", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualHdAudioCard>>(wrap_array_of_virtual_hd_audio_card), from_value: |v| from_val_with::<Vec<super::structs::VirtualHdAudioCard>>(v, wrap_array_of_virtual_hd_audio_card) }),
        ("ArrayOfOvfPropertyQualifierDuplicate", TypeInfo::Value { name: "ArrayOfOvfPropertyQualifierDuplicate", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_property_qualifier_duplicate), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_property_qualifier_duplicate) }),
        ("ArrayOfVirtualDevice", TypeInfo::Value { name: "ArrayOfVirtualDevice", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_device_array)), from_value: |v| cast_to_virtual_device_array(from_value(v)?) }),
        ("VirtualDeviceOption", TypeInfo::Object { name: "VirtualDeviceOption", builder_fn: || Box::new(VirtualDeviceOptionFields::new()) }),
        ("ResourceConfigSpec", TypeInfo::Object { name: "ResourceConfigSpec", builder_fn: || Box::new(ResourceConfigSpecFields::new()) }),
        ("DvsUpgradedEvent", TypeInfo::Object { name: "DvsUpgradedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsUpgradedEvent))) }),
        ("ArrayOfHostVMotionManagerSrcInstantCloneResult", TypeInfo::Value { name: "ArrayOfHostVMotionManagerSrcInstantCloneResult", make_deserializer: || make_deser_with::<Vec<super::structs::HostVMotionManagerSrcInstantCloneResult>>(wrap_array_of_host_v_motion_manager_src_instant_clone_result), from_value: |v| from_val_with::<Vec<super::structs::HostVMotionManagerSrcInstantCloneResult>>(v, wrap_array_of_host_v_motion_manager_src_instant_clone_result) }),
        ("ArrayOfOvfInvalidValueConfiguration", TypeInfo::Value { name: "ArrayOfOvfInvalidValueConfiguration", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_invalid_value_configuration), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_invalid_value_configuration) }),
        ("ArrayOfLinkProfile", TypeInfo::Value { name: "ArrayOfLinkProfile", make_deserializer: || make_deser_with::<Vec<super::structs::LinkProfile>>(wrap_array_of_link_profile), from_value: |v| from_val_with::<Vec<super::structs::LinkProfile>>(v, wrap_array_of_link_profile) }),
        ("ArrayOfMksConnectionLimitReached", TypeInfo::Value { name: "ArrayOfMksConnectionLimitReached", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_mks_connection_limit_reached), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_mks_connection_limit_reached) }),
        ("ArrayOfHostMultipathInfoLogicalUnitStorageArrayTypePolicy", TypeInfo::Value { name: "ArrayOfHostMultipathInfoLogicalUnitStorageArrayTypePolicy", make_deserializer: || make_deser_with::<Vec<super::structs::HostMultipathInfoLogicalUnitStorageArrayTypePolicy>>(wrap_array_of_host_multipath_info_logical_unit_storage_array_type_policy), from_value: |v| from_val_with::<Vec<super::structs::HostMultipathInfoLogicalUnitStorageArrayTypePolicy>>(v, wrap_array_of_host_multipath_info_logical_unit_storage_array_type_policy) }),
        ("ArrayOfVsanCompliantFirmware", TypeInfo::Value { name: "ArrayOfVsanCompliantFirmware", make_deserializer: || make_deser_with::<Vec<super::structs::VsanCompliantFirmware>>(wrap_array_of_vsan_compliant_firmware), from_value: |v| from_val_with::<Vec<super::structs::VsanCompliantFirmware>>(v, wrap_array_of_vsan_compliant_firmware) }),
        ("ArrayOfVirtualMachinePropertyRelation", TypeInfo::Value { name: "ArrayOfVirtualMachinePropertyRelation", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachinePropertyRelation>>(wrap_array_of_virtual_machine_property_relation), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachinePropertyRelation>>(v, wrap_array_of_virtual_machine_property_relation) }),
        ("IntegrityAgencyCannotStageSoftware", TypeInfo::Object { name: "IntegrityAgencyCannotStageSoftware", builder_fn: || Box::new(IntegrityAgencyCannotStageSoftwareFields::new()) }),
        ("ArrayOfVsanIperfClientSpec", TypeInfo::Value { name: "ArrayOfVsanIperfClientSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIperfClientSpec>>(wrap_array_of_vsan_iperf_client_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanIperfClientSpec>>(v, wrap_array_of_vsan_iperf_client_spec) }),
        ("SolutionsHookAcknowledgeConfig", TypeInfo::Object { name: "SolutionsHookAcknowledgeConfig", builder_fn: || Box::new(SolutionsHookAcknowledgeConfigFields::new()) }),
        ("VmEndRecordingEvent", TypeInfo::Object { name: "VmEndRecordingEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmEndRecordingEvent))) }),
        ("OvfConsumerOstNode", TypeInfo::Object { name: "OvfConsumerOstNode", builder_fn: || Box::new(OvfConsumerOstNodeFields::new()) }),
        ("ArrayOfHostSpbmPolicyInfo", TypeInfo::Value { name: "ArrayOfHostSpbmPolicyInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSpbmPolicyInfo>>(wrap_array_of_host_spbm_policy_info), from_value: |v| from_val_with::<Vec<super::structs::HostSpbmPolicyInfo>>(v, wrap_array_of_host_spbm_policy_info) }),
        ("ArrayOfHostLowLevelProvisioningManagerFileDeleteSpec", TypeInfo::Value { name: "ArrayOfHostLowLevelProvisioningManagerFileDeleteSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostLowLevelProvisioningManagerFileDeleteSpec>>(wrap_array_of_host_low_level_provisioning_manager_file_delete_spec), from_value: |v| from_val_with::<Vec<super::structs::HostLowLevelProvisioningManagerFileDeleteSpec>>(v, wrap_array_of_host_low_level_provisioning_manager_file_delete_spec) }),
        ("GatewayNotFound", TypeInfo::Object { name: "GatewayNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GatewayNotFound))) }),
        ("ArrayOfVsanHostServerClusterUnicastInfo", TypeInfo::Value { name: "ArrayOfVsanHostServerClusterUnicastInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostServerClusterUnicastInfo>>(wrap_array_of_vsan_host_server_cluster_unicast_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostServerClusterUnicastInfo>>(v, wrap_array_of_vsan_host_server_cluster_unicast_info) }),
        ("ArrayOfHostFaultToleranceManagerComponentHealthInfo", TypeInfo::Value { name: "ArrayOfHostFaultToleranceManagerComponentHealthInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostFaultToleranceManagerComponentHealthInfo>>(wrap_array_of_host_fault_tolerance_manager_component_health_info), from_value: |v| from_val_with::<Vec<super::structs::HostFaultToleranceManagerComponentHealthInfo>>(v, wrap_array_of_host_fault_tolerance_manager_component_health_info) }),
        ("UserSearchResult", TypeInfo::Object { name: "UserSearchResult", builder_fn: || Box::new(UserSearchResultFields::new()) }),
        ("DiskClaimConfiguration", TypeInfo::Object { name: "DiskClaimConfiguration", builder_fn: || Box::new(DiskClaimConfigurationFields::new()) }),
        ("VsanBurnInTestCheckResult", TypeInfo::Object { name: "VsanBurnInTestCheckResult", builder_fn: || Box::new(VsanBurnInTestCheckResultFields::new()) }),
        ("DuplicateIpDetectedEvent", TypeInfo::Object { name: "DuplicateIpDetectedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DuplicateIpDetectedEvent))) }),
        ("ArrayOfHostPlugStoreTopologyPlugin", TypeInfo::Value { name: "ArrayOfHostPlugStoreTopologyPlugin", make_deserializer: || make_deser_with::<Vec<super::structs::HostPlugStoreTopologyPlugin>>(wrap_array_of_host_plug_store_topology_plugin), from_value: |v| from_val_with::<Vec<super::structs::HostPlugStoreTopologyPlugin>>(v, wrap_array_of_host_plug_store_topology_plugin) }),
        ("CannotAccessAgentVib", TypeInfo::Object { name: "CannotAccessAgentVib", builder_fn: || Box::new(CannotAccessAgentVibFields::new()) }),
        ("VirtualSCSIControllerOption", TypeInfo::Object { name: "VirtualSCSIControllerOption", builder_fn: || Box::new(VirtualScsiControllerOptionFields::new()) }),
        ("ArrayOfWakeOnLanNotSupported", TypeInfo::Value { name: "ArrayOfWakeOnLanNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_wake_on_lan_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_wake_on_lan_not_supported) }),
        ("ArrayOfNetIpRouteConfigSpecGatewaySpec", TypeInfo::Value { name: "ArrayOfNetIpRouteConfigSpecGatewaySpec", make_deserializer: || make_deser_with::<Vec<super::structs::NetIpRouteConfigSpecGatewaySpec>>(wrap_array_of_net_ip_route_config_spec_gateway_spec), from_value: |v| from_val_with::<Vec<super::structs::NetIpRouteConfigSpecGatewaySpec>>(v, wrap_array_of_net_ip_route_config_spec_gateway_spec) }),
        ("AgencyConfigInfo", TypeInfo::Object { name: "AgencyConfigInfo", builder_fn: || Box::new(AgencyConfigInfoFields::new()) }),
        ("ArrayOfEntityBackupConfig", TypeInfo::Value { name: "ArrayOfEntityBackupConfig", make_deserializer: || make_deser_with::<Vec<super::structs::EntityBackupConfig>>(wrap_array_of_entity_backup_config), from_value: |v| from_val_with::<Vec<super::structs::EntityBackupConfig>>(v, wrap_array_of_entity_backup_config) }),
        ("VStorageObjectSnapshotDetails", TypeInfo::Object { name: "VStorageObjectSnapshotDetails", builder_fn: || Box::new(VStorageObjectSnapshotDetailsFields::new()) }),
        ("CustomizationSysprepText", TypeInfo::Object { name: "CustomizationSysprepText", builder_fn: || Box::new(CustomizationSysprepTextFields::new()) }),
        ("ArrayOfVmRequiresHostOutOfMaintenanceMode", TypeInfo::Value { name: "ArrayOfVmRequiresHostOutOfMaintenanceMode", make_deserializer: || make_deser_with::<Vec<super::structs::VmRequiresHostOutOfMaintenanceMode>>(wrap_array_of_vm_requires_host_out_of_maintenance_mode), from_value: |v| from_val_with::<Vec<super::structs::VmRequiresHostOutOfMaintenanceMode>>(v, wrap_array_of_vm_requires_host_out_of_maintenance_mode) }),
        ("ClusterVmHostRuleInfo", TypeInfo::Object { name: "ClusterVmHostRuleInfo", builder_fn: || Box::new(ClusterVmHostRuleInfoFields::new()) }),
        ("ArrayOfHostUserWorldSwapNotEnabledEvent", TypeInfo::Value { name: "ArrayOfHostUserWorldSwapNotEnabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_user_world_swap_not_enabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_user_world_swap_not_enabled_event) }),
        ("ArrayOfNoAgentVmNetwork", TypeInfo::Value { name: "ArrayOfNoAgentVmNetwork", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_no_agent_vm_network_array)), from_value: |v| cast_to_no_agent_vm_network_array(from_value(v)?) }),
        ("ResourcePoolQuickStats", TypeInfo::Object { name: "ResourcePoolQuickStats", builder_fn: || Box::new(ResourcePoolQuickStatsFields::new()) }),
        ("ArrayOfVslmVsoVStorageObjectAssociationsVmDiskAssociation", TypeInfo::Value { name: "ArrayOfVslmVsoVStorageObjectAssociationsVmDiskAssociation", make_deserializer: || make_deser_with::<Vec<super::structs::VslmVsoVStorageObjectAssociationsVmDiskAssociation>>(wrap_array_of_vslm_vso_v_storage_object_associations_vm_disk_association), from_value: |v| from_val_with::<Vec<super::structs::VslmVsoVStorageObjectAssociationsVmDiskAssociation>>(v, wrap_array_of_vslm_vso_v_storage_object_associations_vm_disk_association) }),
        ("ArrayOfClusterDrsRecommendation", TypeInfo::Value { name: "ArrayOfClusterDrsRecommendation", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDrsRecommendation>>(wrap_array_of_cluster_drs_recommendation), from_value: |v| from_val_with::<Vec<super::structs::ClusterDrsRecommendation>>(v, wrap_array_of_cluster_drs_recommendation) }),
        ("SnapshotLocked", TypeInfo::Object { name: "SnapshotLocked", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotLocked))) }),
        ("ArrayOfVsanHclCommonDeviceInfo", TypeInfo::Value { name: "ArrayOfVsanHclCommonDeviceInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_hcl_common_device_info_array)), from_value: |v| cast_to_vsan_hcl_common_device_info_array(from_value(v)?) }),
        ("VirtualDiskFlatVer2BackingOption", TypeInfo::Object { name: "VirtualDiskFlatVer2BackingOption", builder_fn: || Box::new(VirtualDiskFlatVer2BackingOptionFields::new()) }),
        ("ArrayOfHostDiagnosticPartitionCreateSpec", TypeInfo::Value { name: "ArrayOfHostDiagnosticPartitionCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiagnosticPartitionCreateSpec>>(wrap_array_of_host_diagnostic_partition_create_spec), from_value: |v| from_val_with::<Vec<super::structs::HostDiagnosticPartitionCreateSpec>>(v, wrap_array_of_host_diagnostic_partition_create_spec) }),
        ("ArrayOfStorageDrsPodConfigInfo", TypeInfo::Value { name: "ArrayOfStorageDrsPodConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsPodConfigInfo>>(wrap_array_of_storage_drs_pod_config_info), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsPodConfigInfo>>(v, wrap_array_of_storage_drs_pod_config_info) }),
        ("ArrayOfInvalidIpmiMacAddress", TypeInfo::Value { name: "ArrayOfInvalidIpmiMacAddress", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_ipmi_mac_address), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_ipmi_mac_address) }),
        ("ClusterConfigSpecEx", TypeInfo::Object { name: "ClusterConfigSpecEx", builder_fn: || Box::new(ClusterConfigSpecExFields::new()) }),
        ("ArrayOfIscsiFaultVnicHasNoUplinks", TypeInfo::Value { name: "ArrayOfIscsiFaultVnicHasNoUplinks", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault_vnic_has_no_uplinks), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault_vnic_has_no_uplinks) }),
        ("VslmRelocateSpec", TypeInfo::Object { name: "VslmRelocateSpec", builder_fn: || Box::new(VslmRelocateSpecFields::new()) }),
        ("ArrayOfCustomizationFixedIpV6", TypeInfo::Value { name: "ArrayOfCustomizationFixedIpV6", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationFixedIpV6>>(wrap_array_of_customization_fixed_ip_v_6), from_value: |v| from_val_with::<Vec<super::structs::CustomizationFixedIpV6>>(v, wrap_array_of_customization_fixed_ip_v_6) }),
        ("ArrayOfHostProfileSerializedHostProfileSpec", TypeInfo::Value { name: "ArrayOfHostProfileSerializedHostProfileSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostProfileSerializedHostProfileSpec>>(wrap_array_of_host_profile_serialized_host_profile_spec), from_value: |v| from_val_with::<Vec<super::structs::HostProfileSerializedHostProfileSpec>>(v, wrap_array_of_host_profile_serialized_host_profile_spec) }),
        ("VvolDatastoreInfo", TypeInfo::Object { name: "VvolDatastoreInfo", builder_fn: || Box::new(VvolDatastoreInfoFields::new()) }),
        ("ArrayOfConflictingConfigurationConfig", TypeInfo::Value { name: "ArrayOfConflictingConfigurationConfig", make_deserializer: || make_deser_with::<Vec<super::structs::ConflictingConfigurationConfig>>(wrap_array_of_conflicting_configuration_config), from_value: |v| from_val_with::<Vec<super::structs::ConflictingConfigurationConfig>>(v, wrap_array_of_conflicting_configuration_config) }),
        ("ArrayOfPerfEntityMetricCSV", TypeInfo::Value { name: "ArrayOfPerfEntityMetricCSV", make_deserializer: || make_deser_with::<Vec<super::structs::PerfEntityMetricCsv>>(wrap_array_of_perf_entity_metric_csv), from_value: |v| from_val_with::<Vec<super::structs::PerfEntityMetricCsv>>(v, wrap_array_of_perf_entity_metric_csv) }),
        ("ArrayOfInvalidIpmiLoginInfo", TypeInfo::Value { name: "ArrayOfInvalidIpmiLoginInfo", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_ipmi_login_info), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_ipmi_login_info) }),
        ("VirtualMachineCertThumbprint", TypeInfo::Object { name: "VirtualMachineCertThumbprint", builder_fn: || Box::new(VirtualMachineCertThumbprintFields::new()) }),
        ("ArrayOfVirtualDiskOption", TypeInfo::Value { name: "ArrayOfVirtualDiskOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskOption>>(wrap_array_of_virtual_disk_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskOption>>(v, wrap_array_of_virtual_disk_option) }),
        ("ArrayOfDatastoreSummary", TypeInfo::Value { name: "ArrayOfDatastoreSummary", make_deserializer: || make_deser_with::<Vec<super::structs::DatastoreSummary>>(wrap_array_of_datastore_summary), from_value: |v| from_val_with::<Vec<super::structs::DatastoreSummary>>(v, wrap_array_of_datastore_summary) }),
        ("ArrayOfHostInternetScsiHbaDigestCapabilities", TypeInfo::Value { name: "ArrayOfHostInternetScsiHbaDigestCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::HostInternetScsiHbaDigestCapabilities>>(wrap_array_of_host_internet_scsi_hba_digest_capabilities), from_value: |v| from_val_with::<Vec<super::structs::HostInternetScsiHbaDigestCapabilities>>(v, wrap_array_of_host_internet_scsi_hba_digest_capabilities) }),
        ("CustomizationPassword", TypeInfo::Object { name: "CustomizationPassword", builder_fn: || Box::new(CustomizationPasswordFields::new()) }),
        ("ArrayOfCpuIncompatible81EDX", TypeInfo::Value { name: "ArrayOfCpuIncompatible81EDX", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cpu_incompatible_81_edx), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cpu_incompatible_81_edx) }),
        ("SolutionsVMSource", TypeInfo::Object { name: "SolutionsVMSource", builder_fn: || Box::new(SolutionsVmSourceFields::new()) }),
        ("VslmTaskInfoState", TypeInfo::Value { name: "VslmTaskInfoState", make_deserializer: || make_deser_with::<super::enums::VslmTaskInfoStateEnum>(wrap_vslm_task_info_state), from_value: |v| from_val_with::<super::enums::VslmTaskInfoStateEnum>(v, wrap_vslm_task_info_state) }),
        ("ArrayOfPbmCompatibilityCheckFault", TypeInfo::Value { name: "ArrayOfPbmCompatibilityCheckFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_compatibility_check_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_compatibility_check_fault) }),
        ("ArrayOfIntOption", TypeInfo::Value { name: "ArrayOfIntOption", make_deserializer: || make_deser_with::<Vec<super::structs::IntOption>>(wrap_array_of_int_option), from_value: |v| from_val_with::<Vec<super::structs::IntOption>>(v, wrap_array_of_int_option) }),
        ("ArrayOfVmSuspended", TypeInfo::Value { name: "ArrayOfVmSuspended", make_deserializer: || make_deser_with::<Vec<super::structs::VmSuspended>>(wrap_array_of_vm_suspended), from_value: |v| from_val_with::<Vec<super::structs::VmSuspended>>(v, wrap_array_of_vm_suspended) }),
        ("ArrayOfClusterRuntimeInfo", TypeInfo::Value { name: "ArrayOfClusterRuntimeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterRuntimeInfo>>(wrap_array_of_cluster_runtime_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterRuntimeInfo>>(v, wrap_array_of_cluster_runtime_info) }),
        ("ArrayOfVsanStorageComplianceResult", TypeInfo::Value { name: "ArrayOfVsanStorageComplianceResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanStorageComplianceResult>>(wrap_array_of_vsan_storage_compliance_result), from_value: |v| from_val_with::<Vec<super::structs::VsanStorageComplianceResult>>(v, wrap_array_of_vsan_storage_compliance_result) }),
        ("ClusterComputeResourceVCProfile", TypeInfo::Object { name: "ClusterComputeResourceVCProfile", builder_fn: || Box::new(ClusterComputeResourceVcProfileFields::new()) }),
        ("HostProfileManagerCompositionValidationResult", TypeInfo::Object { name: "HostProfileManagerCompositionValidationResult", builder_fn: || Box::new(HostProfileManagerCompositionValidationResultFields::new()) }),
        ("VmDiskFileQueryFilter", TypeInfo::Object { name: "VmDiskFileQueryFilter", builder_fn: || Box::new(VmDiskFileQueryFilterFields::new()) }),
        ("VmBeingCreatedEvent", TypeInfo::Object { name: "VmBeingCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmBeingCreatedEvent))) }),
        ("VsanHostEncryptionInfo", TypeInfo::Object { name: "VsanHostEncryptionInfo", builder_fn: || Box::new(VsanHostEncryptionInfoFields::new()) }),
        ("ArrayOfPointInTimeReplicaId", TypeInfo::Value { name: "ArrayOfPointInTimeReplicaId", make_deserializer: || make_deser_with::<Vec<super::structs::PointInTimeReplicaId>>(wrap_array_of_point_in_time_replica_id), from_value: |v| from_val_with::<Vec<super::structs::PointInTimeReplicaId>>(v, wrap_array_of_point_in_time_replica_id) }),
        ("ArrayOfHostVirtualSwitchBondBridge", TypeInfo::Value { name: "ArrayOfHostVirtualSwitchBondBridge", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualSwitchBondBridge>>(wrap_array_of_host_virtual_switch_bond_bridge), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualSwitchBondBridge>>(v, wrap_array_of_host_virtual_switch_bond_bridge) }),
        ("UncustomizableGuest", TypeInfo::Object { name: "UncustomizableGuest", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UncustomizableGuest))) }),
        ("HostRuntimeInfoStateEncryptionInfo", TypeInfo::Object { name: "HostRuntimeInfoStateEncryptionInfo", builder_fn: || Box::new(HostRuntimeInfoStateEncryptionInfoFields::new()) }),
        ("ArrayOfVirtualDiskPartitionedRawDiskVer2BackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDiskPartitionedRawDiskVer2BackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskPartitionedRawDiskVer2BackingInfo>>(wrap_array_of_virtual_disk_partitioned_raw_disk_ver_2_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskPartitionedRawDiskVer2BackingInfo>>(v, wrap_array_of_virtual_disk_partitioned_raw_disk_ver_2_backing_info) }),
        ("ArrayOfCnsBackingObjectDetails", TypeInfo::Value { name: "ArrayOfCnsBackingObjectDetails", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cns_backing_object_details_array)), from_value: |v| cast_to_cns_backing_object_details_array(from_value(v)?) }),
        ("ArrayOfClusterVmOrchestrationSpec", TypeInfo::Value { name: "ArrayOfClusterVmOrchestrationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterVmOrchestrationSpec>>(wrap_array_of_cluster_vm_orchestration_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterVmOrchestrationSpec>>(v, wrap_array_of_cluster_vm_orchestration_spec) }),
        ("ArrayOfHostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption", TypeInfo::Value { name: "ArrayOfHostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption", make_deserializer: || make_deser_with::<Vec<super::structs::HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption>>(wrap_array_of_host_v_flash_manager_v_flash_cache_config_info_v_flash_module_config_option), from_value: |v| from_val_with::<Vec<super::structs::HostVFlashManagerVFlashCacheConfigInfoVFlashModuleConfigOption>>(v, wrap_array_of_host_v_flash_manager_v_flash_cache_config_info_v_flash_module_config_option) }),
        ("ArrayOfOvfInvalidVmName", TypeInfo::Value { name: "ArrayOfOvfInvalidVmName", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_invalid_vm_name), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_invalid_vm_name) }),
        ("ArrayOfBlockedByFirewall", TypeInfo::Value { name: "ArrayOfBlockedByFirewall", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_blocked_by_firewall), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_blocked_by_firewall) }),
        ("VsanXvcQueryPropertyValue", TypeInfo::Object { name: "VsanXvcQueryPropertyValue", builder_fn: || Box::new(VsanXvcQueryPropertyValueFields::new()) }),
        ("ArrayOfVslmQueryDatastoreInfoResult", TypeInfo::Value { name: "ArrayOfVslmQueryDatastoreInfoResult", make_deserializer: || make_deser_with::<Vec<super::structs::VslmQueryDatastoreInfoResult>>(wrap_array_of_vslm_query_datastore_info_result), from_value: |v| from_val_with::<Vec<super::structs::VslmQueryDatastoreInfoResult>>(v, wrap_array_of_vslm_query_datastore_info_result) }),
        ("VsanDataEncryptionConfig", TypeInfo::Object { name: "VsanDataEncryptionConfig", builder_fn: || Box::new(VsanDataEncryptionConfigFields::new()) }),
        ("HostPnicNetworkResourceInfo", TypeInfo::Object { name: "HostPnicNetworkResourceInfo", builder_fn: || Box::new(HostPnicNetworkResourceInfoFields::new()) }),
        ("ArrayOfProfileDescription", TypeInfo::Value { name: "ArrayOfProfileDescription", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileDescription>>(wrap_array_of_profile_description), from_value: |v| from_val_with::<Vec<super::structs::ProfileDescription>>(v, wrap_array_of_profile_description) }),
        ("ArrayOfVSANSharedWitnessCompatibilityResult", TypeInfo::Value { name: "ArrayOfVSANSharedWitnessCompatibilityResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSharedWitnessCompatibilityResult>>(wrap_array_of_vsan_shared_witness_compatibility_result), from_value: |v| from_val_with::<Vec<super::structs::VsanSharedWitnessCompatibilityResult>>(v, wrap_array_of_vsan_shared_witness_compatibility_result) }),
        ("ArrayOfHostMemoryProfile", TypeInfo::Value { name: "ArrayOfHostMemoryProfile", make_deserializer: || make_deser_with::<Vec<super::structs::HostMemoryProfile>>(wrap_array_of_host_memory_profile), from_value: |v| from_val_with::<Vec<super::structs::HostMemoryProfile>>(v, wrap_array_of_host_memory_profile) }),
        ("OvfUnsupportedElementValue", TypeInfo::Object { name: "OvfUnsupportedElementValue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedElementValue))) }),
        ("DVPortgroupCreatedEvent", TypeInfo::Object { name: "DVPortgroupCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvPortgroupCreatedEvent))) }),
        ("ClusterDasVmConfigSpec", TypeInfo::Object { name: "ClusterDasVmConfigSpec", builder_fn: || Box::new(ClusterDasVmConfigSpecFields::new()) }),
        ("ArrayOfVsanHclControllerInfo", TypeInfo::Value { name: "ArrayOfVsanHclControllerInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclControllerInfo>>(wrap_array_of_vsan_hcl_controller_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHclControllerInfo>>(v, wrap_array_of_vsan_hcl_controller_info) }),
        ("HostIpInconsistentEvent", TypeInfo::Object { name: "HostIpInconsistentEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostIpInconsistentEvent))) }),
        ("ArrayOfSecondaryVmAlreadyEnabled", TypeInfo::Value { name: "ArrayOfSecondaryVmAlreadyEnabled", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_secondary_vm_already_enabled), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_secondary_vm_already_enabled) }),
        ("AgentRuntimeInfo", TypeInfo::Object { name: "AgentRuntimeInfo", builder_fn: || Box::new(AgentRuntimeInfoFields::new()) }),
        ("DvsDestroyedEvent", TypeInfo::Object { name: "DvsDestroyedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvsDestroyedEvent))) }),
        ("ArrayOfStorageProcessor", TypeInfo::Value { name: "ArrayOfStorageProcessor", make_deserializer: || make_deser_with::<Vec<super::structs::StorageProcessor>>(wrap_array_of_storage_processor), from_value: |v| from_val_with::<Vec<super::structs::StorageProcessor>>(v, wrap_array_of_storage_processor) }),
        ("ArrayOfStorageContainerResult", TypeInfo::Value { name: "ArrayOfStorageContainerResult", make_deserializer: || make_deser_with::<Vec<super::structs::StorageContainerResult>>(wrap_array_of_storage_container_result), from_value: |v| from_val_with::<Vec<super::structs::StorageContainerResult>>(v, wrap_array_of_storage_container_result) }),
        ("BatchResult", TypeInfo::Object { name: "BatchResult", builder_fn: || Box::new(BatchResultFields::new()) }),
        ("NoCompatibleSoftAffinityHost", TypeInfo::Object { name: "NoCompatibleSoftAffinityHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoCompatibleSoftAffinityHost))) }),
        ("VmRestartedOnAlternateHostEvent", TypeInfo::Object { name: "VmRestartedOnAlternateHostEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmRestartedOnAlternateHostEvent))) }),
        ("ArrayOfVsanHostDiskMapping", TypeInfo::Value { name: "ArrayOfVsanHostDiskMapping", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostDiskMapping>>(wrap_array_of_vsan_host_disk_mapping), from_value: |v| from_val_with::<Vec<super::structs::VsanHostDiskMapping>>(v, wrap_array_of_vsan_host_disk_mapping) }),
        ("PerfInterval", TypeInfo::Object { name: "PerfInterval", builder_fn: || Box::new(PerfIntervalFields::new()) }),
        ("StorageIORMConfigSpec", TypeInfo::Object { name: "StorageIORMConfigSpec", builder_fn: || Box::new(StorageIormConfigSpecFields::new()) }),
        ("VsanInTransitEncryptionInfo", TypeInfo::Object { name: "VsanInTransitEncryptionInfo", builder_fn: || Box::new(VsanInTransitEncryptionInfoFields::new()) }),
        ("GuestRegValueSpec", TypeInfo::Object { name: "GuestRegValueSpec", builder_fn: || Box::new(GuestRegValueSpecFields::new()) }),
        ("ClusterAgentVmNotDeployed", TypeInfo::Object { name: "ClusterAgentVmNotDeployed", builder_fn: || Box::new(ClusterAgentVmNotDeployedFields::new()) }),
        ("VirtualCdromAtapiBackingOption", TypeInfo::Object { name: "VirtualCdromAtapiBackingOption", builder_fn: || Box::new(VirtualCdromAtapiBackingOptionFields::new()) }),
        ("NetDhcpConfigInfoDhcpOptions", TypeInfo::Object { name: "NetDhcpConfigInfoDhcpOptions", builder_fn: || Box::new(NetDhcpConfigInfoDhcpOptionsFields::new()) }),
        ("ArrayOfVslmMigrateSpec", TypeInfo::Value { name: "ArrayOfVslmMigrateSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vslm_migrate_spec_array)), from_value: |v| cast_to_vslm_migrate_spec_array(from_value(v)?) }),
        ("ArrayOfFcoeFaultPnicHasNoPortSet", TypeInfo::Value { name: "ArrayOfFcoeFaultPnicHasNoPortSet", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fcoe_fault_pnic_has_no_port_set), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fcoe_fault_pnic_has_no_port_set) }),
        ("VirtualMachineVMIROM", TypeInfo::Object { name: "VirtualMachineVMIROM", builder_fn: || Box::new(VirtualMachineVmiromFields::new()) }),
        ("ArrayOfHostNvmeOverTcpParameters", TypeInfo::Value { name: "ArrayOfHostNvmeOverTcpParameters", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeOverTcpParameters>>(wrap_array_of_host_nvme_over_tcp_parameters), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeOverTcpParameters>>(v, wrap_array_of_host_nvme_over_tcp_parameters) }),
        ("ArrayOfStorageDrsIoLoadBalanceConfig", TypeInfo::Value { name: "ArrayOfStorageDrsIoLoadBalanceConfig", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsIoLoadBalanceConfig>>(wrap_array_of_storage_drs_io_load_balance_config), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsIoLoadBalanceConfig>>(v, wrap_array_of_storage_drs_io_load_balance_config) }),
        ("HostDatastoreConnectInfo", TypeInfo::Object { name: "HostDatastoreConnectInfo", builder_fn: || Box::new(HostDatastoreConnectInfoFields::new()) }),
        ("ArrayOfVsanWhatIfEvacDetail", TypeInfo::Value { name: "ArrayOfVsanWhatIfEvacDetail", make_deserializer: || make_deser_with::<Vec<super::structs::VsanWhatIfEvacDetail>>(wrap_array_of_vsan_what_if_evac_detail), from_value: |v| from_val_with::<Vec<super::structs::VsanWhatIfEvacDetail>>(v, wrap_array_of_vsan_what_if_evac_detail) }),
        ("ArrayOfVmRegisteredEvent", TypeInfo::Value { name: "ArrayOfVmRegisteredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_registered_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_registered_event) }),
        ("FaultToleranceSecondaryConfigInfo", TypeInfo::Object { name: "FaultToleranceSecondaryConfigInfo", builder_fn: || Box::new(FaultToleranceSecondaryConfigInfoFields::new()) }),
        ("ArrayOfClusterAgentAgentIssue", TypeInfo::Value { name: "ArrayOfClusterAgentAgentIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_agent_agent_issue_array)), from_value: |v| cast_to_cluster_agent_agent_issue_array(from_value(v)?) }),
        ("DatastoreFileCopiedEvent", TypeInfo::Object { name: "DatastoreFileCopiedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DatastoreFileCopiedEvent))) }),
        ("ClusterIoFilterInfo", TypeInfo::Object { name: "ClusterIoFilterInfo", builder_fn: || Box::new(ClusterIoFilterInfoFields::new()) }),
        ("FileNotFound", TypeInfo::Object { name: "FileNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FileNotFound))) }),
        ("ArrayOfVirtualMachineSnapshotTree", TypeInfo::Value { name: "ArrayOfVirtualMachineSnapshotTree", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineSnapshotTree>>(wrap_array_of_virtual_machine_snapshot_tree), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineSnapshotTree>>(v, wrap_array_of_virtual_machine_snapshot_tree) }),
        ("ArrayOfVsanIscsiLUNCommonInfo", TypeInfo::Value { name: "ArrayOfVsanIscsiLUNCommonInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_iscsi_lun_common_info_array)), from_value: |v| cast_to_vsan_iscsi_lun_common_info_array(from_value(v)?) }),
        ("NoClientCertificate", TypeInfo::Object { name: "NoClientCertificate", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoClientCertificate))) }),
        ("ArrayOfEntityBackup", TypeInfo::Value { name: "ArrayOfEntityBackup", make_deserializer: || make_deser_with::<Vec<super::structs::EntityBackup>>(wrap_array_of_entity_backup), from_value: |v| from_val_with::<Vec<super::structs::EntityBackup>>(v, wrap_array_of_entity_backup) }),
        ("ArrayOfAuthorizationPrivilege", TypeInfo::Value { name: "ArrayOfAuthorizationPrivilege", make_deserializer: || make_deser_with::<Vec<super::structs::AuthorizationPrivilege>>(wrap_array_of_authorization_privilege), from_value: |v| from_val_with::<Vec<super::structs::AuthorizationPrivilege>>(v, wrap_array_of_authorization_privilege) }),
        ("OvfElementInvalidValue", TypeInfo::Object { name: "OvfElementInvalidValue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfElementInvalidValue))) }),
        ("VsanCompatibilityCheckResult", TypeInfo::Object { name: "VsanCompatibilityCheckResult", builder_fn: || Box::new(VsanCompatibilityCheckResultFields::new()) }),
        ("ArrayOfVspanDestPortConflict", TypeInfo::Value { name: "ArrayOfVspanDestPortConflict", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vspan_dest_port_conflict), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vspan_dest_port_conflict) }),
        ("ArrayOfVirtualParallelPortOption", TypeInfo::Value { name: "ArrayOfVirtualParallelPortOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualParallelPortOption>>(wrap_array_of_virtual_parallel_port_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualParallelPortOption>>(v, wrap_array_of_virtual_parallel_port_option) }),
        ("ArrayOfDvsHostInfrastructureTrafficResourceAllocation", TypeInfo::Value { name: "ArrayOfDvsHostInfrastructureTrafficResourceAllocation", make_deserializer: || make_deser_with::<Vec<super::structs::DvsHostInfrastructureTrafficResourceAllocation>>(wrap_array_of_dvs_host_infrastructure_traffic_resource_allocation), from_value: |v| from_val_with::<Vec<super::structs::DvsHostInfrastructureTrafficResourceAllocation>>(v, wrap_array_of_dvs_host_infrastructure_traffic_resource_allocation) }),
        ("ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots", TypeInfo::Value { name: "ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots>>(wrap_array_of_cluster_das_failover_level_advanced_runtime_info_vm_slots), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots>>(v, wrap_array_of_cluster_das_failover_level_advanced_runtime_info_vm_slots) }),
        ("PbmCapabilityDiscreteSet", TypeInfo::Object { name: "PbmCapabilityDiscreteSet", builder_fn: || Box::new(PbmCapabilityDiscreteSetFields::new()) }),
        ("DuplicateName", TypeInfo::Object { name: "DuplicateName", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DuplicateName))) }),
        ("ArrayOfLicenseServerAvailableEvent", TypeInfo::Value { name: "ArrayOfLicenseServerAvailableEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_license_server_available_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_license_server_available_event) }),
        ("HostUnresolvedVmfsVolume", TypeInfo::Object { name: "HostUnresolvedVmfsVolume", builder_fn: || Box::new(HostUnresolvedVmfsVolumeFields::new()) }),
        ("ArrayOfVirtualE1000Option", TypeInfo::Value { name: "ArrayOfVirtualE1000Option", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualE1000Option>>(wrap_array_of_virtual_e_1000_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualE1000Option>>(v, wrap_array_of_virtual_e_1000_option) }),
        ("VsanHostVsanObjectSyncState", TypeInfo::Object { name: "VsanHostVsanObjectSyncState", builder_fn: || Box::new(VsanHostVsanObjectSyncStateFields::new()) }),
        ("ArrayOfVirtualSCSIPassthrough", TypeInfo::Value { name: "ArrayOfVirtualSCSIPassthrough", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualScsiPassthrough>>(wrap_array_of_virtual_scsi_passthrough), from_value: |v| from_val_with::<Vec<super::structs::VirtualScsiPassthrough>>(v, wrap_array_of_virtual_scsi_passthrough) }),
        ("ArrayOfDVSFilterSpecVlanSpec", TypeInfo::Value { name: "ArrayOfDVSFilterSpecVlanSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_filter_spec_vlan_spec_array)), from_value: |v| cast_to_dvs_filter_spec_vlan_spec_array(from_value(v)?) }),
        ("ArrayOfVirtualPCIPassthroughDynamicBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughDynamicBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthroughDynamicBackingInfo>>(wrap_array_of_virtual_pci_passthrough_dynamic_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthroughDynamicBackingInfo>>(v, wrap_array_of_virtual_pci_passthrough_dynamic_backing_info) }),
        ("ArrayOfPatchInstallFailed", TypeInfo::Value { name: "ArrayOfPatchInstallFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_patch_install_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_patch_install_failed) }),
        ("ArrayOfPbmDefaultCapabilityProfile", TypeInfo::Value { name: "ArrayOfPbmDefaultCapabilityProfile", make_deserializer: || make_deser_with::<Vec<super::structs::PbmDefaultCapabilityProfile>>(wrap_array_of_pbm_default_capability_profile), from_value: |v| from_val_with::<Vec<super::structs::PbmDefaultCapabilityProfile>>(v, wrap_array_of_pbm_default_capability_profile) }),
        ("ArrayOfServiceLocatorNamePassword", TypeInfo::Value { name: "ArrayOfServiceLocatorNamePassword", make_deserializer: || make_deser_with::<Vec<super::structs::ServiceLocatorNamePassword>>(wrap_array_of_service_locator_name_password), from_value: |v| from_val_with::<Vec<super::structs::ServiceLocatorNamePassword>>(v, wrap_array_of_service_locator_name_password) }),
        ("ArrayOfVirtualSerialPortOption", TypeInfo::Value { name: "ArrayOfVirtualSerialPortOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortOption>>(wrap_array_of_virtual_serial_port_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortOption>>(v, wrap_array_of_virtual_serial_port_option) }),
        ("OvfNetworkInfo", TypeInfo::Object { name: "OvfNetworkInfo", builder_fn: || Box::new(OvfNetworkInfoFields::new()) }),
        ("ArrayOfTypeName", TypeInfo::Value { name: "ArrayOfTypeName", make_deserializer: || make_deser_with::<Vec<String>>(wrap_array_of_type_name), from_value: |v| from_val_with::<Vec<String>>(v, wrap_array_of_type_name) }),
        ("CheckResult", TypeInfo::Object { name: "CheckResult", builder_fn: || Box::new(CheckResultFields::new()) }),
        ("ArrayOfClusterTagCategoryUpdateSpec", TypeInfo::Value { name: "ArrayOfClusterTagCategoryUpdateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterTagCategoryUpdateSpec>>(wrap_array_of_cluster_tag_category_update_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterTagCategoryUpdateSpec>>(v, wrap_array_of_cluster_tag_category_update_spec) }),
        ("UnusedVirtualDiskBlocksNotScrubbed", TypeInfo::Object { name: "UnusedVirtualDiskBlocksNotScrubbed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnusedVirtualDiskBlocksNotScrubbed))) }),
        ("ProfileDeferredPolicyOptionParameter", TypeInfo::Object { name: "ProfileDeferredPolicyOptionParameter", builder_fn: || Box::new(ProfileDeferredPolicyOptionParameterFields::new()) }),
        ("ArrayOfVsanMassCollectorPropertyParams", TypeInfo::Value { name: "ArrayOfVsanMassCollectorPropertyParams", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMassCollectorPropertyParams>>(wrap_array_of_vsan_mass_collector_property_params), from_value: |v| from_val_with::<Vec<super::structs::VsanMassCollectorPropertyParams>>(v, wrap_array_of_vsan_mass_collector_property_params) }),
        ("ArrayOfRestrictedVersion", TypeInfo::Value { name: "ArrayOfRestrictedVersion", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_restricted_version), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_restricted_version) }),
        ("LargeRDMConversionNotSupported", TypeInfo::Object { name: "LargeRDMConversionNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LargeRdmConversionNotSupported))) }),
        ("ArrayOfHostIpRouteOp", TypeInfo::Value { name: "ArrayOfHostIpRouteOp", make_deserializer: || make_deser_with::<Vec<super::structs::HostIpRouteOp>>(wrap_array_of_host_ip_route_op), from_value: |v| from_val_with::<Vec<super::structs::HostIpRouteOp>>(v, wrap_array_of_host_ip_route_op) }),
        ("ArrayOfGuestAuthSubject", TypeInfo::Value { name: "ArrayOfGuestAuthSubject", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_guest_auth_subject_array)), from_value: |v| cast_to_guest_auth_subject_array(from_value(v)?) }),
        ("ArrayOfInvalidScheduledTask", TypeInfo::Value { name: "ArrayOfInvalidScheduledTask", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_scheduled_task), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_scheduled_task) }),
        ("ArrayOfVsanFileShare", TypeInfo::Value { name: "ArrayOfVsanFileShare", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShare>>(wrap_array_of_vsan_file_share), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShare>>(v, wrap_array_of_vsan_file_share) }),
        ("HostConnectInfo", TypeInfo::Object { name: "HostConnectInfo", builder_fn: || Box::new(HostConnectInfoFields::new()) }),
        ("ArrayOfCannotMoveFaultToleranceVm", TypeInfo::Value { name: "ArrayOfCannotMoveFaultToleranceVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_move_fault_tolerance_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_move_fault_tolerance_vm) }),
        ("UsbScanCodeSpecKeyEvent", TypeInfo::Object { name: "UsbScanCodeSpecKeyEvent", builder_fn: || Box::new(UsbScanCodeSpecKeyEventFields::new()) }),
        ("VibVibServicesAnyCertificate", TypeInfo::Object { name: "VibVibServicesAnyCertificate", builder_fn: || Box::new(VibVibServicesAnyCertificateFields::new()) }),
        ("ArrayOfPersonalityAgencyDepotIssue", TypeInfo::Value { name: "ArrayOfPersonalityAgencyDepotIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_personality_agency_depot_issue_array)), from_value: |v| cast_to_personality_agency_depot_issue_array(from_value(v)?) }),
        ("ArrayOfPbmPlacementMatchingResources", TypeInfo::Value { name: "ArrayOfPbmPlacementMatchingResources", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_pbm_placement_matching_resources_array)), from_value: |v| cast_to_pbm_placement_matching_resources_array(from_value(v)?) }),
        ("ArrayOfCustomizationIdentification", TypeInfo::Value { name: "ArrayOfCustomizationIdentification", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationIdentification>>(wrap_array_of_customization_identification), from_value: |v| from_val_with::<Vec<super::structs::CustomizationIdentification>>(v, wrap_array_of_customization_identification) }),
        ("ArrayOfVsanHostEMMSummary", TypeInfo::Value { name: "ArrayOfVsanHostEMMSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostEmmSummary>>(wrap_array_of_vsan_host_emm_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanHostEmmSummary>>(v, wrap_array_of_vsan_host_emm_summary) }),
        ("FolderNewHostSpec", TypeInfo::Object { name: "FolderNewHostSpec", builder_fn: || Box::new(FolderNewHostSpecFields::new()) }),
        ("VStorageObjectConfigInfo", TypeInfo::Object { name: "VStorageObjectConfigInfo", builder_fn: || Box::new(VStorageObjectConfigInfoFields::new()) }),
        ("ArrayOfPerfMetricSeries", TypeInfo::Value { name: "ArrayOfPerfMetricSeries", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_perf_metric_series_array)), from_value: |v| cast_to_perf_metric_series_array(from_value(v)?) }),
        ("ArrayOfSimpleCommandEncoding", TypeInfo::Value { name: "ArrayOfSimpleCommandEncoding", make_deserializer: || make_deser_with::<Vec<super::enums::SimpleCommandEncodingEnum>>(wrap_array_of_simple_command_encoding), from_value: |v| from_val_with::<Vec<super::enums::SimpleCommandEncodingEnum>>(v, wrap_array_of_simple_command_encoding) }),
        ("ArrayOfDvsVNicProfile", TypeInfo::Value { name: "ArrayOfDvsVNicProfile", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_v_nic_profile_array)), from_value: |v| cast_to_dvs_v_nic_profile_array(from_value(v)?) }),
        ("ArrayOfVsanObjectQuerySpec", TypeInfo::Value { name: "ArrayOfVsanObjectQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanObjectQuerySpec>>(wrap_array_of_vsan_object_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanObjectQuerySpec>>(v, wrap_array_of_vsan_object_query_spec) }),
        ("ArrayOfVsanUnicastAddressInfo", TypeInfo::Value { name: "ArrayOfVsanUnicastAddressInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUnicastAddressInfo>>(wrap_array_of_vsan_unicast_address_info), from_value: |v| from_val_with::<Vec<super::structs::VsanUnicastAddressInfo>>(v, wrap_array_of_vsan_unicast_address_info) }),
        ("VsanSnapshotQuerySpec", TypeInfo::Object { name: "VsanSnapshotQuerySpec", builder_fn: || Box::new(VsanSnapshotQuerySpecFields::new()) }),
        ("VirtualPCIPassthroughVmiopBackingInfo", TypeInfo::Object { name: "VirtualPCIPassthroughVmiopBackingInfo", builder_fn: || Box::new(VirtualPciPassthroughVmiopBackingInfoFields::new()) }),
        ("ArrayOfRebootRequired", TypeInfo::Value { name: "ArrayOfRebootRequired", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_reboot_required), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_reboot_required) }),
        ("ArrayOfVsanHostVmdkLoadTestResult", TypeInfo::Value { name: "ArrayOfVsanHostVmdkLoadTestResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostVmdkLoadTestResult>>(wrap_array_of_vsan_host_vmdk_load_test_result), from_value: |v| from_val_with::<Vec<super::structs::VsanHostVmdkLoadTestResult>>(v, wrap_array_of_vsan_host_vmdk_load_test_result) }),
        ("ArrayOfInvalidDatastore", TypeInfo::Value { name: "ArrayOfInvalidDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_datastore) }),
        ("AlarmFilter", TypeInfo::Object { name: "AlarmFilter", builder_fn: || Box::new(AlarmFilterFields::new()) }),
        ("ArrayOfVirtualSIOController", TypeInfo::Value { name: "ArrayOfVirtualSIOController", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSioController>>(wrap_array_of_virtual_sio_controller), from_value: |v| from_val_with::<Vec<super::structs::VirtualSioController>>(v, wrap_array_of_virtual_sio_controller) }),
        ("ArrayOfMethodName", TypeInfo::Value { name: "ArrayOfMethodName", make_deserializer: || make_deser_with::<Vec<String>>(wrap_array_of_method_name), from_value: |v| from_val_with::<Vec<String>>(v, wrap_array_of_method_name) }),
        ("ArrayOfDatastoreFileDeletedEvent", TypeInfo::Value { name: "ArrayOfDatastoreFileDeletedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_datastore_file_deleted_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_datastore_file_deleted_event) }),
        ("ArrayOfVsanCompatibilityCheckResult", TypeInfo::Value { name: "ArrayOfVsanCompatibilityCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanCompatibilityCheckResult>>(wrap_array_of_vsan_compatibility_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanCompatibilityCheckResult>>(v, wrap_array_of_vsan_compatibility_check_result) }),
        ("VirtualMachineVgpuProfileInfo", TypeInfo::Object { name: "VirtualMachineVgpuProfileInfo", builder_fn: || Box::new(VirtualMachineVgpuProfileInfoFields::new()) }),
        ("VsanCloudHealthStatus", TypeInfo::Object { name: "VsanCloudHealthStatus", builder_fn: || Box::new(VsanCloudHealthStatusFields::new()) }),
        ("VsanHistoricalHealthTest", TypeInfo::Object { name: "VsanHistoricalHealthTest", builder_fn: || Box::new(VsanHistoricalHealthTestFields::new()) }),
        ("ArrayOfVsanClusterVMsHealthSummaryResult", TypeInfo::Value { name: "ArrayOfVsanClusterVMsHealthSummaryResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterVMsHealthSummaryResult>>(wrap_array_of_vsan_cluster_v_ms_health_summary_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterVMsHealthSummaryResult>>(v, wrap_array_of_vsan_cluster_v_ms_health_summary_result) }),
        ("CnsVolumeMetadataUpdateSpec", TypeInfo::Object { name: "CnsVolumeMetadataUpdateSpec", builder_fn: || Box::new(CnsVolumeMetadataUpdateSpecFields::new()) }),
        ("VsanFaultDomainDestroySpec", TypeInfo::Object { name: "VsanFaultDomainDestroySpec", builder_fn: || Box::new(VsanFaultDomainDestroySpecFields::new()) }),
        ("ArrayOfVmGuestOSCrashedEvent", TypeInfo::Value { name: "ArrayOfVmGuestOSCrashedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_guest_os_crashed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_guest_os_crashed_event) }),
        ("ArrayOfNoDiscoverableAgentVmDatastore", TypeInfo::Value { name: "ArrayOfNoDiscoverableAgentVmDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::NoDiscoverableAgentVmDatastore>>(wrap_array_of_no_discoverable_agent_vm_datastore), from_value: |v| from_val_with::<Vec<super::structs::NoDiscoverableAgentVmDatastore>>(v, wrap_array_of_no_discoverable_agent_vm_datastore) }),
        ("UserLogoutSessionEvent", TypeInfo::Object { name: "UserLogoutSessionEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UserLogoutSessionEvent))) }),
        ("ArrayOfVsanSnapshotDetail", TypeInfo::Value { name: "ArrayOfVsanSnapshotDetail", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSnapshotDetail>>(wrap_array_of_vsan_snapshot_detail), from_value: |v| from_val_with::<Vec<super::structs::VsanSnapshotDetail>>(v, wrap_array_of_vsan_snapshot_detail) }),
        ("NetBIOSConfigInfo", TypeInfo::Object { name: "NetBIOSConfigInfo", builder_fn: || Box::new(NetBiosConfigInfoFields::new()) }),
        ("ArrayOfStoragePodSummary", TypeInfo::Value { name: "ArrayOfStoragePodSummary", make_deserializer: || make_deser_with::<Vec<super::structs::StoragePodSummary>>(wrap_array_of_storage_pod_summary), from_value: |v| from_val_with::<Vec<super::structs::StoragePodSummary>>(v, wrap_array_of_storage_pod_summary) }),
        ("MemoryHotPlugNotSupported", TypeInfo::Object { name: "MemoryHotPlugNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MemoryHotPlugNotSupported))) }),
        ("VmBeingRelocatedEvent", TypeInfo::Object { name: "VmBeingRelocatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmBeingRelocatedEvent))) }),
        ("ArrayOfRemoteVsanSite", TypeInfo::Value { name: "ArrayOfRemoteVsanSite", make_deserializer: || make_deser_with::<Vec<super::structs::RemoteVsanSite>>(wrap_array_of_remote_vsan_site), from_value: |v| from_val_with::<Vec<super::structs::RemoteVsanSite>>(v, wrap_array_of_remote_vsan_site) }),
        ("ArrayOfVmPoweringOnWithCustomizedDVPortEvent", TypeInfo::Value { name: "ArrayOfVmPoweringOnWithCustomizedDVPortEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_powering_on_with_customized_dv_port_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_powering_on_with_customized_dv_port_event) }),
        ("ArrayOfDasClusterIsolatedEvent", TypeInfo::Value { name: "ArrayOfDasClusterIsolatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_das_cluster_isolated_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_das_cluster_isolated_event) }),
        ("ArrayOfDvsFault", TypeInfo::Value { name: "ArrayOfDvsFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_dvs_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_dvs_fault) }),
        ("ArrayOfHostOpaqueSwitch", TypeInfo::Value { name: "ArrayOfHostOpaqueSwitch", make_deserializer: || make_deser_with::<Vec<super::structs::HostOpaqueSwitch>>(wrap_array_of_host_opaque_switch), from_value: |v| from_val_with::<Vec<super::structs::HostOpaqueSwitch>>(v, wrap_array_of_host_opaque_switch) }),
        ("VslmTaskInfo", TypeInfo::Object { name: "VslmTaskInfo", builder_fn: || Box::new(VslmTaskInfoFields::new()) }),
        ("VirtualMachineVMCIDeviceOption", TypeInfo::Object { name: "VirtualMachineVMCIDeviceOption", builder_fn: || Box::new(VirtualMachineVmciDeviceOptionFields::new()) }),
        ("ArrayOfClusterReconfiguredEvent", TypeInfo::Value { name: "ArrayOfClusterReconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_cluster_reconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_cluster_reconfigured_event) }),
        ("ArrayOfVirtualMachineFileLayoutExDiskUnit", TypeInfo::Value { name: "ArrayOfVirtualMachineFileLayoutExDiskUnit", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFileLayoutExDiskUnit>>(wrap_array_of_virtual_machine_file_layout_ex_disk_unit), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFileLayoutExDiskUnit>>(v, wrap_array_of_virtual_machine_file_layout_ex_disk_unit) }),
        ("ImportSpec", TypeInfo::Object { name: "ImportSpec", builder_fn: || Box::new(ImportSpecFields::new()) }),
        ("RecoveryEvent", TypeInfo::Object { name: "RecoveryEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::RecoveryEvent))) }),
        ("DVPortgroupReconfiguredEvent", TypeInfo::Object { name: "DVPortgroupReconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvPortgroupReconfiguredEvent))) }),
        ("ArrayOfEventAlarmExpressionComparison", TypeInfo::Value { name: "ArrayOfEventAlarmExpressionComparison", make_deserializer: || make_deser_with::<Vec<super::structs::EventAlarmExpressionComparison>>(wrap_array_of_event_alarm_expression_comparison), from_value: |v| from_val_with::<Vec<super::structs::EventAlarmExpressionComparison>>(v, wrap_array_of_event_alarm_expression_comparison) }),
        ("ArrayOfVsanUpgradeSystemAutoClaimEnabledOnHostsIssue", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemAutoClaimEnabledOnHostsIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemAutoClaimEnabledOnHostsIssue>>(wrap_array_of_vsan_upgrade_system_auto_claim_enabled_on_hosts_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemAutoClaimEnabledOnHostsIssue>>(v, wrap_array_of_vsan_upgrade_system_auto_claim_enabled_on_hosts_issue) }),
        ("ArrayOfExitingStandbyModeEvent", TypeInfo::Value { name: "ArrayOfExitingStandbyModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_exiting_standby_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_exiting_standby_mode_event) }),
        ("VsanIscsiTargetServiceConfig", TypeInfo::Object { name: "VsanIscsiTargetServiceConfig", builder_fn: || Box::new(VsanIscsiTargetServiceConfigFields::new()) }),
        ("ArrayOfAuthorizationEvent", TypeInfo::Value { name: "ArrayOfAuthorizationEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_authorization_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_authorization_event) }),
        ("ArrayOfVsanHostWithHybridDiskgroupIssue", TypeInfo::Value { name: "ArrayOfVsanHostWithHybridDiskgroupIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostWithHybridDiskgroupIssue>>(wrap_array_of_vsan_host_with_hybrid_diskgroup_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanHostWithHybridDiskgroupIssue>>(v, wrap_array_of_vsan_host_with_hybrid_diskgroup_issue) }),
        ("ArrayOfHostVFlashManagerVFlashResourceConfigInfo", TypeInfo::Value { name: "ArrayOfHostVFlashManagerVFlashResourceConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostVFlashManagerVFlashResourceConfigInfo>>(wrap_array_of_host_v_flash_manager_v_flash_resource_config_info), from_value: |v| from_val_with::<Vec<super::structs::HostVFlashManagerVFlashResourceConfigInfo>>(v, wrap_array_of_host_v_flash_manager_v_flash_resource_config_info) }),
        ("ArrayOfVirtualPS2ControllerOption", TypeInfo::Value { name: "ArrayOfVirtualPS2ControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPs2ControllerOption>>(wrap_array_of_virtual_ps_2_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualPs2ControllerOption>>(v, wrap_array_of_virtual_ps_2_controller_option) }),
        ("ArrayOfCertificateRefreshFailed", TypeInfo::Value { name: "ArrayOfCertificateRefreshFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_certificate_refresh_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_certificate_refresh_failed) }),
        ("ArrayOfMemoryHotPlugNotSupported", TypeInfo::Value { name: "ArrayOfMemoryHotPlugNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_memory_hot_plug_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_memory_hot_plug_not_supported) }),
        ("ArrayOfVsanHostDiskMapResult", TypeInfo::Value { name: "ArrayOfVsanHostDiskMapResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostDiskMapResult>>(wrap_array_of_vsan_host_disk_map_result), from_value: |v| from_val_with::<Vec<super::structs::VsanHostDiskMapResult>>(v, wrap_array_of_vsan_host_disk_map_result) }),
        ("VsanPerfHotspotEntitiesMetrics", TypeInfo::Object { name: "VsanPerfHotspotEntitiesMetrics", builder_fn: || Box::new(VsanPerfHotspotEntitiesMetricsFields::new()) }),
        ("ArrayOfKmipServerSpec", TypeInfo::Value { name: "ArrayOfKmipServerSpec", make_deserializer: || make_deser_with::<Vec<super::structs::KmipServerSpec>>(wrap_array_of_kmip_server_spec), from_value: |v| from_val_with::<Vec<super::structs::KmipServerSpec>>(v, wrap_array_of_kmip_server_spec) }),
        ("ClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots", TypeInfo::Object { name: "ClusterDasFailoverLevelAdvancedRuntimeInfoVmSlots", builder_fn: || Box::new(ClusterDasFailoverLevelAdvancedRuntimeInfoVmSlotsFields::new()) }),
        ("InvalidHostState", TypeInfo::Object { name: "InvalidHostState", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidHostState))) }),
        ("DirectPathProfileManagerCapacityQueryById", TypeInfo::Object { name: "DirectPathProfileManagerCapacityQueryById", builder_fn: || Box::new(DirectPathProfileManagerCapacityQueryByIdFields::new()) }),
        ("VcAgentUninstalledEvent", TypeInfo::Object { name: "VcAgentUninstalledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VcAgentUninstalledEvent))) }),
        ("ArrayOfImportOperationBulkFault", TypeInfo::Value { name: "ArrayOfImportOperationBulkFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_import_operation_bulk_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_import_operation_bulk_fault) }),
        ("ArrayOfHostSystemSwapConfigurationSystemSwapOption", TypeInfo::Value { name: "ArrayOfHostSystemSwapConfigurationSystemSwapOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_system_swap_configuration_system_swap_option_array)), from_value: |v| cast_to_host_system_swap_configuration_system_swap_option_array(from_value(v)?) }),
        ("VsanPerfMetricSeriesCSV", TypeInfo::Object { name: "VsanPerfMetricSeriesCSV", builder_fn: || Box::new(VsanPerfMetricSeriesCsvFields::new()) }),
        ("ArrayOfGuestRegKeyNameSpec", TypeInfo::Value { name: "ArrayOfGuestRegKeyNameSpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestRegKeyNameSpec>>(wrap_array_of_guest_reg_key_name_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestRegKeyNameSpec>>(v, wrap_array_of_guest_reg_key_name_spec) }),
        ("ArrayOfVirtualDiskRuleSpec", TypeInfo::Value { name: "ArrayOfVirtualDiskRuleSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskRuleSpec>>(wrap_array_of_virtual_disk_rule_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskRuleSpec>>(v, wrap_array_of_virtual_disk_rule_spec) }),
        ("ArrayOfOvfUnsupportedAttribute", TypeInfo::Value { name: "ArrayOfOvfUnsupportedAttribute", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_unsupported_attribute), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_unsupported_attribute) }),
        ("VsanVibSpec", TypeInfo::Object { name: "VsanVibSpec", builder_fn: || Box::new(VsanVibSpecFields::new()) }),
        ("VmDiskFileQuery", TypeInfo::Object { name: "VmDiskFileQuery", builder_fn: || Box::new(VmDiskFileQueryFields::new()) }),
        ("base64Binary", TypeInfo::Value { name: "base64Binary", make_deserializer: || make_deser_with::<Vec<u8>>(wrap_primitive_binary), from_value: |v| from_val_with::<Vec<u8>>(v, wrap_primitive_binary) }),
        ("ArrayOfPersonalityAgentAwaitingPMRemediation", TypeInfo::Value { name: "ArrayOfPersonalityAgentAwaitingPMRemediation", make_deserializer: || make_deser_with::<Vec<super::structs::PersonalityAgentAwaitingPmRemediation>>(wrap_array_of_personality_agent_awaiting_pm_remediation), from_value: |v| from_val_with::<Vec<super::structs::PersonalityAgentAwaitingPmRemediation>>(v, wrap_array_of_personality_agent_awaiting_pm_remediation) }),
        ("ArrayOfVmSnapshotFileInfo", TypeInfo::Value { name: "ArrayOfVmSnapshotFileInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VmSnapshotFileInfo>>(wrap_array_of_vm_snapshot_file_info), from_value: |v| from_val_with::<Vec<super::structs::VmSnapshotFileInfo>>(v, wrap_array_of_vm_snapshot_file_info) }),
        ("HostFirewallRulesetRulesetSpec", TypeInfo::Object { name: "HostFirewallRulesetRulesetSpec", builder_fn: || Box::new(HostFirewallRulesetRulesetSpecFields::new()) }),
        ("StorageIORMConfigOption", TypeInfo::Object { name: "StorageIORMConfigOption", builder_fn: || Box::new(StorageIormConfigOptionFields::new()) }),
        ("ArrayOfVirtualMachineBootOptionsBootableFloppyDevice", TypeInfo::Value { name: "ArrayOfVirtualMachineBootOptionsBootableFloppyDevice", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineBootOptionsBootableFloppyDevice>>(wrap_array_of_virtual_machine_boot_options_bootable_floppy_device), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineBootOptionsBootableFloppyDevice>>(v, wrap_array_of_virtual_machine_boot_options_bootable_floppy_device) }),
        ("ArrayOfVirtualMachineSoundInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineSoundInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineSoundInfo>>(wrap_array_of_virtual_machine_sound_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineSoundInfo>>(v, wrap_array_of_virtual_machine_sound_info) }),
        ("HostNicOrderPolicy", TypeInfo::Object { name: "HostNicOrderPolicy", builder_fn: || Box::new(HostNicOrderPolicyFields::new()) }),
        ("CustomizationUnknownIpV6Generator", TypeInfo::Object { name: "CustomizationUnknownIpV6Generator", builder_fn: || Box::new(CustomizationUnknownIpV6GeneratorFields::new()) }),
        ("CryptoKeyResult", TypeInfo::Object { name: "CryptoKeyResult", builder_fn: || Box::new(CryptoKeyResultFields::new()) }),
        ("AlarmSpec", TypeInfo::Object { name: "AlarmSpec", builder_fn: || Box::new(AlarmSpecFields::new()) }),
        ("AlarmInfo", TypeInfo::Object { name: "AlarmInfo", builder_fn: || Box::new(AlarmInfoFields::new()) }),
        ("ArrayOfClusterDasFdmHostState", TypeInfo::Value { name: "ArrayOfClusterDasFdmHostState", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasFdmHostState>>(wrap_array_of_cluster_das_fdm_host_state), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasFdmHostState>>(v, wrap_array_of_cluster_das_fdm_host_state) }),
        ("ArrayOfVirtualSerialPortFileBackingOption", TypeInfo::Value { name: "ArrayOfVirtualSerialPortFileBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSerialPortFileBackingOption>>(wrap_array_of_virtual_serial_port_file_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSerialPortFileBackingOption>>(v, wrap_array_of_virtual_serial_port_file_backing_option) }),
        ("PbmPlacementResourceUtilization", TypeInfo::Object { name: "PbmPlacementResourceUtilization", builder_fn: || Box::new(PbmPlacementResourceUtilizationFields::new()) }),
        ("ArrayOfVirtualUSBRemoteClientBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualUSBRemoteClientBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbRemoteClientBackingInfo>>(wrap_array_of_virtual_usb_remote_client_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbRemoteClientBackingInfo>>(v, wrap_array_of_virtual_usb_remote_client_backing_info) }),
        ("ArrayOfHostCompliantEvent", TypeInfo::Value { name: "ArrayOfHostCompliantEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_compliant_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_compliant_event) }),
        ("OvfUnsupportedDiskProvisioning", TypeInfo::Object { name: "OvfUnsupportedDiskProvisioning", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedDiskProvisioning))) }),
        ("VsanFileServiceDomainQuerySpec", TypeInfo::Object { name: "VsanFileServiceDomainQuerySpec", builder_fn: || Box::new(VsanFileServiceDomainQuerySpecFields::new()) }),
        ("ArrayOfVsanNetworkConfigBestPracticeHealth", TypeInfo::Value { name: "ArrayOfVsanNetworkConfigBestPracticeHealth", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNetworkConfigBestPracticeHealth>>(wrap_array_of_vsan_network_config_best_practice_health), from_value: |v| from_val_with::<Vec<super::structs::VsanNetworkConfigBestPracticeHealth>>(v, wrap_array_of_vsan_network_config_best_practice_health) }),
        ("ArrayOfVirtualPCIPassthroughAllowedDevice", TypeInfo::Value { name: "ArrayOfVirtualPCIPassthroughAllowedDevice", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualPciPassthroughAllowedDevice>>(wrap_array_of_virtual_pci_passthrough_allowed_device), from_value: |v| from_val_with::<Vec<super::structs::VirtualPciPassthroughAllowedDevice>>(v, wrap_array_of_virtual_pci_passthrough_allowed_device) }),
        ("ArrayOfVsanMixedEsxVersionInClientIssue", TypeInfo::Value { name: "ArrayOfVsanMixedEsxVersionInClientIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMixedEsxVersionInClientIssue>>(wrap_array_of_vsan_mixed_esx_version_in_client_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanMixedEsxVersionInClientIssue>>(v, wrap_array_of_vsan_mixed_esx_version_in_client_issue) }),
        ("VirtualVmxnet2", TypeInfo::Object { name: "VirtualVmxnet2", builder_fn: || Box::new(VirtualVmxnet2Fields::new()) }),
        ("VsanFileServicePreflightCheckResult", TypeInfo::Object { name: "VsanFileServicePreflightCheckResult", builder_fn: || Box::new(VsanFileServicePreflightCheckResultFields::new()) }),
        ("ArrayOfScheduledTaskCreatedEvent", TypeInfo::Value { name: "ArrayOfScheduledTaskCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_scheduled_task_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_scheduled_task_created_event) }),
        ("ClusterDestroyedEvent", TypeInfo::Object { name: "ClusterDestroyedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ClusterDestroyedEvent))) }),
        ("InventoryHasStandardAloneHosts", TypeInfo::Object { name: "InventoryHasStandardAloneHosts", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InventoryHasStandardAloneHosts))) }),
        ("ArrayOfHostConfigManager", TypeInfo::Value { name: "ArrayOfHostConfigManager", make_deserializer: || make_deser_with::<Vec<super::structs::HostConfigManager>>(wrap_array_of_host_config_manager), from_value: |v| from_val_with::<Vec<super::structs::HostConfigManager>>(v, wrap_array_of_host_config_manager) }),
        ("StorageDrsDatacentersCannotShareDatastore", TypeInfo::Object { name: "StorageDrsDatacentersCannotShareDatastore", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsDatacentersCannotShareDatastore))) }),
        ("ArrayOfVsanUpgradeSystemRogueHostsInClusterIssue", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemRogueHostsInClusterIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemRogueHostsInClusterIssue>>(wrap_array_of_vsan_upgrade_system_rogue_hosts_in_cluster_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemRogueHostsInClusterIssue>>(v, wrap_array_of_vsan_upgrade_system_rogue_hosts_in_cluster_issue) }),
        ("DvsTrafficRule", TypeInfo::Object { name: "DvsTrafficRule", builder_fn: || Box::new(DvsTrafficRuleFields::new()) }),
        ("ArrayOfFtIssuesOnHost", TypeInfo::Value { name: "ArrayOfFtIssuesOnHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ft_issues_on_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ft_issues_on_host) }),
        ("ArrayOfHostNvmeTopologyInterface", TypeInfo::Value { name: "ArrayOfHostNvmeTopologyInterface", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeTopologyInterface>>(wrap_array_of_host_nvme_topology_interface), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeTopologyInterface>>(v, wrap_array_of_host_nvme_topology_interface) }),
        ("TaskInfoFilterSpec", TypeInfo::Object { name: "TaskInfoFilterSpec", builder_fn: || Box::new(TaskInfoFilterSpecFields::new()) }),
        ("VMFSDatastoreExtendedEvent", TypeInfo::Object { name: "VMFSDatastoreExtendedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmfsDatastoreExtendedEvent))) }),
        ("HostVvolVolume", TypeInfo::Object { name: "HostVvolVolume", builder_fn: || Box::new(HostVvolVolumeFields::new()) }),
        ("ArrayOfUnknownAgentVm", TypeInfo::Value { name: "ArrayOfUnknownAgentVm", make_deserializer: || make_deser_with::<Vec<super::structs::UnknownAgentVm>>(wrap_array_of_unknown_agent_vm), from_value: |v| from_val_with::<Vec<super::structs::UnknownAgentVm>>(v, wrap_array_of_unknown_agent_vm) }),
        ("SingleIp", TypeInfo::Object { name: "SingleIp", builder_fn: || Box::new(SingleIpFields::new()) }),
        ("ArrayOfCnsVolumeRelocateSpec", TypeInfo::Value { name: "ArrayOfCnsVolumeRelocateSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cns_volume_relocate_spec_array)), from_value: |v| cast_to_cns_volume_relocate_spec_array(from_value(v)?) }),
        ("ArrayOfVsanUpgradeSystemNotEnoughFreeCapacityIssue", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemNotEnoughFreeCapacityIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemNotEnoughFreeCapacityIssue>>(wrap_array_of_vsan_upgrade_system_not_enough_free_capacity_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemNotEnoughFreeCapacityIssue>>(v, wrap_array_of_vsan_upgrade_system_not_enough_free_capacity_issue) }),
        ("ArrayOfAlarmExpression", TypeInfo::Value { name: "ArrayOfAlarmExpression", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_alarm_expression_array)), from_value: |v| cast_to_alarm_expression_array(from_value(v)?) }),
        ("ArrayOfHostSystemSwapConfigurationDatastoreOption", TypeInfo::Value { name: "ArrayOfHostSystemSwapConfigurationDatastoreOption", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemSwapConfigurationDatastoreOption>>(wrap_array_of_host_system_swap_configuration_datastore_option), from_value: |v| from_val_with::<Vec<super::structs::HostSystemSwapConfigurationDatastoreOption>>(v, wrap_array_of_host_system_swap_configuration_datastore_option) }),
        ("VMwareDvsIpfixCapability", TypeInfo::Object { name: "VMwareDvsIpfixCapability", builder_fn: || Box::new(VMwareDvsIpfixCapabilityFields::new()) }),
        ("ArrayOfHostVirtualSwitchSpec", TypeInfo::Value { name: "ArrayOfHostVirtualSwitchSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostVirtualSwitchSpec>>(wrap_array_of_host_virtual_switch_spec), from_value: |v| from_val_with::<Vec<super::structs::HostVirtualSwitchSpec>>(v, wrap_array_of_host_virtual_switch_spec) }),
        ("SolutionsUrlVMSource", TypeInfo::Object { name: "SolutionsUrlVMSource", builder_fn: || Box::new(SolutionsUrlVmSourceFields::new()) }),
        ("ArrayOfVirtualHardwareCompatibilityIssue", TypeInfo::Value { name: "ArrayOfVirtualHardwareCompatibilityIssue", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_virtual_hardware_compatibility_issue), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_virtual_hardware_compatibility_issue) }),
        ("ArrayOfBoolean", TypeInfo::Value { name: "ArrayOfBoolean", make_deserializer: || make_deser_with::<Vec<bool>>(wrap_array_of_boolean), from_value: |v| from_val_with::<Vec<bool>>(v, wrap_array_of_boolean) }),
        ("ArrayOfSolutionsVMNetworkMapping", TypeInfo::Value { name: "ArrayOfSolutionsVMNetworkMapping", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsVmNetworkMapping>>(wrap_array_of_solutions_vm_network_mapping), from_value: |v| from_val_with::<Vec<super::structs::SolutionsVmNetworkMapping>>(v, wrap_array_of_solutions_vm_network_mapping) }),
        ("ArrayOfHostLicenseSpec", TypeInfo::Value { name: "ArrayOfHostLicenseSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostLicenseSpec>>(wrap_array_of_host_license_spec), from_value: |v| from_val_with::<Vec<super::structs::HostLicenseSpec>>(v, wrap_array_of_host_license_spec) }),
        ("MethodNotFound", TypeInfo::Object { name: "MethodNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MethodNotFound))) }),
        ("NoVirtualNic", TypeInfo::Object { name: "NoVirtualNic", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoVirtualNic))) }),
        ("VsanUpgradeSystemHostsDisconnectedIssue", TypeInfo::Object { name: "VsanUpgradeSystemHostsDisconnectedIssue", builder_fn: || Box::new(VsanUpgradeSystemHostsDisconnectedIssueFields::new()) }),
        ("ArrayOfHttpNfcLeaseProbeResult", TypeInfo::Value { name: "ArrayOfHttpNfcLeaseProbeResult", make_deserializer: || make_deser_with::<Vec<super::structs::HttpNfcLeaseProbeResult>>(wrap_array_of_http_nfc_lease_probe_result), from_value: |v| from_val_with::<Vec<super::structs::HttpNfcLeaseProbeResult>>(v, wrap_array_of_http_nfc_lease_probe_result) }),
        ("VspanSameSessionPortConflict", TypeInfo::Object { name: "VspanSameSessionPortConflict", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VspanSameSessionPortConflict))) }),
        ("ArrayOfVsanHclNicInfo", TypeInfo::Value { name: "ArrayOfVsanHclNicInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclNicInfo>>(wrap_array_of_vsan_hcl_nic_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHclNicInfo>>(v, wrap_array_of_vsan_hcl_nic_info) }),
        ("ArrayOfSecurityError", TypeInfo::Value { name: "ArrayOfSecurityError", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_security_error), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_security_error) }),
        ("OvfUnsupportedType", TypeInfo::Object { name: "OvfUnsupportedType", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::OvfUnsupportedType))) }),
        ("ArrayOfNetworkEventArgument", TypeInfo::Value { name: "ArrayOfNetworkEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::NetworkEventArgument>>(wrap_array_of_network_event_argument), from_value: |v| from_val_with::<Vec<super::structs::NetworkEventArgument>>(v, wrap_array_of_network_event_argument) }),
        ("ArrayOfFileInfo", TypeInfo::Value { name: "ArrayOfFileInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_file_info_array)), from_value: |v| cast_to_file_info_array(from_value(v)?) }),
        ("ArrayOfVspanPortgroupPromiscChangeFault", TypeInfo::Value { name: "ArrayOfVspanPortgroupPromiscChangeFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vspan_portgroup_promisc_change_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vspan_portgroup_promisc_change_fault) }),
        ("ArrayOfCnsEntityMetadata", TypeInfo::Value { name: "ArrayOfCnsEntityMetadata", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cns_entity_metadata_array)), from_value: |v| cast_to_cns_entity_metadata_array(from_value(v)?) }),
        ("VirtualDiskRawDiskMappingVer1BackingInfo", TypeInfo::Object { name: "VirtualDiskRawDiskMappingVer1BackingInfo", builder_fn: || Box::new(VirtualDiskRawDiskMappingVer1BackingInfoFields::new()) }),
        ("ArrayOfHostSpbmPolicyBlobInfo", TypeInfo::Value { name: "ArrayOfHostSpbmPolicyBlobInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSpbmPolicyBlobInfo>>(wrap_array_of_host_spbm_policy_blob_info), from_value: |v| from_val_with::<Vec<super::structs::HostSpbmPolicyBlobInfo>>(v, wrap_array_of_host_spbm_policy_blob_info) }),
        ("ArrayOfVsanClusterNetworkPartitionInfo", TypeInfo::Value { name: "ArrayOfVsanClusterNetworkPartitionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterNetworkPartitionInfo>>(wrap_array_of_vsan_cluster_network_partition_info), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterNetworkPartitionInfo>>(v, wrap_array_of_vsan_cluster_network_partition_info) }),
        ("VsanHostReference", TypeInfo::Object { name: "VsanHostReference", builder_fn: || Box::new(VsanHostReferenceFields::new()) }),
        ("VmIssue", TypeInfo::Object { name: "VmIssue", builder_fn: || Box::new(VmIssueFields::new()) }),
        ("PerformanceDescription", TypeInfo::Object { name: "PerformanceDescription", builder_fn: || Box::new(PerformanceDescriptionFields::new()) }),
        ("ArrayOfTag", TypeInfo::Value { name: "ArrayOfTag", make_deserializer: || make_deser_with::<Vec<super::structs::Tag>>(wrap_array_of_tag), from_value: |v| from_val_with::<Vec<super::structs::Tag>>(v, wrap_array_of_tag) }),
        ("ArrayOfPlacementAffinityRule", TypeInfo::Value { name: "ArrayOfPlacementAffinityRule", make_deserializer: || make_deser_with::<Vec<super::structs::PlacementAffinityRule>>(wrap_array_of_placement_affinity_rule), from_value: |v| from_val_with::<Vec<super::structs::PlacementAffinityRule>>(v, wrap_array_of_placement_affinity_rule) }),
        ("ArrayOfMigrationResourceErrorEvent", TypeInfo::Value { name: "ArrayOfMigrationResourceErrorEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_migration_resource_error_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_migration_resource_error_event) }),
        ("TooManyDisksOnLegacyHost", TypeInfo::Object { name: "TooManyDisksOnLegacyHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TooManyDisksOnLegacyHost))) }),
        ("ArrayOfNoCompatibleSoftAffinityHost", TypeInfo::Value { name: "ArrayOfNoCompatibleSoftAffinityHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_compatible_soft_affinity_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_compatible_soft_affinity_host) }),
        ("ArrayOfVmfsUnmapBandwidthSpec", TypeInfo::Value { name: "ArrayOfVmfsUnmapBandwidthSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VmfsUnmapBandwidthSpec>>(wrap_array_of_vmfs_unmap_bandwidth_spec), from_value: |v| from_val_with::<Vec<super::structs::VmfsUnmapBandwidthSpec>>(v, wrap_array_of_vmfs_unmap_bandwidth_spec) }),
        ("ArrayOfVirtualMachineNetworkInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineNetworkInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineNetworkInfo>>(wrap_array_of_virtual_machine_network_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineNetworkInfo>>(v, wrap_array_of_virtual_machine_network_info) }),
        ("MtuMatchEvent", TypeInfo::Object { name: "MtuMatchEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::MtuMatchEvent))) }),
        ("EventFilterSpecRecursionOption", TypeInfo::Value { name: "EventFilterSpecRecursionOption", make_deserializer: || make_deser_with::<super::enums::EventFilterSpecRecursionOptionEnum>(wrap_event_filter_spec_recursion_option), from_value: |v| from_val_with::<super::enums::EventFilterSpecRecursionOptionEnum>(v, wrap_event_filter_spec_recursion_option) }),
        ("ArrayOfNoCompatibleDatastore", TypeInfo::Value { name: "ArrayOfNoCompatibleDatastore", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_compatible_datastore), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_compatible_datastore) }),
        ("ArrayOfClusterDrsFaultsFaultsByVm", TypeInfo::Value { name: "ArrayOfClusterDrsFaultsFaultsByVm", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_drs_faults_faults_by_vm_array)), from_value: |v| cast_to_cluster_drs_faults_faults_by_vm_array(from_value(v)?) }),
        ("VsanClusterVMsHealthSummaryResult", TypeInfo::Object { name: "VsanClusterVMsHealthSummaryResult", builder_fn: || Box::new(VsanClusterVMsHealthSummaryResultFields::new()) }),
        ("ArrayOfHostFibreChannelOverEthernetTargetTransport", TypeInfo::Value { name: "ArrayOfHostFibreChannelOverEthernetTargetTransport", make_deserializer: || make_deser_with::<Vec<super::structs::HostFibreChannelOverEthernetTargetTransport>>(wrap_array_of_host_fibre_channel_over_ethernet_target_transport), from_value: |v| from_val_with::<Vec<super::structs::HostFibreChannelOverEthernetTargetTransport>>(v, wrap_array_of_host_fibre_channel_over_ethernet_target_transport) }),
        ("TooManyConcurrentNativeClones", TypeInfo::Object { name: "TooManyConcurrentNativeClones", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TooManyConcurrentNativeClones))) }),
        ("AccountCreatedEvent", TypeInfo::Object { name: "AccountCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AccountCreatedEvent))) }),
        ("NodeDeploymentSpec", TypeInfo::Object { name: "NodeDeploymentSpec", builder_fn: || Box::new(NodeDeploymentSpecFields::new()) }),
        ("ArrayOfRelation", TypeInfo::Value { name: "ArrayOfRelation", make_deserializer: || make_deser_with::<Vec<super::structs::Relation>>(wrap_array_of_relation), from_value: |v| from_val_with::<Vec<super::structs::Relation>>(v, wrap_array_of_relation) }),
        ("HostSharedGpuCapabilities", TypeInfo::Object { name: "HostSharedGpuCapabilities", builder_fn: || Box::new(HostSharedGpuCapabilitiesFields::new()) }),
        ("ArrayOfFaultToleranceCpuIncompatible", TypeInfo::Value { name: "ArrayOfFaultToleranceCpuIncompatible", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fault_tolerance_cpu_incompatible), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fault_tolerance_cpu_incompatible) }),
        ("VsanHclFirmwareUpdateSpec", TypeInfo::Object { name: "VsanHclFirmwareUpdateSpec", builder_fn: || Box::new(VsanHclFirmwareUpdateSpecFields::new()) }),
        ("LicenseServerAvailableEvent", TypeInfo::Object { name: "LicenseServerAvailableEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::LicenseServerAvailableEvent))) }),
        ("HttpNfcLeaseInfo", TypeInfo::Object { name: "HttpNfcLeaseInfo", builder_fn: || Box::new(HttpNfcLeaseInfoFields::new()) }),
        ("VsanDatastoreConfig", TypeInfo::Object { name: "VsanDatastoreConfig", builder_fn: || Box::new(VsanDatastoreConfigFields::new()) }),
        ("ArrayOfVsanClusterVMsHealthOverallResult", TypeInfo::Value { name: "ArrayOfVsanClusterVMsHealthOverallResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterVMsHealthOverallResult>>(wrap_array_of_vsan_cluster_v_ms_health_overall_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterVMsHealthOverallResult>>(v, wrap_array_of_vsan_cluster_v_ms_health_overall_result) }),
        ("ProfileRemovedEvent", TypeInfo::Object { name: "ProfileRemovedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ProfileRemovedEvent))) }),
        ("ArrayOfSSPIChallenge", TypeInfo::Value { name: "ArrayOfSSPIChallenge", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_sspi_challenge), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_sspi_challenge) }),
        ("ArrayOfVmRemoteConsoleDisconnectedEvent", TypeInfo::Value { name: "ArrayOfVmRemoteConsoleDisconnectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_remote_console_disconnected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_remote_console_disconnected_event) }),
        ("HostSpecificationRequireEvent", TypeInfo::Object { name: "HostSpecificationRequireEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostSpecificationRequireEvent))) }),
        ("ArrayOfVsanDeleteStoragePoolDiskSpec", TypeInfo::Value { name: "ArrayOfVsanDeleteStoragePoolDiskSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDeleteStoragePoolDiskSpec>>(wrap_array_of_vsan_delete_storage_pool_disk_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanDeleteStoragePoolDiskSpec>>(v, wrap_array_of_vsan_delete_storage_pool_disk_spec) }),
        ("ArrayOfAgentIssue", TypeInfo::Value { name: "ArrayOfAgentIssue", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_agent_issue_array)), from_value: |v| cast_to_agent_issue_array(from_value(v)?) }),
        ("ArrayOfSwapPlacementOverrideNotSupported", TypeInfo::Value { name: "ArrayOfSwapPlacementOverrideNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_swap_placement_override_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_swap_placement_override_not_supported) }),
        ("ArrayOfHostConnectInfoNetworkInfo", TypeInfo::Value { name: "ArrayOfHostConnectInfoNetworkInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_connect_info_network_info_array)), from_value: |v| cast_to_host_connect_info_network_info_array(from_value(v)?) }),
        ("ArrayOfClusterAgentVmPoweredOn", TypeInfo::Value { name: "ArrayOfClusterAgentVmPoweredOn", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentVmPoweredOn>>(wrap_array_of_cluster_agent_vm_powered_on), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentVmPoweredOn>>(v, wrap_array_of_cluster_agent_vm_powered_on) }),
        ("ArrayOfNotSupportedHostForChecksum", TypeInfo::Value { name: "ArrayOfNotSupportedHostForChecksum", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_supported_host_for_checksum), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_supported_host_for_checksum) }),
        ("VsanHostDiskMapInfo", TypeInfo::Object { name: "VsanHostDiskMapInfo", builder_fn: || Box::new(VsanHostDiskMapInfoFields::new()) }),
        ("HostPlugStoreTopologyAdapter", TypeInfo::Object { name: "HostPlugStoreTopologyAdapter", builder_fn: || Box::new(HostPlugStoreTopologyAdapterFields::new()) }),
        ("ArrayOfAlarmResult", TypeInfo::Value { name: "ArrayOfAlarmResult", make_deserializer: || make_deser_with::<Vec<super::structs::AlarmResult>>(wrap_array_of_alarm_result), from_value: |v| from_val_with::<Vec<super::structs::AlarmResult>>(v, wrap_array_of_alarm_result) }),
        ("ArrayOfVirtualDiskBlocksNotFullyProvisioned", TypeInfo::Value { name: "ArrayOfVirtualDiskBlocksNotFullyProvisioned", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_virtual_disk_blocks_not_fully_provisioned), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_virtual_disk_blocks_not_fully_provisioned) }),
        ("HostFileSystemVolume", TypeInfo::Object { name: "HostFileSystemVolume", builder_fn: || Box::new(HostFileSystemVolumeFields::new()) }),
        ("ArrayOfVsanFileServiceShareHealthSummary", TypeInfo::Value { name: "ArrayOfVsanFileServiceShareHealthSummary", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileServiceShareHealthSummary>>(wrap_array_of_vsan_file_service_share_health_summary), from_value: |v| from_val_with::<Vec<super::structs::VsanFileServiceShareHealthSummary>>(v, wrap_array_of_vsan_file_service_share_health_summary) }),
        ("ScheduledTaskEmailCompletedEvent", TypeInfo::Object { name: "ScheduledTaskEmailCompletedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ScheduledTaskEmailCompletedEvent))) }),
        ("ArrayOfVAppProductSpec", TypeInfo::Value { name: "ArrayOfVAppProductSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VAppProductSpec>>(wrap_array_of_v_app_product_spec), from_value: |v| from_val_with::<Vec<super::structs::VAppProductSpec>>(v, wrap_array_of_v_app_product_spec) }),
        ("ClusterVmOrchestrationSpec", TypeInfo::Object { name: "ClusterVmOrchestrationSpec", builder_fn: || Box::new(ClusterVmOrchestrationSpecFields::new()) }),
        ("IntegrityAgencyVUMIssue", TypeInfo::Object { name: "IntegrityAgencyVUMIssue", builder_fn: || Box::new(IntegrityAgencyVumIssueFields::new()) }),
        ("HostNvmeOpaqueTransportParameters", TypeInfo::Object { name: "HostNvmeOpaqueTransportParameters", builder_fn: || Box::new(HostNvmeOpaqueTransportParametersFields::new()) }),
        ("ArrayOfServiceNotInitialized", TypeInfo::Value { name: "ArrayOfServiceNotInitialized", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_service_not_initialized), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_service_not_initialized) }),
        ("VsanXvcClientConfig", TypeInfo::Object { name: "VsanXvcClientConfig", builder_fn: || Box::new(VsanXvcClientConfigFields::new()) }),
        ("ArrayOfInsufficientStorageIops", TypeInfo::Value { name: "ArrayOfInsufficientStorageIops", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_insufficient_storage_iops), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_insufficient_storage_iops) }),
        ("VmCreatedEvent", TypeInfo::Object { name: "VmCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmCreatedEvent))) }),
        ("VmfsAmbiguousMount", TypeInfo::Object { name: "VmfsAmbiguousMount", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmfsAmbiguousMount))) }),
        ("HostDiskMappingInfo", TypeInfo::Object { name: "HostDiskMappingInfo", builder_fn: || Box::new(HostDiskMappingInfoFields::new()) }),
        ("VirtualMachineVirtualNumaInfo", TypeInfo::Object { name: "VirtualMachineVirtualNumaInfo", builder_fn: || Box::new(VirtualMachineVirtualNumaInfoFields::new()) }),
        ("EncryptionKeyRequired", TypeInfo::Object { name: "EncryptionKeyRequired", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::EncryptionKeyRequired))) }),
        ("ArrayOfAlarmScriptCompleteEvent", TypeInfo::Value { name: "ArrayOfAlarmScriptCompleteEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_script_complete_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_script_complete_event) }),
        ("VsanHigherObjectsPresentDuringDowngradeIssue", TypeInfo::Object { name: "VsanHigherObjectsPresentDuringDowngradeIssue", builder_fn: || Box::new(VsanHigherObjectsPresentDuringDowngradeIssueFields::new()) }),
        ("VsanNetworkLoadTestResult", TypeInfo::Object { name: "VsanNetworkLoadTestResult", builder_fn: || Box::new(VsanNetworkLoadTestResultFields::new()) }),
        ("HostLicenseExpiredEvent", TypeInfo::Object { name: "HostLicenseExpiredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostLicenseExpiredEvent))) }),
        ("ArrayOfCustomizationIPSettings", TypeInfo::Value { name: "ArrayOfCustomizationIPSettings", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationIpSettings>>(wrap_array_of_customization_ip_settings), from_value: |v| from_val_with::<Vec<super::structs::CustomizationIpSettings>>(v, wrap_array_of_customization_ip_settings) }),
        ("VirtualParallelPortFileBackingInfo", TypeInfo::Object { name: "VirtualParallelPortFileBackingInfo", builder_fn: || Box::new(VirtualParallelPortFileBackingInfoFields::new()) }),
        ("NumVirtualCoresPerSocketNotSupported", TypeInfo::Object { name: "NumVirtualCoresPerSocketNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NumVirtualCoresPerSocketNotSupported))) }),
        ("ArrayOfHostWwnChangedEvent", TypeInfo::Value { name: "ArrayOfHostWwnChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_wwn_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_wwn_changed_event) }),
        ("ArrayOfHostNoHAEnabledPortGroupsEvent", TypeInfo::Value { name: "ArrayOfHostNoHAEnabledPortGroupsEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_no_ha_enabled_port_groups_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_no_ha_enabled_port_groups_event) }),
        ("UserLoginSessionEvent", TypeInfo::Object { name: "UserLoginSessionEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UserLoginSessionEvent))) }),
        ("VMwareDVSVspanCapability", TypeInfo::Object { name: "VMwareDVSVspanCapability", builder_fn: || Box::new(VMwareDvsVspanCapabilityFields::new()) }),
        ("VsanVumSystemConfig", TypeInfo::Object { name: "VsanVumSystemConfig", builder_fn: || Box::new(VsanVumSystemConfigFields::new()) }),
        ("InsufficientIpAddresses", TypeInfo::Object { name: "InsufficientIpAddresses", builder_fn: || Box::new(InsufficientIpAddressesFields::new()) }),
        ("CustomizationEvent", TypeInfo::Object { name: "CustomizationEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomizationEvent))) }),
        ("ArrayOfVmConfigFault", TypeInfo::Value { name: "ArrayOfVmConfigFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_config_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_config_fault) }),
        ("ArrayOfVirtualMachineVFlashModuleInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineVFlashModuleInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVFlashModuleInfo>>(wrap_array_of_virtual_machine_v_flash_module_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVFlashModuleInfo>>(v, wrap_array_of_virtual_machine_v_flash_module_info) }),
        ("VirtualDeviceURIBackingOption", TypeInfo::Object { name: "VirtualDeviceURIBackingOption", builder_fn: || Box::new(VirtualDeviceUriBackingOptionFields::new()) }),
        ("VsanHealthCmdBasedAction", TypeInfo::Object { name: "VsanHealthCmdBasedAction", builder_fn: || Box::new(VsanHealthCmdBasedActionFields::new()) }),
        ("ClusterFailoverLevelAdmissionControlPolicy", TypeInfo::Object { name: "ClusterFailoverLevelAdmissionControlPolicy", builder_fn: || Box::new(ClusterFailoverLevelAdmissionControlPolicyFields::new()) }),
        ("ArrayOfFailoverLevelRestored", TypeInfo::Value { name: "ArrayOfFailoverLevelRestored", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_failover_level_restored), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_failover_level_restored) }),
        ("DirectPathProfileManagerCapacityQueryByName", TypeInfo::Object { name: "DirectPathProfileManagerCapacityQueryByName", builder_fn: || Box::new(DirectPathProfileManagerCapacityQueryByNameFields::new()) }),
        ("VsanClusterHealthSystemVersionResult", TypeInfo::Object { name: "VsanClusterHealthSystemVersionResult", builder_fn: || Box::new(VsanClusterHealthSystemVersionResultFields::new()) }),
        ("ArrayOfKmipServerSpecKeySpec", TypeInfo::Value { name: "ArrayOfKmipServerSpecKeySpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_kmip_server_spec_key_spec_array)), from_value: |v| cast_to_kmip_server_spec_key_spec_array(from_value(v)?) }),
        ("CloneFromSnapshotNotSupported", TypeInfo::Object { name: "CloneFromSnapshotNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CloneFromSnapshotNotSupported))) }),
        ("ArrayOfRDMPointsToInaccessibleDisk", TypeInfo::Value { name: "ArrayOfRDMPointsToInaccessibleDisk", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_rdm_points_to_inaccessible_disk), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_rdm_points_to_inaccessible_disk) }),
        ("ArrayOfVirtualDiskConfigSpec", TypeInfo::Value { name: "ArrayOfVirtualDiskConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskConfigSpec>>(wrap_array_of_virtual_disk_config_spec), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskConfigSpec>>(v, wrap_array_of_virtual_disk_config_spec) }),
        ("AlarmResult", TypeInfo::Object { name: "AlarmResult", builder_fn: || Box::new(AlarmResultFields::new()) }),
        ("VsanIscsiVipDVswitchConfig", TypeInfo::Object { name: "VsanIscsiVipDVswitchConfig", builder_fn: || Box::new(VsanIscsiVipDVswitchConfigFields::new()) }),
        ("HostTpmBootSecurityOptionEventDetails", TypeInfo::Object { name: "HostTpmBootSecurityOptionEventDetails", builder_fn: || Box::new(HostTpmBootSecurityOptionEventDetailsFields::new()) }),
        ("ArrayOfVAppNotRunning", TypeInfo::Value { name: "ArrayOfVAppNotRunning", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_v_app_not_running), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_v_app_not_running) }),
        ("ArrayOfVmConfigFileInfo", TypeInfo::Value { name: "ArrayOfVmConfigFileInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vm_config_file_info_array)), from_value: |v| cast_to_vm_config_file_info_array(from_value(v)?) }),
        ("ReplicationConfigSpec", TypeInfo::Object { name: "ReplicationConfigSpec", builder_fn: || Box::new(ReplicationConfigSpecFields::new()) }),
        ("VsanHistoricalHealthConfig", TypeInfo::Object { name: "VsanHistoricalHealthConfig", builder_fn: || Box::new(VsanHistoricalHealthConfigFields::new()) }),
        ("CollectorAddressUnset", TypeInfo::Object { name: "CollectorAddressUnset", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CollectorAddressUnset))) }),
        ("VirtualMachinePropertyRelation", TypeInfo::Object { name: "VirtualMachinePropertyRelation", builder_fn: || Box::new(VirtualMachinePropertyRelationFields::new()) }),
        ("IpAddress", TypeInfo::Object { name: "IpAddress", builder_fn: || Box::new(IpAddressFields::new()) }),
        ("ArrayOfHostFirewallRulesetIpList", TypeInfo::Value { name: "ArrayOfHostFirewallRulesetIpList", make_deserializer: || make_deser_with::<Vec<super::structs::HostFirewallRulesetIpList>>(wrap_array_of_host_firewall_ruleset_ip_list), from_value: |v| from_val_with::<Vec<super::structs::HostFirewallRulesetIpList>>(v, wrap_array_of_host_firewall_ruleset_ip_list) }),
        ("VirtualMachineMksTicket", TypeInfo::Object { name: "VirtualMachineMksTicket", builder_fn: || Box::new(VirtualMachineMksTicketFields::new()) }),
        ("VirtualMachineGuestIntegrityInfo", TypeInfo::Object { name: "VirtualMachineGuestIntegrityInfo", builder_fn: || Box::new(VirtualMachineGuestIntegrityInfoFields::new()) }),
        ("VirtualMachineVMCIDevice", TypeInfo::Object { name: "VirtualMachineVMCIDevice", builder_fn: || Box::new(VirtualMachineVmciDeviceFields::new()) }),
        ("ArrayOfMethodFault", TypeInfo::Value { name: "ArrayOfMethodFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_method_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_method_fault) }),
        ("LockerMisconfiguredEvent", TypeInfo::Object { name: "LockerMisconfiguredEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::LockerMisconfiguredEvent))) }),
        ("VsanRuntimeStatsHostMap", TypeInfo::Object { name: "VsanRuntimeStatsHostMap", builder_fn: || Box::new(VsanRuntimeStatsHostMapFields::new()) }),
        ("ArrayOfPodStorageDrsEntry", TypeInfo::Value { name: "ArrayOfPodStorageDrsEntry", make_deserializer: || make_deser_with::<Vec<super::structs::PodStorageDrsEntry>>(wrap_array_of_pod_storage_drs_entry), from_value: |v| from_val_with::<Vec<super::structs::PodStorageDrsEntry>>(v, wrap_array_of_pod_storage_drs_entry) }),
        ("ArrayOfVimVsanHostQueryVsanDisksSpec", TypeInfo::Value { name: "ArrayOfVimVsanHostQueryVsanDisksSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VimVsanHostQueryVsanDisksSpec>>(wrap_array_of_vim_vsan_host_query_vsan_disks_spec), from_value: |v| from_val_with::<Vec<super::structs::VimVsanHostQueryVsanDisksSpec>>(v, wrap_array_of_vim_vsan_host_query_vsan_disks_spec) }),
        ("FloppyImageFileInfo", TypeInfo::Object { name: "FloppyImageFileInfo", builder_fn: || Box::new(FloppyImageFileInfoFields::new()) }),
        ("ArrayOfVsanNicRdmaInfo", TypeInfo::Value { name: "ArrayOfVsanNicRdmaInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanNicRdmaInfo>>(wrap_array_of_vsan_nic_rdma_info), from_value: |v| from_val_with::<Vec<super::structs::VsanNicRdmaInfo>>(v, wrap_array_of_vsan_nic_rdma_info) }),
        ("ArrayOfDirectPathProfileManagerCapacityQuerySpec", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerCapacityQuerySpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_direct_path_profile_manager_capacity_query_spec_array)), from_value: |v| cast_to_direct_path_profile_manager_capacity_query_spec_array(from_value(v)?) }),
        ("ArrayOfReverseReplicationSuccessResult", TypeInfo::Value { name: "ArrayOfReverseReplicationSuccessResult", make_deserializer: || make_deser_with::<Vec<super::structs::ReverseReplicationSuccessResult>>(wrap_array_of_reverse_replication_success_result), from_value: |v| from_val_with::<Vec<super::structs::ReverseReplicationSuccessResult>>(v, wrap_array_of_reverse_replication_success_result) }),
        ("ArrayOfOvfParseDescriptorParams", TypeInfo::Value { name: "ArrayOfOvfParseDescriptorParams", make_deserializer: || make_deser_with::<Vec<super::structs::OvfParseDescriptorParams>>(wrap_array_of_ovf_parse_descriptor_params), from_value: |v| from_val_with::<Vec<super::structs::OvfParseDescriptorParams>>(v, wrap_array_of_ovf_parse_descriptor_params) }),
        ("HostVMotionCompatibility", TypeInfo::Object { name: "HostVMotionCompatibility", builder_fn: || Box::new(HostVMotionCompatibilityFields::new()) }),
        ("IscsiFaultVnicHasMultipleUplinks", TypeInfo::Object { name: "IscsiFaultVnicHasMultipleUplinks", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultVnicHasMultipleUplinks))) }),
        ("DistributedVirtualSwitchNetworkOffloadSpec", TypeInfo::Object { name: "DistributedVirtualSwitchNetworkOffloadSpec", builder_fn: || Box::new(DistributedVirtualSwitchNetworkOffloadSpecFields::new()) }),
        ("ArrayOfNvdimmNamespaceCreateSpec", TypeInfo::Value { name: "ArrayOfNvdimmNamespaceCreateSpec", make_deserializer: || make_deser_with::<Vec<super::structs::NvdimmNamespaceCreateSpec>>(wrap_array_of_nvdimm_namespace_create_spec), from_value: |v| from_val_with::<Vec<super::structs::NvdimmNamespaceCreateSpec>>(v, wrap_array_of_nvdimm_namespace_create_spec) }),
        ("ArrayOfCnsMissingControllerFault", TypeInfo::Value { name: "ArrayOfCnsMissingControllerFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cns_missing_controller_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cns_missing_controller_fault) }),
        ("HostBIOSInfo", TypeInfo::Object { name: "HostBIOSInfo", builder_fn: || Box::new(HostBiosInfoFields::new()) }),
        ("SolutionsStoragePolicy", TypeInfo::Object { name: "SolutionsStoragePolicy", builder_fn: || Box::new(SolutionsStoragePolicyFields::new()) }),
        ("VirtualCdromRemoteAtapiBackingOption", TypeInfo::Object { name: "VirtualCdromRemoteAtapiBackingOption", builder_fn: || Box::new(VirtualCdromRemoteAtapiBackingOptionFields::new()) }),
        ("ArrayOfGuestRegistryKeyFault", TypeInfo::Value { name: "ArrayOfGuestRegistryKeyFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_guest_registry_key_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_guest_registry_key_fault) }),
        ("ArrayOfVsanIscsiTargetServiceSpec", TypeInfo::Value { name: "ArrayOfVsanIscsiTargetServiceSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanIscsiTargetServiceSpec>>(wrap_array_of_vsan_iscsi_target_service_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanIscsiTargetServiceSpec>>(v, wrap_array_of_vsan_iscsi_target_service_spec) }),
        ("VirtualDeviceFileBackingInfo", TypeInfo::Object { name: "VirtualDeviceFileBackingInfo", builder_fn: || Box::new(VirtualDeviceFileBackingInfoFields::new()) }),
        ("GuestPermissionDenied", TypeInfo::Object { name: "GuestPermissionDenied", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestPermissionDenied))) }),
        ("VmfsDatastoreOption", TypeInfo::Object { name: "VmfsDatastoreOption", builder_fn: || Box::new(VmfsDatastoreOptionFields::new()) }),
        ("ArrayOfPhysicalNicSpec", TypeInfo::Value { name: "ArrayOfPhysicalNicSpec", make_deserializer: || make_deser_with::<Vec<super::structs::PhysicalNicSpec>>(wrap_array_of_physical_nic_spec), from_value: |v| from_val_with::<Vec<super::structs::PhysicalNicSpec>>(v, wrap_array_of_physical_nic_spec) }),
        ("ArrayOfClusterVmOrchestrationInfo", TypeInfo::Value { name: "ArrayOfClusterVmOrchestrationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterVmOrchestrationInfo>>(wrap_array_of_cluster_vm_orchestration_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterVmOrchestrationInfo>>(v, wrap_array_of_cluster_vm_orchestration_info) }),
        ("VsanBasicDeviceInfo", TypeInfo::Object { name: "VsanBasicDeviceInfo", builder_fn: || Box::new(VsanBasicDeviceInfoFields::new()) }),
        ("ArrayOfOvfHostResourceConstraint", TypeInfo::Value { name: "ArrayOfOvfHostResourceConstraint", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_host_resource_constraint), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_host_resource_constraint) }),
        ("AlarmTriggeringAction", TypeInfo::Object { name: "AlarmTriggeringAction", builder_fn: || Box::new(AlarmTriggeringActionFields::new()) }),
        ("CustomizationIdentification", TypeInfo::Object { name: "CustomizationIdentification", builder_fn: || Box::new(CustomizationIdentificationFields::new()) }),
        ("ArrayOfInfoUpgradeEvent", TypeInfo::Value { name: "ArrayOfInfoUpgradeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_info_upgrade_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_info_upgrade_event) }),
        ("FailoverSuccessResult", TypeInfo::Object { name: "FailoverSuccessResult", builder_fn: || Box::new(FailoverSuccessResultFields::new()) }),
        ("ArrayOfHostVffsVolume", TypeInfo::Value { name: "ArrayOfHostVffsVolume", make_deserializer: || make_deser_with::<Vec<super::structs::HostVffsVolume>>(wrap_array_of_host_vffs_volume), from_value: |v| from_val_with::<Vec<super::structs::HostVffsVolume>>(v, wrap_array_of_host_vffs_volume) }),
        ("LimitExceeded", TypeInfo::Object { name: "LimitExceeded", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::LimitExceeded))) }),
        ("ProfilePolicyOptionMetadata", TypeInfo::Object { name: "ProfilePolicyOptionMetadata", builder_fn: || Box::new(ProfilePolicyOptionMetadataFields::new()) }),
        ("VsanClusterConfigInfo", TypeInfo::Object { name: "VsanClusterConfigInfo", builder_fn: || Box::new(VsanClusterConfigInfoFields::new()) }),
        ("ArrayOfClusterGroupInfo", TypeInfo::Value { name: "ArrayOfClusterGroupInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_group_info_array)), from_value: |v| cast_to_cluster_group_info_array(from_value(v)?) }),
        ("TicketedSessionAuthentication", TypeInfo::Object { name: "TicketedSessionAuthentication", builder_fn: || Box::new(TicketedSessionAuthenticationFields::new()) }),
        ("ArrayOfHostInStandbyMode", TypeInfo::Value { name: "ArrayOfHostInStandbyMode", make_deserializer: || make_deser_with::<Vec<super::structs::HostInStandbyMode>>(wrap_array_of_host_in_standby_mode), from_value: |v| from_val_with::<Vec<super::structs::HostInStandbyMode>>(v, wrap_array_of_host_in_standby_mode) }),
        ("VirtualSerialPortFileBackingInfo", TypeInfo::Object { name: "VirtualSerialPortFileBackingInfo", builder_fn: || Box::new(VirtualSerialPortFileBackingInfoFields::new()) }),
        ("ArrayOfCustomFieldDefRenamedEvent", TypeInfo::Value { name: "ArrayOfCustomFieldDefRenamedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_custom_field_def_renamed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_custom_field_def_renamed_event) }),
        ("NasConnectionLimitReached", TypeInfo::Object { name: "NasConnectionLimitReached", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NasConnectionLimitReached))) }),
        ("ArrayOfGenericDrsFault", TypeInfo::Value { name: "ArrayOfGenericDrsFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_generic_drs_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_generic_drs_fault) }),
        ("GeneralHostInfoEvent", TypeInfo::Object { name: "GeneralHostInfoEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GeneralHostInfoEvent))) }),
        ("VsanCapability", TypeInfo::Object { name: "VsanCapability", builder_fn: || Box::new(VsanCapabilityFields::new()) }),
        ("ArrayOfApplyHostProfileConfigurationResult", TypeInfo::Value { name: "ArrayOfApplyHostProfileConfigurationResult", make_deserializer: || make_deser_with::<Vec<super::structs::ApplyHostProfileConfigurationResult>>(wrap_array_of_apply_host_profile_configuration_result), from_value: |v| from_val_with::<Vec<super::structs::ApplyHostProfileConfigurationResult>>(v, wrap_array_of_apply_host_profile_configuration_result) }),
        ("BlockedByFirewall", TypeInfo::Object { name: "BlockedByFirewall", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::BlockedByFirewall))) }),
        ("DpmBehavior", TypeInfo::Value { name: "DpmBehavior", make_deserializer: || make_deser_with::<super::enums::DpmBehaviorEnum>(wrap_dpm_behavior), from_value: |v| from_val_with::<super::enums::DpmBehaviorEnum>(v, wrap_dpm_behavior) }),
        ("ArrayOfHostVsanInternalSystemCmmdsQuery", TypeInfo::Value { name: "ArrayOfHostVsanInternalSystemCmmdsQuery", make_deserializer: || make_deser_with::<Vec<super::structs::HostVsanInternalSystemCmmdsQuery>>(wrap_array_of_host_vsan_internal_system_cmmds_query), from_value: |v| from_val_with::<Vec<super::structs::HostVsanInternalSystemCmmdsQuery>>(v, wrap_array_of_host_vsan_internal_system_cmmds_query) }),
        ("CannotAddHostWithFTVmToNonHACluster", TypeInfo::Object { name: "CannotAddHostWithFTVmToNonHACluster", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CannotAddHostWithFtVmToNonHaCluster))) }),
        ("PbmDataServiceToPoliciesMap", TypeInfo::Object { name: "PbmDataServiceToPoliciesMap", builder_fn: || Box::new(PbmDataServiceToPoliciesMapFields::new()) }),
        ("GuestRegValueExpandStringSpec", TypeInfo::Object { name: "GuestRegValueExpandStringSpec", builder_fn: || Box::new(GuestRegValueExpandStringSpecFields::new()) }),
        ("ArrayOfUnlicensedVirtualMachinesFoundEvent", TypeInfo::Value { name: "ArrayOfUnlicensedVirtualMachinesFoundEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_unlicensed_virtual_machines_found_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_unlicensed_virtual_machines_found_event) }),
        ("IscsiStatus", TypeInfo::Object { name: "IscsiStatus", builder_fn: || Box::new(IscsiStatusFields::new()) }),
        ("VsanHostHealthSystemStatusResult", TypeInfo::Object { name: "VsanHostHealthSystemStatusResult", builder_fn: || Box::new(VsanHostHealthSystemStatusResultFields::new()) }),
        ("ArrayOfTemplateUpgradeFailedEvent", TypeInfo::Value { name: "ArrayOfTemplateUpgradeFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_template_upgrade_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_template_upgrade_failed_event) }),
        ("ArrayOfVsanClusterBurnInTestResultList", TypeInfo::Value { name: "ArrayOfVsanClusterBurnInTestResultList", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterBurnInTestResultList>>(wrap_array_of_vsan_cluster_burn_in_test_result_list), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterBurnInTestResultList>>(v, wrap_array_of_vsan_cluster_burn_in_test_result_list) }),
        ("ArrayOfScsiLunCapabilities", TypeInfo::Value { name: "ArrayOfScsiLunCapabilities", make_deserializer: || make_deser_with::<Vec<super::structs::ScsiLunCapabilities>>(wrap_array_of_scsi_lun_capabilities), from_value: |v| from_val_with::<Vec<super::structs::ScsiLunCapabilities>>(v, wrap_array_of_scsi_lun_capabilities) }),
        ("HostSystemSwapConfigurationHostCacheOption", TypeInfo::Object { name: "HostSystemSwapConfigurationHostCacheOption", builder_fn: || Box::new(HostSystemSwapConfigurationHostCacheOptionFields::new()) }),
        ("SourceGroupMemberInfo", TypeInfo::Object { name: "SourceGroupMemberInfo", builder_fn: || Box::new(SourceGroupMemberInfoFields::new()) }),
        ("ArrayOfHostSgxInfo", TypeInfo::Value { name: "ArrayOfHostSgxInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSgxInfo>>(wrap_array_of_host_sgx_info), from_value: |v| from_val_with::<Vec<super::structs::HostSgxInfo>>(v, wrap_array_of_host_sgx_info) }),
        ("HostTpmOptionEventDetails", TypeInfo::Object { name: "HostTpmOptionEventDetails", builder_fn: || Box::new(HostTpmOptionEventDetailsFields::new()) }),
        ("ArrayOfSolutionsOvfProperty", TypeInfo::Value { name: "ArrayOfSolutionsOvfProperty", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsOvfProperty>>(wrap_array_of_solutions_ovf_property), from_value: |v| from_val_with::<Vec<super::structs::SolutionsOvfProperty>>(v, wrap_array_of_solutions_ovf_property) }),
        ("ArrayOfVirtualMachineVMCIDeviceFilterInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineVMCIDeviceFilterInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVmciDeviceFilterInfo>>(wrap_array_of_virtual_machine_vmci_device_filter_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVmciDeviceFilterInfo>>(v, wrap_array_of_virtual_machine_vmci_device_filter_info) }),
        ("ArrayOfCannotMoveVsanEnabledHost", TypeInfo::Value { name: "ArrayOfCannotMoveVsanEnabledHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_move_vsan_enabled_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_move_vsan_enabled_host) }),
        ("ArrayOfProfileUpdateFailed", TypeInfo::Value { name: "ArrayOfProfileUpdateFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_profile_update_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_profile_update_failed) }),
        ("ArrayOfVirtualE1000", TypeInfo::Value { name: "ArrayOfVirtualE1000", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualE1000>>(wrap_array_of_virtual_e_1000), from_value: |v| from_val_with::<Vec<super::structs::VirtualE1000>>(v, wrap_array_of_virtual_e_1000) }),
        ("GuestRegValueBinarySpec", TypeInfo::Object { name: "GuestRegValueBinarySpec", builder_fn: || Box::new(GuestRegValueBinarySpecFields::new()) }),
        ("ApplyProfile", TypeInfo::Object { name: "ApplyProfile", builder_fn: || Box::new(ApplyProfileFields::new()) }),
        ("VsanIODiagnosticsPrecheckResult", TypeInfo::Object { name: "VsanIODiagnosticsPrecheckResult", builder_fn: || Box::new(VsanIoDiagnosticsPrecheckResultFields::new()) }),
        ("ArrayOfClusterAgentVmNotDeployed", TypeInfo::Value { name: "ArrayOfClusterAgentVmNotDeployed", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_cluster_agent_vm_not_deployed_array)), from_value: |v| cast_to_cluster_agent_vm_not_deployed_array(from_value(v)?) }),
        ("VsanIscsiTargetServiceSpec", TypeInfo::Object { name: "VsanIscsiTargetServiceSpec", builder_fn: || Box::new(VsanIscsiTargetServiceSpecFields::new()) }),
        ("ArrayOfOvfConsumerFault", TypeInfo::Value { name: "ArrayOfOvfConsumerFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_consumer_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_consumer_fault) }),
        ("ArrayOfVirtualVmxnet3", TypeInfo::Value { name: "ArrayOfVirtualVmxnet3", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_vmxnet_3_array)), from_value: |v| cast_to_virtual_vmxnet_3_array(from_value(v)?) }),
        ("ArrayOfNamespaceFull", TypeInfo::Value { name: "ArrayOfNamespaceFull", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_namespace_full), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_namespace_full) }),
        ("IpPoolManagerIpAllocation", TypeInfo::Object { name: "IpPoolManagerIpAllocation", builder_fn: || Box::new(IpPoolManagerIpAllocationFields::new()) }),
        ("VmUuidConflictEvent", TypeInfo::Object { name: "VmUuidConflictEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmUuidConflictEvent))) }),
        ("ArrayOfHostNewNetworkConnectInfo", TypeInfo::Value { name: "ArrayOfHostNewNetworkConnectInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostNewNetworkConnectInfo>>(wrap_array_of_host_new_network_connect_info), from_value: |v| from_val_with::<Vec<super::structs::HostNewNetworkConnectInfo>>(v, wrap_array_of_host_new_network_connect_info) }),
        ("ReplicaId", TypeInfo::Object { name: "ReplicaId", builder_fn: || Box::new(ReplicaIdFields::new()) }),
        ("UnconfiguredPropertyValue", TypeInfo::Object { name: "UnconfiguredPropertyValue", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::UnconfiguredPropertyValue))) }),
        ("AdminPasswordNotChangedEvent", TypeInfo::Object { name: "AdminPasswordNotChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AdminPasswordNotChangedEvent))) }),
        ("ArrayOfHbrManagerReplicationVmInfo", TypeInfo::Value { name: "ArrayOfHbrManagerReplicationVmInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HbrManagerReplicationVmInfo>>(wrap_array_of_hbr_manager_replication_vm_info), from_value: |v| from_val_with::<Vec<super::structs::HbrManagerReplicationVmInfo>>(v, wrap_array_of_hbr_manager_replication_vm_info) }),
        ("HostConnectInfoNetworkInfo", TypeInfo::Object { name: "HostConnectInfoNetworkInfo", builder_fn: || Box::new(HostConnectInfoNetworkInfoFields::new()) }),
        ("FailToEnableSPBM", TypeInfo::Object { name: "FailToEnableSPBM", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FailToEnableSpbm))) }),
        ("NetIpStackInfoNetToMedia", TypeInfo::Object { name: "NetIpStackInfoNetToMedia", builder_fn: || Box::new(NetIpStackInfoNetToMediaFields::new()) }),
        ("ArrayOfVsanResourceCheckStatus", TypeInfo::Value { name: "ArrayOfVsanResourceCheckStatus", make_deserializer: || make_deser_with::<Vec<super::structs::VsanResourceCheckStatus>>(wrap_array_of_vsan_resource_check_status), from_value: |v| from_val_with::<Vec<super::structs::VsanResourceCheckStatus>>(v, wrap_array_of_vsan_resource_check_status) }),
        ("ArrayOfUserLogoutSessionEvent", TypeInfo::Value { name: "ArrayOfUserLogoutSessionEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_user_logout_session_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_user_logout_session_event) }),
        ("VmOrphaned", TypeInfo::Object { name: "VmOrphaned", builder_fn: || Box::new(VmOrphanedFields::new()) }),
        ("ArrayOfDvsUpdateTagNetworkRuleAction", TypeInfo::Value { name: "ArrayOfDvsUpdateTagNetworkRuleAction", make_deserializer: || make_deser_with::<Vec<super::structs::DvsUpdateTagNetworkRuleAction>>(wrap_array_of_dvs_update_tag_network_rule_action), from_value: |v| from_val_with::<Vec<super::structs::DvsUpdateTagNetworkRuleAction>>(v, wrap_array_of_dvs_update_tag_network_rule_action) }),
        ("ArrayOfVcAgentUninstalledEvent", TypeInfo::Value { name: "ArrayOfVcAgentUninstalledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vc_agent_uninstalled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vc_agent_uninstalled_event) }),
        ("ArrayOfGuestWindowsProgramSpec", TypeInfo::Value { name: "ArrayOfGuestWindowsProgramSpec", make_deserializer: || make_deser_with::<Vec<super::structs::GuestWindowsProgramSpec>>(wrap_array_of_guest_windows_program_spec), from_value: |v| from_val_with::<Vec<super::structs::GuestWindowsProgramSpec>>(v, wrap_array_of_guest_windows_program_spec) }),
        ("ResourcePoolEventArgument", TypeInfo::Object { name: "ResourcePoolEventArgument", builder_fn: || Box::new(ResourcePoolEventArgumentFields::new()) }),
        ("ArrayOfVirtualUSBUSBBackingOption", TypeInfo::Value { name: "ArrayOfVirtualUSBUSBBackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualUsbusbBackingOption>>(wrap_array_of_virtual_usbusb_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualUsbusbBackingOption>>(v, wrap_array_of_virtual_usbusb_backing_option) }),
        ("ArrayOfVsanDataEfficiencyConfigEx", TypeInfo::Value { name: "ArrayOfVsanDataEfficiencyConfigEx", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDataEfficiencyConfigEx>>(wrap_array_of_vsan_data_efficiency_config_ex), from_value: |v| from_val_with::<Vec<super::structs::VsanDataEfficiencyConfigEx>>(v, wrap_array_of_vsan_data_efficiency_config_ex) }),
        ("VsanXvcResultItem", TypeInfo::Object { name: "VsanXvcResultItem", builder_fn: || Box::new(VsanXvcResultItemFields::new()) }),
        ("ArrayOfNoMaintenanceModeDrsRecommendationForVM", TypeInfo::Value { name: "ArrayOfNoMaintenanceModeDrsRecommendationForVM", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_no_maintenance_mode_drs_recommendation_for_vm), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_no_maintenance_mode_drs_recommendation_for_vm) }),
        ("VmFaultToleranceOpIssuesList", TypeInfo::Object { name: "VmFaultToleranceOpIssuesList", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmFaultToleranceOpIssuesList))) }),
        ("ArrayOfVVolHostPE", TypeInfo::Value { name: "ArrayOfVVolHostPE", make_deserializer: || make_deser_with::<Vec<super::structs::VVolHostPe>>(wrap_array_of_v_vol_host_pe), from_value: |v| from_val_with::<Vec<super::structs::VVolHostPe>>(v, wrap_array_of_v_vol_host_pe) }),
        ("ArrayOfClusterDrsConfigInfo", TypeInfo::Value { name: "ArrayOfClusterDrsConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDrsConfigInfo>>(wrap_array_of_cluster_drs_config_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDrsConfigInfo>>(v, wrap_array_of_cluster_drs_config_info) }),
        ("VsanEsaDiskConfiguration", TypeInfo::Object { name: "VsanEsaDiskConfiguration", builder_fn: || Box::new(VsanEsaDiskConfigurationFields::new()) }),
        ("ArrayOfHostSpecificationUpdateEvent", TypeInfo::Value { name: "ArrayOfHostSpecificationUpdateEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_specification_update_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_specification_update_event) }),
        ("ArrayOfVsanDiskGroupResourceCheckResult", TypeInfo::Value { name: "ArrayOfVsanDiskGroupResourceCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDiskGroupResourceCheckResult>>(wrap_array_of_vsan_disk_group_resource_check_result), from_value: |v| from_val_with::<Vec<super::structs::VsanDiskGroupResourceCheckResult>>(v, wrap_array_of_vsan_disk_group_resource_check_result) }),
        ("TargetGroupInfo", TypeInfo::Object { name: "TargetGroupInfo", builder_fn: || Box::new(TargetGroupInfoFields::new()) }),
        ("PbmComplianceResult", TypeInfo::Object { name: "PbmComplianceResult", builder_fn: || Box::new(PbmComplianceResultFields::new()) }),
        ("ClusterEVCManagerCheckResult", TypeInfo::Object { name: "ClusterEVCManagerCheckResult", builder_fn: || Box::new(ClusterEvcManagerCheckResultFields::new()) }),
        ("ArrayOfMigrationResourceWarningEvent", TypeInfo::Value { name: "ArrayOfMigrationResourceWarningEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_migration_resource_warning_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_migration_resource_warning_event) }),
        ("SnapshotNoChange", TypeInfo::Object { name: "SnapshotNoChange", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::SnapshotNoChange))) }),
        ("VASAProviderUpgradeSpec", TypeInfo::Object { name: "VASAProviderUpgradeSpec", builder_fn: || Box::new(VasaProviderUpgradeSpecFields::new()) }),
        ("VmFaultToleranceTooManyFtVcpusOnHost", TypeInfo::Object { name: "VmFaultToleranceTooManyFtVcpusOnHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmFaultToleranceTooManyFtVcpusOnHost))) }),
        ("ArrayOfVsanUpgradeSystemWrongEsxVersionIssue", TypeInfo::Value { name: "ArrayOfVsanUpgradeSystemWrongEsxVersionIssue", make_deserializer: || make_deser_with::<Vec<super::structs::VsanUpgradeSystemWrongEsxVersionIssue>>(wrap_array_of_vsan_upgrade_system_wrong_esx_version_issue), from_value: |v| from_val_with::<Vec<super::structs::VsanUpgradeSystemWrongEsxVersionIssue>>(v, wrap_array_of_vsan_upgrade_system_wrong_esx_version_issue) }),
        ("CryptoSpecEncrypt", TypeInfo::Object { name: "CryptoSpecEncrypt", builder_fn: || Box::new(CryptoSpecEncryptFields::new()) }),
        ("ArrayOfHostDiskMappingPartitionInfo", TypeInfo::Value { name: "ArrayOfHostDiskMappingPartitionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskMappingPartitionInfo>>(wrap_array_of_host_disk_mapping_partition_info), from_value: |v| from_val_with::<Vec<super::structs::HostDiskMappingPartitionInfo>>(v, wrap_array_of_host_disk_mapping_partition_info) }),
        ("VirtualDeviceConnectOption", TypeInfo::Object { name: "VirtualDeviceConnectOption", builder_fn: || Box::new(VirtualDeviceConnectOptionFields::new()) }),
        ("DVSFilterSpecVlanSpec", TypeInfo::Object { name: "DVSFilterSpecVlanSpec", builder_fn: || Box::new(DvsFilterSpecVlanSpecFields::new()) }),
        ("NotUserConfigurableProperty", TypeInfo::Object { name: "NotUserConfigurableProperty", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotUserConfigurableProperty))) }),
        ("TemplateConfigFileInfo", TypeInfo::Object { name: "TemplateConfigFileInfo", builder_fn: || Box::new(TemplateConfigFileInfoFields::new()) }),
        ("ArrayOfHostDiskPartitionInfo", TypeInfo::Value { name: "ArrayOfHostDiskPartitionInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostDiskPartitionInfo>>(wrap_array_of_host_disk_partition_info), from_value: |v| from_val_with::<Vec<super::structs::HostDiskPartitionInfo>>(v, wrap_array_of_host_disk_partition_info) }),
        ("ArrayOfDrsEnabledEvent", TypeInfo::Value { name: "ArrayOfDrsEnabledEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_enabled_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_enabled_event) }),
        ("HttpNfcLeaseState", TypeInfo::Value { name: "HttpNfcLeaseState", make_deserializer: || make_deser_with::<super::enums::HttpNfcLeaseStateEnum>(wrap_http_nfc_lease_state), from_value: |v| from_val_with::<super::enums::HttpNfcLeaseStateEnum>(v, wrap_http_nfc_lease_state) }),
        ("CnsMissingControllerFault", TypeInfo::Object { name: "CnsMissingControllerFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::CnsMissingControllerFault))) }),
        ("ArrayOfVsanMountPrecheckNetworkLatencyResult", TypeInfo::Value { name: "ArrayOfVsanMountPrecheckNetworkLatencyResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanMountPrecheckNetworkLatencyResult>>(wrap_array_of_vsan_mount_precheck_network_latency_result), from_value: |v| from_val_with::<Vec<super::structs::VsanMountPrecheckNetworkLatencyResult>>(v, wrap_array_of_vsan_mount_precheck_network_latency_result) }),
        ("DpuStatusInfo", TypeInfo::Object { name: "DpuStatusInfo", builder_fn: || Box::new(DpuStatusInfoFields::new()) }),
        ("ArrayOfSoftwarePackageCapability", TypeInfo::Value { name: "ArrayOfSoftwarePackageCapability", make_deserializer: || make_deser_with::<Vec<super::structs::SoftwarePackageCapability>>(wrap_array_of_software_package_capability), from_value: |v| from_val_with::<Vec<super::structs::SoftwarePackageCapability>>(v, wrap_array_of_software_package_capability) }),
        ("VmConfigIncompatibleForRecordReplay", TypeInfo::Object { name: "VmConfigIncompatibleForRecordReplay", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmConfigIncompatibleForRecordReplay))) }),
        ("ArrayOfStaticRouteProfile", TypeInfo::Value { name: "ArrayOfStaticRouteProfile", make_deserializer: || make_deser_with::<Vec<super::structs::StaticRouteProfile>>(wrap_array_of_static_route_profile), from_value: |v| from_val_with::<Vec<super::structs::StaticRouteProfile>>(v, wrap_array_of_static_route_profile) }),
        ("ArrayOfVimClusterVSANPreferredFaultDomainInfo", TypeInfo::Value { name: "ArrayOfVimClusterVSANPreferredFaultDomainInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VimClusterVsanPreferredFaultDomainInfo>>(wrap_array_of_vim_cluster_vsan_preferred_fault_domain_info), from_value: |v| from_val_with::<Vec<super::structs::VimClusterVsanPreferredFaultDomainInfo>>(v, wrap_array_of_vim_cluster_vsan_preferred_fault_domain_info) }),
        ("ArrayOfDvsDestroyedEvent", TypeInfo::Value { name: "ArrayOfDvsDestroyedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_destroyed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_destroyed_event) }),
        ("ArrayOfVsanHostDiskMapInfo", TypeInfo::Value { name: "ArrayOfVsanHostDiskMapInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostDiskMapInfo>>(wrap_array_of_vsan_host_disk_map_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostDiskMapInfo>>(v, wrap_array_of_vsan_host_disk_map_info) }),
        ("SolutionsTypeSpecificSolutionConfig", TypeInfo::Object { name: "SolutionsTypeSpecificSolutionConfig", builder_fn: || Box::new(SolutionsTypeSpecificSolutionConfigFields::new()) }),
        ("HostPciDevice", TypeInfo::Object { name: "HostPciDevice", builder_fn: || Box::new(HostPciDeviceFields::new()) }),
        ("ArrayOfSolutionsTransitionSpec", TypeInfo::Value { name: "ArrayOfSolutionsTransitionSpec", make_deserializer: || make_deser_with::<Vec<super::structs::SolutionsTransitionSpec>>(wrap_array_of_solutions_transition_spec), from_value: |v| from_val_with::<Vec<super::structs::SolutionsTransitionSpec>>(v, wrap_array_of_solutions_transition_spec) }),
        ("ArrayOfHostStorageElementInfo", TypeInfo::Value { name: "ArrayOfHostStorageElementInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostStorageElementInfo>>(wrap_array_of_host_storage_element_info), from_value: |v| from_val_with::<Vec<super::structs::HostStorageElementInfo>>(v, wrap_array_of_host_storage_element_info) }),
        ("ArrayOfNoActiveHostInCluster", TypeInfo::Value { name: "ArrayOfNoActiveHostInCluster", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_active_host_in_cluster), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_active_host_in_cluster) }),
        ("TaskInfo", TypeInfo::Object { name: "TaskInfo", builder_fn: || Box::new(TaskInfoFields::new()) }),
        ("ClusterDrsVmConfigSpec", TypeInfo::Object { name: "ClusterDrsVmConfigSpec", builder_fn: || Box::new(ClusterDrsVmConfigSpecFields::new()) }),
        ("ArrayOfRDMNotSupported", TypeInfo::Value { name: "ArrayOfRDMNotSupported", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_rdm_not_supported), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_rdm_not_supported) }),
        ("ArrayOfVsanHclFirmwareFile", TypeInfo::Value { name: "ArrayOfVsanHclFirmwareFile", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHclFirmwareFile>>(wrap_array_of_vsan_hcl_firmware_file), from_value: |v| from_val_with::<Vec<super::structs::VsanHclFirmwareFile>>(v, wrap_array_of_vsan_hcl_firmware_file) }),
        ("HeterogenousHostsBlockingEVC", TypeInfo::Object { name: "HeterogenousHostsBlockingEVC", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HeterogenousHostsBlockingEvc))) }),
        ("ArrayOfInvalidVmConfig", TypeInfo::Value { name: "ArrayOfInvalidVmConfig", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_vm_config), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_vm_config) }),
        ("ArrayOfHostPlugStoreTopologyPath", TypeInfo::Value { name: "ArrayOfHostPlugStoreTopologyPath", make_deserializer: || make_deser_with::<Vec<super::structs::HostPlugStoreTopologyPath>>(wrap_array_of_host_plug_store_topology_path), from_value: |v| from_val_with::<Vec<super::structs::HostPlugStoreTopologyPath>>(v, wrap_array_of_host_plug_store_topology_path) }),
        ("VirtualMachineFileLayoutEx", TypeInfo::Object { name: "VirtualMachineFileLayoutEx", builder_fn: || Box::new(VirtualMachineFileLayoutExFields::new()) }),
        ("ArrayOfVslmFault", TypeInfo::Value { name: "ArrayOfVslmFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vslm_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vslm_fault) }),
        ("ArrayOfVirtualNVDIMMBackingInfo", TypeInfo::Value { name: "ArrayOfVirtualNVDIMMBackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualNvdimmBackingInfo>>(wrap_array_of_virtual_nvdimm_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualNvdimmBackingInfo>>(v, wrap_array_of_virtual_nvdimm_backing_info) }),
        ("DrsEnteredStandbyModeEvent", TypeInfo::Object { name: "DrsEnteredStandbyModeEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DrsEnteredStandbyModeEvent))) }),
        ("ArrayOfVsanHostIpConfig", TypeInfo::Value { name: "ArrayOfVsanHostIpConfig", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_vsan_host_ip_config_array)), from_value: |v| cast_to_vsan_host_ip_config_array(from_value(v)?) }),
        ("HostTdxInfo", TypeInfo::Object { name: "HostTdxInfo", builder_fn: || Box::new(HostTdxInfoFields::new()) }),
        ("StoragePodSummary", TypeInfo::Object { name: "StoragePodSummary", builder_fn: || Box::new(StoragePodSummaryFields::new()) }),
        ("ArrayOfVmWwnChangedEvent", TypeInfo::Value { name: "ArrayOfVmWwnChangedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_wwn_changed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_wwn_changed_event) }),
        ("VsanPerfTopEntity", TypeInfo::Object { name: "VsanPerfTopEntity", builder_fn: || Box::new(VsanPerfTopEntityFields::new()) }),
        ("ArrayOfPersonalityAgencyInvalidDepot", TypeInfo::Value { name: "ArrayOfPersonalityAgencyInvalidDepot", make_deserializer: || make_deser_with::<Vec<super::structs::PersonalityAgencyInvalidDepot>>(wrap_array_of_personality_agency_invalid_depot), from_value: |v| from_val_with::<Vec<super::structs::PersonalityAgencyInvalidDepot>>(v, wrap_array_of_personality_agency_invalid_depot) }),
        ("ArrayOfCustomizationIpGenerator", TypeInfo::Value { name: "ArrayOfCustomizationIpGenerator", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_customization_ip_generator_array)), from_value: |v| cast_to_customization_ip_generator_array(from_value(v)?) }),
        ("MigrationHostWarningEvent", TypeInfo::Object { name: "MigrationHostWarningEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::MigrationHostWarningEvent))) }),
        ("StoragePlacementResult", TypeInfo::Object { name: "StoragePlacementResult", builder_fn: || Box::new(StoragePlacementResultFields::new()) }),
        ("DatabaseSizeEstimate", TypeInfo::Object { name: "DatabaseSizeEstimate", builder_fn: || Box::new(DatabaseSizeEstimateFields::new()) }),
        ("ArrayOfHostConfigFailed", TypeInfo::Value { name: "ArrayOfHostConfigFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_config_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_config_failed) }),
        ("IscsiFaultVnicNotBound", TypeInfo::Object { name: "IscsiFaultVnicNotBound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::IscsiFaultVnicNotBound))) }),
        ("ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfoSlotInfo", TypeInfo::Value { name: "ArrayOfClusterDasFailoverLevelAdvancedRuntimeInfoSlotInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfoSlotInfo>>(wrap_array_of_cluster_das_failover_level_advanced_runtime_info_slot_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterDasFailoverLevelAdvancedRuntimeInfoSlotInfo>>(v, wrap_array_of_cluster_das_failover_level_advanced_runtime_info_slot_info) }),
        ("ArrayOfVirtualDiskSparseVer2BackingInfo", TypeInfo::Value { name: "ArrayOfVirtualDiskSparseVer2BackingInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskSparseVer2BackingInfo>>(wrap_array_of_virtual_disk_sparse_ver_2_backing_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskSparseVer2BackingInfo>>(v, wrap_array_of_virtual_disk_sparse_ver_2_backing_info) }),
        ("ArrayOfFolderNewHostSpec", TypeInfo::Value { name: "ArrayOfFolderNewHostSpec", make_deserializer: || make_deser_with::<Vec<super::structs::FolderNewHostSpec>>(wrap_array_of_folder_new_host_spec), from_value: |v| from_val_with::<Vec<super::structs::FolderNewHostSpec>>(v, wrap_array_of_folder_new_host_spec) }),
        ("ArrayOfClusterFailoverLevelAdmissionControlInfo", TypeInfo::Value { name: "ArrayOfClusterFailoverLevelAdmissionControlInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterFailoverLevelAdmissionControlInfo>>(wrap_array_of_cluster_failover_level_admission_control_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterFailoverLevelAdmissionControlInfo>>(v, wrap_array_of_cluster_failover_level_admission_control_info) }),
        ("ArrayOfHostVvolNQN", TypeInfo::Value { name: "ArrayOfHostVvolNQN", make_deserializer: || make_deser_with::<Vec<super::structs::HostVvolNqn>>(wrap_array_of_host_vvol_nqn), from_value: |v| from_val_with::<Vec<super::structs::HostVvolNqn>>(v, wrap_array_of_host_vvol_nqn) }),
        ("VirtualMachineMetadataManagerVmMetadata", TypeInfo::Object { name: "VirtualMachineMetadataManagerVmMetadata", builder_fn: || Box::new(VirtualMachineMetadataManagerVmMetadataFields::new()) }),
        ("ClusterDasFdmHostState", TypeInfo::Object { name: "ClusterDasFdmHostState", builder_fn: || Box::new(ClusterDasFdmHostStateFields::new()) }),
        ("ArrayOfPbmCapabilitySubProfileConstraints", TypeInfo::Value { name: "ArrayOfPbmCapabilitySubProfileConstraints", make_deserializer: || make_deser_with::<Vec<super::structs::PbmCapabilitySubProfileConstraints>>(wrap_array_of_pbm_capability_sub_profile_constraints), from_value: |v| from_val_with::<Vec<super::structs::PbmCapabilitySubProfileConstraints>>(v, wrap_array_of_pbm_capability_sub_profile_constraints) }),
        ("ArrayOfVchaClusterNetworkSpec", TypeInfo::Value { name: "ArrayOfVchaClusterNetworkSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VchaClusterNetworkSpec>>(wrap_array_of_vcha_cluster_network_spec), from_value: |v| from_val_with::<Vec<super::structs::VchaClusterNetworkSpec>>(v, wrap_array_of_vcha_cluster_network_spec) }),
        ("ArrayOfDistributedVirtualPortgroupInfo", TypeInfo::Value { name: "ArrayOfDistributedVirtualPortgroupInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualPortgroupInfo>>(wrap_array_of_distributed_virtual_portgroup_info), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualPortgroupInfo>>(v, wrap_array_of_distributed_virtual_portgroup_info) }),
        ("PersonalityAgentPMIssue", TypeInfo::Object { name: "PersonalityAgentPMIssue", builder_fn: || Box::new(PersonalityAgentPmIssueFields::new()) }),
        ("ArrayOfUserUnassignedFromGroup", TypeInfo::Value { name: "ArrayOfUserUnassignedFromGroup", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_user_unassigned_from_group), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_user_unassigned_from_group) }),
        ("ArrayOfWillLoseHAProtection", TypeInfo::Value { name: "ArrayOfWillLoseHAProtection", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_will_lose_ha_protection), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_will_lose_ha_protection) }),
        ("ArrayOfVsanHostConfigInfoNetworkInfo", TypeInfo::Value { name: "ArrayOfVsanHostConfigInfoNetworkInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostConfigInfoNetworkInfo>>(wrap_array_of_vsan_host_config_info_network_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostConfigInfoNetworkInfo>>(v, wrap_array_of_vsan_host_config_info_network_info) }),
        ("DVSHealthCheckCapability", TypeInfo::Object { name: "DVSHealthCheckCapability", builder_fn: || Box::new(DvsHealthCheckCapabilityFields::new()) }),
        ("ArrayOfHostCnxFailedAccountFailedEvent", TypeInfo::Value { name: "ArrayOfHostCnxFailedAccountFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_cnx_failed_account_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_cnx_failed_account_failed_event) }),
        ("VsanComplianceDetail", TypeInfo::Object { name: "VsanComplianceDetail", builder_fn: || Box::new(VsanComplianceDetailFields::new()) }),
        ("ArrayOfFaultToleranceConfigInfo", TypeInfo::Value { name: "ArrayOfFaultToleranceConfigInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_fault_tolerance_config_info_array)), from_value: |v| cast_to_fault_tolerance_config_info_array(from_value(v)?) }),
        ("DatastoreMountPathDatastorePair", TypeInfo::Object { name: "DatastoreMountPathDatastorePair", builder_fn: || Box::new(DatastoreMountPathDatastorePairFields::new()) }),
        ("VirtualMachineProfileDetailsDiskProfileDetails", TypeInfo::Object { name: "VirtualMachineProfileDetailsDiskProfileDetails", builder_fn: || Box::new(VirtualMachineProfileDetailsDiskProfileDetailsFields::new()) }),
        ("ClusterComputeResourceDVSSettingDVPortgroupToServiceMapping", TypeInfo::Object { name: "ClusterComputeResourceDVSSettingDVPortgroupToServiceMapping", builder_fn: || Box::new(ClusterComputeResourceDvsSettingDvPortgroupToServiceMappingFields::new()) }),
        ("ArrayOfReadOnlyDisksWithLegacyDestination", TypeInfo::Value { name: "ArrayOfReadOnlyDisksWithLegacyDestination", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_read_only_disks_with_legacy_destination), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_read_only_disks_with_legacy_destination) }),
        ("StringOption", TypeInfo::Object { name: "StringOption", builder_fn: || Box::new(StringOptionFields::new()) }),
        ("VimHostVSANStretchedClusterHostCapability", TypeInfo::Object { name: "VimHostVSANStretchedClusterHostCapability", builder_fn: || Box::new(VimHostVsanStretchedClusterHostCapabilityFields::new()) }),
        ("ArrayOfNetworkPolicyProfile", TypeInfo::Value { name: "ArrayOfNetworkPolicyProfile", make_deserializer: || make_deser_with::<Vec<super::structs::NetworkPolicyProfile>>(wrap_array_of_network_policy_profile), from_value: |v| from_val_with::<Vec<super::structs::NetworkPolicyProfile>>(v, wrap_array_of_network_policy_profile) }),
        ("PbmPlacementMatchingResources", TypeInfo::Object { name: "PbmPlacementMatchingResources", builder_fn: || Box::new(PbmPlacementMatchingResourcesFields::new()) }),
        ("MissingProperty", TypeInfo::Object { name: "MissingProperty", builder_fn: || Box::new(MissingPropertyFields::new()) }),
        ("NetStackInstanceProfile", TypeInfo::Object { name: "NetStackInstanceProfile", builder_fn: || Box::new(NetStackInstanceProfileFields::new()) }),
        ("VirtualMachineParallelInfo", TypeInfo::Object { name: "VirtualMachineParallelInfo", builder_fn: || Box::new(VirtualMachineParallelInfoFields::new()) }),
        ("VsanResourceHealth", TypeInfo::Object { name: "VsanResourceHealth", builder_fn: || Box::new(VsanResourceHealthFields::new()) }),
        ("ArrayOfFaultToleranceNotLicensed", TypeInfo::Value { name: "ArrayOfFaultToleranceNotLicensed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_fault_tolerance_not_licensed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_fault_tolerance_not_licensed) }),
        ("ArrayOfFloppyImageFileQuery", TypeInfo::Value { name: "ArrayOfFloppyImageFileQuery", make_deserializer: || make_deser_with::<Vec<super::structs::FloppyImageFileQuery>>(wrap_array_of_floppy_image_file_query), from_value: |v| from_val_with::<Vec<super::structs::FloppyImageFileQuery>>(v, wrap_array_of_floppy_image_file_query) }),
        ("HostIpRouteConfigSpec", TypeInfo::Object { name: "HostIpRouteConfigSpec", builder_fn: || Box::new(HostIpRouteConfigSpecFields::new()) }),
        ("ArrayOfPbmFaultNoPermission", TypeInfo::Value { name: "ArrayOfPbmFaultNoPermission", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_pbm_fault_no_permission), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_pbm_fault_no_permission) }),
        ("ArrayOfVmBeingCreatedEvent", TypeInfo::Value { name: "ArrayOfVmBeingCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_being_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_being_created_event) }),
        ("VirtualDiskSparseVer2BackingOption", TypeInfo::Object { name: "VirtualDiskSparseVer2BackingOption", builder_fn: || Box::new(VirtualDiskSparseVer2BackingOptionFields::new()) }),
        ("VslmVsoVStorageObjectQuerySpec", TypeInfo::Object { name: "VslmVsoVStorageObjectQuerySpec", builder_fn: || Box::new(VslmVsoVStorageObjectQuerySpecFields::new()) }),
        ("ArrayOfInvalidFunctionTarget", TypeInfo::Value { name: "ArrayOfInvalidFunctionTarget", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_function_target), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_function_target) }),
        ("ArrayOfVsanHostClomdLivenessResult", TypeInfo::Value { name: "ArrayOfVsanHostClomdLivenessResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostClomdLivenessResult>>(wrap_array_of_vsan_host_clomd_liveness_result), from_value: |v| from_val_with::<Vec<super::structs::VsanHostClomdLivenessResult>>(v, wrap_array_of_vsan_host_clomd_liveness_result) }),
        ("NvdimmRegionInfo", TypeInfo::Object { name: "NvdimmRegionInfo", builder_fn: || Box::new(NvdimmRegionInfoFields::new()) }),
        ("ArrayOfVcRemoteVsanServerClusterConfig", TypeInfo::Value { name: "ArrayOfVcRemoteVsanServerClusterConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VcRemoteVsanServerClusterConfig>>(wrap_array_of_vc_remote_vsan_server_cluster_config), from_value: |v| from_val_with::<Vec<super::structs::VcRemoteVsanServerClusterConfig>>(v, wrap_array_of_vc_remote_vsan_server_cluster_config) }),
        ("VimVasaProviderVirtualHostConfig", TypeInfo::Object { name: "VimVasaProviderVirtualHostConfig", builder_fn: || Box::new(VimVasaProviderVirtualHostConfigFields::new()) }),
        ("ArrayOfDVSFilterSpecConnecteeSpec", TypeInfo::Value { name: "ArrayOfDVSFilterSpecConnecteeSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_filter_spec_connectee_spec_array)), from_value: |v| cast_to_dvs_filter_spec_connectee_spec_array(from_value(v)?) }),
        ("ArrayOfCannotChangeVsanClusterUuid", TypeInfo::Value { name: "ArrayOfCannotChangeVsanClusterUuid", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cannot_change_vsan_cluster_uuid), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cannot_change_vsan_cluster_uuid) }),
        ("ArrayOfHostFeatureMask", TypeInfo::Value { name: "ArrayOfHostFeatureMask", make_deserializer: || make_deser_with::<Vec<super::structs::HostFeatureMask>>(wrap_array_of_host_feature_mask), from_value: |v| from_val_with::<Vec<super::structs::HostFeatureMask>>(v, wrap_array_of_host_feature_mask) }),
        ("ArrayOfStringPolicy", TypeInfo::Value { name: "ArrayOfStringPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::StringPolicy>>(wrap_array_of_string_policy), from_value: |v| from_val_with::<Vec<super::structs::StringPolicy>>(v, wrap_array_of_string_policy) }),
        ("ArrayOfVirtualMachineFileLayoutSnapshotLayout", TypeInfo::Value { name: "ArrayOfVirtualMachineFileLayoutSnapshotLayout", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineFileLayoutSnapshotLayout>>(wrap_array_of_virtual_machine_file_layout_snapshot_layout), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineFileLayoutSnapshotLayout>>(v, wrap_array_of_virtual_machine_file_layout_snapshot_layout) }),
        ("ComputeResourceConfigInfo", TypeInfo::Object { name: "ComputeResourceConfigInfo", builder_fn: || Box::new(ComputeResourceConfigInfoFields::new()) }),
        ("KernelModuleInfo", TypeInfo::Object { name: "KernelModuleInfo", builder_fn: || Box::new(KernelModuleInfoFields::new()) }),
        ("EvaluationLicenseSource", TypeInfo::Object { name: "EvaluationLicenseSource", builder_fn: || Box::new(EvaluationLicenseSourceFields::new()) }),
        ("ArrayOfVirtualMachineRecordReplayState", TypeInfo::Value { name: "ArrayOfVirtualMachineRecordReplayState", make_deserializer: || make_deser_with::<Vec<super::enums::VirtualMachineRecordReplayStateEnum>>(wrap_array_of_virtual_machine_record_replay_state), from_value: |v| from_val_with::<Vec<super::enums::VirtualMachineRecordReplayStateEnum>>(v, wrap_array_of_virtual_machine_record_replay_state) }),
        ("HostVsanInternalSystemCmmdsQuery", TypeInfo::Object { name: "HostVsanInternalSystemCmmdsQuery", builder_fn: || Box::new(HostVsanInternalSystemCmmdsQueryFields::new()) }),
        ("HostDatastoreExistsConnectInfo", TypeInfo::Object { name: "HostDatastoreExistsConnectInfo", builder_fn: || Box::new(HostDatastoreExistsConnectInfoFields::new()) }),
        ("ArrayOfVsanDeconvergedNetConfig", TypeInfo::Value { name: "ArrayOfVsanDeconvergedNetConfig", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDeconvergedNetConfig>>(wrap_array_of_vsan_deconverged_net_config), from_value: |v| from_val_with::<Vec<super::structs::VsanDeconvergedNetConfig>>(v, wrap_array_of_vsan_deconverged_net_config) }),
        ("PasswordExpired", TypeInfo::Object { name: "PasswordExpired", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PasswordExpired))) }),
        ("InvalidFolder", TypeInfo::Object { name: "InvalidFolder", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidFolder))) }),
        ("VmStartingSecondaryEvent", TypeInfo::Object { name: "VmStartingSecondaryEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmStartingSecondaryEvent))) }),
        ("FullStorageVMotionNotSupported", TypeInfo::Object { name: "FullStorageVMotionNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::FullStorageVMotionNotSupported))) }),
        ("NonPersistentDisksNotSupported", TypeInfo::Object { name: "NonPersistentDisksNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NonPersistentDisksNotSupported))) }),
        ("VsanObjectTypeRule", TypeInfo::Object { name: "VsanObjectTypeRule", builder_fn: || Box::new(VsanObjectTypeRuleFields::new()) }),
        ("PatchInstallFailed", TypeInfo::Object { name: "PatchInstallFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PatchInstallFailed))) }),
        ("ArrayOfVsanPerfEntityType", TypeInfo::Value { name: "ArrayOfVsanPerfEntityType", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfEntityType>>(wrap_array_of_vsan_perf_entity_type), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfEntityType>>(v, wrap_array_of_vsan_perf_entity_type) }),
        ("ArrayOfMonthlyByWeekdayTaskScheduler", TypeInfo::Value { name: "ArrayOfMonthlyByWeekdayTaskScheduler", make_deserializer: || make_deser_with::<Vec<super::structs::MonthlyByWeekdayTaskScheduler>>(wrap_array_of_monthly_by_weekday_task_scheduler), from_value: |v| from_val_with::<Vec<super::structs::MonthlyByWeekdayTaskScheduler>>(v, wrap_array_of_monthly_by_weekday_task_scheduler) }),
        ("VmfsDatastoreSingleExtentOption", TypeInfo::Object { name: "VmfsDatastoreSingleExtentOption", builder_fn: || Box::new(VmfsDatastoreSingleExtentOptionFields::new()) }),
        ("ArrayOfDistributedVirtualSwitchHostMemberConfigInfo", TypeInfo::Value { name: "ArrayOfDistributedVirtualSwitchHostMemberConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberConfigInfo>>(wrap_array_of_distributed_virtual_switch_host_member_config_info), from_value: |v| from_val_with::<Vec<super::structs::DistributedVirtualSwitchHostMemberConfigInfo>>(v, wrap_array_of_distributed_virtual_switch_host_member_config_info) }),
        ("ArrayOfVirtualMachineVMCIDeviceOptionFilterSpecOption", TypeInfo::Value { name: "ArrayOfVirtualMachineVMCIDeviceOptionFilterSpecOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVmciDeviceOptionFilterSpecOption>>(wrap_array_of_virtual_machine_vmci_device_option_filter_spec_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVmciDeviceOptionFilterSpecOption>>(v, wrap_array_of_virtual_machine_vmci_device_option_filter_spec_option) }),
        ("ArrayOfVsanDiskModelInfo", TypeInfo::Value { name: "ArrayOfVsanDiskModelInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanDiskModelInfo>>(wrap_array_of_vsan_disk_model_info), from_value: |v| from_val_with::<Vec<super::structs::VsanDiskModelInfo>>(v, wrap_array_of_vsan_disk_model_info) }),
        ("VsanObjectQuerySpec", TypeInfo::Object { name: "VsanObjectQuerySpec", builder_fn: || Box::new(VsanObjectQuerySpecFields::new()) }),
        ("HostVirtualSwitchAutoBridge", TypeInfo::Object { name: "HostVirtualSwitchAutoBridge", builder_fn: || Box::new(HostVirtualSwitchAutoBridgeFields::new()) }),
        ("ArrayOfHostBlockHba", TypeInfo::Value { name: "ArrayOfHostBlockHba", make_deserializer: || make_deser_with::<Vec<super::structs::HostBlockHba>>(wrap_array_of_host_block_hba), from_value: |v| from_val_with::<Vec<super::structs::HostBlockHba>>(v, wrap_array_of_host_block_hba) }),
        ("ArrayOfVsanVnicVdsMigrationSpec", TypeInfo::Value { name: "ArrayOfVsanVnicVdsMigrationSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanVnicVdsMigrationSpec>>(wrap_array_of_vsan_vnic_vds_migration_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanVnicVdsMigrationSpec>>(v, wrap_array_of_vsan_vnic_vds_migration_spec) }),
        ("HostFirewallRulesetIpList", TypeInfo::Object { name: "HostFirewallRulesetIpList", builder_fn: || Box::new(HostFirewallRulesetIpListFields::new()) }),
        ("GuestFileInfo", TypeInfo::Object { name: "GuestFileInfo", builder_fn: || Box::new(GuestFileInfoFields::new()) }),
        ("VsanClusterHealthLinkBase", TypeInfo::Object { name: "VsanClusterHealthLinkBase", builder_fn: || Box::new(VsanClusterHealthLinkBaseFields::new()) }),
        ("ArrayOfIscsiFault", TypeInfo::Value { name: "ArrayOfIscsiFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_iscsi_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_iscsi_fault) }),
        ("Timedout", TypeInfo::Object { name: "Timedout", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::Timedout))) }),
        ("HostConfigInfo", TypeInfo::Object { name: "HostConfigInfo", builder_fn: || Box::new(HostConfigInfoFields::new()) }),
        ("ArrayOfPbmPlacementCapabilityConstraintsRequirement", TypeInfo::Value { name: "ArrayOfPbmPlacementCapabilityConstraintsRequirement", make_deserializer: || make_deser_with::<Vec<super::structs::PbmPlacementCapabilityConstraintsRequirement>>(wrap_array_of_pbm_placement_capability_constraints_requirement), from_value: |v| from_val_with::<Vec<super::structs::PbmPlacementCapabilityConstraintsRequirement>>(v, wrap_array_of_pbm_placement_capability_constraints_requirement) }),
        ("Tag", TypeInfo::Object { name: "Tag", builder_fn: || Box::new(TagFields::new()) }),
        ("ArrayOfHostWwnConflictEvent", TypeInfo::Value { name: "ArrayOfHostWwnConflictEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_wwn_conflict_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_wwn_conflict_event) }),
        ("VirtualMachineRelocateTransformation", TypeInfo::Value { name: "VirtualMachineRelocateTransformation", make_deserializer: || make_deser_with::<super::enums::VirtualMachineRelocateTransformationEnum>(wrap_virtual_machine_relocate_transformation), from_value: |v| from_val_with::<super::enums::VirtualMachineRelocateTransformationEnum>(v, wrap_virtual_machine_relocate_transformation) }),
        ("StorageDrsUnableToMoveFiles", TypeInfo::Object { name: "StorageDrsUnableToMoveFiles", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsUnableToMoveFiles))) }),
        ("InvalidResourcePoolStructureFault", TypeInfo::Object { name: "InvalidResourcePoolStructureFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidResourcePoolStructureFault))) }),
        ("ToolsInstallationInProgress", TypeInfo::Object { name: "ToolsInstallationInProgress", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ToolsInstallationInProgress))) }),
        ("PatchBinariesNotFound", TypeInfo::Object { name: "PatchBinariesNotFound", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PatchBinariesNotFound))) }),
        ("ArrayOfClusterAffinityRuleSpec", TypeInfo::Value { name: "ArrayOfClusterAffinityRuleSpec", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAffinityRuleSpec>>(wrap_array_of_cluster_affinity_rule_spec), from_value: |v| from_val_with::<Vec<super::structs::ClusterAffinityRuleSpec>>(v, wrap_array_of_cluster_affinity_rule_spec) }),
        ("PbmAboutInfo", TypeInfo::Object { name: "PbmAboutInfo", builder_fn: || Box::new(PbmAboutInfoFields::new()) }),
        ("HostInventoryFull", TypeInfo::Object { name: "HostInventoryFull", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::HostInventoryFull))) }),
        ("ArrayOfNoCompatibleHost", TypeInfo::Value { name: "ArrayOfNoCompatibleHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_compatible_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_compatible_host) }),
        ("HostPortGroupSpec", TypeInfo::Object { name: "HostPortGroupSpec", builder_fn: || Box::new(HostPortGroupSpecFields::new()) }),
        ("ArrayOfInvalidPropertyType", TypeInfo::Value { name: "ArrayOfInvalidPropertyType", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_invalid_property_type), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_invalid_property_type) }),
        ("DasDisabledEvent", TypeInfo::Object { name: "DasDisabledEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DasDisabledEvent))) }),
        ("VAppTaskInProgress", TypeInfo::Object { name: "VAppTaskInProgress", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VAppTaskInProgress))) }),
        ("AnswerFileStatusResult", TypeInfo::Object { name: "AnswerFileStatusResult", builder_fn: || Box::new(AnswerFileStatusResultFields::new()) }),
        ("ArrayOfDisallowedChangeByService", TypeInfo::Value { name: "ArrayOfDisallowedChangeByService", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disallowed_change_by_service), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disallowed_change_by_service) }),
        ("ObjectUpdateKind", TypeInfo::Value { name: "ObjectUpdateKind", make_deserializer: || make_deser_with::<super::enums::ObjectUpdateKindEnum>(wrap_object_update_kind), from_value: |v| from_val_with::<super::enums::ObjectUpdateKindEnum>(v, wrap_object_update_kind) }),
        ("ArrayOfProfileMetadata", TypeInfo::Value { name: "ArrayOfProfileMetadata", make_deserializer: || make_deser_with::<Vec<super::structs::ProfileMetadata>>(wrap_array_of_profile_metadata), from_value: |v| from_val_with::<Vec<super::structs::ProfileMetadata>>(v, wrap_array_of_profile_metadata) }),
        ("InvalidPrivilege", TypeInfo::Object { name: "InvalidPrivilege", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidPrivilege))) }),
        ("HostMultipathInfoLogicalUnit", TypeInfo::Object { name: "HostMultipathInfoLogicalUnit", builder_fn: || Box::new(HostMultipathInfoLogicalUnitFields::new()) }),
        ("CustomizationNetworkSetupFailed", TypeInfo::Object { name: "CustomizationNetworkSetupFailed", builder_fn: || Box::new(EventFields::new(Some(StructType::CustomizationNetworkSetupFailed))) }),
        ("ArrayOfPerfSampleInfo", TypeInfo::Value { name: "ArrayOfPerfSampleInfo", make_deserializer: || make_deser_with::<Vec<super::structs::PerfSampleInfo>>(wrap_array_of_perf_sample_info), from_value: |v| from_val_with::<Vec<super::structs::PerfSampleInfo>>(v, wrap_array_of_perf_sample_info) }),
        ("ArrayOfQueryPointInTimeReplicaSuccessResult", TypeInfo::Value { name: "ArrayOfQueryPointInTimeReplicaSuccessResult", make_deserializer: || make_deser_with::<Vec<super::structs::QueryPointInTimeReplicaSuccessResult>>(wrap_array_of_query_point_in_time_replica_success_result), from_value: |v| from_val_with::<Vec<super::structs::QueryPointInTimeReplicaSuccessResult>>(v, wrap_array_of_query_point_in_time_replica_success_result) }),
        ("ArrayOfVirtualSIOControllerOption", TypeInfo::Value { name: "ArrayOfVirtualSIOControllerOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualSioControllerOption>>(wrap_array_of_virtual_sio_controller_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualSioControllerOption>>(v, wrap_array_of_virtual_sio_controller_option) }),
        ("ArrayOfHostSystemSwapConfigurationHostLocalSwapOption", TypeInfo::Value { name: "ArrayOfHostSystemSwapConfigurationHostLocalSwapOption", make_deserializer: || make_deser_with::<Vec<super::structs::HostSystemSwapConfigurationHostLocalSwapOption>>(wrap_array_of_host_system_swap_configuration_host_local_swap_option), from_value: |v| from_val_with::<Vec<super::structs::HostSystemSwapConfigurationHostLocalSwapOption>>(v, wrap_array_of_host_system_swap_configuration_host_local_swap_option) }),
        ("CryptoSpecDecrypt", TypeInfo::Object { name: "CryptoSpecDecrypt", builder_fn: || Box::new(CryptoSpecDecryptFields::new()) }),
        ("VirtualMachineUsageOnDatastore", TypeInfo::Object { name: "VirtualMachineUsageOnDatastore", builder_fn: || Box::new(VirtualMachineUsageOnDatastoreFields::new()) }),
        ("OvfFile", TypeInfo::Object { name: "OvfFile", builder_fn: || Box::new(OvfFileFields::new()) }),
        ("ManagedObjectReference", TypeInfo::Object { name: "ManagedObjectReference", builder_fn: || Box::new(ManagedObjectReferenceFields::new()) }),
        ("ArrayOfVirtualVMIROMOption", TypeInfo::Value { name: "ArrayOfVirtualVMIROMOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualVmiromOption>>(wrap_array_of_virtual_vmirom_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualVmiromOption>>(v, wrap_array_of_virtual_vmirom_option) }),
        ("ArrayOfVnicPortArgument", TypeInfo::Value { name: "ArrayOfVnicPortArgument", make_deserializer: || make_deser_with::<Vec<super::structs::VnicPortArgument>>(wrap_array_of_vnic_port_argument), from_value: |v| from_val_with::<Vec<super::structs::VnicPortArgument>>(v, wrap_array_of_vnic_port_argument) }),
        ("ResourcePoolCreatedEvent", TypeInfo::Object { name: "ResourcePoolCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::ResourcePoolCreatedEvent))) }),
        ("VsanDisallowEvacuateDataIssue", TypeInfo::Object { name: "VsanDisallowEvacuateDataIssue", builder_fn: || Box::new(VsanDisallowEvacuateDataIssueFields::new()) }),
        ("ProfileConfigInfo", TypeInfo::Object { name: "ProfileConfigInfo", builder_fn: || Box::new(ProfileConfigInfoFields::new()) }),
        ("StorageDrsCannotMoveVmInUserFolder", TypeInfo::Object { name: "StorageDrsCannotMoveVmInUserFolder", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsCannotMoveVmInUserFolder))) }),
        ("VmWwnChangedEvent", TypeInfo::Object { name: "VmWwnChangedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmWwnChangedEvent))) }),
        ("VsanPropertyConstraint", TypeInfo::Object { name: "VsanPropertyConstraint", builder_fn: || Box::new(VsanPropertyConstraintFields::new()) }),
        ("VirtualSATAControllerOption", TypeInfo::Object { name: "VirtualSATAControllerOption", builder_fn: || Box::new(VirtualSataControllerOptionFields::new()) }),
        ("MigrationNotReady", TypeInfo::Object { name: "MigrationNotReady", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MigrationNotReady))) }),
        ("ArrayOfLicenseRestrictedEvent", TypeInfo::Value { name: "ArrayOfLicenseRestrictedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_license_restricted_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_license_restricted_event) }),
        ("ArrayOfVirtualSoundCardOption", TypeInfo::Value { name: "ArrayOfVirtualSoundCardOption", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_virtual_sound_card_option_array)), from_value: |v| cast_to_virtual_sound_card_option_array(from_value(v)?) }),
        ("InvalidLicense", TypeInfo::Object { name: "InvalidLicense", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidLicense))) }),
        ("InvalidDasConfigArgument", TypeInfo::Object { name: "InvalidDasConfigArgument", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidDasConfigArgument))) }),
        ("ArrayOfVibVibServicesAnyCertificate", TypeInfo::Value { name: "ArrayOfVibVibServicesAnyCertificate", make_deserializer: || make_deser_with::<Vec<super::structs::VibVibServicesAnyCertificate>>(wrap_array_of_vib_vib_services_any_certificate), from_value: |v| from_val_with::<Vec<super::structs::VibVibServicesAnyCertificate>>(v, wrap_array_of_vib_vib_services_any_certificate) }),
        ("VsanPerfEntityMetricCSV", TypeInfo::Object { name: "VsanPerfEntityMetricCSV", builder_fn: || Box::new(VsanPerfEntityMetricCsvFields::new()) }),
        ("VsanHostDiskResult", TypeInfo::Object { name: "VsanHostDiskResult", builder_fn: || Box::new(VsanHostDiskResultFields::new()) }),
        ("GuestRegistryKeyInvalid", TypeInfo::Object { name: "GuestRegistryKeyInvalid", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::GuestRegistryKeyInvalid))) }),
        ("VsanObjectHealth", TypeInfo::Object { name: "VsanObjectHealth", builder_fn: || Box::new(VsanObjectHealthFields::new()) }),
        ("ArrayOfVsanClusterClomdLivenessResult", TypeInfo::Value { name: "ArrayOfVsanClusterClomdLivenessResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanClusterClomdLivenessResult>>(wrap_array_of_vsan_cluster_clomd_liveness_result), from_value: |v| from_val_with::<Vec<super::structs::VsanClusterClomdLivenessResult>>(v, wrap_array_of_vsan_cluster_clomd_liveness_result) }),
        ("ArrayOfHostPciPassthruInfo", TypeInfo::Value { name: "ArrayOfHostPciPassthruInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_pci_passthru_info_array)), from_value: |v| cast_to_host_pci_passthru_info_array(from_value(v)?) }),
        ("ArrayOfVmFailedRelayoutOnVmfs2DatastoreEvent", TypeInfo::Value { name: "ArrayOfVmFailedRelayoutOnVmfs2DatastoreEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_failed_relayout_on_vmfs_2_datastore_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_failed_relayout_on_vmfs_2_datastore_event) }),
        ("AlarmCreatedEvent", TypeInfo::Object { name: "AlarmCreatedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmCreatedEvent))) }),
        ("ArrayOfHostDataTransportConnectionInfo", TypeInfo::Value { name: "ArrayOfHostDataTransportConnectionInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_host_data_transport_connection_info_array)), from_value: |v| cast_to_host_data_transport_connection_info_array(from_value(v)?) }),
        ("DvsFilterConfigSpec", TypeInfo::Object { name: "DvsFilterConfigSpec", builder_fn: || Box::new(DvsFilterConfigSpecFields::new()) }),
        ("InvalidName", TypeInfo::Object { name: "InvalidName", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidName))) }),
        ("ArrayOfVirtualMachineGuestMonitoringModeInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineGuestMonitoringModeInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineGuestMonitoringModeInfo>>(wrap_array_of_virtual_machine_guest_monitoring_mode_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineGuestMonitoringModeInfo>>(v, wrap_array_of_virtual_machine_guest_monitoring_mode_info) }),
        ("StorageDrsHbrDiskNotMovable", TypeInfo::Object { name: "StorageDrsHbrDiskNotMovable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::StorageDrsHbrDiskNotMovable))) }),
        ("ArrayOfSelectionSet", TypeInfo::Value { name: "ArrayOfSelectionSet", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_selection_set_array)), from_value: |v| cast_to_selection_set_array(from_value(v)?) }),
        ("DvsVmVnicResourceAllocation", TypeInfo::Object { name: "DvsVmVnicResourceAllocation", builder_fn: || Box::new(DvsVmVnicResourceAllocationFields::new()) }),
        ("VmInstanceUuidConflictEvent", TypeInfo::Object { name: "VmInstanceUuidConflictEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmInstanceUuidConflictEvent))) }),
        ("ArrayOfVsanHostHealthSystemVersionResult", TypeInfo::Value { name: "ArrayOfVsanHostHealthSystemVersionResult", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostHealthSystemVersionResult>>(wrap_array_of_vsan_host_health_system_version_result), from_value: |v| from_val_with::<Vec<super::structs::VsanHostHealthSystemVersionResult>>(v, wrap_array_of_vsan_host_health_system_version_result) }),
        ("SimpleCommandEncoding", TypeInfo::Value { name: "SimpleCommandEncoding", make_deserializer: || make_deser_with::<super::enums::SimpleCommandEncodingEnum>(wrap_simple_command_encoding), from_value: |v| from_val_with::<super::enums::SimpleCommandEncodingEnum>(v, wrap_simple_command_encoding) }),
        ("ArrayOfStorageDrsPodConfigSpec", TypeInfo::Value { name: "ArrayOfStorageDrsPodConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::StorageDrsPodConfigSpec>>(wrap_array_of_storage_drs_pod_config_spec), from_value: |v| from_val_with::<Vec<super::structs::StorageDrsPodConfigSpec>>(v, wrap_array_of_storage_drs_pod_config_spec) }),
        ("ArrayOfHostNetworkInfo", TypeInfo::Value { name: "ArrayOfHostNetworkInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetworkInfo>>(wrap_array_of_host_network_info), from_value: |v| from_val_with::<Vec<super::structs::HostNetworkInfo>>(v, wrap_array_of_host_network_info) }),
        ("VsanHostDiskResultState", TypeInfo::Value { name: "VsanHostDiskResultState", make_deserializer: || make_deser_with::<super::enums::VsanHostDiskResultStateEnum>(wrap_vsan_host_disk_result_state), from_value: |v| from_val_with::<super::enums::VsanHostDiskResultStateEnum>(v, wrap_vsan_host_disk_result_state) }),
        ("ArrayOfHostActiveDirectorySpec", TypeInfo::Value { name: "ArrayOfHostActiveDirectorySpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostActiveDirectorySpec>>(wrap_array_of_host_active_directory_spec), from_value: |v| from_val_with::<Vec<super::structs::HostActiveDirectorySpec>>(v, wrap_array_of_host_active_directory_spec) }),
        ("RuleViolation", TypeInfo::Object { name: "RuleViolation", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::RuleViolation))) }),
        ("ArrayOfDrsEnteringStandbyModeEvent", TypeInfo::Value { name: "ArrayOfDrsEnteringStandbyModeEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_drs_entering_standby_mode_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_drs_entering_standby_mode_event) }),
        ("ArrayOfPrivilegeAvailability", TypeInfo::Value { name: "ArrayOfPrivilegeAvailability", make_deserializer: || make_deser_with::<Vec<super::structs::PrivilegeAvailability>>(wrap_array_of_privilege_availability), from_value: |v| from_val_with::<Vec<super::structs::PrivilegeAvailability>>(v, wrap_array_of_privilege_availability) }),
        ("VmAcquiredTicketEvent", TypeInfo::Object { name: "VmAcquiredTicketEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmAcquiredTicketEvent))) }),
        ("ArrayOfDvsNetworkRuleQualifier", TypeInfo::Value { name: "ArrayOfDvsNetworkRuleQualifier", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_dvs_network_rule_qualifier_array)), from_value: |v| cast_to_dvs_network_rule_qualifier_array(from_value(v)?) }),
        ("ArrayOfHostLocalFileSystemVolumeSpec", TypeInfo::Value { name: "ArrayOfHostLocalFileSystemVolumeSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostLocalFileSystemVolumeSpec>>(wrap_array_of_host_local_file_system_volume_spec), from_value: |v| from_val_with::<Vec<super::structs::HostLocalFileSystemVolumeSpec>>(v, wrap_array_of_host_local_file_system_volume_spec) }),
        ("ArrayOfHostNvmeDisconnectSpec", TypeInfo::Value { name: "ArrayOfHostNvmeDisconnectSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostNvmeDisconnectSpec>>(wrap_array_of_host_nvme_disconnect_spec), from_value: |v| from_val_with::<Vec<super::structs::HostNvmeDisconnectSpec>>(v, wrap_array_of_host_nvme_disconnect_spec) }),
        ("ArrayOfCustomizationUnknownFailure", TypeInfo::Value { name: "ArrayOfCustomizationUnknownFailure", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_customization_unknown_failure), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_customization_unknown_failure) }),
        ("VsanSmartDiskStats", TypeInfo::Object { name: "VsanSmartDiskStats", builder_fn: || Box::new(VsanSmartDiskStatsFields::new()) }),
        ("ClusterAgentVmProtected", TypeInfo::Object { name: "ClusterAgentVmProtected", builder_fn: || Box::new(ClusterAgentVmProtectedFields::new()) }),
        ("VslmTagEntry", TypeInfo::Object { name: "VslmTagEntry", builder_fn: || Box::new(VslmTagEntryFields::new()) }),
        ("StorageArray", TypeInfo::Object { name: "StorageArray", builder_fn: || Box::new(StorageArrayFields::new()) }),
        ("ArrayOfExpiredEditionLicense", TypeInfo::Value { name: "ArrayOfExpiredEditionLicense", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_expired_edition_license), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_expired_edition_license) }),
        ("ArrayOfVStorageObjectReconcileResultReconcileDetail", TypeInfo::Value { name: "ArrayOfVStorageObjectReconcileResultReconcileDetail", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectReconcileResultReconcileDetail>>(wrap_array_of_v_storage_object_reconcile_result_reconcile_detail), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectReconcileResultReconcileDetail>>(v, wrap_array_of_v_storage_object_reconcile_result_reconcile_detail) }),
        ("HostVFlashManagerVFlashCacheConfigInfo", TypeInfo::Object { name: "HostVFlashManagerVFlashCacheConfigInfo", builder_fn: || Box::new(HostVFlashManagerVFlashCacheConfigInfoFields::new()) }),
        ("VirtualAppVAppState", TypeInfo::Value { name: "VirtualAppVAppState", make_deserializer: || make_deser_with::<super::enums::VirtualAppVAppStateEnum>(wrap_virtual_app_v_app_state), from_value: |v| from_val_with::<super::enums::VirtualAppVAppStateEnum>(v, wrap_virtual_app_v_app_state) }),
        ("ArrayOfVsanHealthConfirmationDialog", TypeInfo::Value { name: "ArrayOfVsanHealthConfirmationDialog", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthConfirmationDialog>>(wrap_array_of_vsan_health_confirmation_dialog), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthConfirmationDialog>>(v, wrap_array_of_vsan_health_confirmation_dialog) }),
        ("ArrayOfOrphanedDvFilterSwitch", TypeInfo::Value { name: "ArrayOfOrphanedDvFilterSwitch", make_deserializer: || make_deser_with::<Vec<super::structs::OrphanedDvFilterSwitch>>(wrap_array_of_orphaned_dv_filter_switch), from_value: |v| from_val_with::<Vec<super::structs::OrphanedDvFilterSwitch>>(v, wrap_array_of_orphaned_dv_filter_switch) }),
        ("AdminDisabled", TypeInfo::Object { name: "AdminDisabled", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::AdminDisabled))) }),
        ("GeneralEvent", TypeInfo::Object { name: "GeneralEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::GeneralEvent))) }),
        ("VirtualMachineProfileRawData", TypeInfo::Object { name: "VirtualMachineProfileRawData", builder_fn: || Box::new(VirtualMachineProfileRawDataFields::new()) }),
        ("ArrayOfVirtualDisk", TypeInfo::Value { name: "ArrayOfVirtualDisk", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDisk>>(wrap_array_of_virtual_disk), from_value: |v| from_val_with::<Vec<super::structs::VirtualDisk>>(v, wrap_array_of_virtual_disk) }),
        ("ArrayOfLicenseAssignmentManagerLicenseAssignment", TypeInfo::Value { name: "ArrayOfLicenseAssignmentManagerLicenseAssignment", make_deserializer: || make_deser_with::<Vec<super::structs::LicenseAssignmentManagerLicenseAssignment>>(wrap_array_of_license_assignment_manager_license_assignment), from_value: |v| from_val_with::<Vec<super::structs::LicenseAssignmentManagerLicenseAssignment>>(v, wrap_array_of_license_assignment_manager_license_assignment) }),
        ("ArrayOfVsanSpaceUsage", TypeInfo::Value { name: "ArrayOfVsanSpaceUsage", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSpaceUsage>>(wrap_array_of_vsan_space_usage), from_value: |v| from_val_with::<Vec<super::structs::VsanSpaceUsage>>(v, wrap_array_of_vsan_space_usage) }),
        ("ArrayOfCnsQuerySelection", TypeInfo::Value { name: "ArrayOfCnsQuerySelection", make_deserializer: || make_deser_with::<Vec<super::structs::CnsQuerySelection>>(wrap_array_of_cns_query_selection), from_value: |v| from_val_with::<Vec<super::structs::CnsQuerySelection>>(v, wrap_array_of_cns_query_selection) }),
        ("StorageMigrationAction", TypeInfo::Object { name: "StorageMigrationAction", builder_fn: || Box::new(StorageMigrationActionFields::new()) }),
        ("ArrayOfCnsSnapshotNotFoundFault", TypeInfo::Value { name: "ArrayOfCnsSnapshotNotFoundFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cns_snapshot_not_found_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cns_snapshot_not_found_fault) }),
        ("ArrayOfHostDhcpServiceConfig", TypeInfo::Value { name: "ArrayOfHostDhcpServiceConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostDhcpServiceConfig>>(wrap_array_of_host_dhcp_service_config), from_value: |v| from_val_with::<Vec<super::structs::HostDhcpServiceConfig>>(v, wrap_array_of_host_dhcp_service_config) }),
        ("ArrayOfMemorySnapshotOnIndependentDisk", TypeInfo::Value { name: "ArrayOfMemorySnapshotOnIndependentDisk", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_memory_snapshot_on_independent_disk), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_memory_snapshot_on_independent_disk) }),
        ("ArrayOfSessionManagerServiceRequestSpec", TypeInfo::Value { name: "ArrayOfSessionManagerServiceRequestSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_session_manager_service_request_spec_array)), from_value: |v| cast_to_session_manager_service_request_spec_array(from_value(v)?) }),
        ("ArrayOfHostNetworkConfigNetStackSpec", TypeInfo::Value { name: "ArrayOfHostNetworkConfigNetStackSpec", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetworkConfigNetStackSpec>>(wrap_array_of_host_network_config_net_stack_spec), from_value: |v| from_val_with::<Vec<super::structs::HostNetworkConfigNetStackSpec>>(v, wrap_array_of_host_network_config_net_stack_spec) }),
        ("ArrayOfNetworkRollbackEvent", TypeInfo::Value { name: "ArrayOfNetworkRollbackEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_network_rollback_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_network_rollback_event) }),
        ("ArrayOfReplicationInfoDiskSettings", TypeInfo::Value { name: "ArrayOfReplicationInfoDiskSettings", make_deserializer: || make_deser_with::<Vec<super::structs::ReplicationInfoDiskSettings>>(wrap_array_of_replication_info_disk_settings), from_value: |v| from_val_with::<Vec<super::structs::ReplicationInfoDiskSettings>>(v, wrap_array_of_replication_info_disk_settings) }),
        ("VmPowerOffOnIsolationEvent", TypeInfo::Object { name: "VmPowerOffOnIsolationEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmPowerOffOnIsolationEvent))) }),
        ("ArrayOfEventManagerEventViewSpec", TypeInfo::Value { name: "ArrayOfEventManagerEventViewSpec", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_event_manager_event_view_spec_array)), from_value: |v| cast_to_event_manager_event_view_spec_array(from_value(v)?) }),
        ("ArrayOfVsanHostDeviceInfo", TypeInfo::Value { name: "ArrayOfVsanHostDeviceInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostDeviceInfo>>(wrap_array_of_vsan_host_device_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostDeviceInfo>>(v, wrap_array_of_vsan_host_device_info) }),
        ("ArrayOfDvsNotAuthorized", TypeInfo::Value { name: "ArrayOfDvsNotAuthorized", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_dvs_not_authorized), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_dvs_not_authorized) }),
        ("ArrayOfDasAgentFoundEvent", TypeInfo::Value { name: "ArrayOfDasAgentFoundEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_das_agent_found_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_das_agent_found_event) }),
        ("SolutionsHookInfo", TypeInfo::Object { name: "SolutionsHookInfo", builder_fn: || Box::new(SolutionsHookInfoFields::new()) }),
        ("LicenseServerUnavailableEvent", TypeInfo::Object { name: "LicenseServerUnavailableEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::LicenseServerUnavailableEvent))) }),
        ("ArrayOfHostApplyProfile", TypeInfo::Value { name: "ArrayOfHostApplyProfile", make_deserializer: || make_deser_with::<Vec<super::structs::HostApplyProfile>>(wrap_array_of_host_apply_profile), from_value: |v| from_val_with::<Vec<super::structs::HostApplyProfile>>(v, wrap_array_of_host_apply_profile) }),
        ("ArrayOfVmSuspendingEvent", TypeInfo::Value { name: "ArrayOfVmSuspendingEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_suspending_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_suspending_event) }),
        ("ArrayOfHostMultipathInfo", TypeInfo::Value { name: "ArrayOfHostMultipathInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostMultipathInfo>>(wrap_array_of_host_multipath_info), from_value: |v| from_val_with::<Vec<super::structs::HostMultipathInfo>>(v, wrap_array_of_host_multipath_info) }),
        ("ArrayOfAlarmReconfiguredEvent", TypeInfo::Value { name: "ArrayOfAlarmReconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_alarm_reconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_alarm_reconfigured_event) }),
        ("NoCompatibleHardAffinityHost", TypeInfo::Object { name: "NoCompatibleHardAffinityHost", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoCompatibleHardAffinityHost))) }),
        ("PhysicalNicHint", TypeInfo::Object { name: "PhysicalNicHint", builder_fn: || Box::new(PhysicalNicHintFields::new()) }),
        ("VspanPortConflict", TypeInfo::Object { name: "VspanPortConflict", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VspanPortConflict))) }),
        ("ArrayOfHostInventoryUnreadableEvent", TypeInfo::Value { name: "ArrayOfHostInventoryUnreadableEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_inventory_unreadable_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_inventory_unreadable_event) }),
        ("DiskTooSmall", TypeInfo::Object { name: "DiskTooSmall", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::DiskTooSmall))) }),
        ("ArrayOfCnsCursor", TypeInfo::Value { name: "ArrayOfCnsCursor", make_deserializer: || make_deser_with::<Vec<super::structs::CnsCursor>>(wrap_array_of_cns_cursor), from_value: |v| from_val_with::<Vec<super::structs::CnsCursor>>(v, wrap_array_of_cns_cursor) }),
        ("VslmAboutInfo", TypeInfo::Object { name: "VslmAboutInfo", builder_fn: || Box::new(VslmAboutInfoFields::new()) }),
        ("ArrayOfFaultToleranceConfigSpec", TypeInfo::Value { name: "ArrayOfFaultToleranceConfigSpec", make_deserializer: || make_deser_with::<Vec<super::structs::FaultToleranceConfigSpec>>(wrap_array_of_fault_tolerance_config_spec), from_value: |v| from_val_with::<Vec<super::structs::FaultToleranceConfigSpec>>(v, wrap_array_of_fault_tolerance_config_spec) }),
        ("PbmLegacyHubsNotSupported", TypeInfo::Object { name: "PbmLegacyHubsNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PbmLegacyHubsNotSupported))) }),
        ("ArrayOfProfileNumericComparator", TypeInfo::Value { name: "ArrayOfProfileNumericComparator", make_deserializer: || make_deser_with::<Vec<super::enums::ProfileNumericComparatorEnum>>(wrap_array_of_profile_numeric_comparator), from_value: |v| from_val_with::<Vec<super::enums::ProfileNumericComparatorEnum>>(v, wrap_array_of_profile_numeric_comparator) }),
        ("DvsHostInfrastructureTrafficResourceAllocation", TypeInfo::Object { name: "DvsHostInfrastructureTrafficResourceAllocation", builder_fn: || Box::new(DvsHostInfrastructureTrafficResourceAllocationFields::new()) }),
        ("ArrayOfHostAssignableHardwareConfigAttributeOverride", TypeInfo::Value { name: "ArrayOfHostAssignableHardwareConfigAttributeOverride", make_deserializer: || make_deser_with::<Vec<super::structs::HostAssignableHardwareConfigAttributeOverride>>(wrap_array_of_host_assignable_hardware_config_attribute_override), from_value: |v| from_val_with::<Vec<super::structs::HostAssignableHardwareConfigAttributeOverride>>(v, wrap_array_of_host_assignable_hardware_config_attribute_override) }),
        ("ArrayOfLatencySensitivity", TypeInfo::Value { name: "ArrayOfLatencySensitivity", make_deserializer: || make_deser_with::<Vec<super::structs::LatencySensitivity>>(wrap_array_of_latency_sensitivity), from_value: |v| from_val_with::<Vec<super::structs::LatencySensitivity>>(v, wrap_array_of_latency_sensitivity) }),
        ("VsanConfigBaseIssue", TypeInfo::Object { name: "VsanConfigBaseIssue", builder_fn: || Box::new(VsanConfigBaseIssueFields::new()) }),
        ("ArrayOfNASDatastoreCreatedEvent", TypeInfo::Value { name: "ArrayOfNASDatastoreCreatedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_nas_datastore_created_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_nas_datastore_created_event) }),
        ("ArrayOfVMwareDVSHealthCheckCapability", TypeInfo::Value { name: "ArrayOfVMwareDVSHealthCheckCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsHealthCheckCapability>>(wrap_array_of_v_mware_dvs_health_check_capability), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsHealthCheckCapability>>(v, wrap_array_of_v_mware_dvs_health_check_capability) }),
        ("ArrayOfNotUserConfigurableProperty", TypeInfo::Value { name: "ArrayOfNotUserConfigurableProperty", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_not_user_configurable_property), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_not_user_configurable_property) }),
        ("NoCommonProviderForAllBackings", TypeInfo::Object { name: "NoCommonProviderForAllBackings", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NoCommonProviderForAllBackings))) }),
        ("SolutionsOvfProperty", TypeInfo::Object { name: "SolutionsOvfProperty", builder_fn: || Box::new(SolutionsOvfPropertyFields::new()) }),
        ("VmfsDatastoreCreateSpec", TypeInfo::Object { name: "VmfsDatastoreCreateSpec", builder_fn: || Box::new(VmfsDatastoreCreateSpecFields::new()) }),
        ("ArrayOfStructuredCustomizations", TypeInfo::Value { name: "ArrayOfStructuredCustomizations", make_deserializer: || make_deser_with::<Vec<super::structs::StructuredCustomizations>>(wrap_array_of_structured_customizations), from_value: |v| from_val_with::<Vec<super::structs::StructuredCustomizations>>(v, wrap_array_of_structured_customizations) }),
        ("NumVirtualCpusNotSupported", TypeInfo::Object { name: "NumVirtualCpusNotSupported", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NumVirtualCpusNotSupported))) }),
        ("QuarantineModeFault", TypeInfo::Object { name: "QuarantineModeFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::QuarantineModeFault))) }),
        ("ArrayOfCustomizationFault", TypeInfo::Value { name: "ArrayOfCustomizationFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_customization_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_customization_fault) }),
        ("ArrayOfHostScsiTopologyInterface", TypeInfo::Value { name: "ArrayOfHostScsiTopologyInterface", make_deserializer: || make_deser_with::<Vec<super::structs::HostScsiTopologyInterface>>(wrap_array_of_host_scsi_topology_interface), from_value: |v| from_val_with::<Vec<super::structs::HostScsiTopologyInterface>>(v, wrap_array_of_host_scsi_topology_interface) }),
        ("EventEx", TypeInfo::Object { name: "EventEx", builder_fn: || Box::new(EventFields::new(Some(StructType::EventEx))) }),
        ("VirtualDiskSpec", TypeInfo::Object { name: "VirtualDiskSpec", builder_fn: || Box::new(VirtualDiskSpecFields::new()) }),
        ("ArrayOfHostIsolationIpPingFailedEvent", TypeInfo::Value { name: "ArrayOfHostIsolationIpPingFailedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_isolation_ip_ping_failed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_isolation_ip_ping_failed_event) }),
        ("ArrayOfVmEventArgument", TypeInfo::Value { name: "ArrayOfVmEventArgument", make_deserializer: || make_deser_with::<Vec<super::structs::VmEventArgument>>(wrap_array_of_vm_event_argument), from_value: |v| from_val_with::<Vec<super::structs::VmEventArgument>>(v, wrap_array_of_vm_event_argument) }),
        ("LACPInfo", TypeInfo::Object { name: "LACPInfo", builder_fn: || Box::new(LacpInfoFields::new()) }),
        ("PatchNotApplicable", TypeInfo::Object { name: "PatchNotApplicable", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::PatchNotApplicable))) }),
        ("ArrayOfDrsBehavior", TypeInfo::Value { name: "ArrayOfDrsBehavior", make_deserializer: || make_deser_with::<Vec<super::enums::DrsBehaviorEnum>>(wrap_array_of_drs_behavior), from_value: |v| from_val_with::<Vec<super::enums::DrsBehaviorEnum>>(v, wrap_array_of_drs_behavior) }),
        ("LifecycleFaultDomainDetails", TypeInfo::Object { name: "LifecycleFaultDomainDetails", builder_fn: || Box::new(LifecycleFaultDomainDetailsFields::new()) }),
        ("HostNatServiceConfig", TypeInfo::Object { name: "HostNatServiceConfig", builder_fn: || Box::new(HostNatServiceConfigFields::new()) }),
        ("QueryExecutionFault", TypeInfo::Object { name: "QueryExecutionFault", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::QueryExecutionFault))) }),
        ("HostForceMountedInfo", TypeInfo::Object { name: "HostForceMountedInfo", builder_fn: || Box::new(HostForceMountedInfoFields::new()) }),
        ("ArrayOfVsanPerfQuerySpec", TypeInfo::Value { name: "ArrayOfVsanPerfQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfQuerySpec>>(wrap_array_of_vsan_perf_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfQuerySpec>>(v, wrap_array_of_vsan_perf_query_spec) }),
        ("HostRdmaDeviceConnectionInfo", TypeInfo::Object { name: "HostRdmaDeviceConnectionInfo", builder_fn: || Box::new(HostRdmaDeviceConnectionInfoFields::new()) }),
        ("VirtualEthernetCardLegacyNetworkBackingOption", TypeInfo::Object { name: "VirtualEthernetCardLegacyNetworkBackingOption", builder_fn: || Box::new(VirtualEthernetCardLegacyNetworkBackingOptionFields::new()) }),
        ("ArrayOfCustomizationStatelessIpV6Generator", TypeInfo::Value { name: "ArrayOfCustomizationStatelessIpV6Generator", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationStatelessIpV6Generator>>(wrap_array_of_customization_stateless_ip_v_6_generator), from_value: |v| from_val_with::<Vec<super::structs::CustomizationStatelessIpV6Generator>>(v, wrap_array_of_customization_stateless_ip_v_6_generator) }),
        ("VmVnicPoolReservationViolationRaiseEvent", TypeInfo::Object { name: "VmVnicPoolReservationViolationRaiseEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::VmVnicPoolReservationViolationRaiseEvent))) }),
        ("PasswordField", TypeInfo::Object { name: "PasswordField", builder_fn: || Box::new(PasswordFieldFields::new()) }),
        ("ArrayOfStorageDrsCannotMoveFTVm", TypeInfo::Value { name: "ArrayOfStorageDrsCannotMoveFTVm", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_storage_drs_cannot_move_ft_vm), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_storage_drs_cannot_move_ft_vm) }),
        ("TaskFilterSpecByTime", TypeInfo::Object { name: "TaskFilterSpecByTime", builder_fn: || Box::new(TaskFilterSpecByTimeFields::new()) }),
        ("ArrayOfNoVirtualNic", TypeInfo::Value { name: "ArrayOfNoVirtualNic", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_no_virtual_nic), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_no_virtual_nic) }),
        ("ArrayOfAgencyScope", TypeInfo::Value { name: "ArrayOfAgencyScope", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_agency_scope_array)), from_value: |v| cast_to_agency_scope_array(from_value(v)?) }),
        ("ArrayOfVslmVsoVStorageObjectSnapshotResult", TypeInfo::Value { name: "ArrayOfVslmVsoVStorageObjectSnapshotResult", make_deserializer: || make_deser_with::<Vec<super::structs::VslmVsoVStorageObjectSnapshotResult>>(wrap_array_of_vslm_vso_v_storage_object_snapshot_result), from_value: |v| from_val_with::<Vec<super::structs::VslmVsoVStorageObjectSnapshotResult>>(v, wrap_array_of_vslm_vso_v_storage_object_snapshot_result) }),
        ("ArrayOfVirtualMachineMemoryReservationInfo", TypeInfo::Value { name: "ArrayOfVirtualMachineMemoryReservationInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineMemoryReservationInfo>>(wrap_array_of_virtual_machine_memory_reservation_info), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineMemoryReservationInfo>>(v, wrap_array_of_virtual_machine_memory_reservation_info) }),
        ("VsanPerfMetricId", TypeInfo::Object { name: "VsanPerfMetricId", builder_fn: || Box::new(VsanPerfMetricIdFields::new()) }),
        ("NoLicenseEvent", TypeInfo::Object { name: "NoLicenseEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::NoLicenseEvent))) }),
        ("ArrayOfSharesInfo", TypeInfo::Value { name: "ArrayOfSharesInfo", make_deserializer: || make_deser_with::<Vec<super::structs::SharesInfo>>(wrap_array_of_shares_info), from_value: |v| from_val_with::<Vec<super::structs::SharesInfo>>(v, wrap_array_of_shares_info) }),
        ("DatastoreVVolContainerFailoverPair", TypeInfo::Object { name: "DatastoreVVolContainerFailoverPair", builder_fn: || Box::new(DatastoreVVolContainerFailoverPairFields::new()) }),
        ("ArrayOfOvfAttribute", TypeInfo::Value { name: "ArrayOfOvfAttribute", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_ovf_attribute), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_ovf_attribute) }),
        ("ArrayOfTaskReason", TypeInfo::Value { name: "ArrayOfTaskReason", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_task_reason_array)), from_value: |v| cast_to_task_reason_array(from_value(v)?) }),
        ("ArrayOfCustomizationPassword", TypeInfo::Value { name: "ArrayOfCustomizationPassword", make_deserializer: || make_deser_with::<Vec<super::structs::CustomizationPassword>>(wrap_array_of_customization_password), from_value: |v| from_val_with::<Vec<super::structs::CustomizationPassword>>(v, wrap_array_of_customization_password) }),
        ("ArrayOfVirtualDiskSparseVer1BackingOption", TypeInfo::Value { name: "ArrayOfVirtualDiskSparseVer1BackingOption", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualDiskSparseVer1BackingOption>>(wrap_array_of_virtual_disk_sparse_ver_1_backing_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualDiskSparseVer1BackingOption>>(v, wrap_array_of_virtual_disk_sparse_ver_1_backing_option) }),
        ("ArrayOfHostSystemConnectionState", TypeInfo::Value { name: "ArrayOfHostSystemConnectionState", make_deserializer: || make_deser_with::<Vec<super::enums::HostSystemConnectionStateEnum>>(wrap_array_of_host_system_connection_state), from_value: |v| from_val_with::<Vec<super::enums::HostSystemConnectionStateEnum>>(v, wrap_array_of_host_system_connection_state) }),
        ("ArrayOfVmFaultToleranceTooManyFtVcpusOnHost", TypeInfo::Value { name: "ArrayOfVmFaultToleranceTooManyFtVcpusOnHost", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_vm_fault_tolerance_too_many_ft_vcpus_on_host), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_vm_fault_tolerance_too_many_ft_vcpus_on_host) }),
        ("ArrayOfVirtualMachineVirtualNuma", TypeInfo::Value { name: "ArrayOfVirtualMachineVirtualNuma", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualMachineVirtualNuma>>(wrap_array_of_virtual_machine_virtual_numa), from_value: |v| from_val_with::<Vec<super::structs::VirtualMachineVirtualNuma>>(v, wrap_array_of_virtual_machine_virtual_numa) }),
        ("FolderBatchAddStandaloneHostsResult", TypeInfo::Object { name: "FolderBatchAddStandaloneHostsResult", builder_fn: || Box::new(FolderBatchAddStandaloneHostsResultFields::new()) }),
        ("VirtualMachineNetworkInfo", TypeInfo::Object { name: "VirtualMachineNetworkInfo", builder_fn: || Box::new(VirtualMachineNetworkInfoFields::new()) }),
        ("ArrayOfHostSslThumbprintInfo", TypeInfo::Value { name: "ArrayOfHostSslThumbprintInfo", make_deserializer: || make_deser_with::<Vec<super::structs::HostSslThumbprintInfo>>(wrap_array_of_host_ssl_thumbprint_info), from_value: |v| from_val_with::<Vec<super::structs::HostSslThumbprintInfo>>(v, wrap_array_of_host_ssl_thumbprint_info) }),
        ("LicenseManagerLicenseInfo", TypeInfo::Object { name: "LicenseManagerLicenseInfo", builder_fn: || Box::new(LicenseManagerLicenseInfoFields::new()) }),
        ("ArrayOfThirdPartyLicenseAssignmentFailed", TypeInfo::Value { name: "ArrayOfThirdPartyLicenseAssignmentFailed", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_third_party_license_assignment_failed), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_third_party_license_assignment_failed) }),
        ("TooManyConsecutiveOverrides", TypeInfo::Object { name: "TooManyConsecutiveOverrides", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TooManyConsecutiveOverrides))) }),
        ("ClusterGroupInfo", TypeInfo::Object { name: "ClusterGroupInfo", builder_fn: || Box::new(ClusterGroupInfoFields::new()) }),
        ("ArrayOfVsanHealthDataDrivenAction", TypeInfo::Value { name: "ArrayOfVsanHealthDataDrivenAction", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHealthDataDrivenAction>>(wrap_array_of_vsan_health_data_driven_action), from_value: |v| from_val_with::<Vec<super::structs::VsanHealthDataDrivenAction>>(v, wrap_array_of_vsan_health_data_driven_action) }),
        ("ArrayOfCnsSnapshotId", TypeInfo::Value { name: "ArrayOfCnsSnapshotId", make_deserializer: || make_deser_with::<Vec<super::structs::CnsSnapshotId>>(wrap_array_of_cns_snapshot_id), from_value: |v| from_val_with::<Vec<super::structs::CnsSnapshotId>>(v, wrap_array_of_cns_snapshot_id) }),
        ("ArrayOfClusterHostPowerAction", TypeInfo::Value { name: "ArrayOfClusterHostPowerAction", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterHostPowerAction>>(wrap_array_of_cluster_host_power_action), from_value: |v| from_val_with::<Vec<super::structs::ClusterHostPowerAction>>(v, wrap_array_of_cluster_host_power_action) }),
        ("VsanSnapshotQueryResult", TypeInfo::Object { name: "VsanSnapshotQueryResult", builder_fn: || Box::new(VsanSnapshotQueryResultFields::new()) }),
        ("InvalidIpfixConfig", TypeInfo::Object { name: "InvalidIpfixConfig", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidIpfixConfig))) }),
        ("HostDasErrorEvent", TypeInfo::Object { name: "HostDasErrorEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostDasErrorEvent))) }),
        ("NotSupportedHostForVFlash", TypeInfo::Object { name: "NotSupportedHostForVFlash", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::NotSupportedHostForVFlash))) }),
        ("ArrayOfGuestInfo", TypeInfo::Value { name: "ArrayOfGuestInfo", make_deserializer: || make_deser_with::<Vec<super::structs::GuestInfo>>(wrap_array_of_guest_info), from_value: |v| from_val_with::<Vec<super::structs::GuestInfo>>(v, wrap_array_of_guest_info) }),
        ("TooManyDevices", TypeInfo::Object { name: "TooManyDevices", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::TooManyDevices))) }),
        ("NoAgentVmNetwork", TypeInfo::Object { name: "NoAgentVmNetwork", builder_fn: || Box::new(NoAgentVmNetworkFields::new()) }),
        ("ScsiLun", TypeInfo::Object { name: "ScsiLun", builder_fn: || Box::new(ScsiLunFields::new()) }),
        ("ArrayOfDirectPathProfileManagerTargetCluster", TypeInfo::Value { name: "ArrayOfDirectPathProfileManagerTargetCluster", make_deserializer: || make_deser_with::<Vec<super::structs::DirectPathProfileManagerTargetCluster>>(wrap_array_of_direct_path_profile_manager_target_cluster), from_value: |v| from_val_with::<Vec<super::structs::DirectPathProfileManagerTargetCluster>>(v, wrap_array_of_direct_path_profile_manager_target_cluster) }),
        ("DVPortgroupRenamedEvent", TypeInfo::Object { name: "DVPortgroupRenamedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::DvPortgroupRenamedEvent))) }),
        ("ArrayOfDiskCryptoSpec", TypeInfo::Value { name: "ArrayOfDiskCryptoSpec", make_deserializer: || make_deser_with::<Vec<super::structs::DiskCryptoSpec>>(wrap_array_of_disk_crypto_spec), from_value: |v| from_val_with::<Vec<super::structs::DiskCryptoSpec>>(v, wrap_array_of_disk_crypto_spec) }),
        ("VsanHealthApiBasedAction", TypeInfo::Object { name: "VsanHealthApiBasedAction", builder_fn: || Box::new(VsanHealthApiBasedActionFields::new()) }),
        ("VibIssue", TypeInfo::Object { name: "VibIssue", builder_fn: || Box::new(VibIssueFields::new()) }),
        ("ArrayOfAlreadyDone", TypeInfo::Value { name: "ArrayOfAlreadyDone", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_already_done), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_already_done) }),
        ("ArrayOfEVCModeIllegalByVendor", TypeInfo::Value { name: "ArrayOfEVCModeIllegalByVendor", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_evc_mode_illegal_by_vendor), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_evc_mode_illegal_by_vendor) }),
        ("HostSubSpecificationDeleteEvent", TypeInfo::Object { name: "HostSubSpecificationDeleteEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::HostSubSpecificationDeleteEvent))) }),
        ("ProviderSyncFailed", TypeInfo::Object { name: "ProviderSyncFailed", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::ProviderSyncFailed))) }),
        ("ArrayOfVStorageObjectConfigInfo", TypeInfo::Value { name: "ArrayOfVStorageObjectConfigInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VStorageObjectConfigInfo>>(wrap_array_of_v_storage_object_config_info), from_value: |v| from_val_with::<Vec<super::structs::VStorageObjectConfigInfo>>(v, wrap_array_of_v_storage_object_config_info) }),
        ("ArrayOfVirtualEnsoniq1371Option", TypeInfo::Value { name: "ArrayOfVirtualEnsoniq1371Option", make_deserializer: || make_deser_with::<Vec<super::structs::VirtualEnsoniq1371Option>>(wrap_array_of_virtual_ensoniq_1371_option), from_value: |v| from_val_with::<Vec<super::structs::VirtualEnsoniq1371Option>>(v, wrap_array_of_virtual_ensoniq_1371_option) }),
        ("AlarmClearedEvent", TypeInfo::Object { name: "AlarmClearedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::AlarmClearedEvent))) }),
        ("ArrayOfVsanPerfTimeRangeQuerySpec", TypeInfo::Value { name: "ArrayOfVsanPerfTimeRangeQuerySpec", make_deserializer: || make_deser_with::<Vec<super::structs::VsanPerfTimeRangeQuerySpec>>(wrap_array_of_vsan_perf_time_range_query_spec), from_value: |v| from_val_with::<Vec<super::structs::VsanPerfTimeRangeQuerySpec>>(v, wrap_array_of_vsan_perf_time_range_query_spec) }),
        ("ArrayOfScsiLun", TypeInfo::Value { name: "ArrayOfScsiLun", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_scsi_lun_array)), from_value: |v| cast_to_scsi_lun_array(from_value(v)?) }),
        ("ArrayOfVibCannotPutHostOutOfMaintenanceMode", TypeInfo::Value { name: "ArrayOfVibCannotPutHostOutOfMaintenanceMode", make_deserializer: || make_deser_with::<Vec<super::structs::VibCannotPutHostOutOfMaintenanceMode>>(wrap_array_of_vib_cannot_put_host_out_of_maintenance_mode), from_value: |v| from_val_with::<Vec<super::structs::VibCannotPutHostOutOfMaintenanceMode>>(v, wrap_array_of_vib_cannot_put_host_out_of_maintenance_mode) }),
        ("VirtualPCIPassthroughVmiopBackingOption", TypeInfo::Object { name: "VirtualPCIPassthroughVmiopBackingOption", builder_fn: || Box::new(VirtualPciPassthroughVmiopBackingOptionFields::new()) }),
        ("GuestProcessInfo", TypeInfo::Object { name: "GuestProcessInfo", builder_fn: || Box::new(GuestProcessInfoFields::new()) }),
        ("ArrayOfIpPoolAssociation", TypeInfo::Value { name: "ArrayOfIpPoolAssociation", make_deserializer: || make_deser_with::<Vec<super::structs::IpPoolAssociation>>(wrap_array_of_ip_pool_association), from_value: |v| from_val_with::<Vec<super::structs::IpPoolAssociation>>(v, wrap_array_of_ip_pool_association) }),
        ("VsanClusterAdvCfgSyncResult", TypeInfo::Object { name: "VsanClusterAdvCfgSyncResult", builder_fn: || Box::new(VsanClusterAdvCfgSyncResultFields::new()) }),
        ("VirtualDevice", TypeInfo::Object { name: "VirtualDevice", builder_fn: || Box::new(VirtualDeviceFields::new()) }),
        ("ArrayOfClusterVmHostRuleInfo", TypeInfo::Value { name: "ArrayOfClusterVmHostRuleInfo", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterVmHostRuleInfo>>(wrap_array_of_cluster_vm_host_rule_info), from_value: |v| from_val_with::<Vec<super::structs::ClusterVmHostRuleInfo>>(v, wrap_array_of_cluster_vm_host_rule_info) }),
        ("VsanHostDrsStats", TypeInfo::Object { name: "VsanHostDrsStats", builder_fn: || Box::new(VsanHostDrsStatsFields::new()) }),
        ("HostInternetScsiHbaAuthenticationProperties", TypeInfo::Object { name: "HostInternetScsiHbaAuthenticationProperties", builder_fn: || Box::new(HostInternetScsiHbaAuthenticationPropertiesFields::new()) }),
        ("ArrayOfVMwareDVSTeamingHealthCheckResult", TypeInfo::Value { name: "ArrayOfVMwareDVSTeamingHealthCheckResult", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsTeamingHealthCheckResult>>(wrap_array_of_v_mware_dvs_teaming_health_check_result), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsTeamingHealthCheckResult>>(v, wrap_array_of_v_mware_dvs_teaming_health_check_result) }),
        ("VsanDataInTransitEncryptionConfig", TypeInfo::Object { name: "VsanDataInTransitEncryptionConfig", builder_fn: || Box::new(VsanDataInTransitEncryptionConfigFields::new()) }),
        ("ArrayOfDisabledClusterFault", TypeInfo::Value { name: "ArrayOfDisabledClusterFault", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_disabled_cluster_fault), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_disabled_cluster_fault) }),
        ("ObjectUpdate", TypeInfo::Object { name: "ObjectUpdate", builder_fn: || Box::new(ObjectUpdateFields::new()) }),
        ("ArrayOfHostAccessRestrictedToManagementServer", TypeInfo::Value { name: "ArrayOfHostAccessRestrictedToManagementServer", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_host_access_restricted_to_management_server), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_host_access_restricted_to_management_server) }),
        ("VibRequiresHostInMaintenanceMode", TypeInfo::Object { name: "VibRequiresHostInMaintenanceMode", builder_fn: || Box::new(VibRequiresHostInMaintenanceModeFields::new()) }),
        ("ArrayOfVsanHostMembershipInfo", TypeInfo::Value { name: "ArrayOfVsanHostMembershipInfo", make_deserializer: || make_deser_with::<Vec<super::structs::VsanHostMembershipInfo>>(wrap_array_of_vsan_host_membership_info), from_value: |v| from_val_with::<Vec<super::structs::VsanHostMembershipInfo>>(v, wrap_array_of_vsan_host_membership_info) }),
        ("VStorageObjectReconcileResultReconcileDetail", TypeInfo::Object { name: "VStorageObjectReconcileResultReconcileDetail", builder_fn: || Box::new(VStorageObjectReconcileResultReconcileDetailFields::new()) }),
        ("ArrayOfVsanFileShareQueryProperties", TypeInfo::Value { name: "ArrayOfVsanFileShareQueryProperties", make_deserializer: || make_deser_with::<Vec<super::structs::VsanFileShareQueryProperties>>(wrap_array_of_vsan_file_share_query_properties), from_value: |v| from_val_with::<Vec<super::structs::VsanFileShareQueryProperties>>(v, wrap_array_of_vsan_file_share_query_properties) }),
        ("ArrayOfLicenseServerSource", TypeInfo::Value { name: "ArrayOfLicenseServerSource", make_deserializer: || make_deser_with::<Vec<super::structs::LicenseServerSource>>(wrap_array_of_license_server_source), from_value: |v| from_val_with::<Vec<super::structs::LicenseServerSource>>(v, wrap_array_of_license_server_source) }),
        ("ArrayOfCAMServerRefusedConnection", TypeInfo::Value { name: "ArrayOfCAMServerRefusedConnection", make_deserializer: || make_deser_with::<Vec<super::structs::MethodFault>>(wrap_array_of_cam_server_refused_connection), from_value: |v| from_val_with::<Vec<super::structs::MethodFault>>(v, wrap_array_of_cam_server_refused_connection) }),
        ("GroupInfo", TypeInfo::Object { name: "GroupInfo", builder_fn: || Box::new(GroupInfoFields::new()) }),
        ("ArrayOfVmConnectedEvent", TypeInfo::Value { name: "ArrayOfVmConnectedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_vm_connected_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_vm_connected_event) }),
        ("ArrayOfDVSNameArrayUplinkPortPolicy", TypeInfo::Value { name: "ArrayOfDVSNameArrayUplinkPortPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::DvsNameArrayUplinkPortPolicy>>(wrap_array_of_dvs_name_array_uplink_port_policy), from_value: |v| from_val_with::<Vec<super::structs::DvsNameArrayUplinkPortPolicy>>(v, wrap_array_of_dvs_name_array_uplink_port_policy) }),
        ("ArrayOfVslmCreateSpecRawDiskMappingBackingSpec", TypeInfo::Value { name: "ArrayOfVslmCreateSpecRawDiskMappingBackingSpec", make_deserializer: || make_deser_with::<Vec<super::structs::VslmCreateSpecRawDiskMappingBackingSpec>>(wrap_array_of_vslm_create_spec_raw_disk_mapping_backing_spec), from_value: |v| from_val_with::<Vec<super::structs::VslmCreateSpecRawDiskMappingBackingSpec>>(v, wrap_array_of_vslm_create_spec_raw_disk_mapping_backing_spec) }),
        ("VirtualPrecisionClock", TypeInfo::Object { name: "VirtualPrecisionClock", builder_fn: || Box::new(VirtualPrecisionClockFields::new()) }),
        ("ArrayOfClusterAgentVmHookFailed", TypeInfo::Value { name: "ArrayOfClusterAgentVmHookFailed", make_deserializer: || make_deser_with::<Vec<super::structs::ClusterAgentVmHookFailed>>(wrap_array_of_cluster_agent_vm_hook_failed), from_value: |v| from_val_with::<Vec<super::structs::ClusterAgentVmHookFailed>>(v, wrap_array_of_cluster_agent_vm_hook_failed) }),
        ("ArrayOfScheduledTaskCompletedEvent", TypeInfo::Value { name: "ArrayOfScheduledTaskCompletedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_scheduled_task_completed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_scheduled_task_completed_event) }),
        ("VirtualMachineConfigInfoOverheadInfo", TypeInfo::Object { name: "VirtualMachineConfigInfoOverheadInfo", builder_fn: || Box::new(VirtualMachineConfigInfoOverheadInfoFields::new()) }),
        ("ArrayOfAllVirtualMachinesLicensedEvent", TypeInfo::Value { name: "ArrayOfAllVirtualMachinesLicensedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_all_virtual_machines_licensed_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_all_virtual_machines_licensed_event) }),
        ("ArrayOfVsanSyncingObjectFilter", TypeInfo::Value { name: "ArrayOfVsanSyncingObjectFilter", make_deserializer: || make_deser_with::<Vec<super::structs::VsanSyncingObjectFilter>>(wrap_array_of_vsan_syncing_object_filter), from_value: |v| from_val_with::<Vec<super::structs::VsanSyncingObjectFilter>>(v, wrap_array_of_vsan_syncing_object_filter) }),
        ("ArrayOfPbmCapabilityTypeInfo", TypeInfo::Value { name: "ArrayOfPbmCapabilityTypeInfo", make_deserializer: || Box::new(DelegatingDeserializer::<Vec<VimObjectHolder>>::new(cast_to_pbm_capability_type_info_array)), from_value: |v| cast_to_pbm_capability_type_info_array(from_value(v)?) }),
        ("ArrayOfQueryReplicationPeerResult", TypeInfo::Value { name: "ArrayOfQueryReplicationPeerResult", make_deserializer: || make_deser_with::<Vec<super::structs::QueryReplicationPeerResult>>(wrap_array_of_query_replication_peer_result), from_value: |v| from_val_with::<Vec<super::structs::QueryReplicationPeerResult>>(v, wrap_array_of_query_replication_peer_result) }),
        ("UplinkPortVlanTrunkedEvent", TypeInfo::Object { name: "UplinkPortVlanTrunkedEvent", builder_fn: || Box::new(EventFields::new(Some(StructType::UplinkPortVlanTrunkedEvent))) }),
        ("PodStorageDrsEntry", TypeInfo::Object { name: "PodStorageDrsEntry", builder_fn: || Box::new(PodStorageDrsEntryFields::new()) }),
        ("HostTpmEventLogEntry", TypeInfo::Object { name: "HostTpmEventLogEntry", builder_fn: || Box::new(HostTpmEventLogEntryFields::new()) }),
        ("ArrayOfHostProfileAppliedEvent", TypeInfo::Value { name: "ArrayOfHostProfileAppliedEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_host_profile_applied_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_host_profile_applied_event) }),
        ("VmFaultToleranceInvalidFileBacking", TypeInfo::Object { name: "VmFaultToleranceInvalidFileBacking", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::VmFaultToleranceInvalidFileBacking))) }),
        ("VsanHostResourceCheckResult", TypeInfo::Object { name: "VsanHostResourceCheckResult", builder_fn: || Box::new(VsanHostResourceCheckResultFields::new()) }),
        ("InvalidNetworkResource", TypeInfo::Object { name: "InvalidNetworkResource", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::InvalidNetworkResource))) }),
        ("SharesInfo", TypeInfo::Object { name: "SharesInfo", builder_fn: || Box::new(SharesInfoFields::new()) }),
        ("ArrayOfVMwareDvsDpuCapability", TypeInfo::Value { name: "ArrayOfVMwareDvsDpuCapability", make_deserializer: || make_deser_with::<Vec<super::structs::VMwareDvsDpuCapability>>(wrap_array_of_v_mware_dvs_dpu_capability), from_value: |v| from_val_with::<Vec<super::structs::VMwareDvsDpuCapability>>(v, wrap_array_of_v_mware_dvs_dpu_capability) }),
        ("ArrayOfDvsPortReconfiguredEvent", TypeInfo::Value { name: "ArrayOfDvsPortReconfiguredEvent", make_deserializer: || make_deser_with::<Vec<super::structs::Event>>(wrap_array_of_dvs_port_reconfigured_event), from_value: |v| from_val_with::<Vec<super::structs::Event>>(v, wrap_array_of_dvs_port_reconfigured_event) }),
        ("MemorySnapshotOnIndependentDisk", TypeInfo::Object { name: "MemorySnapshotOnIndependentDisk", builder_fn: || Box::new(MethodFaultFields::new(Some(StructType::MemorySnapshotOnIndependentDisk))) }),
        ("VsanDatastoreSourcePrecheckItem", TypeInfo::Object { name: "VsanDatastoreSourcePrecheckItem", builder_fn: || Box::new(VsanDatastoreSourcePrecheckItemFields::new()) }),
        ("ArrayOfOvfValidateHostParams", TypeInfo::Value { name: "ArrayOfOvfValidateHostParams", make_deserializer: || make_deser_with::<Vec<super::structs::OvfValidateHostParams>>(wrap_array_of_ovf_validate_host_params), from_value: |v| from_val_with::<Vec<super::structs::OvfValidateHostParams>>(v, wrap_array_of_ovf_validate_host_params) }),
        ("NasDatastoreInfo", TypeInfo::Object { name: "NasDatastoreInfo", builder_fn: || Box::new(NasDatastoreInfoFields::new()) }),
        ("ArrayOfHostVMotionNetConfig", TypeInfo::Value { name: "ArrayOfHostVMotionNetConfig", make_deserializer: || make_deser_with::<Vec<super::structs::HostVMotionNetConfig>>(wrap_array_of_host_v_motion_net_config), from_value: |v| from_val_with::<Vec<super::structs::HostVMotionNetConfig>>(v, wrap_array_of_host_v_motion_net_config) }),
        ("PbmDefaultProfileInfo", TypeInfo::Object { name: "PbmDefaultProfileInfo", builder_fn: || Box::new(PbmDefaultProfileInfoFields::new()) }),
        ("ArrayOfHostNetworkTrafficShapingPolicy", TypeInfo::Value { name: "ArrayOfHostNetworkTrafficShapingPolicy", make_deserializer: || make_deser_with::<Vec<super::structs::HostNetworkTrafficShapingPolicy>>(wrap_array_of_host_network_traffic_shaping_policy), from_value: |v| from_val_with::<Vec<super::structs::HostNetworkTrafficShapingPolicy>>(v, wrap_array_of_host_network_traffic_shaping_policy) }),
        ("VslmVsoVStorageObjectQueryResult", TypeInfo::Object { name: "VslmVsoVStorageObjectQueryResult", builder_fn: || Box::new(VslmVsoVStorageObjectQueryResultFields::new()) }),
        ("ProfileParameterMetadata", TypeInfo::Object { name: "ProfileParameterMetadata", builder_fn: || Box::new(ProfileParameterMetadataFields::new()) }),
    ],
};

#[inline]
pub fn lookup_type(type_name: &str) -> Option<&'static TypeInfo> {
    TYPE_REGISTRY.get(type_name)
}

impl miniserde::de::Map for VimObjectHolderBuilder<'_> {
    fn key(&mut self, key: &str) -> miniserde::Result<&mut dyn miniserde::de::Visitor> {
        self.core.key(key, lookup_type)
    }

    fn finish(&mut self) -> miniserde::Result<()> {
        match self.core.finish(lookup_type)? {
            VimAny::Object(obj) => {
                *self.__out = Some(VimObjectHolder { out: Some(obj), default_type_name: self.core.default_type_name });
                Ok(())
            }
            VimAny::Value(_) => Err(miniserde::Error),
        }
    }
}

// ValueElements deserialization (wrapper format)
impl miniserde::Deserialize for ValueElements {
    fn begin(out: &mut Option<ValueElements>) -> &mut dyn miniserde::de::Visitor {
        Place::new(out)
    }
}

impl miniserde::de::Visitor for Place<ValueElements> {
    fn map(&mut self) -> miniserde::Result<Box<dyn miniserde::de::Map + '_>> {
        Ok(Box::new(ValueElementsFields::new(&mut self.out)))
    }
}

struct ValueElementsFields<'a> {
    type_name: Option<String>,
    value: Option<miniserde::json::Value>,
    __out: &'a mut Option<ValueElements>,
}

impl<'a> ValueElementsFields<'a> {
    fn new(out: &'a mut Option<ValueElements>) -> Self {
        Self { type_name: None, value: None, __out: out }
    }
}

impl miniserde::de::Map for ValueElementsFields<'_> {
    fn key(&mut self, key: &str) -> miniserde::Result<&mut dyn miniserde::de::Visitor> {
        match key {
            "_typeName" => Ok(miniserde::Deserialize::begin(&mut self.type_name)),
            "_value" => Ok(miniserde::Deserialize::begin(&mut self.value)),
            _ => Ok(<dyn miniserde::de::Visitor>::ignore()),
        }
    }

    fn finish(&mut self) -> miniserde::Result<()> {
        let type_name = self.type_name.take().ok_or(miniserde::Error)?;
        let value = self.value.take().ok_or(miniserde::Error)?;
        let type_info = lookup_type(&type_name).filter(|ti| !ti.is_object()).ok_or(miniserde::Error)?;
        let result = type_info.deserialize_from_value(&value)?;
        *self.__out = Some(result);
        Ok(())
    }
}

// VimAny deserialization
impl miniserde::Deserialize for VimAny {
    fn begin(out: &mut Option<VimAny>) -> &mut dyn miniserde::de::Visitor {
        Place::new(out)
    }
}

impl miniserde::de::Visitor for Place<VimAny> {
    fn map(&mut self) -> miniserde::Result<Box<dyn miniserde::de::Map + '_>> {
        Ok(Box::new(VimAnyBuilder::new(&mut self.out)))
    }
}

impl miniserde::de::Map for VimAnyBuilder<'_> {
    fn key(&mut self, key: &str) -> miniserde::Result<&mut dyn miniserde::de::Visitor> {
        self.core.key(key, lookup_type)
    }

    fn finish(&mut self) -> miniserde::Result<()> {
        let result = self.core.finish(lookup_type)?;
        *self.__out = Some(result);
        Ok(())
    }
}