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
// This file is generated by rust-protobuf 2.3.0. Do not edit
// @generated

// https://github.com/Manishearth/rust-clippy/issues/702
#![allow(unknown_lints)]
#![allow(clippy)]

#![cfg_attr(rustfmt, rustfmt_skip)]

#![allow(box_pointers)]
#![allow(dead_code)]
#![allow(missing_docs)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(non_upper_case_globals)]
#![allow(trivial_casts)]
#![allow(unsafe_code)]
#![allow(unused_imports)]
#![allow(unused_results)]

use protobuf::Message as Message_imported_for_functions;
use protobuf::ProtobufEnum as ProtobufEnum_imported_for_functions;

#[derive(Clone,PartialEq,Eq,Debug,Hash)]
pub enum ActionResult {
    Success = 1,
    NotSupported = 2,
    Error = 3,
    CantQueueThatOrder = 4,
    Retry = 5,
    Cooldown = 6,
    QueueIsFull = 7,
    RallyQueueIsFull = 8,
    NotEnoughMinerals = 9,
    NotEnoughVespene = 10,
    NotEnoughTerrazine = 11,
    NotEnoughCustom = 12,
    NotEnoughFood = 13,
    FoodUsageImpossible = 14,
    NotEnoughLife = 15,
    NotEnoughShields = 16,
    NotEnoughEnergy = 17,
    LifeSuppressed = 18,
    ShieldsSuppressed = 19,
    EnergySuppressed = 20,
    NotEnoughCharges = 21,
    CantAddMoreCharges = 22,
    TooMuchMinerals = 23,
    TooMuchVespene = 24,
    TooMuchTerrazine = 25,
    TooMuchCustom = 26,
    TooMuchFood = 27,
    TooMuchLife = 28,
    TooMuchShields = 29,
    TooMuchEnergy = 30,
    MustTargetUnitWithLife = 31,
    MustTargetUnitWithShields = 32,
    MustTargetUnitWithEnergy = 33,
    CantTrade = 34,
    CantSpend = 35,
    CantTargetThatUnit = 36,
    CouldntAllocateUnit = 37,
    UnitCantMove = 38,
    TransportIsHoldingPosition = 39,
    BuildTechRequirementsNotMet = 40,
    CantFindPlacementLocation = 41,
    CantBuildOnThat = 42,
    CantBuildTooCloseToDropOff = 43,
    CantBuildLocationInvalid = 44,
    CantSeeBuildLocation = 45,
    CantBuildTooCloseToCreepSource = 46,
    CantBuildTooCloseToResources = 47,
    CantBuildTooFarFromWater = 48,
    CantBuildTooFarFromCreepSource = 49,
    CantBuildTooFarFromBuildPowerSource = 50,
    CantBuildOnDenseTerrain = 51,
    CantTrainTooFarFromTrainPowerSource = 52,
    CantLandLocationInvalid = 53,
    CantSeeLandLocation = 54,
    CantLandTooCloseToCreepSource = 55,
    CantLandTooCloseToResources = 56,
    CantLandTooFarFromWater = 57,
    CantLandTooFarFromCreepSource = 58,
    CantLandTooFarFromBuildPowerSource = 59,
    CantLandTooFarFromTrainPowerSource = 60,
    CantLandOnDenseTerrain = 61,
    AddOnTooFarFromBuilding = 62,
    MustBuildRefineryFirst = 63,
    BuildingIsUnderConstruction = 64,
    CantFindDropOff = 65,
    CantLoadOtherPlayersUnits = 66,
    NotEnoughRoomToLoadUnit = 67,
    CantUnloadUnitsThere = 68,
    CantWarpInUnitsThere = 69,
    CantLoadImmobileUnits = 70,
    CantRechargeImmobileUnits = 71,
    CantRechargeUnderConstructionUnits = 72,
    CantLoadThatUnit = 73,
    NoCargoToUnload = 74,
    LoadAllNoTargetsFound = 75,
    NotWhileOccupied = 76,
    CantAttackWithoutAmmo = 77,
    CantHoldAnyMoreAmmo = 78,
    TechRequirementsNotMet = 79,
    MustLockdownUnitFirst = 80,
    MustTargetUnit = 81,
    MustTargetInventory = 82,
    MustTargetVisibleUnit = 83,
    MustTargetVisibleLocation = 84,
    MustTargetWalkableLocation = 85,
    MustTargetPawnableUnit = 86,
    YouCantControlThatUnit = 87,
    YouCantIssueCommandsToThatUnit = 88,
    MustTargetResources = 89,
    RequiresHealTarget = 90,
    RequiresRepairTarget = 91,
    NoItemsToDrop = 92,
    CantHoldAnyMoreItems = 93,
    CantHoldThat = 94,
    TargetHasNoInventory = 95,
    CantDropThisItem = 96,
    CantMoveThisItem = 97,
    CantPawnThisUnit = 98,
    MustTargetCaster = 99,
    CantTargetCaster = 100,
    MustTargetOuter = 101,
    CantTargetOuter = 102,
    MustTargetYourOwnUnits = 103,
    CantTargetYourOwnUnits = 104,
    MustTargetFriendlyUnits = 105,
    CantTargetFriendlyUnits = 106,
    MustTargetNeutralUnits = 107,
    CantTargetNeutralUnits = 108,
    MustTargetEnemyUnits = 109,
    CantTargetEnemyUnits = 110,
    MustTargetAirUnits = 111,
    CantTargetAirUnits = 112,
    MustTargetGroundUnits = 113,
    CantTargetGroundUnits = 114,
    MustTargetStructures = 115,
    CantTargetStructures = 116,
    MustTargetLightUnits = 117,
    CantTargetLightUnits = 118,
    MustTargetArmoredUnits = 119,
    CantTargetArmoredUnits = 120,
    MustTargetBiologicalUnits = 121,
    CantTargetBiologicalUnits = 122,
    MustTargetHeroicUnits = 123,
    CantTargetHeroicUnits = 124,
    MustTargetRoboticUnits = 125,
    CantTargetRoboticUnits = 126,
    MustTargetMechanicalUnits = 127,
    CantTargetMechanicalUnits = 128,
    MustTargetPsionicUnits = 129,
    CantTargetPsionicUnits = 130,
    MustTargetMassiveUnits = 131,
    CantTargetMassiveUnits = 132,
    MustTargetMissile = 133,
    CantTargetMissile = 134,
    MustTargetWorkerUnits = 135,
    CantTargetWorkerUnits = 136,
    MustTargetEnergyCapableUnits = 137,
    CantTargetEnergyCapableUnits = 138,
    MustTargetShieldCapableUnits = 139,
    CantTargetShieldCapableUnits = 140,
    MustTargetFlyers = 141,
    CantTargetFlyers = 142,
    MustTargetBuriedUnits = 143,
    CantTargetBuriedUnits = 144,
    MustTargetCloakedUnits = 145,
    CantTargetCloakedUnits = 146,
    MustTargetUnitsInAStasisField = 147,
    CantTargetUnitsInAStasisField = 148,
    MustTargetUnderConstructionUnits = 149,
    CantTargetUnderConstructionUnits = 150,
    MustTargetDeadUnits = 151,
    CantTargetDeadUnits = 152,
    MustTargetRevivableUnits = 153,
    CantTargetRevivableUnits = 154,
    MustTargetHiddenUnits = 155,
    CantTargetHiddenUnits = 156,
    CantRechargeOtherPlayersUnits = 157,
    MustTargetHallucinations = 158,
    CantTargetHallucinations = 159,
    MustTargetInvulnerableUnits = 160,
    CantTargetInvulnerableUnits = 161,
    MustTargetDetectedUnits = 162,
    CantTargetDetectedUnits = 163,
    CantTargetUnitWithEnergy = 164,
    CantTargetUnitWithShields = 165,
    MustTargetUncommandableUnits = 166,
    CantTargetUncommandableUnits = 167,
    MustTargetPreventDefeatUnits = 168,
    CantTargetPreventDefeatUnits = 169,
    MustTargetPreventRevealUnits = 170,
    CantTargetPreventRevealUnits = 171,
    MustTargetPassiveUnits = 172,
    CantTargetPassiveUnits = 173,
    MustTargetStunnedUnits = 174,
    CantTargetStunnedUnits = 175,
    MustTargetSummonedUnits = 176,
    CantTargetSummonedUnits = 177,
    MustTargetUser1 = 178,
    CantTargetUser1 = 179,
    MustTargetUnstoppableUnits = 180,
    CantTargetUnstoppableUnits = 181,
    MustTargetResistantUnits = 182,
    CantTargetResistantUnits = 183,
    MustTargetDazedUnits = 184,
    CantTargetDazedUnits = 185,
    CantLockdown = 186,
    CantMindControl = 187,
    MustTargetDestructibles = 188,
    CantTargetDestructibles = 189,
    MustTargetItems = 190,
    CantTargetItems = 191,
    NoCalldownAvailable = 192,
    WaypointListFull = 193,
    MustTargetRace = 194,
    CantTargetRace = 195,
    MustTargetSimilarUnits = 196,
    CantTargetSimilarUnits = 197,
    CantFindEnoughTargets = 198,
    AlreadySpawningLarva = 199,
    CantTargetExhaustedResources = 200,
    CantUseMinimap = 201,
    CantUseInfoPanel = 202,
    OrderQueueIsFull = 203,
    CantHarvestThatResource = 204,
    HarvestersNotRequired = 205,
    AlreadyTargeted = 206,
    CantAttackWeaponsDisabled = 207,
    CouldntReachTarget = 208,
    TargetIsOutOfRange = 209,
    TargetIsTooClose = 210,
    TargetIsOutOfArc = 211,
    CantFindTeleportLocation = 212,
    InvalidItemClass = 213,
    CantFindCancelOrder = 214,
}

impl ::protobuf::ProtobufEnum for ActionResult {
    fn value(&self) -> i32 {
        *self as i32
    }

    fn from_i32(value: i32) -> ::std::option::Option<ActionResult> {
        match value {
            1 => ::std::option::Option::Some(ActionResult::Success),
            2 => ::std::option::Option::Some(ActionResult::NotSupported),
            3 => ::std::option::Option::Some(ActionResult::Error),
            4 => ::std::option::Option::Some(ActionResult::CantQueueThatOrder),
            5 => ::std::option::Option::Some(ActionResult::Retry),
            6 => ::std::option::Option::Some(ActionResult::Cooldown),
            7 => ::std::option::Option::Some(ActionResult::QueueIsFull),
            8 => ::std::option::Option::Some(ActionResult::RallyQueueIsFull),
            9 => ::std::option::Option::Some(ActionResult::NotEnoughMinerals),
            10 => ::std::option::Option::Some(ActionResult::NotEnoughVespene),
            11 => ::std::option::Option::Some(ActionResult::NotEnoughTerrazine),
            12 => ::std::option::Option::Some(ActionResult::NotEnoughCustom),
            13 => ::std::option::Option::Some(ActionResult::NotEnoughFood),
            14 => ::std::option::Option::Some(ActionResult::FoodUsageImpossible),
            15 => ::std::option::Option::Some(ActionResult::NotEnoughLife),
            16 => ::std::option::Option::Some(ActionResult::NotEnoughShields),
            17 => ::std::option::Option::Some(ActionResult::NotEnoughEnergy),
            18 => ::std::option::Option::Some(ActionResult::LifeSuppressed),
            19 => ::std::option::Option::Some(ActionResult::ShieldsSuppressed),
            20 => ::std::option::Option::Some(ActionResult::EnergySuppressed),
            21 => ::std::option::Option::Some(ActionResult::NotEnoughCharges),
            22 => ::std::option::Option::Some(ActionResult::CantAddMoreCharges),
            23 => ::std::option::Option::Some(ActionResult::TooMuchMinerals),
            24 => ::std::option::Option::Some(ActionResult::TooMuchVespene),
            25 => ::std::option::Option::Some(ActionResult::TooMuchTerrazine),
            26 => ::std::option::Option::Some(ActionResult::TooMuchCustom),
            27 => ::std::option::Option::Some(ActionResult::TooMuchFood),
            28 => ::std::option::Option::Some(ActionResult::TooMuchLife),
            29 => ::std::option::Option::Some(ActionResult::TooMuchShields),
            30 => ::std::option::Option::Some(ActionResult::TooMuchEnergy),
            31 => ::std::option::Option::Some(ActionResult::MustTargetUnitWithLife),
            32 => ::std::option::Option::Some(ActionResult::MustTargetUnitWithShields),
            33 => ::std::option::Option::Some(ActionResult::MustTargetUnitWithEnergy),
            34 => ::std::option::Option::Some(ActionResult::CantTrade),
            35 => ::std::option::Option::Some(ActionResult::CantSpend),
            36 => ::std::option::Option::Some(ActionResult::CantTargetThatUnit),
            37 => ::std::option::Option::Some(ActionResult::CouldntAllocateUnit),
            38 => ::std::option::Option::Some(ActionResult::UnitCantMove),
            39 => ::std::option::Option::Some(ActionResult::TransportIsHoldingPosition),
            40 => ::std::option::Option::Some(ActionResult::BuildTechRequirementsNotMet),
            41 => ::std::option::Option::Some(ActionResult::CantFindPlacementLocation),
            42 => ::std::option::Option::Some(ActionResult::CantBuildOnThat),
            43 => ::std::option::Option::Some(ActionResult::CantBuildTooCloseToDropOff),
            44 => ::std::option::Option::Some(ActionResult::CantBuildLocationInvalid),
            45 => ::std::option::Option::Some(ActionResult::CantSeeBuildLocation),
            46 => ::std::option::Option::Some(ActionResult::CantBuildTooCloseToCreepSource),
            47 => ::std::option::Option::Some(ActionResult::CantBuildTooCloseToResources),
            48 => ::std::option::Option::Some(ActionResult::CantBuildTooFarFromWater),
            49 => ::std::option::Option::Some(ActionResult::CantBuildTooFarFromCreepSource),
            50 => ::std::option::Option::Some(ActionResult::CantBuildTooFarFromBuildPowerSource),
            51 => ::std::option::Option::Some(ActionResult::CantBuildOnDenseTerrain),
            52 => ::std::option::Option::Some(ActionResult::CantTrainTooFarFromTrainPowerSource),
            53 => ::std::option::Option::Some(ActionResult::CantLandLocationInvalid),
            54 => ::std::option::Option::Some(ActionResult::CantSeeLandLocation),
            55 => ::std::option::Option::Some(ActionResult::CantLandTooCloseToCreepSource),
            56 => ::std::option::Option::Some(ActionResult::CantLandTooCloseToResources),
            57 => ::std::option::Option::Some(ActionResult::CantLandTooFarFromWater),
            58 => ::std::option::Option::Some(ActionResult::CantLandTooFarFromCreepSource),
            59 => ::std::option::Option::Some(ActionResult::CantLandTooFarFromBuildPowerSource),
            60 => ::std::option::Option::Some(ActionResult::CantLandTooFarFromTrainPowerSource),
            61 => ::std::option::Option::Some(ActionResult::CantLandOnDenseTerrain),
            62 => ::std::option::Option::Some(ActionResult::AddOnTooFarFromBuilding),
            63 => ::std::option::Option::Some(ActionResult::MustBuildRefineryFirst),
            64 => ::std::option::Option::Some(ActionResult::BuildingIsUnderConstruction),
            65 => ::std::option::Option::Some(ActionResult::CantFindDropOff),
            66 => ::std::option::Option::Some(ActionResult::CantLoadOtherPlayersUnits),
            67 => ::std::option::Option::Some(ActionResult::NotEnoughRoomToLoadUnit),
            68 => ::std::option::Option::Some(ActionResult::CantUnloadUnitsThere),
            69 => ::std::option::Option::Some(ActionResult::CantWarpInUnitsThere),
            70 => ::std::option::Option::Some(ActionResult::CantLoadImmobileUnits),
            71 => ::std::option::Option::Some(ActionResult::CantRechargeImmobileUnits),
            72 => ::std::option::Option::Some(ActionResult::CantRechargeUnderConstructionUnits),
            73 => ::std::option::Option::Some(ActionResult::CantLoadThatUnit),
            74 => ::std::option::Option::Some(ActionResult::NoCargoToUnload),
            75 => ::std::option::Option::Some(ActionResult::LoadAllNoTargetsFound),
            76 => ::std::option::Option::Some(ActionResult::NotWhileOccupied),
            77 => ::std::option::Option::Some(ActionResult::CantAttackWithoutAmmo),
            78 => ::std::option::Option::Some(ActionResult::CantHoldAnyMoreAmmo),
            79 => ::std::option::Option::Some(ActionResult::TechRequirementsNotMet),
            80 => ::std::option::Option::Some(ActionResult::MustLockdownUnitFirst),
            81 => ::std::option::Option::Some(ActionResult::MustTargetUnit),
            82 => ::std::option::Option::Some(ActionResult::MustTargetInventory),
            83 => ::std::option::Option::Some(ActionResult::MustTargetVisibleUnit),
            84 => ::std::option::Option::Some(ActionResult::MustTargetVisibleLocation),
            85 => ::std::option::Option::Some(ActionResult::MustTargetWalkableLocation),
            86 => ::std::option::Option::Some(ActionResult::MustTargetPawnableUnit),
            87 => ::std::option::Option::Some(ActionResult::YouCantControlThatUnit),
            88 => ::std::option::Option::Some(ActionResult::YouCantIssueCommandsToThatUnit),
            89 => ::std::option::Option::Some(ActionResult::MustTargetResources),
            90 => ::std::option::Option::Some(ActionResult::RequiresHealTarget),
            91 => ::std::option::Option::Some(ActionResult::RequiresRepairTarget),
            92 => ::std::option::Option::Some(ActionResult::NoItemsToDrop),
            93 => ::std::option::Option::Some(ActionResult::CantHoldAnyMoreItems),
            94 => ::std::option::Option::Some(ActionResult::CantHoldThat),
            95 => ::std::option::Option::Some(ActionResult::TargetHasNoInventory),
            96 => ::std::option::Option::Some(ActionResult::CantDropThisItem),
            97 => ::std::option::Option::Some(ActionResult::CantMoveThisItem),
            98 => ::std::option::Option::Some(ActionResult::CantPawnThisUnit),
            99 => ::std::option::Option::Some(ActionResult::MustTargetCaster),
            100 => ::std::option::Option::Some(ActionResult::CantTargetCaster),
            101 => ::std::option::Option::Some(ActionResult::MustTargetOuter),
            102 => ::std::option::Option::Some(ActionResult::CantTargetOuter),
            103 => ::std::option::Option::Some(ActionResult::MustTargetYourOwnUnits),
            104 => ::std::option::Option::Some(ActionResult::CantTargetYourOwnUnits),
            105 => ::std::option::Option::Some(ActionResult::MustTargetFriendlyUnits),
            106 => ::std::option::Option::Some(ActionResult::CantTargetFriendlyUnits),
            107 => ::std::option::Option::Some(ActionResult::MustTargetNeutralUnits),
            108 => ::std::option::Option::Some(ActionResult::CantTargetNeutralUnits),
            109 => ::std::option::Option::Some(ActionResult::MustTargetEnemyUnits),
            110 => ::std::option::Option::Some(ActionResult::CantTargetEnemyUnits),
            111 => ::std::option::Option::Some(ActionResult::MustTargetAirUnits),
            112 => ::std::option::Option::Some(ActionResult::CantTargetAirUnits),
            113 => ::std::option::Option::Some(ActionResult::MustTargetGroundUnits),
            114 => ::std::option::Option::Some(ActionResult::CantTargetGroundUnits),
            115 => ::std::option::Option::Some(ActionResult::MustTargetStructures),
            116 => ::std::option::Option::Some(ActionResult::CantTargetStructures),
            117 => ::std::option::Option::Some(ActionResult::MustTargetLightUnits),
            118 => ::std::option::Option::Some(ActionResult::CantTargetLightUnits),
            119 => ::std::option::Option::Some(ActionResult::MustTargetArmoredUnits),
            120 => ::std::option::Option::Some(ActionResult::CantTargetArmoredUnits),
            121 => ::std::option::Option::Some(ActionResult::MustTargetBiologicalUnits),
            122 => ::std::option::Option::Some(ActionResult::CantTargetBiologicalUnits),
            123 => ::std::option::Option::Some(ActionResult::MustTargetHeroicUnits),
            124 => ::std::option::Option::Some(ActionResult::CantTargetHeroicUnits),
            125 => ::std::option::Option::Some(ActionResult::MustTargetRoboticUnits),
            126 => ::std::option::Option::Some(ActionResult::CantTargetRoboticUnits),
            127 => ::std::option::Option::Some(ActionResult::MustTargetMechanicalUnits),
            128 => ::std::option::Option::Some(ActionResult::CantTargetMechanicalUnits),
            129 => ::std::option::Option::Some(ActionResult::MustTargetPsionicUnits),
            130 => ::std::option::Option::Some(ActionResult::CantTargetPsionicUnits),
            131 => ::std::option::Option::Some(ActionResult::MustTargetMassiveUnits),
            132 => ::std::option::Option::Some(ActionResult::CantTargetMassiveUnits),
            133 => ::std::option::Option::Some(ActionResult::MustTargetMissile),
            134 => ::std::option::Option::Some(ActionResult::CantTargetMissile),
            135 => ::std::option::Option::Some(ActionResult::MustTargetWorkerUnits),
            136 => ::std::option::Option::Some(ActionResult::CantTargetWorkerUnits),
            137 => ::std::option::Option::Some(ActionResult::MustTargetEnergyCapableUnits),
            138 => ::std::option::Option::Some(ActionResult::CantTargetEnergyCapableUnits),
            139 => ::std::option::Option::Some(ActionResult::MustTargetShieldCapableUnits),
            140 => ::std::option::Option::Some(ActionResult::CantTargetShieldCapableUnits),
            141 => ::std::option::Option::Some(ActionResult::MustTargetFlyers),
            142 => ::std::option::Option::Some(ActionResult::CantTargetFlyers),
            143 => ::std::option::Option::Some(ActionResult::MustTargetBuriedUnits),
            144 => ::std::option::Option::Some(ActionResult::CantTargetBuriedUnits),
            145 => ::std::option::Option::Some(ActionResult::MustTargetCloakedUnits),
            146 => ::std::option::Option::Some(ActionResult::CantTargetCloakedUnits),
            147 => ::std::option::Option::Some(ActionResult::MustTargetUnitsInAStasisField),
            148 => ::std::option::Option::Some(ActionResult::CantTargetUnitsInAStasisField),
            149 => ::std::option::Option::Some(ActionResult::MustTargetUnderConstructionUnits),
            150 => ::std::option::Option::Some(ActionResult::CantTargetUnderConstructionUnits),
            151 => ::std::option::Option::Some(ActionResult::MustTargetDeadUnits),
            152 => ::std::option::Option::Some(ActionResult::CantTargetDeadUnits),
            153 => ::std::option::Option::Some(ActionResult::MustTargetRevivableUnits),
            154 => ::std::option::Option::Some(ActionResult::CantTargetRevivableUnits),
            155 => ::std::option::Option::Some(ActionResult::MustTargetHiddenUnits),
            156 => ::std::option::Option::Some(ActionResult::CantTargetHiddenUnits),
            157 => ::std::option::Option::Some(ActionResult::CantRechargeOtherPlayersUnits),
            158 => ::std::option::Option::Some(ActionResult::MustTargetHallucinations),
            159 => ::std::option::Option::Some(ActionResult::CantTargetHallucinations),
            160 => ::std::option::Option::Some(ActionResult::MustTargetInvulnerableUnits),
            161 => ::std::option::Option::Some(ActionResult::CantTargetInvulnerableUnits),
            162 => ::std::option::Option::Some(ActionResult::MustTargetDetectedUnits),
            163 => ::std::option::Option::Some(ActionResult::CantTargetDetectedUnits),
            164 => ::std::option::Option::Some(ActionResult::CantTargetUnitWithEnergy),
            165 => ::std::option::Option::Some(ActionResult::CantTargetUnitWithShields),
            166 => ::std::option::Option::Some(ActionResult::MustTargetUncommandableUnits),
            167 => ::std::option::Option::Some(ActionResult::CantTargetUncommandableUnits),
            168 => ::std::option::Option::Some(ActionResult::MustTargetPreventDefeatUnits),
            169 => ::std::option::Option::Some(ActionResult::CantTargetPreventDefeatUnits),
            170 => ::std::option::Option::Some(ActionResult::MustTargetPreventRevealUnits),
            171 => ::std::option::Option::Some(ActionResult::CantTargetPreventRevealUnits),
            172 => ::std::option::Option::Some(ActionResult::MustTargetPassiveUnits),
            173 => ::std::option::Option::Some(ActionResult::CantTargetPassiveUnits),
            174 => ::std::option::Option::Some(ActionResult::MustTargetStunnedUnits),
            175 => ::std::option::Option::Some(ActionResult::CantTargetStunnedUnits),
            176 => ::std::option::Option::Some(ActionResult::MustTargetSummonedUnits),
            177 => ::std::option::Option::Some(ActionResult::CantTargetSummonedUnits),
            178 => ::std::option::Option::Some(ActionResult::MustTargetUser1),
            179 => ::std::option::Option::Some(ActionResult::CantTargetUser1),
            180 => ::std::option::Option::Some(ActionResult::MustTargetUnstoppableUnits),
            181 => ::std::option::Option::Some(ActionResult::CantTargetUnstoppableUnits),
            182 => ::std::option::Option::Some(ActionResult::MustTargetResistantUnits),
            183 => ::std::option::Option::Some(ActionResult::CantTargetResistantUnits),
            184 => ::std::option::Option::Some(ActionResult::MustTargetDazedUnits),
            185 => ::std::option::Option::Some(ActionResult::CantTargetDazedUnits),
            186 => ::std::option::Option::Some(ActionResult::CantLockdown),
            187 => ::std::option::Option::Some(ActionResult::CantMindControl),
            188 => ::std::option::Option::Some(ActionResult::MustTargetDestructibles),
            189 => ::std::option::Option::Some(ActionResult::CantTargetDestructibles),
            190 => ::std::option::Option::Some(ActionResult::MustTargetItems),
            191 => ::std::option::Option::Some(ActionResult::CantTargetItems),
            192 => ::std::option::Option::Some(ActionResult::NoCalldownAvailable),
            193 => ::std::option::Option::Some(ActionResult::WaypointListFull),
            194 => ::std::option::Option::Some(ActionResult::MustTargetRace),
            195 => ::std::option::Option::Some(ActionResult::CantTargetRace),
            196 => ::std::option::Option::Some(ActionResult::MustTargetSimilarUnits),
            197 => ::std::option::Option::Some(ActionResult::CantTargetSimilarUnits),
            198 => ::std::option::Option::Some(ActionResult::CantFindEnoughTargets),
            199 => ::std::option::Option::Some(ActionResult::AlreadySpawningLarva),
            200 => ::std::option::Option::Some(ActionResult::CantTargetExhaustedResources),
            201 => ::std::option::Option::Some(ActionResult::CantUseMinimap),
            202 => ::std::option::Option::Some(ActionResult::CantUseInfoPanel),
            203 => ::std::option::Option::Some(ActionResult::OrderQueueIsFull),
            204 => ::std::option::Option::Some(ActionResult::CantHarvestThatResource),
            205 => ::std::option::Option::Some(ActionResult::HarvestersNotRequired),
            206 => ::std::option::Option::Some(ActionResult::AlreadyTargeted),
            207 => ::std::option::Option::Some(ActionResult::CantAttackWeaponsDisabled),
            208 => ::std::option::Option::Some(ActionResult::CouldntReachTarget),
            209 => ::std::option::Option::Some(ActionResult::TargetIsOutOfRange),
            210 => ::std::option::Option::Some(ActionResult::TargetIsTooClose),
            211 => ::std::option::Option::Some(ActionResult::TargetIsOutOfArc),
            212 => ::std::option::Option::Some(ActionResult::CantFindTeleportLocation),
            213 => ::std::option::Option::Some(ActionResult::InvalidItemClass),
            214 => ::std::option::Option::Some(ActionResult::CantFindCancelOrder),
            _ => ::std::option::Option::None
        }
    }

    fn values() -> &'static [Self] {
        static values: &'static [ActionResult] = &[
            ActionResult::Success,
            ActionResult::NotSupported,
            ActionResult::Error,
            ActionResult::CantQueueThatOrder,
            ActionResult::Retry,
            ActionResult::Cooldown,
            ActionResult::QueueIsFull,
            ActionResult::RallyQueueIsFull,
            ActionResult::NotEnoughMinerals,
            ActionResult::NotEnoughVespene,
            ActionResult::NotEnoughTerrazine,
            ActionResult::NotEnoughCustom,
            ActionResult::NotEnoughFood,
            ActionResult::FoodUsageImpossible,
            ActionResult::NotEnoughLife,
            ActionResult::NotEnoughShields,
            ActionResult::NotEnoughEnergy,
            ActionResult::LifeSuppressed,
            ActionResult::ShieldsSuppressed,
            ActionResult::EnergySuppressed,
            ActionResult::NotEnoughCharges,
            ActionResult::CantAddMoreCharges,
            ActionResult::TooMuchMinerals,
            ActionResult::TooMuchVespene,
            ActionResult::TooMuchTerrazine,
            ActionResult::TooMuchCustom,
            ActionResult::TooMuchFood,
            ActionResult::TooMuchLife,
            ActionResult::TooMuchShields,
            ActionResult::TooMuchEnergy,
            ActionResult::MustTargetUnitWithLife,
            ActionResult::MustTargetUnitWithShields,
            ActionResult::MustTargetUnitWithEnergy,
            ActionResult::CantTrade,
            ActionResult::CantSpend,
            ActionResult::CantTargetThatUnit,
            ActionResult::CouldntAllocateUnit,
            ActionResult::UnitCantMove,
            ActionResult::TransportIsHoldingPosition,
            ActionResult::BuildTechRequirementsNotMet,
            ActionResult::CantFindPlacementLocation,
            ActionResult::CantBuildOnThat,
            ActionResult::CantBuildTooCloseToDropOff,
            ActionResult::CantBuildLocationInvalid,
            ActionResult::CantSeeBuildLocation,
            ActionResult::CantBuildTooCloseToCreepSource,
            ActionResult::CantBuildTooCloseToResources,
            ActionResult::CantBuildTooFarFromWater,
            ActionResult::CantBuildTooFarFromCreepSource,
            ActionResult::CantBuildTooFarFromBuildPowerSource,
            ActionResult::CantBuildOnDenseTerrain,
            ActionResult::CantTrainTooFarFromTrainPowerSource,
            ActionResult::CantLandLocationInvalid,
            ActionResult::CantSeeLandLocation,
            ActionResult::CantLandTooCloseToCreepSource,
            ActionResult::CantLandTooCloseToResources,
            ActionResult::CantLandTooFarFromWater,
            ActionResult::CantLandTooFarFromCreepSource,
            ActionResult::CantLandTooFarFromBuildPowerSource,
            ActionResult::CantLandTooFarFromTrainPowerSource,
            ActionResult::CantLandOnDenseTerrain,
            ActionResult::AddOnTooFarFromBuilding,
            ActionResult::MustBuildRefineryFirst,
            ActionResult::BuildingIsUnderConstruction,
            ActionResult::CantFindDropOff,
            ActionResult::CantLoadOtherPlayersUnits,
            ActionResult::NotEnoughRoomToLoadUnit,
            ActionResult::CantUnloadUnitsThere,
            ActionResult::CantWarpInUnitsThere,
            ActionResult::CantLoadImmobileUnits,
            ActionResult::CantRechargeImmobileUnits,
            ActionResult::CantRechargeUnderConstructionUnits,
            ActionResult::CantLoadThatUnit,
            ActionResult::NoCargoToUnload,
            ActionResult::LoadAllNoTargetsFound,
            ActionResult::NotWhileOccupied,
            ActionResult::CantAttackWithoutAmmo,
            ActionResult::CantHoldAnyMoreAmmo,
            ActionResult::TechRequirementsNotMet,
            ActionResult::MustLockdownUnitFirst,
            ActionResult::MustTargetUnit,
            ActionResult::MustTargetInventory,
            ActionResult::MustTargetVisibleUnit,
            ActionResult::MustTargetVisibleLocation,
            ActionResult::MustTargetWalkableLocation,
            ActionResult::MustTargetPawnableUnit,
            ActionResult::YouCantControlThatUnit,
            ActionResult::YouCantIssueCommandsToThatUnit,
            ActionResult::MustTargetResources,
            ActionResult::RequiresHealTarget,
            ActionResult::RequiresRepairTarget,
            ActionResult::NoItemsToDrop,
            ActionResult::CantHoldAnyMoreItems,
            ActionResult::CantHoldThat,
            ActionResult::TargetHasNoInventory,
            ActionResult::CantDropThisItem,
            ActionResult::CantMoveThisItem,
            ActionResult::CantPawnThisUnit,
            ActionResult::MustTargetCaster,
            ActionResult::CantTargetCaster,
            ActionResult::MustTargetOuter,
            ActionResult::CantTargetOuter,
            ActionResult::MustTargetYourOwnUnits,
            ActionResult::CantTargetYourOwnUnits,
            ActionResult::MustTargetFriendlyUnits,
            ActionResult::CantTargetFriendlyUnits,
            ActionResult::MustTargetNeutralUnits,
            ActionResult::CantTargetNeutralUnits,
            ActionResult::MustTargetEnemyUnits,
            ActionResult::CantTargetEnemyUnits,
            ActionResult::MustTargetAirUnits,
            ActionResult::CantTargetAirUnits,
            ActionResult::MustTargetGroundUnits,
            ActionResult::CantTargetGroundUnits,
            ActionResult::MustTargetStructures,
            ActionResult::CantTargetStructures,
            ActionResult::MustTargetLightUnits,
            ActionResult::CantTargetLightUnits,
            ActionResult::MustTargetArmoredUnits,
            ActionResult::CantTargetArmoredUnits,
            ActionResult::MustTargetBiologicalUnits,
            ActionResult::CantTargetBiologicalUnits,
            ActionResult::MustTargetHeroicUnits,
            ActionResult::CantTargetHeroicUnits,
            ActionResult::MustTargetRoboticUnits,
            ActionResult::CantTargetRoboticUnits,
            ActionResult::MustTargetMechanicalUnits,
            ActionResult::CantTargetMechanicalUnits,
            ActionResult::MustTargetPsionicUnits,
            ActionResult::CantTargetPsionicUnits,
            ActionResult::MustTargetMassiveUnits,
            ActionResult::CantTargetMassiveUnits,
            ActionResult::MustTargetMissile,
            ActionResult::CantTargetMissile,
            ActionResult::MustTargetWorkerUnits,
            ActionResult::CantTargetWorkerUnits,
            ActionResult::MustTargetEnergyCapableUnits,
            ActionResult::CantTargetEnergyCapableUnits,
            ActionResult::MustTargetShieldCapableUnits,
            ActionResult::CantTargetShieldCapableUnits,
            ActionResult::MustTargetFlyers,
            ActionResult::CantTargetFlyers,
            ActionResult::MustTargetBuriedUnits,
            ActionResult::CantTargetBuriedUnits,
            ActionResult::MustTargetCloakedUnits,
            ActionResult::CantTargetCloakedUnits,
            ActionResult::MustTargetUnitsInAStasisField,
            ActionResult::CantTargetUnitsInAStasisField,
            ActionResult::MustTargetUnderConstructionUnits,
            ActionResult::CantTargetUnderConstructionUnits,
            ActionResult::MustTargetDeadUnits,
            ActionResult::CantTargetDeadUnits,
            ActionResult::MustTargetRevivableUnits,
            ActionResult::CantTargetRevivableUnits,
            ActionResult::MustTargetHiddenUnits,
            ActionResult::CantTargetHiddenUnits,
            ActionResult::CantRechargeOtherPlayersUnits,
            ActionResult::MustTargetHallucinations,
            ActionResult::CantTargetHallucinations,
            ActionResult::MustTargetInvulnerableUnits,
            ActionResult::CantTargetInvulnerableUnits,
            ActionResult::MustTargetDetectedUnits,
            ActionResult::CantTargetDetectedUnits,
            ActionResult::CantTargetUnitWithEnergy,
            ActionResult::CantTargetUnitWithShields,
            ActionResult::MustTargetUncommandableUnits,
            ActionResult::CantTargetUncommandableUnits,
            ActionResult::MustTargetPreventDefeatUnits,
            ActionResult::CantTargetPreventDefeatUnits,
            ActionResult::MustTargetPreventRevealUnits,
            ActionResult::CantTargetPreventRevealUnits,
            ActionResult::MustTargetPassiveUnits,
            ActionResult::CantTargetPassiveUnits,
            ActionResult::MustTargetStunnedUnits,
            ActionResult::CantTargetStunnedUnits,
            ActionResult::MustTargetSummonedUnits,
            ActionResult::CantTargetSummonedUnits,
            ActionResult::MustTargetUser1,
            ActionResult::CantTargetUser1,
            ActionResult::MustTargetUnstoppableUnits,
            ActionResult::CantTargetUnstoppableUnits,
            ActionResult::MustTargetResistantUnits,
            ActionResult::CantTargetResistantUnits,
            ActionResult::MustTargetDazedUnits,
            ActionResult::CantTargetDazedUnits,
            ActionResult::CantLockdown,
            ActionResult::CantMindControl,
            ActionResult::MustTargetDestructibles,
            ActionResult::CantTargetDestructibles,
            ActionResult::MustTargetItems,
            ActionResult::CantTargetItems,
            ActionResult::NoCalldownAvailable,
            ActionResult::WaypointListFull,
            ActionResult::MustTargetRace,
            ActionResult::CantTargetRace,
            ActionResult::MustTargetSimilarUnits,
            ActionResult::CantTargetSimilarUnits,
            ActionResult::CantFindEnoughTargets,
            ActionResult::AlreadySpawningLarva,
            ActionResult::CantTargetExhaustedResources,
            ActionResult::CantUseMinimap,
            ActionResult::CantUseInfoPanel,
            ActionResult::OrderQueueIsFull,
            ActionResult::CantHarvestThatResource,
            ActionResult::HarvestersNotRequired,
            ActionResult::AlreadyTargeted,
            ActionResult::CantAttackWeaponsDisabled,
            ActionResult::CouldntReachTarget,
            ActionResult::TargetIsOutOfRange,
            ActionResult::TargetIsTooClose,
            ActionResult::TargetIsOutOfArc,
            ActionResult::CantFindTeleportLocation,
            ActionResult::InvalidItemClass,
            ActionResult::CantFindCancelOrder,
        ];
        values
    }

    fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor {
        static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy {
            lock: ::protobuf::lazy::ONCE_INIT,
            ptr: 0 as *const ::protobuf::reflect::EnumDescriptor,
        };
        unsafe {
            descriptor.get(|| {
                ::protobuf::reflect::EnumDescriptor::new("ActionResult", file_descriptor_proto())
            })
        }
    }
}

impl ::std::marker::Copy for ActionResult {
}

// Note, `Default` is implemented although default value is not 0
impl ::std::default::Default for ActionResult {
    fn default() -> Self {
        ActionResult::Success
    }
}

impl ::protobuf::reflect::ProtobufValue for ActionResult {
    fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef {
        ::protobuf::reflect::ProtobufValueRef::Enum(self.descriptor())
    }
}

static file_descriptor_proto_data: &'static [u8] = b"\
    \n\x1cs2clientprotocol/error.proto\x12\x0eSC2APIProtocol*\xa8-\n\x0cActi\
    onResult\x12\x0b\n\x07Success\x10\x01\x12\x10\n\x0cNotSupported\x10\x02\
    \x12\t\n\x05Error\x10\x03\x12\x16\n\x12CantQueueThatOrder\x10\x04\x12\t\
    \n\x05Retry\x10\x05\x12\x0c\n\x08Cooldown\x10\x06\x12\x0f\n\x0bQueueIsFu\
    ll\x10\x07\x12\x14\n\x10RallyQueueIsFull\x10\x08\x12\x15\n\x11NotEnoughM\
    inerals\x10\t\x12\x14\n\x10NotEnoughVespene\x10\n\x12\x16\n\x12NotEnough\
    Terrazine\x10\x0b\x12\x13\n\x0fNotEnoughCustom\x10\x0c\x12\x11\n\rNotEno\
    ughFood\x10\r\x12\x17\n\x13FoodUsageImpossible\x10\x0e\x12\x11\n\rNotEno\
    ughLife\x10\x0f\x12\x14\n\x10NotEnoughShields\x10\x10\x12\x13\n\x0fNotEn\
    oughEnergy\x10\x11\x12\x12\n\x0eLifeSuppressed\x10\x12\x12\x15\n\x11Shie\
    ldsSuppressed\x10\x13\x12\x14\n\x10EnergySuppressed\x10\x14\x12\x14\n\
    \x10NotEnoughCharges\x10\x15\x12\x16\n\x12CantAddMoreCharges\x10\x16\x12\
    \x13\n\x0fTooMuchMinerals\x10\x17\x12\x12\n\x0eTooMuchVespene\x10\x18\
    \x12\x14\n\x10TooMuchTerrazine\x10\x19\x12\x11\n\rTooMuchCustom\x10\x1a\
    \x12\x0f\n\x0bTooMuchFood\x10\x1b\x12\x0f\n\x0bTooMuchLife\x10\x1c\x12\
    \x12\n\x0eTooMuchShields\x10\x1d\x12\x11\n\rTooMuchEnergy\x10\x1e\x12\
    \x1a\n\x16MustTargetUnitWithLife\x10\x1f\x12\x1d\n\x19MustTargetUnitWith\
    Shields\x10\x20\x12\x1c\n\x18MustTargetUnitWithEnergy\x10!\x12\r\n\tCant\
    Trade\x10\"\x12\r\n\tCantSpend\x10#\x12\x16\n\x12CantTargetThatUnit\x10$\
    \x12\x17\n\x13CouldntAllocateUnit\x10%\x12\x10\n\x0cUnitCantMove\x10&\
    \x12\x1e\n\x1aTransportIsHoldingPosition\x10'\x12\x1f\n\x1bBuildTechRequ\
    irementsNotMet\x10(\x12\x1d\n\x19CantFindPlacementLocation\x10)\x12\x13\
    \n\x0fCantBuildOnThat\x10*\x12\x1e\n\x1aCantBuildTooCloseToDropOff\x10+\
    \x12\x1c\n\x18CantBuildLocationInvalid\x10,\x12\x18\n\x14CantSeeBuildLoc\
    ation\x10-\x12\"\n\x1eCantBuildTooCloseToCreepSource\x10.\x12\x20\n\x1cC\
    antBuildTooCloseToResources\x10/\x12\x1c\n\x18CantBuildTooFarFromWater\
    \x100\x12\"\n\x1eCantBuildTooFarFromCreepSource\x101\x12'\n#CantBuildToo\
    FarFromBuildPowerSource\x102\x12\x1b\n\x17CantBuildOnDenseTerrain\x103\
    \x12'\n#CantTrainTooFarFromTrainPowerSource\x104\x12\x1b\n\x17CantLandLo\
    cationInvalid\x105\x12\x17\n\x13CantSeeLandLocation\x106\x12!\n\x1dCantL\
    andTooCloseToCreepSource\x107\x12\x1f\n\x1bCantLandTooCloseToResources\
    \x108\x12\x1b\n\x17CantLandTooFarFromWater\x109\x12!\n\x1dCantLandTooFar\
    FromCreepSource\x10:\x12&\n\"CantLandTooFarFromBuildPowerSource\x10;\x12\
    &\n\"CantLandTooFarFromTrainPowerSource\x10<\x12\x1a\n\x16CantLandOnDens\
    eTerrain\x10=\x12\x1b\n\x17AddOnTooFarFromBuilding\x10>\x12\x1a\n\x16Mus\
    tBuildRefineryFirst\x10?\x12\x1f\n\x1bBuildingIsUnderConstruction\x10@\
    \x12\x13\n\x0fCantFindDropOff\x10A\x12\x1d\n\x19CantLoadOtherPlayersUnit\
    s\x10B\x12\x1b\n\x17NotEnoughRoomToLoadUnit\x10C\x12\x18\n\x14CantUnload\
    UnitsThere\x10D\x12\x18\n\x14CantWarpInUnitsThere\x10E\x12\x19\n\x15Cant\
    LoadImmobileUnits\x10F\x12\x1d\n\x19CantRechargeImmobileUnits\x10G\x12&\
    \n\"CantRechargeUnderConstructionUnits\x10H\x12\x14\n\x10CantLoadThatUni\
    t\x10I\x12\x13\n\x0fNoCargoToUnload\x10J\x12\x19\n\x15LoadAllNoTargetsFo\
    und\x10K\x12\x14\n\x10NotWhileOccupied\x10L\x12\x19\n\x15CantAttackWitho\
    utAmmo\x10M\x12\x17\n\x13CantHoldAnyMoreAmmo\x10N\x12\x1a\n\x16TechRequi\
    rementsNotMet\x10O\x12\x19\n\x15MustLockdownUnitFirst\x10P\x12\x12\n\x0e\
    MustTargetUnit\x10Q\x12\x17\n\x13MustTargetInventory\x10R\x12\x19\n\x15M\
    ustTargetVisibleUnit\x10S\x12\x1d\n\x19MustTargetVisibleLocation\x10T\
    \x12\x1e\n\x1aMustTargetWalkableLocation\x10U\x12\x1a\n\x16MustTargetPaw\
    nableUnit\x10V\x12\x1a\n\x16YouCantControlThatUnit\x10W\x12\"\n\x1eYouCa\
    ntIssueCommandsToThatUnit\x10X\x12\x17\n\x13MustTargetResources\x10Y\x12\
    \x16\n\x12RequiresHealTarget\x10Z\x12\x18\n\x14RequiresRepairTarget\x10[\
    \x12\x11\n\rNoItemsToDrop\x10\\\x12\x18\n\x14CantHoldAnyMoreItems\x10]\
    \x12\x10\n\x0cCantHoldThat\x10^\x12\x18\n\x14TargetHasNoInventory\x10_\
    \x12\x14\n\x10CantDropThisItem\x10`\x12\x14\n\x10CantMoveThisItem\x10a\
    \x12\x14\n\x10CantPawnThisUnit\x10b\x12\x14\n\x10MustTargetCaster\x10c\
    \x12\x14\n\x10CantTargetCaster\x10d\x12\x13\n\x0fMustTargetOuter\x10e\
    \x12\x13\n\x0fCantTargetOuter\x10f\x12\x1a\n\x16MustTargetYourOwnUnits\
    \x10g\x12\x1a\n\x16CantTargetYourOwnUnits\x10h\x12\x1b\n\x17MustTargetFr\
    iendlyUnits\x10i\x12\x1b\n\x17CantTargetFriendlyUnits\x10j\x12\x1a\n\x16\
    MustTargetNeutralUnits\x10k\x12\x1a\n\x16CantTargetNeutralUnits\x10l\x12\
    \x18\n\x14MustTargetEnemyUnits\x10m\x12\x18\n\x14CantTargetEnemyUnits\
    \x10n\x12\x16\n\x12MustTargetAirUnits\x10o\x12\x16\n\x12CantTargetAirUni\
    ts\x10p\x12\x19\n\x15MustTargetGroundUnits\x10q\x12\x19\n\x15CantTargetG\
    roundUnits\x10r\x12\x18\n\x14MustTargetStructures\x10s\x12\x18\n\x14Cant\
    TargetStructures\x10t\x12\x18\n\x14MustTargetLightUnits\x10u\x12\x18\n\
    \x14CantTargetLightUnits\x10v\x12\x1a\n\x16MustTargetArmoredUnits\x10w\
    \x12\x1a\n\x16CantTargetArmoredUnits\x10x\x12\x1d\n\x19MustTargetBiologi\
    calUnits\x10y\x12\x1d\n\x19CantTargetBiologicalUnits\x10z\x12\x19\n\x15M\
    ustTargetHeroicUnits\x10{\x12\x19\n\x15CantTargetHeroicUnits\x10|\x12\
    \x1a\n\x16MustTargetRoboticUnits\x10}\x12\x1a\n\x16CantTargetRoboticUnit\
    s\x10~\x12\x1d\n\x19MustTargetMechanicalUnits\x10\x7f\x12\x1e\n\x19CantT\
    argetMechanicalUnits\x10\x80\x01\x12\x1b\n\x16MustTargetPsionicUnits\x10\
    \x81\x01\x12\x1b\n\x16CantTargetPsionicUnits\x10\x82\x01\x12\x1b\n\x16Mu\
    stTargetMassiveUnits\x10\x83\x01\x12\x1b\n\x16CantTargetMassiveUnits\x10\
    \x84\x01\x12\x16\n\x11MustTargetMissile\x10\x85\x01\x12\x16\n\x11CantTar\
    getMissile\x10\x86\x01\x12\x1a\n\x15MustTargetWorkerUnits\x10\x87\x01\
    \x12\x1a\n\x15CantTargetWorkerUnits\x10\x88\x01\x12!\n\x1cMustTargetEner\
    gyCapableUnits\x10\x89\x01\x12!\n\x1cCantTargetEnergyCapableUnits\x10\
    \x8a\x01\x12!\n\x1cMustTargetShieldCapableUnits\x10\x8b\x01\x12!\n\x1cCa\
    ntTargetShieldCapableUnits\x10\x8c\x01\x12\x15\n\x10MustTargetFlyers\x10\
    \x8d\x01\x12\x15\n\x10CantTargetFlyers\x10\x8e\x01\x12\x1a\n\x15MustTarg\
    etBuriedUnits\x10\x8f\x01\x12\x1a\n\x15CantTargetBuriedUnits\x10\x90\x01\
    \x12\x1b\n\x16MustTargetCloakedUnits\x10\x91\x01\x12\x1b\n\x16CantTarget\
    CloakedUnits\x10\x92\x01\x12\"\n\x1dMustTargetUnitsInAStasisField\x10\
    \x93\x01\x12\"\n\x1dCantTargetUnitsInAStasisField\x10\x94\x01\x12%\n\x20\
    MustTargetUnderConstructionUnits\x10\x95\x01\x12%\n\x20CantTargetUnderCo\
    nstructionUnits\x10\x96\x01\x12\x18\n\x13MustTargetDeadUnits\x10\x97\x01\
    \x12\x18\n\x13CantTargetDeadUnits\x10\x98\x01\x12\x1d\n\x18MustTargetRev\
    ivableUnits\x10\x99\x01\x12\x1d\n\x18CantTargetRevivableUnits\x10\x9a\
    \x01\x12\x1a\n\x15MustTargetHiddenUnits\x10\x9b\x01\x12\x1a\n\x15CantTar\
    getHiddenUnits\x10\x9c\x01\x12\"\n\x1dCantRechargeOtherPlayersUnits\x10\
    \x9d\x01\x12\x1d\n\x18MustTargetHallucinations\x10\x9e\x01\x12\x1d\n\x18\
    CantTargetHallucinations\x10\x9f\x01\x12\x20\n\x1bMustTargetInvulnerable\
    Units\x10\xa0\x01\x12\x20\n\x1bCantTargetInvulnerableUnits\x10\xa1\x01\
    \x12\x1c\n\x17MustTargetDetectedUnits\x10\xa2\x01\x12\x1c\n\x17CantTarge\
    tDetectedUnits\x10\xa3\x01\x12\x1d\n\x18CantTargetUnitWithEnergy\x10\xa4\
    \x01\x12\x1e\n\x19CantTargetUnitWithShields\x10\xa5\x01\x12!\n\x1cMustTa\
    rgetUncommandableUnits\x10\xa6\x01\x12!\n\x1cCantTargetUncommandableUnit\
    s\x10\xa7\x01\x12!\n\x1cMustTargetPreventDefeatUnits\x10\xa8\x01\x12!\n\
    \x1cCantTargetPreventDefeatUnits\x10\xa9\x01\x12!\n\x1cMustTargetPrevent\
    RevealUnits\x10\xaa\x01\x12!\n\x1cCantTargetPreventRevealUnits\x10\xab\
    \x01\x12\x1b\n\x16MustTargetPassiveUnits\x10\xac\x01\x12\x1b\n\x16CantTa\
    rgetPassiveUnits\x10\xad\x01\x12\x1b\n\x16MustTargetStunnedUnits\x10\xae\
    \x01\x12\x1b\n\x16CantTargetStunnedUnits\x10\xaf\x01\x12\x1c\n\x17MustTa\
    rgetSummonedUnits\x10\xb0\x01\x12\x1c\n\x17CantTargetSummonedUnits\x10\
    \xb1\x01\x12\x14\n\x0fMustTargetUser1\x10\xb2\x01\x12\x14\n\x0fCantTarge\
    tUser1\x10\xb3\x01\x12\x1f\n\x1aMustTargetUnstoppableUnits\x10\xb4\x01\
    \x12\x1f\n\x1aCantTargetUnstoppableUnits\x10\xb5\x01\x12\x1d\n\x18MustTa\
    rgetResistantUnits\x10\xb6\x01\x12\x1d\n\x18CantTargetResistantUnits\x10\
    \xb7\x01\x12\x19\n\x14MustTargetDazedUnits\x10\xb8\x01\x12\x19\n\x14Cant\
    TargetDazedUnits\x10\xb9\x01\x12\x11\n\x0cCantLockdown\x10\xba\x01\x12\
    \x14\n\x0fCantMindControl\x10\xbb\x01\x12\x1c\n\x17MustTargetDestructibl\
    es\x10\xbc\x01\x12\x1c\n\x17CantTargetDestructibles\x10\xbd\x01\x12\x14\
    \n\x0fMustTargetItems\x10\xbe\x01\x12\x14\n\x0fCantTargetItems\x10\xbf\
    \x01\x12\x18\n\x13NoCalldownAvailable\x10\xc0\x01\x12\x15\n\x10WaypointL\
    istFull\x10\xc1\x01\x12\x13\n\x0eMustTargetRace\x10\xc2\x01\x12\x13\n\
    \x0eCantTargetRace\x10\xc3\x01\x12\x1b\n\x16MustTargetSimilarUnits\x10\
    \xc4\x01\x12\x1b\n\x16CantTargetSimilarUnits\x10\xc5\x01\x12\x1a\n\x15Ca\
    ntFindEnoughTargets\x10\xc6\x01\x12\x19\n\x14AlreadySpawningLarva\x10\
    \xc7\x01\x12!\n\x1cCantTargetExhaustedResources\x10\xc8\x01\x12\x13\n\
    \x0eCantUseMinimap\x10\xc9\x01\x12\x15\n\x10CantUseInfoPanel\x10\xca\x01\
    \x12\x15\n\x10OrderQueueIsFull\x10\xcb\x01\x12\x1c\n\x17CantHarvestThatR\
    esource\x10\xcc\x01\x12\x1a\n\x15HarvestersNotRequired\x10\xcd\x01\x12\
    \x14\n\x0fAlreadyTargeted\x10\xce\x01\x12\x1e\n\x19CantAttackWeaponsDisa\
    bled\x10\xcf\x01\x12\x17\n\x12CouldntReachTarget\x10\xd0\x01\x12\x17\n\
    \x12TargetIsOutOfRange\x10\xd1\x01\x12\x15\n\x10TargetIsTooClose\x10\xd2\
    \x01\x12\x15\n\x10TargetIsOutOfArc\x10\xd3\x01\x12\x1d\n\x18CantFindTele\
    portLocation\x10\xd4\x01\x12\x15\n\x10InvalidItemClass\x10\xd5\x01\x12\
    \x18\n\x13CantFindCancelOrder\x10\xd6\x01\
";

static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy {
    lock: ::protobuf::lazy::ONCE_INIT,
    ptr: 0 as *const ::protobuf::descriptor::FileDescriptorProto,
};

fn parse_descriptor_proto() -> ::protobuf::descriptor::FileDescriptorProto {
    ::protobuf::parse_from_bytes(file_descriptor_proto_data).unwrap()
}

pub fn file_descriptor_proto() -> &'static ::protobuf::descriptor::FileDescriptorProto {
    unsafe {
        file_descriptor_proto_lazy.get(|| {
            parse_descriptor_proto()
        })
    }
}