// automatically generated by the FlatBuffers compiler, do not modify

package MyGame.Example;

public final class AnyUniqueAliases {
  private AnyUniqueAliases() { }
  public static final byte NONE = 0;
  public static final byte M = 1;
  public static final byte T = 2;
  public static final byte M2 = 3;

  public static final String[] names = { "NONE", "M", "T", "M2", };

  public static String name(int e) { return names[e]; }
}

