// class version 50.0 (50)
// access flags 0x21
public class brj {

  // compiled from: ModelBlockDefinition.java

  @Lnet/minecraftforge/fml/relauncher/SideOnly;(value=Lnet/minecraftforge/fml/relauncher/Side;.CLIENT)
  // access flags 0x1
  public INNERCLASS brj$b brj b
  // access flags 0x9
  public static INNERCLASS brj$a brj a
  // access flags 0x9
  public static INNERCLASS brs$a brs a
  // access flags 0x9
  public static INNERCLASS brr$a brr a
  // access flags 0x9
  public static INNERCLASS brw$a brw a
  // access flags 0x9
  public static INNERCLASS bry$a bry a

  // access flags 0x18
  final static Lcom/google/gson/Gson; a
  @Lcom/google/common/annotations/VisibleForTesting;() // invisible

  // access flags 0x12
  // signature Ljava/util/Map<Ljava/lang/String;Lbrr;>;
  // declaration: java.util.Map<java.lang.String, brr>
  private final Ljava/util/Map; b

  // access flags 0x2
  private Lbrw; c

  // access flags 0x9
  public static a(Ljava/io/Reader;)Lbrj;
    ALOAD 0
    GETSTATIC brj.a : Lcom/google/gson/Gson;
    INVOKESTATIC codechicken/lib/model/loader/blockstate/CCBlockStateLoader.handleLoad (Ljava/io/Reader;Lcom/google/gson/Gson;)Lnet/minecraft/client/renderer/block/model/ModelBlockDefinition;
    ARETURN
   L0
    LINENUMBER 37 L0
   FRAME FULL [] [java/lang/Throwable]
    NOP
    NOP
    NOP
    NOP
    NOP
    NOP
    NOP
    ATHROW
   L1
    LOCALVARIABLE reader Ljava/io/Reader; L0 L1 0
    MAXSTACK = 2
    MAXLOCALS = 1

  // access flags 0x1
  // signature (Ljava/util/Map<Ljava/lang/String;Lbrr;>;Lbrw;)V
  // declaration: void <init>(java.util.Map<java.lang.String, brr>, brw)
  public <init>(Ljava/util/Map;Lbrw;)V
   L0
    LINENUMBER 41 L0
    ALOAD 0
    INVOKESPECIAL java/lang/Object.<init> ()V
   L1
    LINENUMBER 32 L1
    ALOAD 0
    INVOKESTATIC com/google/common/collect/Maps.newHashMap ()Ljava/util/HashMap;
    PUTFIELD brj.b : Ljava/util/Map;
   L2
    LINENUMBER 42 L2
    ALOAD 0
    ALOAD 2
    PUTFIELD brj.c : Lbrw;
   L3
    LINENUMBER 43 L3
    ALOAD 0
    GETFIELD brj.b : Ljava/util/Map;
    ALOAD 1
    INVOKEINTERFACE java/util/Map.putAll (Ljava/util/Map;)V
   L4
    LINENUMBER 44 L4
    RETURN
   L5
    LOCALVARIABLE this Lbrj; L0 L5 0
    LOCALVARIABLE variants Ljava/util/Map; L0 L5 1
    // signature Ljava/util/Map<Ljava/lang/String;Lbrr;>;
    // declaration: java.util.Map<java.lang.String, brr>
    LOCALVARIABLE multipartIn Lbrw; L0 L5 2
    MAXSTACK = 2
    MAXLOCALS = 3

  // access flags 0x1
  // signature (Ljava/util/List<Lbrj;>;)V
  // declaration: void <init>(java.util.List<brj>)
  public <init>(Ljava/util/List;)V
   L0
    LINENUMBER 47 L0
    ALOAD 0
    INVOKESPECIAL java/lang/Object.<init> ()V
   L1
    LINENUMBER 32 L1
    ALOAD 0
    INVOKESTATIC com/google/common/collect/Maps.newHashMap ()Ljava/util/HashMap;
    PUTFIELD brj.b : Ljava/util/Map;
   L2
    LINENUMBER 48 L2
    ACONST_NULL
    ASTORE 2
   L3
    LINENUMBER 50 L3
    ALOAD 1
    INVOKEINTERFACE java/util/List.iterator ()Ljava/util/Iterator;
    ASTORE 3
   L4
   FRAME FULL [brj java/util/List brj java/util/Iterator] []
    ALOAD 3
    INVOKEINTERFACE java/util/Iterator.hasNext ()Z
    IFEQ L5
    ALOAD 3
    INVOKEINTERFACE java/util/Iterator.next ()Ljava/lang/Object;
    CHECKCAST brj
    ASTORE 4
   L6
    LINENUMBER 52 L6
    ALOAD 4
    INVOKEVIRTUAL brj.b ()Z
    IFEQ L7
   L8
    LINENUMBER 54 L8
    ALOAD 0
    GETFIELD brj.b : Ljava/util/Map;
    INVOKEINTERFACE java/util/Map.clear ()V
   L9
    LINENUMBER 55 L9
    ALOAD 4
    ASTORE 2
   L7
    LINENUMBER 58 L7
   FRAME FULL [brj java/util/List brj java/util/Iterator brj] []
    ALOAD 0
    GETFIELD brj.b : Ljava/util/Map;
    ALOAD 4
    GETFIELD brj.b : Ljava/util/Map;
    INVOKEINTERFACE java/util/Map.putAll (Ljava/util/Map;)V
   L10
    LINENUMBER 59 L10
    GOTO L4
   L5
    LINENUMBER 61 L5
   FRAME FULL [brj java/util/List brj java/util/Iterator] []
    ALOAD 2
    IFNULL L11
   L12
    LINENUMBER 63 L12
    ALOAD 0
    ALOAD 2
    GETFIELD brj.c : Lbrw;
    PUTFIELD brj.c : Lbrw;
   L11
    LINENUMBER 65 L11
   FRAME FULL [brj java/util/List brj java/util/Iterator] []
    RETURN
   L13
    LOCALVARIABLE modelblockdefinition1 Lbrj; L6 L10 4
    LOCALVARIABLE this Lbrj; L0 L13 0
    LOCALVARIABLE p_i46222_1_ Ljava/util/List; L0 L13 1
    // signature Ljava/util/List<Lbrj;>;
    // declaration: java.util.List<brj>
    LOCALVARIABLE modelblockdefinition Lbrj; L3 L13 2
    MAXSTACK = 2
    MAXLOCALS = 5

  // access flags 0x1
  public b(Ljava/lang/String;)Z
   L0
    LINENUMBER 69 L0
    ALOAD 0
    GETFIELD brj.b : Ljava/util/Map;
    ALOAD 1
    INVOKEINTERFACE java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object;
    IFNULL L1
    ICONST_1
    GOTO L2
   L1
   FRAME FULL [brj java/lang/String] []
    ICONST_0
   L2
   FRAME FULL [brj java/lang/String] [I]
    IRETURN
   L3
    LOCALVARIABLE this Lbrj; L0 L3 0
    LOCALVARIABLE p_188000_1_ Ljava/lang/String; L0 L3 1
    MAXSTACK = 2
    MAXLOCALS = 2

  // access flags 0x1
  public c(Ljava/lang/String;)Lbrr;
   L0
    LINENUMBER 74 L0
    ALOAD 0
    GETFIELD brj.b : Ljava/util/Map;
    ALOAD 1
    INVOKEINTERFACE java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object;
    CHECKCAST brr
    ASTORE 2
   L1
    LINENUMBER 76 L1
    ALOAD 2
    IFNONNULL L2
   L3
    LINENUMBER 78 L3
    NEW brj$b
    DUP
    ALOAD 0
    INVOKESPECIAL brj$b.<init> (Lbrj;)V
    ATHROW
   L2
    LINENUMBER 82 L2
   FRAME FULL [brj java/lang/String brr] []
    ALOAD 2
    ARETURN
   L4
    LOCALVARIABLE this Lbrj; L0 L4 0
    LOCALVARIABLE p_188004_1_ Ljava/lang/String; L0 L4 1
    LOCALVARIABLE variantlist Lbrr; L1 L4 2
    MAXSTACK = 3
    MAXLOCALS = 3

  // access flags 0x1
  public equals(Ljava/lang/Object;)Z
   L0
    LINENUMBER 88 L0
    ALOAD 0
    ALOAD 1
    IF_ACMPNE L1
   L2
    LINENUMBER 90 L2
    ICONST_1
    IRETURN
   L1
    LINENUMBER 94 L1
   FRAME FULL [brj java/lang/Object] []
    ALOAD 1
    INSTANCEOF brj
    IFEQ L3
   L4
    LINENUMBER 96 L4
    ALOAD 1
    CHECKCAST brj
    ASTORE 2
   L5
    LINENUMBER 98 L5
    ALOAD 0
    GETFIELD brj.b : Ljava/util/Map;
    ALOAD 2
    GETFIELD brj.b : Ljava/util/Map;
    INVOKEINTERFACE java/util/Map.equals (Ljava/lang/Object;)Z
    IFEQ L3
   L6
    LINENUMBER 100 L6
    ALOAD 0
    INVOKEVIRTUAL brj.b ()Z
    IFEQ L7
    ALOAD 0
    GETFIELD brj.c : Lbrw;
    ALOAD 2
    GETFIELD brj.c : Lbrw;
    INVOKEVIRTUAL brw.equals (Ljava/lang/Object;)Z
    GOTO L8
   L7
   FRAME FULL [brj java/lang/Object brj] []
    ALOAD 2
    INVOKEVIRTUAL brj.b ()Z
    IFNE L9
    ICONST_1
    GOTO L8
   L9
   FRAME FULL [brj java/lang/Object brj] []
    ICONST_0
   L8
   FRAME FULL [brj java/lang/Object brj] [I]
    IRETURN
   L3
    LINENUMBER 104 L3
   FRAME FULL [brj java/lang/Object] []
    ICONST_0
    IRETURN
   L10
    LOCALVARIABLE modelblockdefinition Lbrj; L5 L3 2
    LOCALVARIABLE this Lbrj; L0 L10 0
    LOCALVARIABLE p_equals_1_ Ljava/lang/Object; L0 L10 1
    MAXSTACK = 2
    MAXLOCALS = 3

  // access flags 0x1
  public hashCode()I
   L0
    LINENUMBER 110 L0
    BIPUSH 31
    ALOAD 0
    GETFIELD brj.b : Ljava/util/Map;
    INVOKEINTERFACE java/util/Map.hashCode ()I
    IMUL
    ALOAD 0
    INVOKEVIRTUAL brj.b ()Z
    IFEQ L1
    ALOAD 0
    GETFIELD brj.c : Lbrw;
    INVOKEVIRTUAL brw.hashCode ()I
    GOTO L2
   L1
   FRAME FULL [brj] [I]
    ICONST_0
   L2
   FRAME FULL [brj] [I I]
    IADD
    IRETURN
   L3
    LOCALVARIABLE this Lbrj; L0 L3 0
    MAXSTACK = 2
    MAXLOCALS = 1

  // access flags 0x1
  // signature ()Ljava/util/Set<Lbrr;>;
  // declaration: java.util.Set<brr> a()
  public a()Ljava/util/Set;
   L0
    LINENUMBER 115 L0
    ALOAD 0
    GETFIELD brj.b : Ljava/util/Map;
    INVOKEINTERFACE java/util/Map.values ()Ljava/util/Collection;
    INVOKESTATIC com/google/common/collect/Sets.newHashSet (Ljava/lang/Iterable;)Ljava/util/HashSet;
    ASTORE 1
   L1
    LINENUMBER 117 L1
    ALOAD 0
    INVOKEVIRTUAL brj.b ()Z
    IFEQ L2
   L3
    LINENUMBER 119 L3
    ALOAD 1
    ALOAD 0
    GETFIELD brj.c : Lbrw;
    INVOKEVIRTUAL brw.b ()Ljava/util/Set;
    INVOKEINTERFACE java/util/Set.addAll (Ljava/util/Collection;)Z
    POP
   L2
    LINENUMBER 122 L2
   FRAME FULL [brj java/util/HashSet] []
    ALOAD 1
    ARETURN
   L4
    LOCALVARIABLE this Lbrj; L0 L4 0
    LOCALVARIABLE set Ljava/util/Set; L1 L4 1
    // signature Ljava/util/Set<Lbrr;>;
    // declaration: java.util.Set<brr>
    MAXSTACK = 2
    MAXLOCALS = 2

  // access flags 0x1
  public b()Z
   L0
    LINENUMBER 127 L0
    ALOAD 0
    GETFIELD brj.c : Lbrw;
    IFNULL L1
    ICONST_1
    GOTO L2
   L1
   FRAME FULL [brj] []
    ICONST_0
   L2
   FRAME FULL [brj] [I]
    IRETURN
   L3
    LOCALVARIABLE this Lbrj; L0 L3 0
    MAXSTACK = 1
    MAXLOCALS = 1

  // access flags 0x1
  public c()Lbrw;
   L0
    LINENUMBER 132 L0
    ALOAD 0
    GETFIELD brj.c : Lbrw;
    ARETURN
   L1
    LOCALVARIABLE this Lbrj; L0 L1 0
    MAXSTACK = 1
    MAXLOCALS = 1

  // access flags 0x8
  static <clinit>()V
   L0
    LINENUMBER 31 L0
    NEW com/google/gson/GsonBuilder
    DUP
    INVOKESPECIAL com/google/gson/GsonBuilder.<init> ()V
    LDC Lbrj;.class
    NEW brj$a
    DUP
    INVOKESPECIAL brj$a.<init> ()V
    INVOKEVIRTUAL com/google/gson/GsonBuilder.registerTypeAdapter (Ljava/lang/reflect/Type;Ljava/lang/Object;)Lcom/google/gson/GsonBuilder;
    LDC Lbrs;.class
    NEW brs$a
    DUP
    INVOKESPECIAL brs$a.<init> ()V
    INVOKEVIRTUAL com/google/gson/GsonBuilder.registerTypeAdapter (Ljava/lang/reflect/Type;Ljava/lang/Object;)Lcom/google/gson/GsonBuilder;
    LDC Lbrr;.class
    NEW brr$a
    DUP
    INVOKESPECIAL brr$a.<init> ()V
    INVOKEVIRTUAL com/google/gson/GsonBuilder.registerTypeAdapter (Ljava/lang/reflect/Type;Ljava/lang/Object;)Lcom/google/gson/GsonBuilder;
    LDC Lbrw;.class
    NEW brw$a
    DUP
    INVOKESPECIAL brw$a.<init> ()V
    INVOKEVIRTUAL com/google/gson/GsonBuilder.registerTypeAdapter (Ljava/lang/reflect/Type;Ljava/lang/Object;)Lcom/google/gson/GsonBuilder;
    LDC Lbry;.class
    NEW bry$a
    DUP
    INVOKESPECIAL bry$a.<init> ()V
    INVOKEVIRTUAL com/google/gson/GsonBuilder.registerTypeAdapter (Ljava/lang/reflect/Type;Ljava/lang/Object;)Lcom/google/gson/GsonBuilder;
    INVOKEVIRTUAL com/google/gson/GsonBuilder.create ()Lcom/google/gson/Gson;
    PUTSTATIC brj.a : Lcom/google/gson/Gson;
    RETURN
    MAXSTACK = 4
    MAXLOCALS = 0
}
