// Protocol Buffers - Google's data interchange format
// Copyright 2008 Google Inc.  All rights reserved.
//
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file or at
// https://developers.google.com/open-source/licenses/bsd

package com.google.protobuf;

import static com.google.common.truth.Truth.assertThat;
import static org.junit.Assert.assertThrows;

import com.google.protobuf.Descriptors.FieldDescriptor;
import com.google.protobuf.large.openaliasingenum.edition.LargeOpenAliasingEnum;
import com.google.protobuf.large.openaliasingenum.edition.LargeOpenAliasingEnumParent;
import com.google.protobuf.large.openenum.edition.LargeOpenEnum;
import java.util.Map;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;

@RunWith(JUnit4.class)
public class LargeEnumTest {
  @Test
  public void enumWithAliases_noStaticInitProblem() {
    // If there is a cyclical static init problem, this will fail with TEST_ENUM_X_ALIAS being null.
    // Note that the test may happen to pass if another test happens to touch LargeOpenAliasingEnum
    // first, but it should be caught by the order-dependent test checker if that regresses.
    assertThat(LargeOpenAliasingEnum.LARGE_ENUM2).isNotNull();
    assertThat(LargeOpenAliasingEnum.LARGE_ENUM2_ALIAS).isNotNull();
  }

  @Test
  public void valueOfString_returnsCorrectObject() {
    assertThat(LargeOpenAliasingEnum.valueOf("LARGE_ENUM1"))
        .isSameInstanceAs(LargeOpenAliasingEnum.LARGE_ENUM1);
  }

  @Test
  public void valueOfEnumValueDescriptors_withAliasing_returnsCorrectObject() {
    assertThat(
            LargeOpenAliasingEnum.valueOf(LargeOpenAliasingEnum.LARGE_ENUM1.getValueDescriptor()))
        .isSameInstanceAs(LargeOpenAliasingEnum.LARGE_ENUM1);
    assertThat(
            LargeOpenAliasingEnum.valueOf(LargeOpenAliasingEnum.LARGE_ENUM100.getValueDescriptor()))
        .isSameInstanceAs(LargeOpenAliasingEnum.LARGE_ENUM100);
    assertThat(
            LargeOpenAliasingEnum.valueOf(
                LargeOpenAliasingEnum.LARGE_ENUM1_ALIAS.getValueDescriptor()))
        .isSameInstanceAs(LargeOpenAliasingEnum.LARGE_ENUM1_ALIAS);
  }

  @Test
  public void valueOfEnumValueDescriptors_withoutAliasing_returnsCorrectObject() {
    assertThat(LargeOpenEnum.valueOf(LargeOpenEnum.LARGE_ENUM1.getValueDescriptor()))
        .isSameInstanceAs(LargeOpenEnum.LARGE_ENUM1);
    assertThat(LargeOpenEnum.valueOf(LargeOpenEnum.LARGE_ENUM100.getValueDescriptor()))
        .isSameInstanceAs(LargeOpenEnum.LARGE_ENUM100);
  }

  @Test
  public void testLargeEnumRoundTrip() throws Exception {
    LargeOpenAliasingEnumParent msg =
        LargeOpenAliasingEnumParent.newBuilder()
            .addValues(LargeOpenAliasingEnum.LARGE_ENUM1)
            .addValues(LargeOpenAliasingEnum.LARGE_ENUM2_ALIAS)
            .addValues(LargeOpenAliasingEnum.LARGE_ENUM1_ALIAS)
            .addValues(LargeOpenAliasingEnum.LARGE_ENUM1060)
            .addValues(LargeOpenAliasingEnum.LARGE_ENUM2000)
            .build();
    LargeOpenAliasingEnumParent roundTrip =
        LargeOpenAliasingEnumParent.parseFrom(
            msg.toByteArray(), ExtensionRegistryLite.getEmptyRegistry());
    assertThat(roundTrip).isEqualTo(msg);
  }

  @Test
  public void testLargeEnumReflectiveAccess() throws Exception {
    LargeOpenAliasingEnumParent msg =
        LargeOpenAliasingEnumParent.newBuilder()
            .addValues(LargeOpenAliasingEnum.LARGE_ENUM1)
            .addValues(LargeOpenAliasingEnum.LARGE_ENUM2_ALIAS)
            .addValues(LargeOpenAliasingEnum.LARGE_ENUM1_ALIAS)
            .addValues(LargeOpenAliasingEnum.LARGE_ENUM1060)
            .addValues(LargeOpenAliasingEnum.LARGE_ENUM2000)
            .build();
    LargeOpenAliasingEnumParent.Builder roundTripBuilder = LargeOpenAliasingEnumParent.newBuilder();
    for (Map.Entry<FieldDescriptor, Object> entry : msg.getAllFields().entrySet()) {
      roundTripBuilder.setField(entry.getKey(), entry.getValue());
    }
    LargeOpenAliasingEnumParent roundTrip = roundTripBuilder.build();
    assertThat(roundTrip).isEqualTo(msg);
  }

  @Test
  public void testUnrecognizedGetNumberThrows() throws Exception {
    assertThrows(IllegalArgumentException.class, LargeOpenEnum.UNRECOGNIZED::getNumber);
  }

  @Test
  public void testValuesHasAllCanonicals() throws Exception {
    // The values() method returns only the canonical values, sorted in index order.
    assertThat(LargeOpenEnum.values())
        .isEqualTo(
            new LargeOpenEnum[] {
              LargeOpenEnum.LARGE_ENUM_UNSPECIFIED,
              LargeOpenEnum.LARGE_ENUM1,
              LargeOpenEnum.LARGE_ENUM2,
              LargeOpenEnum.LARGE_ENUM3,
              LargeOpenEnum.LARGE_ENUM4,
              LargeOpenEnum.LARGE_ENUM5,
              LargeOpenEnum.LARGE_ENUM6,
              LargeOpenEnum.LARGE_ENUM7,
              LargeOpenEnum.LARGE_ENUM8,
              LargeOpenEnum.LARGE_ENUM9,
              LargeOpenEnum.LARGE_ENUM10,
              LargeOpenEnum.LARGE_ENUM11,
              LargeOpenEnum.LARGE_ENUM12,
              LargeOpenEnum.LARGE_ENUM13,
              LargeOpenEnum.LARGE_ENUM14,
              LargeOpenEnum.LARGE_ENUM15,
              LargeOpenEnum.LARGE_ENUM16,
              LargeOpenEnum.LARGE_ENUM17,
              LargeOpenEnum.LARGE_ENUM18,
              LargeOpenEnum.LARGE_ENUM19,
              LargeOpenEnum.LARGE_ENUM20,
              LargeOpenEnum.LARGE_ENUM21,
              LargeOpenEnum.LARGE_ENUM22,
              LargeOpenEnum.LARGE_ENUM23,
              LargeOpenEnum.LARGE_ENUM24,
              LargeOpenEnum.LARGE_ENUM25,
              LargeOpenEnum.LARGE_ENUM26,
              LargeOpenEnum.LARGE_ENUM27,
              LargeOpenEnum.LARGE_ENUM28,
              LargeOpenEnum.LARGE_ENUM29,
              LargeOpenEnum.LARGE_ENUM30,
              LargeOpenEnum.LARGE_ENUM31,
              LargeOpenEnum.LARGE_ENUM32,
              LargeOpenEnum.LARGE_ENUM33,
              LargeOpenEnum.LARGE_ENUM34,
              LargeOpenEnum.LARGE_ENUM35,
              LargeOpenEnum.LARGE_ENUM36,
              LargeOpenEnum.LARGE_ENUM37,
              LargeOpenEnum.LARGE_ENUM38,
              LargeOpenEnum.LARGE_ENUM39,
              LargeOpenEnum.LARGE_ENUM40,
              LargeOpenEnum.LARGE_ENUM41,
              LargeOpenEnum.LARGE_ENUM42,
              LargeOpenEnum.LARGE_ENUM43,
              LargeOpenEnum.LARGE_ENUM44,
              LargeOpenEnum.LARGE_ENUM45,
              LargeOpenEnum.LARGE_ENUM46,
              LargeOpenEnum.LARGE_ENUM47,
              LargeOpenEnum.LARGE_ENUM48,
              LargeOpenEnum.LARGE_ENUM49,
              LargeOpenEnum.LARGE_ENUM50,
              LargeOpenEnum.LARGE_ENUM51,
              LargeOpenEnum.LARGE_ENUM52,
              LargeOpenEnum.LARGE_ENUM53,
              LargeOpenEnum.LARGE_ENUM54,
              LargeOpenEnum.LARGE_ENUM55,
              LargeOpenEnum.LARGE_ENUM56,
              LargeOpenEnum.LARGE_ENUM57,
              LargeOpenEnum.LARGE_ENUM58,
              LargeOpenEnum.LARGE_ENUM59,
              LargeOpenEnum.LARGE_ENUM60,
              LargeOpenEnum.LARGE_ENUM61,
              LargeOpenEnum.LARGE_ENUM62,
              LargeOpenEnum.LARGE_ENUM63,
              LargeOpenEnum.LARGE_ENUM64,
              LargeOpenEnum.LARGE_ENUM65,
              LargeOpenEnum.LARGE_ENUM66,
              LargeOpenEnum.LARGE_ENUM67,
              LargeOpenEnum.LARGE_ENUM68,
              LargeOpenEnum.LARGE_ENUM69,
              LargeOpenEnum.LARGE_ENUM70,
              LargeOpenEnum.LARGE_ENUM71,
              LargeOpenEnum.LARGE_ENUM72,
              LargeOpenEnum.LARGE_ENUM73,
              LargeOpenEnum.LARGE_ENUM74,
              LargeOpenEnum.LARGE_ENUM75,
              LargeOpenEnum.LARGE_ENUM76,
              LargeOpenEnum.LARGE_ENUM77,
              LargeOpenEnum.LARGE_ENUM78,
              LargeOpenEnum.LARGE_ENUM79,
              LargeOpenEnum.LARGE_ENUM80,
              LargeOpenEnum.LARGE_ENUM81,
              LargeOpenEnum.LARGE_ENUM82,
              LargeOpenEnum.LARGE_ENUM83,
              LargeOpenEnum.LARGE_ENUM84,
              LargeOpenEnum.LARGE_ENUM85,
              LargeOpenEnum.LARGE_ENUM86,
              LargeOpenEnum.LARGE_ENUM87,
              LargeOpenEnum.LARGE_ENUM88,
              LargeOpenEnum.LARGE_ENUM89,
              LargeOpenEnum.LARGE_ENUM90,
              LargeOpenEnum.LARGE_ENUM91,
              LargeOpenEnum.LARGE_ENUM92,
              LargeOpenEnum.LARGE_ENUM93,
              LargeOpenEnum.LARGE_ENUM94,
              LargeOpenEnum.LARGE_ENUM95,
              LargeOpenEnum.LARGE_ENUM96,
              LargeOpenEnum.LARGE_ENUM97,
              LargeOpenEnum.LARGE_ENUM98,
              LargeOpenEnum.LARGE_ENUM99,
              LargeOpenEnum.LARGE_ENUM100,
              LargeOpenEnum.LARGE_ENUM101,
              LargeOpenEnum.LARGE_ENUM102,
              LargeOpenEnum.LARGE_ENUM103,
              LargeOpenEnum.LARGE_ENUM104,
              LargeOpenEnum.LARGE_ENUM105,
              LargeOpenEnum.LARGE_ENUM106,
              LargeOpenEnum.LARGE_ENUM107,
              LargeOpenEnum.LARGE_ENUM108,
              LargeOpenEnum.LARGE_ENUM109,
              LargeOpenEnum.LARGE_ENUM110,
              LargeOpenEnum.LARGE_ENUM111,
              LargeOpenEnum.LARGE_ENUM112,
              LargeOpenEnum.LARGE_ENUM113,
              LargeOpenEnum.LARGE_ENUM114,
              LargeOpenEnum.LARGE_ENUM115,
              LargeOpenEnum.LARGE_ENUM116,
              LargeOpenEnum.LARGE_ENUM117,
              LargeOpenEnum.LARGE_ENUM118,
              LargeOpenEnum.LARGE_ENUM119,
              LargeOpenEnum.LARGE_ENUM120,
              LargeOpenEnum.LARGE_ENUM121,
              LargeOpenEnum.LARGE_ENUM122,
              LargeOpenEnum.LARGE_ENUM123,
              LargeOpenEnum.LARGE_ENUM124,
              LargeOpenEnum.LARGE_ENUM125,
              LargeOpenEnum.LARGE_ENUM126,
              LargeOpenEnum.LARGE_ENUM127,
              LargeOpenEnum.LARGE_ENUM128,
              LargeOpenEnum.LARGE_ENUM129,
              LargeOpenEnum.LARGE_ENUM130,
              LargeOpenEnum.LARGE_ENUM131,
              LargeOpenEnum.LARGE_ENUM132,
              LargeOpenEnum.LARGE_ENUM133,
              LargeOpenEnum.LARGE_ENUM134,
              LargeOpenEnum.LARGE_ENUM135,
              LargeOpenEnum.LARGE_ENUM136,
              LargeOpenEnum.LARGE_ENUM137,
              LargeOpenEnum.LARGE_ENUM138,
              LargeOpenEnum.LARGE_ENUM139,
              LargeOpenEnum.LARGE_ENUM140,
              LargeOpenEnum.LARGE_ENUM141,
              LargeOpenEnum.LARGE_ENUM142,
              LargeOpenEnum.LARGE_ENUM143,
              LargeOpenEnum.LARGE_ENUM144,
              LargeOpenEnum.LARGE_ENUM145,
              LargeOpenEnum.LARGE_ENUM146,
              LargeOpenEnum.LARGE_ENUM147,
              LargeOpenEnum.LARGE_ENUM148,
              LargeOpenEnum.LARGE_ENUM149,
              LargeOpenEnum.LARGE_ENUM150,
              LargeOpenEnum.LARGE_ENUM151,
              LargeOpenEnum.LARGE_ENUM152,
              LargeOpenEnum.LARGE_ENUM153,
              LargeOpenEnum.LARGE_ENUM154,
              LargeOpenEnum.LARGE_ENUM155,
              LargeOpenEnum.LARGE_ENUM156,
              LargeOpenEnum.LARGE_ENUM157,
              LargeOpenEnum.LARGE_ENUM158,
              LargeOpenEnum.LARGE_ENUM159,
              LargeOpenEnum.LARGE_ENUM160,
              LargeOpenEnum.LARGE_ENUM161,
              LargeOpenEnum.LARGE_ENUM162,
              LargeOpenEnum.LARGE_ENUM163,
              LargeOpenEnum.LARGE_ENUM164,
              LargeOpenEnum.LARGE_ENUM165,
              LargeOpenEnum.LARGE_ENUM166,
              LargeOpenEnum.LARGE_ENUM167,
              LargeOpenEnum.LARGE_ENUM168,
              LargeOpenEnum.LARGE_ENUM169,
              LargeOpenEnum.LARGE_ENUM170,
              LargeOpenEnum.LARGE_ENUM171,
              LargeOpenEnum.LARGE_ENUM172,
              LargeOpenEnum.LARGE_ENUM173,
              LargeOpenEnum.LARGE_ENUM174,
              LargeOpenEnum.LARGE_ENUM175,
              LargeOpenEnum.LARGE_ENUM176,
              LargeOpenEnum.LARGE_ENUM177,
              LargeOpenEnum.LARGE_ENUM178,
              LargeOpenEnum.LARGE_ENUM179,
              LargeOpenEnum.LARGE_ENUM180,
              LargeOpenEnum.LARGE_ENUM181,
              LargeOpenEnum.LARGE_ENUM182,
              LargeOpenEnum.LARGE_ENUM183,
              LargeOpenEnum.LARGE_ENUM184,
              LargeOpenEnum.LARGE_ENUM185,
              LargeOpenEnum.LARGE_ENUM186,
              LargeOpenEnum.LARGE_ENUM187,
              LargeOpenEnum.LARGE_ENUM188,
              LargeOpenEnum.LARGE_ENUM189,
              LargeOpenEnum.LARGE_ENUM190,
              LargeOpenEnum.LARGE_ENUM191,
              LargeOpenEnum.LARGE_ENUM192,
              LargeOpenEnum.LARGE_ENUM193,
              LargeOpenEnum.LARGE_ENUM194,
              LargeOpenEnum.LARGE_ENUM195,
              LargeOpenEnum.LARGE_ENUM196,
              LargeOpenEnum.LARGE_ENUM197,
              LargeOpenEnum.LARGE_ENUM198,
              LargeOpenEnum.LARGE_ENUM199,
              LargeOpenEnum.LARGE_ENUM200,
              LargeOpenEnum.LARGE_ENUM201,
              LargeOpenEnum.LARGE_ENUM202,
              LargeOpenEnum.LARGE_ENUM203,
              LargeOpenEnum.LARGE_ENUM204,
              LargeOpenEnum.LARGE_ENUM205,
              LargeOpenEnum.LARGE_ENUM206,
              LargeOpenEnum.LARGE_ENUM207,
              LargeOpenEnum.LARGE_ENUM208,
              LargeOpenEnum.LARGE_ENUM209,
              LargeOpenEnum.LARGE_ENUM210,
              LargeOpenEnum.LARGE_ENUM211,
              LargeOpenEnum.LARGE_ENUM212,
              LargeOpenEnum.LARGE_ENUM213,
              LargeOpenEnum.LARGE_ENUM214,
              LargeOpenEnum.LARGE_ENUM215,
              LargeOpenEnum.LARGE_ENUM216,
              LargeOpenEnum.LARGE_ENUM217,
              LargeOpenEnum.LARGE_ENUM218,
              LargeOpenEnum.LARGE_ENUM219,
              LargeOpenEnum.LARGE_ENUM220,
              LargeOpenEnum.LARGE_ENUM221,
              LargeOpenEnum.LARGE_ENUM222,
              LargeOpenEnum.LARGE_ENUM223,
              LargeOpenEnum.LARGE_ENUM224,
              LargeOpenEnum.LARGE_ENUM225,
              LargeOpenEnum.LARGE_ENUM226,
              LargeOpenEnum.LARGE_ENUM227,
              LargeOpenEnum.LARGE_ENUM228,
              LargeOpenEnum.LARGE_ENUM229,
              LargeOpenEnum.LARGE_ENUM230,
              LargeOpenEnum.LARGE_ENUM231,
              LargeOpenEnum.LARGE_ENUM232,
              LargeOpenEnum.LARGE_ENUM233,
              LargeOpenEnum.LARGE_ENUM234,
              LargeOpenEnum.LARGE_ENUM235,
              LargeOpenEnum.LARGE_ENUM236,
              LargeOpenEnum.LARGE_ENUM237,
              LargeOpenEnum.LARGE_ENUM238,
              LargeOpenEnum.LARGE_ENUM239,
              LargeOpenEnum.LARGE_ENUM240,
              LargeOpenEnum.LARGE_ENUM241,
              LargeOpenEnum.LARGE_ENUM242,
              LargeOpenEnum.LARGE_ENUM243,
              LargeOpenEnum.LARGE_ENUM244,
              LargeOpenEnum.LARGE_ENUM245,
              LargeOpenEnum.LARGE_ENUM246,
              LargeOpenEnum.LARGE_ENUM247,
              LargeOpenEnum.LARGE_ENUM248,
              LargeOpenEnum.LARGE_ENUM249,
              LargeOpenEnum.LARGE_ENUM250,
              LargeOpenEnum.LARGE_ENUM251,
              LargeOpenEnum.LARGE_ENUM252,
              LargeOpenEnum.LARGE_ENUM253,
              LargeOpenEnum.LARGE_ENUM254,
              LargeOpenEnum.LARGE_ENUM255,
              LargeOpenEnum.LARGE_ENUM256,
              LargeOpenEnum.LARGE_ENUM257,
              LargeOpenEnum.LARGE_ENUM258,
              LargeOpenEnum.LARGE_ENUM259,
              LargeOpenEnum.LARGE_ENUM260,
              LargeOpenEnum.LARGE_ENUM261,
              LargeOpenEnum.LARGE_ENUM262,
              LargeOpenEnum.LARGE_ENUM263,
              LargeOpenEnum.LARGE_ENUM264,
              LargeOpenEnum.LARGE_ENUM265,
              LargeOpenEnum.LARGE_ENUM266,
              LargeOpenEnum.LARGE_ENUM267,
              LargeOpenEnum.LARGE_ENUM268,
              LargeOpenEnum.LARGE_ENUM269,
              LargeOpenEnum.LARGE_ENUM270,
              LargeOpenEnum.LARGE_ENUM271,
              LargeOpenEnum.LARGE_ENUM272,
              LargeOpenEnum.LARGE_ENUM273,
              LargeOpenEnum.LARGE_ENUM274,
              LargeOpenEnum.LARGE_ENUM275,
              LargeOpenEnum.LARGE_ENUM276,
              LargeOpenEnum.LARGE_ENUM277,
              LargeOpenEnum.LARGE_ENUM278,
              LargeOpenEnum.LARGE_ENUM279,
              LargeOpenEnum.LARGE_ENUM280,
              LargeOpenEnum.LARGE_ENUM281,
              LargeOpenEnum.LARGE_ENUM282,
              LargeOpenEnum.LARGE_ENUM283,
              LargeOpenEnum.LARGE_ENUM284,
              LargeOpenEnum.LARGE_ENUM285,
              LargeOpenEnum.LARGE_ENUM286,
              LargeOpenEnum.LARGE_ENUM287,
              LargeOpenEnum.LARGE_ENUM288,
              LargeOpenEnum.LARGE_ENUM289,
              LargeOpenEnum.LARGE_ENUM290,
              LargeOpenEnum.LARGE_ENUM291,
              LargeOpenEnum.LARGE_ENUM292,
              LargeOpenEnum.LARGE_ENUM293,
              LargeOpenEnum.LARGE_ENUM294,
              LargeOpenEnum.LARGE_ENUM295,
              LargeOpenEnum.LARGE_ENUM296,
              LargeOpenEnum.LARGE_ENUM297,
              LargeOpenEnum.LARGE_ENUM298,
              LargeOpenEnum.LARGE_ENUM299,
              LargeOpenEnum.LARGE_ENUM300,
              LargeOpenEnum.LARGE_ENUM301,
              LargeOpenEnum.LARGE_ENUM302,
              LargeOpenEnum.LARGE_ENUM303,
              LargeOpenEnum.LARGE_ENUM304,
              LargeOpenEnum.LARGE_ENUM305,
              LargeOpenEnum.LARGE_ENUM306,
              LargeOpenEnum.LARGE_ENUM307,
              LargeOpenEnum.LARGE_ENUM308,
              LargeOpenEnum.LARGE_ENUM309,
              LargeOpenEnum.LARGE_ENUM310,
              LargeOpenEnum.LARGE_ENUM311,
              LargeOpenEnum.LARGE_ENUM312,
              LargeOpenEnum.LARGE_ENUM313,
              LargeOpenEnum.LARGE_ENUM314,
              LargeOpenEnum.LARGE_ENUM315,
              LargeOpenEnum.LARGE_ENUM316,
              LargeOpenEnum.LARGE_ENUM317,
              LargeOpenEnum.LARGE_ENUM318,
              LargeOpenEnum.LARGE_ENUM319,
              LargeOpenEnum.LARGE_ENUM320,
              LargeOpenEnum.LARGE_ENUM321,
              LargeOpenEnum.LARGE_ENUM322,
              LargeOpenEnum.LARGE_ENUM323,
              LargeOpenEnum.LARGE_ENUM324,
              LargeOpenEnum.LARGE_ENUM325,
              LargeOpenEnum.LARGE_ENUM326,
              LargeOpenEnum.LARGE_ENUM327,
              LargeOpenEnum.LARGE_ENUM328,
              LargeOpenEnum.LARGE_ENUM329,
              LargeOpenEnum.LARGE_ENUM330,
              LargeOpenEnum.LARGE_ENUM331,
              LargeOpenEnum.LARGE_ENUM332,
              LargeOpenEnum.LARGE_ENUM333,
              LargeOpenEnum.LARGE_ENUM334,
              LargeOpenEnum.LARGE_ENUM335,
              LargeOpenEnum.LARGE_ENUM336,
              LargeOpenEnum.LARGE_ENUM337,
              LargeOpenEnum.LARGE_ENUM338,
              LargeOpenEnum.LARGE_ENUM339,
              LargeOpenEnum.LARGE_ENUM340,
              LargeOpenEnum.LARGE_ENUM341,
              LargeOpenEnum.LARGE_ENUM342,
              LargeOpenEnum.LARGE_ENUM343,
              LargeOpenEnum.LARGE_ENUM344,
              LargeOpenEnum.LARGE_ENUM345,
              LargeOpenEnum.LARGE_ENUM346,
              LargeOpenEnum.LARGE_ENUM347,
              LargeOpenEnum.LARGE_ENUM348,
              LargeOpenEnum.LARGE_ENUM349,
              LargeOpenEnum.LARGE_ENUM350,
              LargeOpenEnum.LARGE_ENUM351,
              LargeOpenEnum.LARGE_ENUM352,
              LargeOpenEnum.LARGE_ENUM353,
              LargeOpenEnum.LARGE_ENUM354,
              LargeOpenEnum.LARGE_ENUM355,
              LargeOpenEnum.LARGE_ENUM356,
              LargeOpenEnum.LARGE_ENUM357,
              LargeOpenEnum.LARGE_ENUM358,
              LargeOpenEnum.LARGE_ENUM359,
              LargeOpenEnum.LARGE_ENUM360,
              LargeOpenEnum.LARGE_ENUM361,
              LargeOpenEnum.LARGE_ENUM362,
              LargeOpenEnum.LARGE_ENUM363,
              LargeOpenEnum.LARGE_ENUM364,
              LargeOpenEnum.LARGE_ENUM365,
              LargeOpenEnum.LARGE_ENUM366,
              LargeOpenEnum.LARGE_ENUM367,
              LargeOpenEnum.LARGE_ENUM368,
              LargeOpenEnum.LARGE_ENUM369,
              LargeOpenEnum.LARGE_ENUM370,
              LargeOpenEnum.LARGE_ENUM371,
              LargeOpenEnum.LARGE_ENUM372,
              LargeOpenEnum.LARGE_ENUM373,
              LargeOpenEnum.LARGE_ENUM374,
              LargeOpenEnum.LARGE_ENUM375,
              LargeOpenEnum.LARGE_ENUM376,
              LargeOpenEnum.LARGE_ENUM377,
              LargeOpenEnum.LARGE_ENUM378,
              LargeOpenEnum.LARGE_ENUM379,
              LargeOpenEnum.LARGE_ENUM380,
              LargeOpenEnum.LARGE_ENUM381,
              LargeOpenEnum.LARGE_ENUM382,
              LargeOpenEnum.LARGE_ENUM383,
              LargeOpenEnum.LARGE_ENUM384,
              LargeOpenEnum.LARGE_ENUM385,
              LargeOpenEnum.LARGE_ENUM386,
              LargeOpenEnum.LARGE_ENUM387,
              LargeOpenEnum.LARGE_ENUM388,
              LargeOpenEnum.LARGE_ENUM389,
              LargeOpenEnum.LARGE_ENUM390,
              LargeOpenEnum.LARGE_ENUM391,
              LargeOpenEnum.LARGE_ENUM392,
              LargeOpenEnum.LARGE_ENUM393,
              LargeOpenEnum.LARGE_ENUM394,
              LargeOpenEnum.LARGE_ENUM395,
              LargeOpenEnum.LARGE_ENUM396,
              LargeOpenEnum.LARGE_ENUM397,
              LargeOpenEnum.LARGE_ENUM398,
              LargeOpenEnum.LARGE_ENUM399,
              LargeOpenEnum.LARGE_ENUM400,
              LargeOpenEnum.LARGE_ENUM401,
              LargeOpenEnum.LARGE_ENUM402,
              LargeOpenEnum.LARGE_ENUM403,
              LargeOpenEnum.LARGE_ENUM404,
              LargeOpenEnum.LARGE_ENUM405,
              LargeOpenEnum.LARGE_ENUM406,
              LargeOpenEnum.LARGE_ENUM407,
              LargeOpenEnum.LARGE_ENUM408,
              LargeOpenEnum.LARGE_ENUM409,
              LargeOpenEnum.LARGE_ENUM410,
              LargeOpenEnum.LARGE_ENUM411,
              LargeOpenEnum.LARGE_ENUM412,
              LargeOpenEnum.LARGE_ENUM413,
              LargeOpenEnum.LARGE_ENUM414,
              LargeOpenEnum.LARGE_ENUM415,
              LargeOpenEnum.LARGE_ENUM416,
              LargeOpenEnum.LARGE_ENUM417,
              LargeOpenEnum.LARGE_ENUM418,
              LargeOpenEnum.LARGE_ENUM419,
              LargeOpenEnum.LARGE_ENUM420,
              LargeOpenEnum.LARGE_ENUM421,
              LargeOpenEnum.LARGE_ENUM422,
              LargeOpenEnum.LARGE_ENUM423,
              LargeOpenEnum.LARGE_ENUM424,
              LargeOpenEnum.LARGE_ENUM425,
              LargeOpenEnum.LARGE_ENUM426,
              LargeOpenEnum.LARGE_ENUM427,
              LargeOpenEnum.LARGE_ENUM428,
              LargeOpenEnum.LARGE_ENUM429,
              LargeOpenEnum.LARGE_ENUM430,
              LargeOpenEnum.LARGE_ENUM431,
              LargeOpenEnum.LARGE_ENUM432,
              LargeOpenEnum.LARGE_ENUM433,
              LargeOpenEnum.LARGE_ENUM434,
              LargeOpenEnum.LARGE_ENUM435,
              LargeOpenEnum.LARGE_ENUM436,
              LargeOpenEnum.LARGE_ENUM437,
              LargeOpenEnum.LARGE_ENUM438,
              LargeOpenEnum.LARGE_ENUM439,
              LargeOpenEnum.LARGE_ENUM440,
              LargeOpenEnum.LARGE_ENUM441,
              LargeOpenEnum.LARGE_ENUM442,
              LargeOpenEnum.LARGE_ENUM443,
              LargeOpenEnum.LARGE_ENUM444,
              LargeOpenEnum.LARGE_ENUM445,
              LargeOpenEnum.LARGE_ENUM446,
              LargeOpenEnum.LARGE_ENUM447,
              LargeOpenEnum.LARGE_ENUM448,
              LargeOpenEnum.LARGE_ENUM449,
              LargeOpenEnum.LARGE_ENUM450,
              LargeOpenEnum.LARGE_ENUM451,
              LargeOpenEnum.LARGE_ENUM452,
              LargeOpenEnum.LARGE_ENUM453,
              LargeOpenEnum.LARGE_ENUM454,
              LargeOpenEnum.LARGE_ENUM455,
              LargeOpenEnum.LARGE_ENUM456,
              LargeOpenEnum.LARGE_ENUM457,
              LargeOpenEnum.LARGE_ENUM458,
              LargeOpenEnum.LARGE_ENUM459,
              LargeOpenEnum.LARGE_ENUM460,
              LargeOpenEnum.LARGE_ENUM461,
              LargeOpenEnum.LARGE_ENUM462,
              LargeOpenEnum.LARGE_ENUM463,
              LargeOpenEnum.LARGE_ENUM464,
              LargeOpenEnum.LARGE_ENUM465,
              LargeOpenEnum.LARGE_ENUM466,
              LargeOpenEnum.LARGE_ENUM467,
              LargeOpenEnum.LARGE_ENUM468,
              LargeOpenEnum.LARGE_ENUM469,
              LargeOpenEnum.LARGE_ENUM470,
              LargeOpenEnum.LARGE_ENUM471,
              LargeOpenEnum.LARGE_ENUM472,
              LargeOpenEnum.LARGE_ENUM473,
              LargeOpenEnum.LARGE_ENUM474,
              LargeOpenEnum.LARGE_ENUM475,
              LargeOpenEnum.LARGE_ENUM476,
              LargeOpenEnum.LARGE_ENUM477,
              LargeOpenEnum.LARGE_ENUM478,
              LargeOpenEnum.LARGE_ENUM479,
              LargeOpenEnum.LARGE_ENUM480,
              LargeOpenEnum.LARGE_ENUM481,
              LargeOpenEnum.LARGE_ENUM482,
              LargeOpenEnum.LARGE_ENUM483,
              LargeOpenEnum.LARGE_ENUM484,
              LargeOpenEnum.LARGE_ENUM485,
              LargeOpenEnum.LARGE_ENUM486,
              LargeOpenEnum.LARGE_ENUM487,
              LargeOpenEnum.LARGE_ENUM488,
              LargeOpenEnum.LARGE_ENUM489,
              LargeOpenEnum.LARGE_ENUM490,
              LargeOpenEnum.LARGE_ENUM491,
              LargeOpenEnum.LARGE_ENUM492,
              LargeOpenEnum.LARGE_ENUM493,
              LargeOpenEnum.LARGE_ENUM494,
              LargeOpenEnum.LARGE_ENUM495,
              LargeOpenEnum.LARGE_ENUM496,
              LargeOpenEnum.LARGE_ENUM497,
              LargeOpenEnum.LARGE_ENUM498,
              LargeOpenEnum.LARGE_ENUM499,
              LargeOpenEnum.LARGE_ENUM500,
              LargeOpenEnum.LARGE_ENUM501,
              LargeOpenEnum.LARGE_ENUM502,
              LargeOpenEnum.LARGE_ENUM503,
              LargeOpenEnum.LARGE_ENUM504,
              LargeOpenEnum.LARGE_ENUM505,
              LargeOpenEnum.LARGE_ENUM506,
              LargeOpenEnum.LARGE_ENUM507,
              LargeOpenEnum.LARGE_ENUM508,
              LargeOpenEnum.LARGE_ENUM509,
              LargeOpenEnum.LARGE_ENUM510,
              LargeOpenEnum.LARGE_ENUM511,
              LargeOpenEnum.LARGE_ENUM512,
              LargeOpenEnum.LARGE_ENUM513,
              LargeOpenEnum.LARGE_ENUM514,
              LargeOpenEnum.LARGE_ENUM515,
              LargeOpenEnum.LARGE_ENUM516,
              LargeOpenEnum.LARGE_ENUM517,
              LargeOpenEnum.LARGE_ENUM518,
              LargeOpenEnum.LARGE_ENUM519,
              LargeOpenEnum.LARGE_ENUM520,
              LargeOpenEnum.LARGE_ENUM521,
              LargeOpenEnum.LARGE_ENUM522,
              LargeOpenEnum.LARGE_ENUM523,
              LargeOpenEnum.LARGE_ENUM524,
              LargeOpenEnum.LARGE_ENUM525,
              LargeOpenEnum.LARGE_ENUM526,
              LargeOpenEnum.LARGE_ENUM527,
              LargeOpenEnum.LARGE_ENUM528,
              LargeOpenEnum.LARGE_ENUM529,
              LargeOpenEnum.LARGE_ENUM530,
              LargeOpenEnum.LARGE_ENUM531,
              LargeOpenEnum.LARGE_ENUM532,
              LargeOpenEnum.LARGE_ENUM533,
              LargeOpenEnum.LARGE_ENUM534,
              LargeOpenEnum.LARGE_ENUM535,
              LargeOpenEnum.LARGE_ENUM536,
              LargeOpenEnum.LARGE_ENUM537,
              LargeOpenEnum.LARGE_ENUM538,
              LargeOpenEnum.LARGE_ENUM539,
              LargeOpenEnum.LARGE_ENUM540,
              LargeOpenEnum.LARGE_ENUM541,
              LargeOpenEnum.LARGE_ENUM542,
              LargeOpenEnum.LARGE_ENUM543,
              LargeOpenEnum.LARGE_ENUM544,
              LargeOpenEnum.LARGE_ENUM545,
              LargeOpenEnum.LARGE_ENUM546,
              LargeOpenEnum.LARGE_ENUM547,
              LargeOpenEnum.LARGE_ENUM548,
              LargeOpenEnum.LARGE_ENUM549,
              LargeOpenEnum.LARGE_ENUM550,
              LargeOpenEnum.LARGE_ENUM551,
              LargeOpenEnum.LARGE_ENUM552,
              LargeOpenEnum.LARGE_ENUM553,
              LargeOpenEnum.LARGE_ENUM554,
              LargeOpenEnum.LARGE_ENUM555,
              LargeOpenEnum.LARGE_ENUM556,
              LargeOpenEnum.LARGE_ENUM557,
              LargeOpenEnum.LARGE_ENUM558,
              LargeOpenEnum.LARGE_ENUM559,
              LargeOpenEnum.LARGE_ENUM560,
              LargeOpenEnum.LARGE_ENUM561,
              LargeOpenEnum.LARGE_ENUM562,
              LargeOpenEnum.LARGE_ENUM563,
              LargeOpenEnum.LARGE_ENUM564,
              LargeOpenEnum.LARGE_ENUM565,
              LargeOpenEnum.LARGE_ENUM566,
              LargeOpenEnum.LARGE_ENUM567,
              LargeOpenEnum.LARGE_ENUM568,
              LargeOpenEnum.LARGE_ENUM569,
              LargeOpenEnum.LARGE_ENUM570,
              LargeOpenEnum.LARGE_ENUM571,
              LargeOpenEnum.LARGE_ENUM572,
              LargeOpenEnum.LARGE_ENUM573,
              LargeOpenEnum.LARGE_ENUM574,
              LargeOpenEnum.LARGE_ENUM575,
              LargeOpenEnum.LARGE_ENUM576,
              LargeOpenEnum.LARGE_ENUM577,
              LargeOpenEnum.LARGE_ENUM578,
              LargeOpenEnum.LARGE_ENUM579,
              LargeOpenEnum.LARGE_ENUM580,
              LargeOpenEnum.LARGE_ENUM581,
              LargeOpenEnum.LARGE_ENUM582,
              LargeOpenEnum.LARGE_ENUM583,
              LargeOpenEnum.LARGE_ENUM584,
              LargeOpenEnum.LARGE_ENUM585,
              LargeOpenEnum.LARGE_ENUM586,
              LargeOpenEnum.LARGE_ENUM587,
              LargeOpenEnum.LARGE_ENUM588,
              LargeOpenEnum.LARGE_ENUM589,
              LargeOpenEnum.LARGE_ENUM590,
              LargeOpenEnum.LARGE_ENUM591,
              LargeOpenEnum.LARGE_ENUM592,
              LargeOpenEnum.LARGE_ENUM593,
              LargeOpenEnum.LARGE_ENUM594,
              LargeOpenEnum.LARGE_ENUM595,
              LargeOpenEnum.LARGE_ENUM596,
              LargeOpenEnum.LARGE_ENUM597,
              LargeOpenEnum.LARGE_ENUM598,
              LargeOpenEnum.LARGE_ENUM599,
              LargeOpenEnum.LARGE_ENUM600,
              LargeOpenEnum.LARGE_ENUM601,
              LargeOpenEnum.LARGE_ENUM602,
              LargeOpenEnum.LARGE_ENUM603,
              LargeOpenEnum.LARGE_ENUM604,
              LargeOpenEnum.LARGE_ENUM605,
              LargeOpenEnum.LARGE_ENUM606,
              LargeOpenEnum.LARGE_ENUM607,
              LargeOpenEnum.LARGE_ENUM608,
              LargeOpenEnum.LARGE_ENUM609,
              LargeOpenEnum.LARGE_ENUM610,
              LargeOpenEnum.LARGE_ENUM611,
              LargeOpenEnum.LARGE_ENUM612,
              LargeOpenEnum.LARGE_ENUM613,
              LargeOpenEnum.LARGE_ENUM614,
              LargeOpenEnum.LARGE_ENUM615,
              LargeOpenEnum.LARGE_ENUM616,
              LargeOpenEnum.LARGE_ENUM617,
              LargeOpenEnum.LARGE_ENUM618,
              LargeOpenEnum.LARGE_ENUM619,
              LargeOpenEnum.LARGE_ENUM620,
              LargeOpenEnum.LARGE_ENUM621,
              LargeOpenEnum.LARGE_ENUM622,
              LargeOpenEnum.LARGE_ENUM623,
              LargeOpenEnum.LARGE_ENUM624,
              LargeOpenEnum.LARGE_ENUM625,
              LargeOpenEnum.LARGE_ENUM626,
              LargeOpenEnum.LARGE_ENUM627,
              LargeOpenEnum.LARGE_ENUM628,
              LargeOpenEnum.LARGE_ENUM629,
              LargeOpenEnum.LARGE_ENUM630,
              LargeOpenEnum.LARGE_ENUM631,
              LargeOpenEnum.LARGE_ENUM632,
              LargeOpenEnum.LARGE_ENUM633,
              LargeOpenEnum.LARGE_ENUM634,
              LargeOpenEnum.LARGE_ENUM635,
              LargeOpenEnum.LARGE_ENUM636,
              LargeOpenEnum.LARGE_ENUM637,
              LargeOpenEnum.LARGE_ENUM638,
              LargeOpenEnum.LARGE_ENUM639,
              LargeOpenEnum.LARGE_ENUM640,
              LargeOpenEnum.LARGE_ENUM641,
              LargeOpenEnum.LARGE_ENUM642,
              LargeOpenEnum.LARGE_ENUM643,
              LargeOpenEnum.LARGE_ENUM644,
              LargeOpenEnum.LARGE_ENUM645,
              LargeOpenEnum.LARGE_ENUM646,
              LargeOpenEnum.LARGE_ENUM647,
              LargeOpenEnum.LARGE_ENUM648,
              LargeOpenEnum.LARGE_ENUM649,
              LargeOpenEnum.LARGE_ENUM650,
              LargeOpenEnum.LARGE_ENUM651,
              LargeOpenEnum.LARGE_ENUM652,
              LargeOpenEnum.LARGE_ENUM653,
              LargeOpenEnum.LARGE_ENUM654,
              LargeOpenEnum.LARGE_ENUM655,
              LargeOpenEnum.LARGE_ENUM656,
              LargeOpenEnum.LARGE_ENUM657,
              LargeOpenEnum.LARGE_ENUM658,
              LargeOpenEnum.LARGE_ENUM659,
              LargeOpenEnum.LARGE_ENUM660,
              LargeOpenEnum.LARGE_ENUM661,
              LargeOpenEnum.LARGE_ENUM662,
              LargeOpenEnum.LARGE_ENUM663,
              LargeOpenEnum.LARGE_ENUM664,
              LargeOpenEnum.LARGE_ENUM665,
              LargeOpenEnum.LARGE_ENUM666,
              LargeOpenEnum.LARGE_ENUM667,
              LargeOpenEnum.LARGE_ENUM668,
              LargeOpenEnum.LARGE_ENUM669,
              LargeOpenEnum.LARGE_ENUM670,
              LargeOpenEnum.LARGE_ENUM671,
              LargeOpenEnum.LARGE_ENUM672,
              LargeOpenEnum.LARGE_ENUM673,
              LargeOpenEnum.LARGE_ENUM674,
              LargeOpenEnum.LARGE_ENUM675,
              LargeOpenEnum.LARGE_ENUM676,
              LargeOpenEnum.LARGE_ENUM677,
              LargeOpenEnum.LARGE_ENUM678,
              LargeOpenEnum.LARGE_ENUM679,
              LargeOpenEnum.LARGE_ENUM680,
              LargeOpenEnum.LARGE_ENUM681,
              LargeOpenEnum.LARGE_ENUM682,
              LargeOpenEnum.LARGE_ENUM683,
              LargeOpenEnum.LARGE_ENUM684,
              LargeOpenEnum.LARGE_ENUM685,
              LargeOpenEnum.LARGE_ENUM686,
              LargeOpenEnum.LARGE_ENUM687,
              LargeOpenEnum.LARGE_ENUM688,
              LargeOpenEnum.LARGE_ENUM689,
              LargeOpenEnum.LARGE_ENUM690,
              LargeOpenEnum.LARGE_ENUM691,
              LargeOpenEnum.LARGE_ENUM692,
              LargeOpenEnum.LARGE_ENUM693,
              LargeOpenEnum.LARGE_ENUM694,
              LargeOpenEnum.LARGE_ENUM695,
              LargeOpenEnum.LARGE_ENUM696,
              LargeOpenEnum.LARGE_ENUM697,
              LargeOpenEnum.LARGE_ENUM698,
              LargeOpenEnum.LARGE_ENUM699,
              LargeOpenEnum.LARGE_ENUM700,
              LargeOpenEnum.LARGE_ENUM701,
              LargeOpenEnum.LARGE_ENUM702,
              LargeOpenEnum.LARGE_ENUM703,
              LargeOpenEnum.LARGE_ENUM704,
              LargeOpenEnum.LARGE_ENUM705,
              LargeOpenEnum.LARGE_ENUM706,
              LargeOpenEnum.LARGE_ENUM707,
              LargeOpenEnum.LARGE_ENUM708,
              LargeOpenEnum.LARGE_ENUM709,
              LargeOpenEnum.LARGE_ENUM710,
              LargeOpenEnum.LARGE_ENUM711,
              LargeOpenEnum.LARGE_ENUM712,
              LargeOpenEnum.LARGE_ENUM713,
              LargeOpenEnum.LARGE_ENUM714,
              LargeOpenEnum.LARGE_ENUM715,
              LargeOpenEnum.LARGE_ENUM716,
              LargeOpenEnum.LARGE_ENUM717,
              LargeOpenEnum.LARGE_ENUM718,
              LargeOpenEnum.LARGE_ENUM719,
              LargeOpenEnum.LARGE_ENUM720,
              LargeOpenEnum.LARGE_ENUM721,
              LargeOpenEnum.LARGE_ENUM722,
              LargeOpenEnum.LARGE_ENUM723,
              LargeOpenEnum.LARGE_ENUM724,
              LargeOpenEnum.LARGE_ENUM725,
              LargeOpenEnum.LARGE_ENUM726,
              LargeOpenEnum.LARGE_ENUM727,
              LargeOpenEnum.LARGE_ENUM728,
              LargeOpenEnum.LARGE_ENUM729,
              LargeOpenEnum.LARGE_ENUM730,
              LargeOpenEnum.LARGE_ENUM731,
              LargeOpenEnum.LARGE_ENUM732,
              LargeOpenEnum.LARGE_ENUM733,
              LargeOpenEnum.LARGE_ENUM734,
              LargeOpenEnum.LARGE_ENUM735,
              LargeOpenEnum.LARGE_ENUM736,
              LargeOpenEnum.LARGE_ENUM737,
              LargeOpenEnum.LARGE_ENUM738,
              LargeOpenEnum.LARGE_ENUM739,
              LargeOpenEnum.LARGE_ENUM740,
              LargeOpenEnum.LARGE_ENUM741,
              LargeOpenEnum.LARGE_ENUM742,
              LargeOpenEnum.LARGE_ENUM743,
              LargeOpenEnum.LARGE_ENUM744,
              LargeOpenEnum.LARGE_ENUM745,
              LargeOpenEnum.LARGE_ENUM746,
              LargeOpenEnum.LARGE_ENUM747,
              LargeOpenEnum.LARGE_ENUM748,
              LargeOpenEnum.LARGE_ENUM749,
              LargeOpenEnum.LARGE_ENUM750,
              LargeOpenEnum.LARGE_ENUM751,
              LargeOpenEnum.LARGE_ENUM752,
              LargeOpenEnum.LARGE_ENUM753,
              LargeOpenEnum.LARGE_ENUM754,
              LargeOpenEnum.LARGE_ENUM755,
              LargeOpenEnum.LARGE_ENUM756,
              LargeOpenEnum.LARGE_ENUM757,
              LargeOpenEnum.LARGE_ENUM758,
              LargeOpenEnum.LARGE_ENUM759,
              LargeOpenEnum.LARGE_ENUM760,
              LargeOpenEnum.LARGE_ENUM761,
              LargeOpenEnum.LARGE_ENUM762,
              LargeOpenEnum.LARGE_ENUM763,
              LargeOpenEnum.LARGE_ENUM764,
              LargeOpenEnum.LARGE_ENUM765,
              LargeOpenEnum.LARGE_ENUM766,
              LargeOpenEnum.LARGE_ENUM767,
              LargeOpenEnum.LARGE_ENUM768,
              LargeOpenEnum.LARGE_ENUM769,
              LargeOpenEnum.LARGE_ENUM770,
              LargeOpenEnum.LARGE_ENUM771,
              LargeOpenEnum.LARGE_ENUM772,
              LargeOpenEnum.LARGE_ENUM773,
              LargeOpenEnum.LARGE_ENUM774,
              LargeOpenEnum.LARGE_ENUM775,
              LargeOpenEnum.LARGE_ENUM776,
              LargeOpenEnum.LARGE_ENUM777,
              LargeOpenEnum.LARGE_ENUM778,
              LargeOpenEnum.LARGE_ENUM779,
              LargeOpenEnum.LARGE_ENUM780,
              LargeOpenEnum.LARGE_ENUM781,
              LargeOpenEnum.LARGE_ENUM782,
              LargeOpenEnum.LARGE_ENUM783,
              LargeOpenEnum.LARGE_ENUM784,
              LargeOpenEnum.LARGE_ENUM785,
              LargeOpenEnum.LARGE_ENUM786,
              LargeOpenEnum.LARGE_ENUM787,
              LargeOpenEnum.LARGE_ENUM788,
              LargeOpenEnum.LARGE_ENUM789,
              LargeOpenEnum.LARGE_ENUM790,
              LargeOpenEnum.LARGE_ENUM791,
              LargeOpenEnum.LARGE_ENUM792,
              LargeOpenEnum.LARGE_ENUM793,
              LargeOpenEnum.LARGE_ENUM794,
              LargeOpenEnum.LARGE_ENUM795,
              LargeOpenEnum.LARGE_ENUM796,
              LargeOpenEnum.LARGE_ENUM797,
              LargeOpenEnum.LARGE_ENUM798,
              LargeOpenEnum.LARGE_ENUM799,
              LargeOpenEnum.LARGE_ENUM800,
              LargeOpenEnum.LARGE_ENUM801,
              LargeOpenEnum.LARGE_ENUM802,
              LargeOpenEnum.LARGE_ENUM803,
              LargeOpenEnum.LARGE_ENUM804,
              LargeOpenEnum.LARGE_ENUM805,
              LargeOpenEnum.LARGE_ENUM806,
              LargeOpenEnum.LARGE_ENUM807,
              LargeOpenEnum.LARGE_ENUM808,
              LargeOpenEnum.LARGE_ENUM809,
              LargeOpenEnum.LARGE_ENUM810,
              LargeOpenEnum.LARGE_ENUM811,
              LargeOpenEnum.LARGE_ENUM812,
              LargeOpenEnum.LARGE_ENUM813,
              LargeOpenEnum.LARGE_ENUM814,
              LargeOpenEnum.LARGE_ENUM815,
              LargeOpenEnum.LARGE_ENUM816,
              LargeOpenEnum.LARGE_ENUM817,
              LargeOpenEnum.LARGE_ENUM818,
              LargeOpenEnum.LARGE_ENUM819,
              LargeOpenEnum.LARGE_ENUM820,
              LargeOpenEnum.LARGE_ENUM821,
              LargeOpenEnum.LARGE_ENUM822,
              LargeOpenEnum.LARGE_ENUM823,
              LargeOpenEnum.LARGE_ENUM824,
              LargeOpenEnum.LARGE_ENUM825,
              LargeOpenEnum.LARGE_ENUM826,
              LargeOpenEnum.LARGE_ENUM827,
              LargeOpenEnum.LARGE_ENUM828,
              LargeOpenEnum.LARGE_ENUM829,
              LargeOpenEnum.LARGE_ENUM830,
              LargeOpenEnum.LARGE_ENUM831,
              LargeOpenEnum.LARGE_ENUM832,
              LargeOpenEnum.LARGE_ENUM833,
              LargeOpenEnum.LARGE_ENUM834,
              LargeOpenEnum.LARGE_ENUM835,
              LargeOpenEnum.LARGE_ENUM836,
              LargeOpenEnum.LARGE_ENUM837,
              LargeOpenEnum.LARGE_ENUM838,
              LargeOpenEnum.LARGE_ENUM839,
              LargeOpenEnum.LARGE_ENUM840,
              LargeOpenEnum.LARGE_ENUM841,
              LargeOpenEnum.LARGE_ENUM842,
              LargeOpenEnum.LARGE_ENUM843,
              LargeOpenEnum.LARGE_ENUM844,
              LargeOpenEnum.LARGE_ENUM845,
              LargeOpenEnum.LARGE_ENUM846,
              LargeOpenEnum.LARGE_ENUM847,
              LargeOpenEnum.LARGE_ENUM848,
              LargeOpenEnum.LARGE_ENUM849,
              LargeOpenEnum.LARGE_ENUM850,
              LargeOpenEnum.LARGE_ENUM851,
              LargeOpenEnum.LARGE_ENUM852,
              LargeOpenEnum.LARGE_ENUM853,
              LargeOpenEnum.LARGE_ENUM854,
              LargeOpenEnum.LARGE_ENUM855,
              LargeOpenEnum.LARGE_ENUM856,
              LargeOpenEnum.LARGE_ENUM857,
              LargeOpenEnum.LARGE_ENUM858,
              LargeOpenEnum.LARGE_ENUM859,
              LargeOpenEnum.LARGE_ENUM860,
              LargeOpenEnum.LARGE_ENUM861,
              LargeOpenEnum.LARGE_ENUM862,
              LargeOpenEnum.LARGE_ENUM863,
              LargeOpenEnum.LARGE_ENUM864,
              LargeOpenEnum.LARGE_ENUM865,
              LargeOpenEnum.LARGE_ENUM866,
              LargeOpenEnum.LARGE_ENUM867,
              LargeOpenEnum.LARGE_ENUM868,
              LargeOpenEnum.LARGE_ENUM869,
              LargeOpenEnum.LARGE_ENUM870,
              LargeOpenEnum.LARGE_ENUM871,
              LargeOpenEnum.LARGE_ENUM872,
              LargeOpenEnum.LARGE_ENUM873,
              LargeOpenEnum.LARGE_ENUM874,
              LargeOpenEnum.LARGE_ENUM875,
              LargeOpenEnum.LARGE_ENUM876,
              LargeOpenEnum.LARGE_ENUM877,
              LargeOpenEnum.LARGE_ENUM878,
              LargeOpenEnum.LARGE_ENUM879,
              LargeOpenEnum.LARGE_ENUM880,
              LargeOpenEnum.LARGE_ENUM881,
              LargeOpenEnum.LARGE_ENUM882,
              LargeOpenEnum.LARGE_ENUM883,
              LargeOpenEnum.LARGE_ENUM884,
              LargeOpenEnum.LARGE_ENUM885,
              LargeOpenEnum.LARGE_ENUM886,
              LargeOpenEnum.LARGE_ENUM887,
              LargeOpenEnum.LARGE_ENUM888,
              LargeOpenEnum.LARGE_ENUM889,
              LargeOpenEnum.LARGE_ENUM890,
              LargeOpenEnum.LARGE_ENUM891,
              LargeOpenEnum.LARGE_ENUM892,
              LargeOpenEnum.LARGE_ENUM893,
              LargeOpenEnum.LARGE_ENUM894,
              LargeOpenEnum.LARGE_ENUM895,
              LargeOpenEnum.LARGE_ENUM896,
              LargeOpenEnum.LARGE_ENUM897,
              LargeOpenEnum.LARGE_ENUM898,
              LargeOpenEnum.LARGE_ENUM899,
              LargeOpenEnum.LARGE_ENUM900,
              LargeOpenEnum.LARGE_ENUM901,
              LargeOpenEnum.LARGE_ENUM902,
              LargeOpenEnum.LARGE_ENUM903,
              LargeOpenEnum.LARGE_ENUM904,
              LargeOpenEnum.LARGE_ENUM905,
              LargeOpenEnum.LARGE_ENUM906,
              LargeOpenEnum.LARGE_ENUM907,
              LargeOpenEnum.LARGE_ENUM908,
              LargeOpenEnum.LARGE_ENUM909,
              LargeOpenEnum.LARGE_ENUM910,
              LargeOpenEnum.LARGE_ENUM911,
              LargeOpenEnum.LARGE_ENUM912,
              LargeOpenEnum.LARGE_ENUM913,
              LargeOpenEnum.LARGE_ENUM914,
              LargeOpenEnum.LARGE_ENUM915,
              LargeOpenEnum.LARGE_ENUM916,
              LargeOpenEnum.LARGE_ENUM917,
              LargeOpenEnum.LARGE_ENUM918,
              LargeOpenEnum.LARGE_ENUM919,
              LargeOpenEnum.LARGE_ENUM920,
              LargeOpenEnum.LARGE_ENUM921,
              LargeOpenEnum.LARGE_ENUM922,
              LargeOpenEnum.LARGE_ENUM923,
              LargeOpenEnum.LARGE_ENUM924,
              LargeOpenEnum.LARGE_ENUM925,
              LargeOpenEnum.LARGE_ENUM926,
              LargeOpenEnum.LARGE_ENUM927,
              LargeOpenEnum.LARGE_ENUM928,
              LargeOpenEnum.LARGE_ENUM929,
              LargeOpenEnum.LARGE_ENUM930,
              LargeOpenEnum.LARGE_ENUM931,
              LargeOpenEnum.LARGE_ENUM932,
              LargeOpenEnum.LARGE_ENUM933,
              LargeOpenEnum.LARGE_ENUM934,
              LargeOpenEnum.LARGE_ENUM935,
              LargeOpenEnum.LARGE_ENUM936,
              LargeOpenEnum.LARGE_ENUM937,
              LargeOpenEnum.LARGE_ENUM938,
              LargeOpenEnum.LARGE_ENUM939,
              LargeOpenEnum.LARGE_ENUM940,
              LargeOpenEnum.LARGE_ENUM941,
              LargeOpenEnum.LARGE_ENUM942,
              LargeOpenEnum.LARGE_ENUM943,
              LargeOpenEnum.LARGE_ENUM944,
              LargeOpenEnum.LARGE_ENUM945,
              LargeOpenEnum.LARGE_ENUM946,
              LargeOpenEnum.LARGE_ENUM947,
              LargeOpenEnum.LARGE_ENUM948,
              LargeOpenEnum.LARGE_ENUM949,
              LargeOpenEnum.LARGE_ENUM950,
              LargeOpenEnum.LARGE_ENUM951,
              LargeOpenEnum.LARGE_ENUM952,
              LargeOpenEnum.LARGE_ENUM953,
              LargeOpenEnum.LARGE_ENUM954,
              LargeOpenEnum.LARGE_ENUM955,
              LargeOpenEnum.LARGE_ENUM956,
              LargeOpenEnum.LARGE_ENUM957,
              LargeOpenEnum.LARGE_ENUM958,
              LargeOpenEnum.LARGE_ENUM959,
              LargeOpenEnum.LARGE_ENUM960,
              LargeOpenEnum.LARGE_ENUM961,
              LargeOpenEnum.LARGE_ENUM962,
              LargeOpenEnum.LARGE_ENUM963,
              LargeOpenEnum.LARGE_ENUM964,
              LargeOpenEnum.LARGE_ENUM965,
              LargeOpenEnum.LARGE_ENUM966,
              LargeOpenEnum.LARGE_ENUM967,
              LargeOpenEnum.LARGE_ENUM968,
              LargeOpenEnum.LARGE_ENUM969,
              LargeOpenEnum.LARGE_ENUM970,
              LargeOpenEnum.LARGE_ENUM971,
              LargeOpenEnum.LARGE_ENUM972,
              LargeOpenEnum.LARGE_ENUM973,
              LargeOpenEnum.LARGE_ENUM974,
              LargeOpenEnum.LARGE_ENUM975,
              LargeOpenEnum.LARGE_ENUM976,
              LargeOpenEnum.LARGE_ENUM977,
              LargeOpenEnum.LARGE_ENUM978,
              LargeOpenEnum.LARGE_ENUM979,
              LargeOpenEnum.LARGE_ENUM980,
              LargeOpenEnum.LARGE_ENUM981,
              LargeOpenEnum.LARGE_ENUM982,
              LargeOpenEnum.LARGE_ENUM983,
              LargeOpenEnum.LARGE_ENUM984,
              LargeOpenEnum.LARGE_ENUM985,
              LargeOpenEnum.LARGE_ENUM986,
              LargeOpenEnum.LARGE_ENUM987,
              LargeOpenEnum.LARGE_ENUM988,
              LargeOpenEnum.LARGE_ENUM989,
              LargeOpenEnum.LARGE_ENUM990,
              LargeOpenEnum.LARGE_ENUM991,
              LargeOpenEnum.LARGE_ENUM992,
              LargeOpenEnum.LARGE_ENUM993,
              LargeOpenEnum.LARGE_ENUM994,
              LargeOpenEnum.LARGE_ENUM995,
              LargeOpenEnum.LARGE_ENUM996,
              LargeOpenEnum.LARGE_ENUM997,
              LargeOpenEnum.LARGE_ENUM998,
              LargeOpenEnum.LARGE_ENUM999,
              LargeOpenEnum.LARGE_ENUM1000,
              LargeOpenEnum.LARGE_ENUM1001,
              LargeOpenEnum.LARGE_ENUM1002,
              LargeOpenEnum.LARGE_ENUM1003,
              LargeOpenEnum.LARGE_ENUM1004,
              LargeOpenEnum.LARGE_ENUM1005,
              LargeOpenEnum.LARGE_ENUM1006,
              LargeOpenEnum.LARGE_ENUM1007,
              LargeOpenEnum.LARGE_ENUM1008,
              LargeOpenEnum.LARGE_ENUM1009,
              LargeOpenEnum.LARGE_ENUM1010,
              LargeOpenEnum.LARGE_ENUM1011,
              LargeOpenEnum.LARGE_ENUM1012,
              LargeOpenEnum.LARGE_ENUM1013,
              LargeOpenEnum.LARGE_ENUM1014,
              LargeOpenEnum.LARGE_ENUM1015,
              LargeOpenEnum.LARGE_ENUM1016,
              LargeOpenEnum.LARGE_ENUM1017,
              LargeOpenEnum.LARGE_ENUM1018,
              LargeOpenEnum.LARGE_ENUM1019,
              LargeOpenEnum.LARGE_ENUM1020,
              LargeOpenEnum.LARGE_ENUM1021,
              LargeOpenEnum.LARGE_ENUM1022,
              LargeOpenEnum.LARGE_ENUM1023,
              LargeOpenEnum.LARGE_ENUM1024,
              LargeOpenEnum.LARGE_ENUM1025,
              LargeOpenEnum.LARGE_ENUM1026,
              LargeOpenEnum.LARGE_ENUM1027,
              LargeOpenEnum.LARGE_ENUM1028,
              LargeOpenEnum.LARGE_ENUM1029,
              LargeOpenEnum.LARGE_ENUM1030,
              LargeOpenEnum.LARGE_ENUM1031,
              LargeOpenEnum.LARGE_ENUM1032,
              LargeOpenEnum.LARGE_ENUM1033,
              LargeOpenEnum.LARGE_ENUM1034,
              LargeOpenEnum.LARGE_ENUM1035,
              LargeOpenEnum.LARGE_ENUM1036,
              LargeOpenEnum.LARGE_ENUM1037,
              LargeOpenEnum.LARGE_ENUM1038,
              LargeOpenEnum.LARGE_ENUM1039,
              LargeOpenEnum.LARGE_ENUM1040,
              LargeOpenEnum.LARGE_ENUM1041,
              LargeOpenEnum.LARGE_ENUM1042,
              LargeOpenEnum.LARGE_ENUM1043,
              LargeOpenEnum.LARGE_ENUM1044,
              LargeOpenEnum.LARGE_ENUM1045,
              LargeOpenEnum.LARGE_ENUM1046,
              LargeOpenEnum.LARGE_ENUM1047,
              LargeOpenEnum.LARGE_ENUM1048,
              LargeOpenEnum.LARGE_ENUM1049,
              LargeOpenEnum.LARGE_ENUM1050,
              LargeOpenEnum.LARGE_ENUM1051,
              LargeOpenEnum.LARGE_ENUM1052,
              LargeOpenEnum.LARGE_ENUM1053,
              LargeOpenEnum.LARGE_ENUM1054,
              LargeOpenEnum.LARGE_ENUM1055,
              LargeOpenEnum.LARGE_ENUM1056,
              LargeOpenEnum.LARGE_ENUM1057,
              LargeOpenEnum.LARGE_ENUM1058,
              LargeOpenEnum.LARGE_ENUM1059,
              LargeOpenEnum.LARGE_ENUM1060,
              LargeOpenEnum.LARGE_ENUM1061,
              LargeOpenEnum.LARGE_ENUM1062,
              LargeOpenEnum.LARGE_ENUM1063,
              LargeOpenEnum.LARGE_ENUM1064,
              LargeOpenEnum.LARGE_ENUM1065,
              LargeOpenEnum.LARGE_ENUM1066,
              LargeOpenEnum.LARGE_ENUM1067,
              LargeOpenEnum.LARGE_ENUM1068,
              LargeOpenEnum.LARGE_ENUM1069,
              LargeOpenEnum.LARGE_ENUM1070,
              LargeOpenEnum.LARGE_ENUM1071,
              LargeOpenEnum.LARGE_ENUM1072,
              LargeOpenEnum.LARGE_ENUM1073,
              LargeOpenEnum.LARGE_ENUM1074,
              LargeOpenEnum.LARGE_ENUM1075,
              LargeOpenEnum.LARGE_ENUM1076,
              LargeOpenEnum.LARGE_ENUM1077,
              LargeOpenEnum.LARGE_ENUM1078,
              LargeOpenEnum.LARGE_ENUM1079,
              LargeOpenEnum.LARGE_ENUM1080,
              LargeOpenEnum.LARGE_ENUM1081,
              LargeOpenEnum.LARGE_ENUM1082,
              LargeOpenEnum.LARGE_ENUM1083,
              LargeOpenEnum.LARGE_ENUM1084,
              LargeOpenEnum.LARGE_ENUM1085,
              LargeOpenEnum.LARGE_ENUM1086,
              LargeOpenEnum.LARGE_ENUM1087,
              LargeOpenEnum.LARGE_ENUM1088,
              LargeOpenEnum.LARGE_ENUM1089,
              LargeOpenEnum.LARGE_ENUM1090,
              LargeOpenEnum.LARGE_ENUM1091,
              LargeOpenEnum.LARGE_ENUM1092,
              LargeOpenEnum.LARGE_ENUM1093,
              LargeOpenEnum.LARGE_ENUM1094,
              LargeOpenEnum.LARGE_ENUM1095,
              LargeOpenEnum.LARGE_ENUM1096,
              LargeOpenEnum.LARGE_ENUM1097,
              LargeOpenEnum.LARGE_ENUM1098,
              LargeOpenEnum.LARGE_ENUM1099,
              LargeOpenEnum.LARGE_ENUM1100,
              LargeOpenEnum.LARGE_ENUM1101,
              LargeOpenEnum.LARGE_ENUM1102,
              LargeOpenEnum.LARGE_ENUM1103,
              LargeOpenEnum.LARGE_ENUM1104,
              LargeOpenEnum.LARGE_ENUM1105,
              LargeOpenEnum.LARGE_ENUM1106,
              LargeOpenEnum.LARGE_ENUM1107,
              LargeOpenEnum.LARGE_ENUM1108,
              LargeOpenEnum.LARGE_ENUM1109,
              LargeOpenEnum.LARGE_ENUM1110,
              LargeOpenEnum.LARGE_ENUM1111,
              LargeOpenEnum.LARGE_ENUM1112,
              LargeOpenEnum.LARGE_ENUM1113,
              LargeOpenEnum.LARGE_ENUM1114,
              LargeOpenEnum.LARGE_ENUM1115,
              LargeOpenEnum.LARGE_ENUM1116,
              LargeOpenEnum.LARGE_ENUM1117,
              LargeOpenEnum.LARGE_ENUM1118,
              LargeOpenEnum.LARGE_ENUM1119,
              LargeOpenEnum.LARGE_ENUM1120,
              LargeOpenEnum.LARGE_ENUM1121,
              LargeOpenEnum.LARGE_ENUM1122,
              LargeOpenEnum.LARGE_ENUM1123,
              LargeOpenEnum.LARGE_ENUM1124,
              LargeOpenEnum.LARGE_ENUM1125,
              LargeOpenEnum.LARGE_ENUM1126,
              LargeOpenEnum.LARGE_ENUM1127,
              LargeOpenEnum.LARGE_ENUM1128,
              LargeOpenEnum.LARGE_ENUM1129,
              LargeOpenEnum.LARGE_ENUM1130,
              LargeOpenEnum.LARGE_ENUM1131,
              LargeOpenEnum.LARGE_ENUM1132,
              LargeOpenEnum.LARGE_ENUM1133,
              LargeOpenEnum.LARGE_ENUM1134,
              LargeOpenEnum.LARGE_ENUM1135,
              LargeOpenEnum.LARGE_ENUM1136,
              LargeOpenEnum.LARGE_ENUM1137,
              LargeOpenEnum.LARGE_ENUM1138,
              LargeOpenEnum.LARGE_ENUM1139,
              LargeOpenEnum.LARGE_ENUM1140,
              LargeOpenEnum.LARGE_ENUM1141,
              LargeOpenEnum.LARGE_ENUM1142,
              LargeOpenEnum.LARGE_ENUM1143,
              LargeOpenEnum.LARGE_ENUM1144,
              LargeOpenEnum.LARGE_ENUM1145,
              LargeOpenEnum.LARGE_ENUM1146,
              LargeOpenEnum.LARGE_ENUM1147,
              LargeOpenEnum.LARGE_ENUM1148,
              LargeOpenEnum.LARGE_ENUM1149,
              LargeOpenEnum.LARGE_ENUM1150,
              LargeOpenEnum.LARGE_ENUM1151,
              LargeOpenEnum.LARGE_ENUM1152,
              LargeOpenEnum.LARGE_ENUM1153,
              LargeOpenEnum.LARGE_ENUM1154,
              LargeOpenEnum.LARGE_ENUM1155,
              LargeOpenEnum.LARGE_ENUM1156,
              LargeOpenEnum.LARGE_ENUM1157,
              LargeOpenEnum.LARGE_ENUM1158,
              LargeOpenEnum.LARGE_ENUM1159,
              LargeOpenEnum.LARGE_ENUM1160,
              LargeOpenEnum.LARGE_ENUM1161,
              LargeOpenEnum.LARGE_ENUM1162,
              LargeOpenEnum.LARGE_ENUM1163,
              LargeOpenEnum.LARGE_ENUM1164,
              LargeOpenEnum.LARGE_ENUM1165,
              LargeOpenEnum.LARGE_ENUM1166,
              LargeOpenEnum.LARGE_ENUM1167,
              LargeOpenEnum.LARGE_ENUM1168,
              LargeOpenEnum.LARGE_ENUM1169,
              LargeOpenEnum.LARGE_ENUM1170,
              LargeOpenEnum.LARGE_ENUM1171,
              LargeOpenEnum.LARGE_ENUM1172,
              LargeOpenEnum.LARGE_ENUM1173,
              LargeOpenEnum.LARGE_ENUM1174,
              LargeOpenEnum.LARGE_ENUM1175,
              LargeOpenEnum.LARGE_ENUM1176,
              LargeOpenEnum.LARGE_ENUM1177,
              LargeOpenEnum.LARGE_ENUM1178,
              LargeOpenEnum.LARGE_ENUM1179,
              LargeOpenEnum.LARGE_ENUM1180,
              LargeOpenEnum.LARGE_ENUM1181,
              LargeOpenEnum.LARGE_ENUM1182,
              LargeOpenEnum.LARGE_ENUM1183,
              LargeOpenEnum.LARGE_ENUM1184,
              LargeOpenEnum.LARGE_ENUM1185,
              LargeOpenEnum.LARGE_ENUM1186,
              LargeOpenEnum.LARGE_ENUM1187,
              LargeOpenEnum.LARGE_ENUM1188,
              LargeOpenEnum.LARGE_ENUM1189,
              LargeOpenEnum.LARGE_ENUM1190,
              LargeOpenEnum.LARGE_ENUM1191,
              LargeOpenEnum.LARGE_ENUM1192,
              LargeOpenEnum.LARGE_ENUM1193,
              LargeOpenEnum.LARGE_ENUM1194,
              LargeOpenEnum.LARGE_ENUM1195,
              LargeOpenEnum.LARGE_ENUM1196,
              LargeOpenEnum.LARGE_ENUM1197,
              LargeOpenEnum.LARGE_ENUM1198,
              LargeOpenEnum.LARGE_ENUM1199,
              LargeOpenEnum.LARGE_ENUM1200,
              LargeOpenEnum.LARGE_ENUM1201,
              LargeOpenEnum.LARGE_ENUM1202,
              LargeOpenEnum.LARGE_ENUM1203,
              LargeOpenEnum.LARGE_ENUM1204,
              LargeOpenEnum.LARGE_ENUM1205,
              LargeOpenEnum.LARGE_ENUM1206,
              LargeOpenEnum.LARGE_ENUM1207,
              LargeOpenEnum.LARGE_ENUM1208,
              LargeOpenEnum.LARGE_ENUM1209,
              LargeOpenEnum.LARGE_ENUM1210,
              LargeOpenEnum.LARGE_ENUM1211,
              LargeOpenEnum.LARGE_ENUM1212,
              LargeOpenEnum.LARGE_ENUM1213,
              LargeOpenEnum.LARGE_ENUM1214,
              LargeOpenEnum.LARGE_ENUM1215,
              LargeOpenEnum.LARGE_ENUM1216,
              LargeOpenEnum.LARGE_ENUM1217,
              LargeOpenEnum.LARGE_ENUM1218,
              LargeOpenEnum.LARGE_ENUM1219,
              LargeOpenEnum.LARGE_ENUM1220,
              LargeOpenEnum.LARGE_ENUM1221,
              LargeOpenEnum.LARGE_ENUM1222,
              LargeOpenEnum.LARGE_ENUM1223,
              LargeOpenEnum.LARGE_ENUM1224,
              LargeOpenEnum.LARGE_ENUM1225,
              LargeOpenEnum.LARGE_ENUM1226,
              LargeOpenEnum.LARGE_ENUM1227,
              LargeOpenEnum.LARGE_ENUM1228,
              LargeOpenEnum.LARGE_ENUM1229,
              LargeOpenEnum.LARGE_ENUM1230,
              LargeOpenEnum.LARGE_ENUM1231,
              LargeOpenEnum.LARGE_ENUM1232,
              LargeOpenEnum.LARGE_ENUM1233,
              LargeOpenEnum.LARGE_ENUM1234,
              LargeOpenEnum.LARGE_ENUM1235,
              LargeOpenEnum.LARGE_ENUM1236,
              LargeOpenEnum.LARGE_ENUM1237,
              LargeOpenEnum.LARGE_ENUM1238,
              LargeOpenEnum.LARGE_ENUM1239,
              LargeOpenEnum.LARGE_ENUM1240,
              LargeOpenEnum.LARGE_ENUM1241,
              LargeOpenEnum.LARGE_ENUM1242,
              LargeOpenEnum.LARGE_ENUM1243,
              LargeOpenEnum.LARGE_ENUM1244,
              LargeOpenEnum.LARGE_ENUM1245,
              LargeOpenEnum.LARGE_ENUM1246,
              LargeOpenEnum.LARGE_ENUM1247,
              LargeOpenEnum.LARGE_ENUM1248,
              LargeOpenEnum.LARGE_ENUM1249,
              LargeOpenEnum.LARGE_ENUM1250,
              LargeOpenEnum.LARGE_ENUM1251,
              LargeOpenEnum.LARGE_ENUM1252,
              LargeOpenEnum.LARGE_ENUM1253,
              LargeOpenEnum.LARGE_ENUM1254,
              LargeOpenEnum.LARGE_ENUM1255,
              LargeOpenEnum.LARGE_ENUM1256,
              LargeOpenEnum.LARGE_ENUM1257,
              LargeOpenEnum.LARGE_ENUM1258,
              LargeOpenEnum.LARGE_ENUM1259,
              LargeOpenEnum.LARGE_ENUM1260,
              LargeOpenEnum.LARGE_ENUM1261,
              LargeOpenEnum.LARGE_ENUM1262,
              LargeOpenEnum.LARGE_ENUM1263,
              LargeOpenEnum.LARGE_ENUM1264,
              LargeOpenEnum.LARGE_ENUM1265,
              LargeOpenEnum.LARGE_ENUM1266,
              LargeOpenEnum.LARGE_ENUM1267,
              LargeOpenEnum.LARGE_ENUM1268,
              LargeOpenEnum.LARGE_ENUM1269,
              LargeOpenEnum.LARGE_ENUM1270,
              LargeOpenEnum.LARGE_ENUM1271,
              LargeOpenEnum.LARGE_ENUM1272,
              LargeOpenEnum.LARGE_ENUM1273,
              LargeOpenEnum.LARGE_ENUM1274,
              LargeOpenEnum.LARGE_ENUM1275,
              LargeOpenEnum.LARGE_ENUM1276,
              LargeOpenEnum.LARGE_ENUM1277,
              LargeOpenEnum.LARGE_ENUM1278,
              LargeOpenEnum.LARGE_ENUM1279,
              LargeOpenEnum.LARGE_ENUM1280,
              LargeOpenEnum.LARGE_ENUM1281,
              LargeOpenEnum.LARGE_ENUM1282,
              LargeOpenEnum.LARGE_ENUM1283,
              LargeOpenEnum.LARGE_ENUM1284,
              LargeOpenEnum.LARGE_ENUM1285,
              LargeOpenEnum.LARGE_ENUM1286,
              LargeOpenEnum.LARGE_ENUM1287,
              LargeOpenEnum.LARGE_ENUM1288,
              LargeOpenEnum.LARGE_ENUM1289,
              LargeOpenEnum.LARGE_ENUM1290,
              LargeOpenEnum.LARGE_ENUM1291,
              LargeOpenEnum.LARGE_ENUM1292,
              LargeOpenEnum.LARGE_ENUM1293,
              LargeOpenEnum.LARGE_ENUM1294,
              LargeOpenEnum.LARGE_ENUM1295,
              LargeOpenEnum.LARGE_ENUM1296,
              LargeOpenEnum.LARGE_ENUM1297,
              LargeOpenEnum.LARGE_ENUM1298,
              LargeOpenEnum.LARGE_ENUM1299,
              LargeOpenEnum.LARGE_ENUM1300,
              LargeOpenEnum.LARGE_ENUM1301,
              LargeOpenEnum.LARGE_ENUM1302,
              LargeOpenEnum.LARGE_ENUM1303,
              LargeOpenEnum.LARGE_ENUM1304,
              LargeOpenEnum.LARGE_ENUM1305,
              LargeOpenEnum.LARGE_ENUM1306,
              LargeOpenEnum.LARGE_ENUM1307,
              LargeOpenEnum.LARGE_ENUM1308,
              LargeOpenEnum.LARGE_ENUM1309,
              LargeOpenEnum.LARGE_ENUM1310,
              LargeOpenEnum.LARGE_ENUM1311,
              LargeOpenEnum.LARGE_ENUM1312,
              LargeOpenEnum.LARGE_ENUM1313,
              LargeOpenEnum.LARGE_ENUM1314,
              LargeOpenEnum.LARGE_ENUM1315,
              LargeOpenEnum.LARGE_ENUM1316,
              LargeOpenEnum.LARGE_ENUM1317,
              LargeOpenEnum.LARGE_ENUM1318,
              LargeOpenEnum.LARGE_ENUM1319,
              LargeOpenEnum.LARGE_ENUM1320,
              LargeOpenEnum.LARGE_ENUM1321,
              LargeOpenEnum.LARGE_ENUM1322,
              LargeOpenEnum.LARGE_ENUM1323,
              LargeOpenEnum.LARGE_ENUM1324,
              LargeOpenEnum.LARGE_ENUM1325,
              LargeOpenEnum.LARGE_ENUM1326,
              LargeOpenEnum.LARGE_ENUM1327,
              LargeOpenEnum.LARGE_ENUM1328,
              LargeOpenEnum.LARGE_ENUM1329,
              LargeOpenEnum.LARGE_ENUM1330,
              LargeOpenEnum.LARGE_ENUM1331,
              LargeOpenEnum.LARGE_ENUM1332,
              LargeOpenEnum.LARGE_ENUM1333,
              LargeOpenEnum.LARGE_ENUM1334,
              LargeOpenEnum.LARGE_ENUM1335,
              LargeOpenEnum.LARGE_ENUM1336,
              LargeOpenEnum.LARGE_ENUM1337,
              LargeOpenEnum.LARGE_ENUM1338,
              LargeOpenEnum.LARGE_ENUM1339,
              LargeOpenEnum.LARGE_ENUM1340,
              LargeOpenEnum.LARGE_ENUM1341,
              LargeOpenEnum.LARGE_ENUM1342,
              LargeOpenEnum.LARGE_ENUM1343,
              LargeOpenEnum.LARGE_ENUM1344,
              LargeOpenEnum.LARGE_ENUM1345,
              LargeOpenEnum.LARGE_ENUM1346,
              LargeOpenEnum.LARGE_ENUM1347,
              LargeOpenEnum.LARGE_ENUM1348,
              LargeOpenEnum.LARGE_ENUM1349,
              LargeOpenEnum.LARGE_ENUM1350,
              LargeOpenEnum.LARGE_ENUM1351,
              LargeOpenEnum.LARGE_ENUM1352,
              LargeOpenEnum.LARGE_ENUM1353,
              LargeOpenEnum.LARGE_ENUM1354,
              LargeOpenEnum.LARGE_ENUM1355,
              LargeOpenEnum.LARGE_ENUM1356,
              LargeOpenEnum.LARGE_ENUM1357,
              LargeOpenEnum.LARGE_ENUM1358,
              LargeOpenEnum.LARGE_ENUM1359,
              LargeOpenEnum.LARGE_ENUM1360,
              LargeOpenEnum.LARGE_ENUM1361,
              LargeOpenEnum.LARGE_ENUM1362,
              LargeOpenEnum.LARGE_ENUM1363,
              LargeOpenEnum.LARGE_ENUM1364,
              LargeOpenEnum.LARGE_ENUM1365,
              LargeOpenEnum.LARGE_ENUM1366,
              LargeOpenEnum.LARGE_ENUM1367,
              LargeOpenEnum.LARGE_ENUM1368,
              LargeOpenEnum.LARGE_ENUM1369,
              LargeOpenEnum.LARGE_ENUM1370,
              LargeOpenEnum.LARGE_ENUM1371,
              LargeOpenEnum.LARGE_ENUM1372,
              LargeOpenEnum.LARGE_ENUM1373,
              LargeOpenEnum.LARGE_ENUM1374,
              LargeOpenEnum.LARGE_ENUM1375,
              LargeOpenEnum.LARGE_ENUM1376,
              LargeOpenEnum.LARGE_ENUM1377,
              LargeOpenEnum.LARGE_ENUM1378,
              LargeOpenEnum.LARGE_ENUM1379,
              LargeOpenEnum.LARGE_ENUM1380,
              LargeOpenEnum.LARGE_ENUM1381,
              LargeOpenEnum.LARGE_ENUM1382,
              LargeOpenEnum.LARGE_ENUM1383,
              LargeOpenEnum.LARGE_ENUM1384,
              LargeOpenEnum.LARGE_ENUM1385,
              LargeOpenEnum.LARGE_ENUM1386,
              LargeOpenEnum.LARGE_ENUM1387,
              LargeOpenEnum.LARGE_ENUM1388,
              LargeOpenEnum.LARGE_ENUM1389,
              LargeOpenEnum.LARGE_ENUM1390,
              LargeOpenEnum.LARGE_ENUM1391,
              LargeOpenEnum.LARGE_ENUM1392,
              LargeOpenEnum.LARGE_ENUM1393,
              LargeOpenEnum.LARGE_ENUM1394,
              LargeOpenEnum.LARGE_ENUM1395,
              LargeOpenEnum.LARGE_ENUM1396,
              LargeOpenEnum.LARGE_ENUM1397,
              LargeOpenEnum.LARGE_ENUM1398,
              LargeOpenEnum.LARGE_ENUM1399,
              LargeOpenEnum.LARGE_ENUM1400,
              LargeOpenEnum.LARGE_ENUM1401,
              LargeOpenEnum.LARGE_ENUM1402,
              LargeOpenEnum.LARGE_ENUM1403,
              LargeOpenEnum.LARGE_ENUM1404,
              LargeOpenEnum.LARGE_ENUM1405,
              LargeOpenEnum.LARGE_ENUM1406,
              LargeOpenEnum.LARGE_ENUM1407,
              LargeOpenEnum.LARGE_ENUM1408,
              LargeOpenEnum.LARGE_ENUM1409,
              LargeOpenEnum.LARGE_ENUM1410,
              LargeOpenEnum.LARGE_ENUM1411,
              LargeOpenEnum.LARGE_ENUM1412,
              LargeOpenEnum.LARGE_ENUM1413,
              LargeOpenEnum.LARGE_ENUM1414,
              LargeOpenEnum.LARGE_ENUM1415,
              LargeOpenEnum.LARGE_ENUM1416,
              LargeOpenEnum.LARGE_ENUM1417,
              LargeOpenEnum.LARGE_ENUM1418,
              LargeOpenEnum.LARGE_ENUM1419,
              LargeOpenEnum.LARGE_ENUM1420,
              LargeOpenEnum.LARGE_ENUM1421,
              LargeOpenEnum.LARGE_ENUM1422,
              LargeOpenEnum.LARGE_ENUM1423,
              LargeOpenEnum.LARGE_ENUM1424,
              LargeOpenEnum.LARGE_ENUM1425,
              LargeOpenEnum.LARGE_ENUM1426,
              LargeOpenEnum.LARGE_ENUM1427,
              LargeOpenEnum.LARGE_ENUM1428,
              LargeOpenEnum.LARGE_ENUM1429,
              LargeOpenEnum.LARGE_ENUM1430,
              LargeOpenEnum.LARGE_ENUM1431,
              LargeOpenEnum.LARGE_ENUM1432,
              LargeOpenEnum.LARGE_ENUM1433,
              LargeOpenEnum.LARGE_ENUM1434,
              LargeOpenEnum.LARGE_ENUM1435,
              LargeOpenEnum.LARGE_ENUM1436,
              LargeOpenEnum.LARGE_ENUM1437,
              LargeOpenEnum.LARGE_ENUM1438,
              LargeOpenEnum.LARGE_ENUM1439,
              LargeOpenEnum.LARGE_ENUM1440,
              LargeOpenEnum.LARGE_ENUM1441,
              LargeOpenEnum.LARGE_ENUM1442,
              LargeOpenEnum.LARGE_ENUM1443,
              LargeOpenEnum.LARGE_ENUM1444,
              LargeOpenEnum.LARGE_ENUM1445,
              LargeOpenEnum.LARGE_ENUM1446,
              LargeOpenEnum.LARGE_ENUM1447,
              LargeOpenEnum.LARGE_ENUM1448,
              LargeOpenEnum.LARGE_ENUM1449,
              LargeOpenEnum.LARGE_ENUM1450,
              LargeOpenEnum.LARGE_ENUM1451,
              LargeOpenEnum.LARGE_ENUM1452,
              LargeOpenEnum.LARGE_ENUM1453,
              LargeOpenEnum.LARGE_ENUM1454,
              LargeOpenEnum.LARGE_ENUM1455,
              LargeOpenEnum.LARGE_ENUM1456,
              LargeOpenEnum.LARGE_ENUM1457,
              LargeOpenEnum.LARGE_ENUM1458,
              LargeOpenEnum.LARGE_ENUM1459,
              LargeOpenEnum.LARGE_ENUM1460,
              LargeOpenEnum.LARGE_ENUM1461,
              LargeOpenEnum.LARGE_ENUM1462,
              LargeOpenEnum.LARGE_ENUM1463,
              LargeOpenEnum.LARGE_ENUM1464,
              LargeOpenEnum.LARGE_ENUM1465,
              LargeOpenEnum.LARGE_ENUM1466,
              LargeOpenEnum.LARGE_ENUM1467,
              LargeOpenEnum.LARGE_ENUM1468,
              LargeOpenEnum.LARGE_ENUM1469,
              LargeOpenEnum.LARGE_ENUM1470,
              LargeOpenEnum.LARGE_ENUM1471,
              LargeOpenEnum.LARGE_ENUM1472,
              LargeOpenEnum.LARGE_ENUM1473,
              LargeOpenEnum.LARGE_ENUM1474,
              LargeOpenEnum.LARGE_ENUM1475,
              LargeOpenEnum.LARGE_ENUM1476,
              LargeOpenEnum.LARGE_ENUM1477,
              LargeOpenEnum.LARGE_ENUM1478,
              LargeOpenEnum.LARGE_ENUM1479,
              LargeOpenEnum.LARGE_ENUM1480,
              LargeOpenEnum.LARGE_ENUM1481,
              LargeOpenEnum.LARGE_ENUM1482,
              LargeOpenEnum.LARGE_ENUM1483,
              LargeOpenEnum.LARGE_ENUM1484,
              LargeOpenEnum.LARGE_ENUM1485,
              LargeOpenEnum.LARGE_ENUM1486,
              LargeOpenEnum.LARGE_ENUM1487,
              LargeOpenEnum.LARGE_ENUM1488,
              LargeOpenEnum.LARGE_ENUM1489,
              LargeOpenEnum.LARGE_ENUM1490,
              LargeOpenEnum.LARGE_ENUM1491,
              LargeOpenEnum.LARGE_ENUM1492,
              LargeOpenEnum.LARGE_ENUM1493,
              LargeOpenEnum.LARGE_ENUM1494,
              LargeOpenEnum.LARGE_ENUM1495,
              LargeOpenEnum.LARGE_ENUM1496,
              LargeOpenEnum.LARGE_ENUM1497,
              LargeOpenEnum.LARGE_ENUM1498,
              LargeOpenEnum.LARGE_ENUM1499,
              LargeOpenEnum.LARGE_ENUM1500,
              LargeOpenEnum.LARGE_ENUM1501,
              LargeOpenEnum.LARGE_ENUM1502,
              LargeOpenEnum.LARGE_ENUM1503,
              LargeOpenEnum.LARGE_ENUM1504,
              LargeOpenEnum.LARGE_ENUM1505,
              LargeOpenEnum.LARGE_ENUM1506,
              LargeOpenEnum.LARGE_ENUM1507,
              LargeOpenEnum.LARGE_ENUM1508,
              LargeOpenEnum.LARGE_ENUM1509,
              LargeOpenEnum.LARGE_ENUM1510,
              LargeOpenEnum.LARGE_ENUM1511,
              LargeOpenEnum.LARGE_ENUM1512,
              LargeOpenEnum.LARGE_ENUM1513,
              LargeOpenEnum.LARGE_ENUM1514,
              LargeOpenEnum.LARGE_ENUM1515,
              LargeOpenEnum.LARGE_ENUM1516,
              LargeOpenEnum.LARGE_ENUM1517,
              LargeOpenEnum.LARGE_ENUM1518,
              LargeOpenEnum.LARGE_ENUM1519,
              LargeOpenEnum.LARGE_ENUM1520,
              LargeOpenEnum.LARGE_ENUM1521,
              LargeOpenEnum.LARGE_ENUM1522,
              LargeOpenEnum.LARGE_ENUM1523,
              LargeOpenEnum.LARGE_ENUM1524,
              LargeOpenEnum.LARGE_ENUM1525,
              LargeOpenEnum.LARGE_ENUM1526,
              LargeOpenEnum.LARGE_ENUM1527,
              LargeOpenEnum.LARGE_ENUM1528,
              LargeOpenEnum.LARGE_ENUM1529,
              LargeOpenEnum.LARGE_ENUM1530,
              LargeOpenEnum.LARGE_ENUM1531,
              LargeOpenEnum.LARGE_ENUM1532,
              LargeOpenEnum.LARGE_ENUM1533,
              LargeOpenEnum.LARGE_ENUM1534,
              LargeOpenEnum.LARGE_ENUM1535,
              LargeOpenEnum.LARGE_ENUM1536,
              LargeOpenEnum.LARGE_ENUM1537,
              LargeOpenEnum.LARGE_ENUM1538,
              LargeOpenEnum.LARGE_ENUM1539,
              LargeOpenEnum.LARGE_ENUM1540,
              LargeOpenEnum.LARGE_ENUM1541,
              LargeOpenEnum.LARGE_ENUM1542,
              LargeOpenEnum.LARGE_ENUM1543,
              LargeOpenEnum.LARGE_ENUM1544,
              LargeOpenEnum.LARGE_ENUM1545,
              LargeOpenEnum.LARGE_ENUM1546,
              LargeOpenEnum.LARGE_ENUM1547,
              LargeOpenEnum.LARGE_ENUM1548,
              LargeOpenEnum.LARGE_ENUM1549,
              LargeOpenEnum.LARGE_ENUM1550,
              LargeOpenEnum.LARGE_ENUM1551,
              LargeOpenEnum.LARGE_ENUM1552,
              LargeOpenEnum.LARGE_ENUM1553,
              LargeOpenEnum.LARGE_ENUM1554,
              LargeOpenEnum.LARGE_ENUM1555,
              LargeOpenEnum.LARGE_ENUM1556,
              LargeOpenEnum.LARGE_ENUM1557,
              LargeOpenEnum.LARGE_ENUM1558,
              LargeOpenEnum.LARGE_ENUM1559,
              LargeOpenEnum.LARGE_ENUM1560,
              LargeOpenEnum.LARGE_ENUM1561,
              LargeOpenEnum.LARGE_ENUM1562,
              LargeOpenEnum.LARGE_ENUM1563,
              LargeOpenEnum.LARGE_ENUM1564,
              LargeOpenEnum.LARGE_ENUM1565,
              LargeOpenEnum.LARGE_ENUM1566,
              LargeOpenEnum.LARGE_ENUM1567,
              LargeOpenEnum.LARGE_ENUM1568,
              LargeOpenEnum.LARGE_ENUM1569,
              LargeOpenEnum.LARGE_ENUM1570,
              LargeOpenEnum.LARGE_ENUM1571,
              LargeOpenEnum.LARGE_ENUM1572,
              LargeOpenEnum.LARGE_ENUM1573,
              LargeOpenEnum.LARGE_ENUM1574,
              LargeOpenEnum.LARGE_ENUM1575,
              LargeOpenEnum.LARGE_ENUM1576,
              LargeOpenEnum.LARGE_ENUM1577,
              LargeOpenEnum.LARGE_ENUM1578,
              LargeOpenEnum.LARGE_ENUM1579,
              LargeOpenEnum.LARGE_ENUM1580,
              LargeOpenEnum.LARGE_ENUM1581,
              LargeOpenEnum.LARGE_ENUM1582,
              LargeOpenEnum.LARGE_ENUM1583,
              LargeOpenEnum.LARGE_ENUM1584,
              LargeOpenEnum.LARGE_ENUM1585,
              LargeOpenEnum.LARGE_ENUM1586,
              LargeOpenEnum.LARGE_ENUM1587,
              LargeOpenEnum.LARGE_ENUM1588,
              LargeOpenEnum.LARGE_ENUM1589,
              LargeOpenEnum.LARGE_ENUM1590,
              LargeOpenEnum.LARGE_ENUM1591,
              LargeOpenEnum.LARGE_ENUM1592,
              LargeOpenEnum.LARGE_ENUM1593,
              LargeOpenEnum.LARGE_ENUM1594,
              LargeOpenEnum.LARGE_ENUM1595,
              LargeOpenEnum.LARGE_ENUM1596,
              LargeOpenEnum.LARGE_ENUM1597,
              LargeOpenEnum.LARGE_ENUM1598,
              LargeOpenEnum.LARGE_ENUM1599,
              LargeOpenEnum.LARGE_ENUM1600,
              LargeOpenEnum.LARGE_ENUM1601,
              LargeOpenEnum.LARGE_ENUM1602,
              LargeOpenEnum.LARGE_ENUM1603,
              LargeOpenEnum.LARGE_ENUM1604,
              LargeOpenEnum.LARGE_ENUM1605,
              LargeOpenEnum.LARGE_ENUM1606,
              LargeOpenEnum.LARGE_ENUM1607,
              LargeOpenEnum.LARGE_ENUM1608,
              LargeOpenEnum.LARGE_ENUM1609,
              LargeOpenEnum.LARGE_ENUM1610,
              LargeOpenEnum.LARGE_ENUM1611,
              LargeOpenEnum.LARGE_ENUM1612,
              LargeOpenEnum.LARGE_ENUM1613,
              LargeOpenEnum.LARGE_ENUM1614,
              LargeOpenEnum.LARGE_ENUM1615,
              LargeOpenEnum.LARGE_ENUM1616,
              LargeOpenEnum.LARGE_ENUM1617,
              LargeOpenEnum.LARGE_ENUM1618,
              LargeOpenEnum.LARGE_ENUM1619,
              LargeOpenEnum.LARGE_ENUM1620,
              LargeOpenEnum.LARGE_ENUM1621,
              LargeOpenEnum.LARGE_ENUM1622,
              LargeOpenEnum.LARGE_ENUM1623,
              LargeOpenEnum.LARGE_ENUM1624,
              LargeOpenEnum.LARGE_ENUM1625,
              LargeOpenEnum.LARGE_ENUM1626,
              LargeOpenEnum.LARGE_ENUM1627,
              LargeOpenEnum.LARGE_ENUM1628,
              LargeOpenEnum.LARGE_ENUM1629,
              LargeOpenEnum.LARGE_ENUM1630,
              LargeOpenEnum.LARGE_ENUM1631,
              LargeOpenEnum.LARGE_ENUM1632,
              LargeOpenEnum.LARGE_ENUM1633,
              LargeOpenEnum.LARGE_ENUM1634,
              LargeOpenEnum.LARGE_ENUM1635,
              LargeOpenEnum.LARGE_ENUM1636,
              LargeOpenEnum.LARGE_ENUM1637,
              LargeOpenEnum.LARGE_ENUM1638,
              LargeOpenEnum.LARGE_ENUM1639,
              LargeOpenEnum.LARGE_ENUM1640,
              LargeOpenEnum.LARGE_ENUM1641,
              LargeOpenEnum.LARGE_ENUM1642,
              LargeOpenEnum.LARGE_ENUM1643,
              LargeOpenEnum.LARGE_ENUM1644,
              LargeOpenEnum.LARGE_ENUM1645,
              LargeOpenEnum.LARGE_ENUM1646,
              LargeOpenEnum.LARGE_ENUM1647,
              LargeOpenEnum.LARGE_ENUM1648,
              LargeOpenEnum.LARGE_ENUM1649,
              LargeOpenEnum.LARGE_ENUM1650,
              LargeOpenEnum.LARGE_ENUM1651,
              LargeOpenEnum.LARGE_ENUM1652,
              LargeOpenEnum.LARGE_ENUM1653,
              LargeOpenEnum.LARGE_ENUM1654,
              LargeOpenEnum.LARGE_ENUM1655,
              LargeOpenEnum.LARGE_ENUM1656,
              LargeOpenEnum.LARGE_ENUM1657,
              LargeOpenEnum.LARGE_ENUM1658,
              LargeOpenEnum.LARGE_ENUM1659,
              LargeOpenEnum.LARGE_ENUM1660,
              LargeOpenEnum.LARGE_ENUM1661,
              LargeOpenEnum.LARGE_ENUM1662,
              LargeOpenEnum.LARGE_ENUM1663,
              LargeOpenEnum.LARGE_ENUM1664,
              LargeOpenEnum.LARGE_ENUM1665,
              LargeOpenEnum.LARGE_ENUM1666,
              LargeOpenEnum.LARGE_ENUM1667,
              LargeOpenEnum.LARGE_ENUM1668,
              LargeOpenEnum.LARGE_ENUM1669,
              LargeOpenEnum.LARGE_ENUM1670,
              LargeOpenEnum.LARGE_ENUM1671,
              LargeOpenEnum.LARGE_ENUM1672,
              LargeOpenEnum.LARGE_ENUM1673,
              LargeOpenEnum.LARGE_ENUM1674,
              LargeOpenEnum.LARGE_ENUM1675,
              LargeOpenEnum.LARGE_ENUM1676,
              LargeOpenEnum.LARGE_ENUM1677,
              LargeOpenEnum.LARGE_ENUM1678,
              LargeOpenEnum.LARGE_ENUM1679,
              LargeOpenEnum.LARGE_ENUM1680,
              LargeOpenEnum.LARGE_ENUM1681,
              LargeOpenEnum.LARGE_ENUM1682,
              LargeOpenEnum.LARGE_ENUM1683,
              LargeOpenEnum.LARGE_ENUM1684,
              LargeOpenEnum.LARGE_ENUM1685,
              LargeOpenEnum.LARGE_ENUM1686,
              LargeOpenEnum.LARGE_ENUM1687,
              LargeOpenEnum.LARGE_ENUM1688,
              LargeOpenEnum.LARGE_ENUM1689,
              LargeOpenEnum.LARGE_ENUM1690,
              LargeOpenEnum.LARGE_ENUM1691,
              LargeOpenEnum.LARGE_ENUM1692,
              LargeOpenEnum.LARGE_ENUM1693,
              LargeOpenEnum.LARGE_ENUM1694,
              LargeOpenEnum.LARGE_ENUM1695,
              LargeOpenEnum.LARGE_ENUM1696,
              LargeOpenEnum.LARGE_ENUM1697,
              LargeOpenEnum.LARGE_ENUM1698,
              LargeOpenEnum.LARGE_ENUM1699,
              LargeOpenEnum.LARGE_ENUM1700,
              LargeOpenEnum.LARGE_ENUM1701,
              LargeOpenEnum.LARGE_ENUM1702,
              LargeOpenEnum.LARGE_ENUM1703,
              LargeOpenEnum.LARGE_ENUM1704,
              LargeOpenEnum.LARGE_ENUM1705,
              LargeOpenEnum.LARGE_ENUM1706,
              LargeOpenEnum.LARGE_ENUM1707,
              LargeOpenEnum.LARGE_ENUM1708,
              LargeOpenEnum.LARGE_ENUM1709,
              LargeOpenEnum.LARGE_ENUM1710,
              LargeOpenEnum.LARGE_ENUM1711,
              LargeOpenEnum.LARGE_ENUM1712,
              LargeOpenEnum.LARGE_ENUM1713,
              LargeOpenEnum.LARGE_ENUM1714,
              LargeOpenEnum.LARGE_ENUM1715,
              LargeOpenEnum.LARGE_ENUM1716,
              LargeOpenEnum.LARGE_ENUM1717,
              LargeOpenEnum.LARGE_ENUM1718,
              LargeOpenEnum.LARGE_ENUM1719,
              LargeOpenEnum.LARGE_ENUM1720,
              LargeOpenEnum.LARGE_ENUM1721,
              LargeOpenEnum.LARGE_ENUM1722,
              LargeOpenEnum.LARGE_ENUM1723,
              LargeOpenEnum.LARGE_ENUM1724,
              LargeOpenEnum.LARGE_ENUM1725,
              LargeOpenEnum.LARGE_ENUM1726,
              LargeOpenEnum.LARGE_ENUM1727,
              LargeOpenEnum.LARGE_ENUM1728,
              LargeOpenEnum.LARGE_ENUM1729,
              LargeOpenEnum.LARGE_ENUM1730,
              LargeOpenEnum.LARGE_ENUM1731,
              LargeOpenEnum.LARGE_ENUM1732,
              LargeOpenEnum.LARGE_ENUM1733,
              LargeOpenEnum.LARGE_ENUM1734,
              LargeOpenEnum.LARGE_ENUM1735,
              LargeOpenEnum.LARGE_ENUM1736,
              LargeOpenEnum.LARGE_ENUM1737,
              LargeOpenEnum.LARGE_ENUM1738,
              LargeOpenEnum.LARGE_ENUM1739,
              LargeOpenEnum.LARGE_ENUM1740,
              LargeOpenEnum.LARGE_ENUM1741,
              LargeOpenEnum.LARGE_ENUM1742,
              LargeOpenEnum.LARGE_ENUM1743,
              LargeOpenEnum.LARGE_ENUM1744,
              LargeOpenEnum.LARGE_ENUM1745,
              LargeOpenEnum.LARGE_ENUM1746,
              LargeOpenEnum.LARGE_ENUM1747,
              LargeOpenEnum.LARGE_ENUM1748,
              LargeOpenEnum.LARGE_ENUM1749,
              LargeOpenEnum.LARGE_ENUM1750,
              LargeOpenEnum.LARGE_ENUM1751,
              LargeOpenEnum.LARGE_ENUM1752,
              LargeOpenEnum.LARGE_ENUM1753,
              LargeOpenEnum.LARGE_ENUM1754,
              LargeOpenEnum.LARGE_ENUM1755,
              LargeOpenEnum.LARGE_ENUM1756,
              LargeOpenEnum.LARGE_ENUM1757,
              LargeOpenEnum.LARGE_ENUM1758,
              LargeOpenEnum.LARGE_ENUM1759,
              LargeOpenEnum.LARGE_ENUM1760,
              LargeOpenEnum.LARGE_ENUM1761,
              LargeOpenEnum.LARGE_ENUM1762,
              LargeOpenEnum.LARGE_ENUM1763,
              LargeOpenEnum.LARGE_ENUM1764,
              LargeOpenEnum.LARGE_ENUM1765,
              LargeOpenEnum.LARGE_ENUM1766,
              LargeOpenEnum.LARGE_ENUM1767,
              LargeOpenEnum.LARGE_ENUM1768,
              LargeOpenEnum.LARGE_ENUM1769,
              LargeOpenEnum.LARGE_ENUM1770,
              LargeOpenEnum.LARGE_ENUM1771,
              LargeOpenEnum.LARGE_ENUM1772,
              LargeOpenEnum.LARGE_ENUM1773,
              LargeOpenEnum.LARGE_ENUM1774,
              LargeOpenEnum.LARGE_ENUM1775,
              LargeOpenEnum.LARGE_ENUM1776,
              LargeOpenEnum.LARGE_ENUM1777,
              LargeOpenEnum.LARGE_ENUM1778,
              LargeOpenEnum.LARGE_ENUM1779,
              LargeOpenEnum.LARGE_ENUM1780,
              LargeOpenEnum.LARGE_ENUM1781,
              LargeOpenEnum.LARGE_ENUM1782,
              LargeOpenEnum.LARGE_ENUM1783,
              LargeOpenEnum.LARGE_ENUM1784,
              LargeOpenEnum.LARGE_ENUM1785,
              LargeOpenEnum.LARGE_ENUM1786,
              LargeOpenEnum.LARGE_ENUM1787,
              LargeOpenEnum.LARGE_ENUM1788,
              LargeOpenEnum.LARGE_ENUM1789,
              LargeOpenEnum.LARGE_ENUM1790,
              LargeOpenEnum.LARGE_ENUM1791,
              LargeOpenEnum.LARGE_ENUM1792,
              LargeOpenEnum.LARGE_ENUM1793,
              LargeOpenEnum.LARGE_ENUM1794,
              LargeOpenEnum.LARGE_ENUM1795,
              LargeOpenEnum.LARGE_ENUM1796,
              LargeOpenEnum.LARGE_ENUM1797,
              LargeOpenEnum.LARGE_ENUM1798,
              LargeOpenEnum.LARGE_ENUM1799,
              LargeOpenEnum.LARGE_ENUM1800,
              LargeOpenEnum.LARGE_ENUM1801,
              LargeOpenEnum.LARGE_ENUM1802,
              LargeOpenEnum.LARGE_ENUM1803,
              LargeOpenEnum.LARGE_ENUM1804,
              LargeOpenEnum.LARGE_ENUM1805,
              LargeOpenEnum.LARGE_ENUM1806,
              LargeOpenEnum.LARGE_ENUM1807,
              LargeOpenEnum.LARGE_ENUM1808,
              LargeOpenEnum.LARGE_ENUM1809,
              LargeOpenEnum.LARGE_ENUM1810,
              LargeOpenEnum.LARGE_ENUM1811,
              LargeOpenEnum.LARGE_ENUM1812,
              LargeOpenEnum.LARGE_ENUM1813,
              LargeOpenEnum.LARGE_ENUM1814,
              LargeOpenEnum.LARGE_ENUM1815,
              LargeOpenEnum.LARGE_ENUM1816,
              LargeOpenEnum.LARGE_ENUM1817,
              LargeOpenEnum.LARGE_ENUM1818,
              LargeOpenEnum.LARGE_ENUM1819,
              LargeOpenEnum.LARGE_ENUM1820,
              LargeOpenEnum.LARGE_ENUM1821,
              LargeOpenEnum.LARGE_ENUM1822,
              LargeOpenEnum.LARGE_ENUM1823,
              LargeOpenEnum.LARGE_ENUM1824,
              LargeOpenEnum.LARGE_ENUM1825,
              LargeOpenEnum.LARGE_ENUM1826,
              LargeOpenEnum.LARGE_ENUM1827,
              LargeOpenEnum.LARGE_ENUM1828,
              LargeOpenEnum.LARGE_ENUM1829,
              LargeOpenEnum.LARGE_ENUM1830,
              LargeOpenEnum.LARGE_ENUM1831,
              LargeOpenEnum.LARGE_ENUM1832,
              LargeOpenEnum.LARGE_ENUM1833,
              LargeOpenEnum.LARGE_ENUM1834,
              LargeOpenEnum.LARGE_ENUM1835,
              LargeOpenEnum.LARGE_ENUM1836,
              LargeOpenEnum.LARGE_ENUM1837,
              LargeOpenEnum.LARGE_ENUM1838,
              LargeOpenEnum.LARGE_ENUM1839,
              LargeOpenEnum.LARGE_ENUM1840,
              LargeOpenEnum.LARGE_ENUM1841,
              LargeOpenEnum.LARGE_ENUM1842,
              LargeOpenEnum.LARGE_ENUM1843,
              LargeOpenEnum.LARGE_ENUM1844,
              LargeOpenEnum.LARGE_ENUM1845,
              LargeOpenEnum.LARGE_ENUM1846,
              LargeOpenEnum.LARGE_ENUM1847,
              LargeOpenEnum.LARGE_ENUM1848,
              LargeOpenEnum.LARGE_ENUM1849,
              LargeOpenEnum.LARGE_ENUM1850,
              LargeOpenEnum.LARGE_ENUM1851,
              LargeOpenEnum.LARGE_ENUM1852,
              LargeOpenEnum.LARGE_ENUM1853,
              LargeOpenEnum.LARGE_ENUM1854,
              LargeOpenEnum.LARGE_ENUM1855,
              LargeOpenEnum.LARGE_ENUM1856,
              LargeOpenEnum.LARGE_ENUM1857,
              LargeOpenEnum.LARGE_ENUM1858,
              LargeOpenEnum.LARGE_ENUM1859,
              LargeOpenEnum.LARGE_ENUM1860,
              LargeOpenEnum.LARGE_ENUM1861,
              LargeOpenEnum.LARGE_ENUM1862,
              LargeOpenEnum.LARGE_ENUM1863,
              LargeOpenEnum.LARGE_ENUM1864,
              LargeOpenEnum.LARGE_ENUM1865,
              LargeOpenEnum.LARGE_ENUM1866,
              LargeOpenEnum.LARGE_ENUM1867,
              LargeOpenEnum.LARGE_ENUM1868,
              LargeOpenEnum.LARGE_ENUM1869,
              LargeOpenEnum.LARGE_ENUM1870,
              LargeOpenEnum.LARGE_ENUM1871,
              LargeOpenEnum.LARGE_ENUM1872,
              LargeOpenEnum.LARGE_ENUM1873,
              LargeOpenEnum.LARGE_ENUM1874,
              LargeOpenEnum.LARGE_ENUM1875,
              LargeOpenEnum.LARGE_ENUM1876,
              LargeOpenEnum.LARGE_ENUM1877,
              LargeOpenEnum.LARGE_ENUM1878,
              LargeOpenEnum.LARGE_ENUM1879,
              LargeOpenEnum.LARGE_ENUM1880,
              LargeOpenEnum.LARGE_ENUM1881,
              LargeOpenEnum.LARGE_ENUM1882,
              LargeOpenEnum.LARGE_ENUM1883,
              LargeOpenEnum.LARGE_ENUM1884,
              LargeOpenEnum.LARGE_ENUM1885,
              LargeOpenEnum.LARGE_ENUM1886,
              LargeOpenEnum.LARGE_ENUM1887,
              LargeOpenEnum.LARGE_ENUM1888,
              LargeOpenEnum.LARGE_ENUM1889,
              LargeOpenEnum.LARGE_ENUM1890,
              LargeOpenEnum.LARGE_ENUM1891,
              LargeOpenEnum.LARGE_ENUM1892,
              LargeOpenEnum.LARGE_ENUM1893,
              LargeOpenEnum.LARGE_ENUM1894,
              LargeOpenEnum.LARGE_ENUM1895,
              LargeOpenEnum.LARGE_ENUM1896,
              LargeOpenEnum.LARGE_ENUM1897,
              LargeOpenEnum.LARGE_ENUM1898,
              LargeOpenEnum.LARGE_ENUM1899,
              LargeOpenEnum.LARGE_ENUM1900,
              LargeOpenEnum.LARGE_ENUM1901,
              LargeOpenEnum.LARGE_ENUM1902,
              LargeOpenEnum.LARGE_ENUM1903,
              LargeOpenEnum.LARGE_ENUM1904,
              LargeOpenEnum.LARGE_ENUM1905,
              LargeOpenEnum.LARGE_ENUM1906,
              LargeOpenEnum.LARGE_ENUM1907,
              LargeOpenEnum.LARGE_ENUM1908,
              LargeOpenEnum.LARGE_ENUM1909,
              LargeOpenEnum.LARGE_ENUM1910,
              LargeOpenEnum.LARGE_ENUM1911,
              LargeOpenEnum.LARGE_ENUM1912,
              LargeOpenEnum.LARGE_ENUM1913,
              LargeOpenEnum.LARGE_ENUM1914,
              LargeOpenEnum.LARGE_ENUM1915,
              LargeOpenEnum.LARGE_ENUM1916,
              LargeOpenEnum.LARGE_ENUM1917,
              LargeOpenEnum.LARGE_ENUM1918,
              LargeOpenEnum.LARGE_ENUM1919,
              LargeOpenEnum.LARGE_ENUM1920,
              LargeOpenEnum.LARGE_ENUM1921,
              LargeOpenEnum.LARGE_ENUM1922,
              LargeOpenEnum.LARGE_ENUM1923,
              LargeOpenEnum.LARGE_ENUM1924,
              LargeOpenEnum.LARGE_ENUM1925,
              LargeOpenEnum.LARGE_ENUM1926,
              LargeOpenEnum.LARGE_ENUM1927,
              LargeOpenEnum.LARGE_ENUM1928,
              LargeOpenEnum.LARGE_ENUM1929,
              LargeOpenEnum.LARGE_ENUM1930,
              LargeOpenEnum.LARGE_ENUM1931,
              LargeOpenEnum.LARGE_ENUM1932,
              LargeOpenEnum.LARGE_ENUM1933,
              LargeOpenEnum.LARGE_ENUM1934,
              LargeOpenEnum.LARGE_ENUM1935,
              LargeOpenEnum.LARGE_ENUM1936,
              LargeOpenEnum.LARGE_ENUM1937,
              LargeOpenEnum.LARGE_ENUM1938,
              LargeOpenEnum.LARGE_ENUM1939,
              LargeOpenEnum.LARGE_ENUM1940,
              LargeOpenEnum.LARGE_ENUM1941,
              LargeOpenEnum.LARGE_ENUM1942,
              LargeOpenEnum.LARGE_ENUM1943,
              LargeOpenEnum.LARGE_ENUM1944,
              LargeOpenEnum.LARGE_ENUM1945,
              LargeOpenEnum.LARGE_ENUM1946,
              LargeOpenEnum.LARGE_ENUM1947,
              LargeOpenEnum.LARGE_ENUM1948,
              LargeOpenEnum.LARGE_ENUM1949,
              LargeOpenEnum.LARGE_ENUM1950,
              LargeOpenEnum.LARGE_ENUM1951,
              LargeOpenEnum.LARGE_ENUM1952,
              LargeOpenEnum.LARGE_ENUM1953,
              LargeOpenEnum.LARGE_ENUM1954,
              LargeOpenEnum.LARGE_ENUM1955,
              LargeOpenEnum.LARGE_ENUM1956,
              LargeOpenEnum.LARGE_ENUM1957,
              LargeOpenEnum.LARGE_ENUM1958,
              LargeOpenEnum.LARGE_ENUM1959,
              LargeOpenEnum.LARGE_ENUM1960,
              LargeOpenEnum.LARGE_ENUM1961,
              LargeOpenEnum.LARGE_ENUM1962,
              LargeOpenEnum.LARGE_ENUM1963,
              LargeOpenEnum.LARGE_ENUM1964,
              LargeOpenEnum.LARGE_ENUM1965,
              LargeOpenEnum.LARGE_ENUM1966,
              LargeOpenEnum.LARGE_ENUM1967,
              LargeOpenEnum.LARGE_ENUM1968,
              LargeOpenEnum.LARGE_ENUM1969,
              LargeOpenEnum.LARGE_ENUM1970,
              LargeOpenEnum.LARGE_ENUM1971,
              LargeOpenEnum.LARGE_ENUM1972,
              LargeOpenEnum.LARGE_ENUM1973,
              LargeOpenEnum.LARGE_ENUM1974,
              LargeOpenEnum.LARGE_ENUM1975,
              LargeOpenEnum.LARGE_ENUM1976,
              LargeOpenEnum.LARGE_ENUM1977,
              LargeOpenEnum.LARGE_ENUM1978,
              LargeOpenEnum.LARGE_ENUM1979,
              LargeOpenEnum.LARGE_ENUM1980,
              LargeOpenEnum.LARGE_ENUM1981,
              LargeOpenEnum.LARGE_ENUM1982,
              LargeOpenEnum.LARGE_ENUM1983,
              LargeOpenEnum.LARGE_ENUM1984,
              LargeOpenEnum.LARGE_ENUM1985,
              LargeOpenEnum.LARGE_ENUM1986,
              LargeOpenEnum.LARGE_ENUM1987,
              LargeOpenEnum.LARGE_ENUM1988,
              LargeOpenEnum.LARGE_ENUM1989,
              LargeOpenEnum.LARGE_ENUM1990,
              LargeOpenEnum.LARGE_ENUM1991,
              LargeOpenEnum.LARGE_ENUM1992,
              LargeOpenEnum.LARGE_ENUM1993,
              LargeOpenEnum.LARGE_ENUM1994,
              LargeOpenEnum.LARGE_ENUM1995,
              LargeOpenEnum.LARGE_ENUM1996,
              LargeOpenEnum.LARGE_ENUM1997,
              LargeOpenEnum.LARGE_ENUM1998,
              LargeOpenEnum.LARGE_ENUM1999,
              LargeOpenEnum.LARGE_ENUM2000,
              LargeOpenEnum.UNRECOGNIZED
            });
  }
}
