final class org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker
  super_class: java.lang.Object
{
  private static final java.lang.String ROOT_REFERENCE_TOKEN;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: ""

  private final java.util.Map<org.apache.avro.SchemaCompatibility$ReaderWriter, org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult> mMemoizeMap;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Lorg/apache/avro/SchemaCompatibility$ReaderWriter;Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;>;

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  private static volatile int[] $SWITCH_TABLE$org$apache$avro$Schema$Type;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 193
            ldc Lorg/apache/avro/SchemaCompatibility;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.$assertionsDisabled:Z
         3: .line 194
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
         0: .line 193
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 195
            aload 0 /* this */
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.mMemoizeMap:Ljava/util/Map;
         2: .line 193
            return
        end local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/avro/SchemaCompatibility$ReaderWriterCompatibilityChecker;

  public org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult getCompatibility(org.apache.avro.Schema, org.apache.avro.Schema);
    descriptor: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
        start local 1 // org.apache.avro.Schema reader
        start local 2 // org.apache.avro.Schema writer
         0: .line 209
            new java.util.ArrayDeque
            dup
            invokespecial java.util.ArrayDeque.<init>:()V
            astore 3 /* location */
        start local 3 // java.util.Deque location
         1: .line 210
            aload 0 /* this */
            ldc ""
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.getCompatibility:(Ljava/lang/String;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        end local 3 // java.util.Deque location
        end local 2 // org.apache.avro.Schema writer
        end local 1 // org.apache.avro.Schema reader
        end local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/apache/avro/SchemaCompatibility$ReaderWriterCompatibilityChecker;
            0    2     1    reader  Lorg/apache/avro/Schema;
            0    2     2    writer  Lorg/apache/avro/Schema;
            1    2     3  location  Ljava/util/Deque<Ljava/lang/String;>;
    MethodParameters:
        Name  Flags
      reader  final
      writer  final

  private org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult getCompatibility(java.lang.String, org.apache.avro.Schema, org.apache.avro.Schema, java.util.Deque<java.lang.String>);
    descriptor: (Ljava/lang/String;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=5
        start local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
        start local 1 // java.lang.String referenceToken
        start local 2 // org.apache.avro.Schema reader
        start local 3 // org.apache.avro.Schema writer
        start local 4 // java.util.Deque location
         0: .line 229
            aload 4 /* location */
            aload 1 /* referenceToken */
            invokeinterface java.util.Deque.addFirst:(Ljava/lang/Object;)V
         1: .line 230
            getstatic org.apache.avro.SchemaCompatibility.LOG:Lorg/slf4j/Logger;
            ldc "Checking compatibility of reader {} with writer {}"
            aload 2 /* reader */
            aload 3 /* writer */
            invokeinterface org.slf4j.Logger.debug:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         2: .line 231
            new org.apache.avro.SchemaCompatibility$ReaderWriter
            dup
            aload 2 /* reader */
            aload 3 /* writer */
            invokespecial org.apache.avro.SchemaCompatibility$ReaderWriter.<init>:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;)V
            astore 5 /* pair */
        start local 5 // org.apache.avro.SchemaCompatibility$ReaderWriter pair
         3: .line 232
            aload 0 /* this */
            getfield org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.mMemoizeMap:Ljava/util/Map;
            aload 5 /* pair */
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
            astore 6 /* result */
        start local 6 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
         4: .line 233
            aload 6 /* result */
            ifnull 8
         5: .line 234
            aload 6 /* result */
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.getCompatibility:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityType;
            getstatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityType.RECURSION_IN_PROGRESS:Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityType;
            if_acmpne 11
         6: .line 237
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.compatible:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 6 /* result */
         7: .line 239
            goto 11
         8: .line 241
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriter org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.mMemoizeMap:Ljava/util/Map;
            aload 5 /* pair */
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.recursionInProgress:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         9: .line 242
            aload 0 /* this */
            aload 2 /* reader */
            aload 3 /* writer */
            aload 4 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.calculateCompatibility:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 6 /* result */
        10: .line 243
            aload 0 /* this */
            getfield org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.mMemoizeMap:Ljava/util/Map;
            aload 5 /* pair */
            aload 6 /* result */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        11: .line 245
      StackMap locals:
      StackMap stack:
            aload 4 /* location */
            invokeinterface java.util.Deque.removeFirst:()Ljava/lang/Object;
            pop
        12: .line 246
            aload 6 /* result */
            areturn
        end local 6 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
        end local 5 // org.apache.avro.SchemaCompatibility$ReaderWriter pair
        end local 4 // java.util.Deque location
        end local 3 // org.apache.avro.Schema writer
        end local 2 // org.apache.avro.Schema reader
        end local 1 // java.lang.String referenceToken
        end local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   13     0            this  Lorg/apache/avro/SchemaCompatibility$ReaderWriterCompatibilityChecker;
            0   13     1  referenceToken  Ljava/lang/String;
            0   13     2          reader  Lorg/apache/avro/Schema;
            0   13     3          writer  Lorg/apache/avro/Schema;
            0   13     4        location  Ljava/util/Deque<Ljava/lang/String;>;
            3   13     5            pair  Lorg/apache/avro/SchemaCompatibility$ReaderWriter;
            4   13     6          result  Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    Signature: (Ljava/lang/String;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque<Ljava/lang/String;>;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    MethodParameters:
                Name  Flags
      referenceToken  
      reader          final
      writer          final
      location        final

  private org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult calculateCompatibility(org.apache.avro.Schema, org.apache.avro.Schema, java.util.Deque<java.lang.String>);
    descriptor: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=10, args_size=4
        start local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
        start local 1 // org.apache.avro.Schema reader
        start local 2 // org.apache.avro.Schema writer
        start local 3 // java.util.Deque location
         0: .line 264
            getstatic org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.$assertionsDisabled:Z
            ifne 1
            aload 1 /* reader */
            ifnonnull 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 265
      StackMap locals:
      StackMap stack:
            getstatic org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.$assertionsDisabled:Z
            ifne 2
            aload 2 /* writer */
            ifnonnull 2
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         2: .line 266
      StackMap locals:
      StackMap stack:
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.compatible:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        start local 4 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
         3: .line 268
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            if_acmpne 31
         4: .line 269
            invokestatic org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.$SWITCH_TABLE$org$apache$avro$Schema$Type:()[I
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            iaload
            tableswitch { // 1 - 14
                    1: 14
                    2: 12
                    3: 6
                    4: 9
                    5: 16
                    6: 10
                    7: 5
                    8: 5
                    9: 5
                   10: 5
                   11: 5
                   12: 5
                   13: 5
                   14: 5
              default: 30
          }
         5: .line 278
      StackMap locals: org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
      StackMap stack:
            aload 4 /* result */
            areturn
         6: .line 281
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
         7: .line 282
            aload 0 /* this */
            ldc "items"
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getElementType:()Lorg/apache/avro/Schema;
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getElementType:()Lorg/apache/avro/Schema;
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.getCompatibility:(Ljava/lang/String;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
         8: .line 281
            areturn
         9: .line 285
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            ldc "values"
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getValueType:()Lorg/apache/avro/Schema;
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getValueType:()Lorg/apache/avro/Schema;
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.getCompatibility:(Ljava/lang/String;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        10: .line 288
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.checkSchemaNames:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        11: .line 289
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.checkFixedSize:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        12: .line 292
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.checkSchemaNames:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        13: .line 293
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.checkReaderEnumContainsAllWriterEnumSymbols:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        14: .line 296
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.checkSchemaNames:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        15: .line 297
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.checkReaderWriterRecordFields:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        16: .line 301
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* i */
        start local 5 // int i
        17: .line 302
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 28
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult int top java.util.Iterator
      StackMap stack:
        18: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.avro.Schema
            astore 6 /* writerBranch */
        start local 6 // org.apache.avro.Schema writerBranch
        19: .line 303
            aload 3 /* location */
            iload 5 /* i */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokeinterface java.util.Deque.addFirst:(Ljava/lang/Object;)V
        20: .line 304
            aload 0 /* this */
            aload 1 /* reader */
            aload 6 /* writerBranch */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.getCompatibility:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 8 /* compatibility */
        start local 8 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult compatibility
        21: .line 305
            aload 8 /* compatibility */
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.getCompatibility:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityType;
            getstatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityType.INCOMPATIBLE:Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityType;
            if_acmpne 26
        22: .line 306
            ldc "reader union lacking writer type: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 6 /* writerBranch */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 9 /* message */
        start local 9 // java.lang.String message
        23: .line 307
            aload 4 /* result */
        24: .line 308
            getstatic org.apache.avro.SchemaCompatibility$SchemaIncompatibilityType.MISSING_UNION_BRANCH:Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;
            aload 1 /* reader */
            aload 2 /* writer */
            aload 9 /* message */
            aload 3 /* location */
            invokestatic org.apache.avro.SchemaCompatibility.asList:(Ljava/util/Deque;)Ljava/util/List;
        25: .line 307
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.incompatible:(Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/lang/String;Ljava/util/List;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        end local 9 // java.lang.String message
        26: .line 310
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult int org.apache.avro.Schema java.util.Iterator org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
      StackMap stack:
            aload 3 /* location */
            invokeinterface java.util.Deque.removeFirst:()Ljava/lang/Object;
            pop
        27: .line 311
            iinc 5 /* i */ 1
        end local 8 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult compatibility
        end local 6 // org.apache.avro.Schema writerBranch
        28: .line 302
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult int top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 18
        29: .line 314
            aload 4 /* result */
            areturn
        end local 5 // int i
        30: .line 318
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
      StackMap stack:
            new org.apache.avro.AvroRuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown schema type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.apache.avro.AvroRuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        31: .line 326
      StackMap locals:
      StackMap stack:
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            getstatic org.apache.avro.Schema$Type.UNION:Lorg/apache/avro/Schema$Type;
            if_acmpne 37
        32: .line 327
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 35
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult top java.util.Iterator
      StackMap stack:
        33: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.avro.Schema
            astore 5 /* s */
        start local 5 // org.apache.avro.Schema s
        34: .line 328
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 5 /* s */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.getCompatibility:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        end local 5 // org.apache.avro.Schema s
        35: .line 327
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 33
        36: .line 330
            aload 4 /* result */
            areturn
        37: .line 333
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
      StackMap stack:
            invokestatic org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.$SWITCH_TABLE$org$apache$avro$Schema$Type:()[I
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            iaload
            tableswitch { // 1 - 14
                    1: 62
                    2: 61
                    3: 58
                    4: 59
                    5: 63
                    6: 60
                    7: 55
                    8: 52
                    9: 40
                   10: 41
                   11: 44
                   12: 48
                   13: 39
                   14: 38
              default: 73
          }
        38: .line 335
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        39: .line 337
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        40: .line 339
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        41: .line 341
      StackMap locals:
      StackMap stack:
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            getstatic org.apache.avro.Schema$Type.INT:Lorg/apache/avro/Schema$Type;
            if_acmpne 42
            aload 4 /* result */
            goto 43
      StackMap locals:
      StackMap stack:
        42: aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
      StackMap locals:
      StackMap stack: org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
        43: areturn
        44: .line 344
      StackMap locals:
      StackMap stack:
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            getstatic org.apache.avro.Schema$Type.INT:Lorg/apache/avro/Schema$Type;
            if_acmpeq 45
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            getstatic org.apache.avro.Schema$Type.LONG:Lorg/apache/avro/Schema$Type;
            if_acmpne 46
      StackMap locals:
      StackMap stack:
        45: aload 4 /* result */
            goto 47
        46: .line 345
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
        47: .line 344
      StackMap locals:
      StackMap stack: org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
            areturn
        48: .line 349
      StackMap locals:
      StackMap stack:
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            getstatic org.apache.avro.Schema$Type.INT:Lorg/apache/avro/Schema$Type;
            if_acmpeq 49
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            getstatic org.apache.avro.Schema$Type.LONG:Lorg/apache/avro/Schema$Type;
            if_acmpeq 49
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            getstatic org.apache.avro.Schema$Type.FLOAT:Lorg/apache/avro/Schema$Type;
            if_acmpne 50
        49: .line 350
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            goto 51
        50: .line 351
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
        51: .line 349
      StackMap locals:
      StackMap stack: org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
            areturn
        52: .line 354
      StackMap locals:
      StackMap stack:
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            getstatic org.apache.avro.Schema$Type.STRING:Lorg/apache/avro/Schema$Type;
            if_acmpne 53
            aload 4 /* result */
            goto 54
      StackMap locals:
      StackMap stack:
        53: aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
      StackMap locals:
      StackMap stack: org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
        54: areturn
        55: .line 357
      StackMap locals:
      StackMap stack:
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            getstatic org.apache.avro.Schema$Type.BYTES:Lorg/apache/avro/Schema$Type;
            if_acmpne 56
            aload 4 /* result */
            goto 57
      StackMap locals:
      StackMap stack:
        56: aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
      StackMap locals:
      StackMap stack: org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
        57: areturn
        58: .line 361
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        59: .line 363
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        60: .line 365
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        61: .line 367
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        62: .line 369
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            aload 1 /* reader */
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.typeMismatch:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        63: .line 371
      StackMap locals:
      StackMap stack:
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getTypes:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 68
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult top java.util.Iterator
      StackMap stack:
        64: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.avro.Schema
            astore 5 /* readerBranch */
        start local 5 // org.apache.avro.Schema readerBranch
        65: .line 372
            aload 0 /* this */
            aload 5 /* readerBranch */
            aload 2 /* writer */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.getCompatibility:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 7 /* compatibility */
        start local 7 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult compatibility
        66: .line 373
            aload 7 /* compatibility */
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.getCompatibility:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityType;
            getstatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityType.COMPATIBLE:Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityType;
            if_acmpne 68
        67: .line 374
            aload 4 /* result */
            areturn
        end local 7 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult compatibility
        end local 5 // org.apache.avro.Schema readerBranch
        68: .line 371
      StackMap locals:
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 64
        69: .line 379
            ldc "reader union lacking writer type: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 5 /* message */
        start local 5 // java.lang.String message
        70: .line 380
            aload 4 /* result */
        71: .line 381
            getstatic org.apache.avro.SchemaCompatibility$SchemaIncompatibilityType.MISSING_UNION_BRANCH:Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;
            aload 1 /* reader */
            aload 2 /* writer */
            aload 5 /* message */
            aload 3 /* location */
            invokestatic org.apache.avro.SchemaCompatibility.asList:(Ljava/util/Deque;)Ljava/util/List;
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.incompatible:(Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/lang/String;Ljava/util/List;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
        72: .line 380
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        end local 5 // java.lang.String message
        73: .line 385
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
      StackMap stack:
            new org.apache.avro.AvroRuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unknown schema type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.apache.avro.AvroRuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
        end local 3 // java.util.Deque location
        end local 2 // org.apache.avro.Schema writer
        end local 1 // org.apache.avro.Schema reader
        end local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   74     0           this  Lorg/apache/avro/SchemaCompatibility$ReaderWriterCompatibilityChecker;
            0   74     1         reader  Lorg/apache/avro/Schema;
            0   74     2         writer  Lorg/apache/avro/Schema;
            0   74     3       location  Ljava/util/Deque<Ljava/lang/String;>;
            3   74     4         result  Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
           17   30     5              i  I
           19   28     6   writerBranch  Lorg/apache/avro/Schema;
           21   28     8  compatibility  Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
           23   26     9        message  Ljava/lang/String;
           34   35     5              s  Lorg/apache/avro/Schema;
           65   68     5   readerBranch  Lorg/apache/avro/Schema;
           66   68     7  compatibility  Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
           70   73     5        message  Ljava/lang/String;
    Signature: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque<Ljava/lang/String;>;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    MethodParameters:
          Name  Flags
      reader    final
      writer    final
      location  final

  private org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult checkReaderWriterRecordFields(org.apache.avro.Schema, org.apache.avro.Schema, java.util.Deque<java.lang.String>);
    descriptor: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
        start local 1 // org.apache.avro.Schema reader
        start local 2 // org.apache.avro.Schema writer
        start local 3 // java.util.Deque location
         0: .line 393
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.compatible:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        start local 4 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
         1: .line 394
            aload 3 /* location */
            ldc "fields"
            invokeinterface java.util.Deque.addFirst:(Ljava/lang/Object;)V
         2: .line 397
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getFields:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 19
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult top java.util.Iterator
      StackMap stack:
         3: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.avro.Schema$Field
            astore 5 /* readerField */
        start local 5 // org.apache.avro.Schema$Field readerField
         4: .line 398
            aload 3 /* location */
            aload 5 /* readerField */
            invokevirtual org.apache.avro.Schema$Field.pos:()I
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            invokeinterface java.util.Deque.addFirst:(Ljava/lang/Object;)V
         5: .line 399
            aload 2 /* writer */
            aload 5 /* readerField */
            invokestatic org.apache.avro.SchemaCompatibility.lookupWriterField:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema$Field;)Lorg/apache/avro/Schema$Field;
            astore 7 /* writerField */
        start local 7 // org.apache.avro.Schema$Field writerField
         6: .line 400
            aload 7 /* writerField */
            ifnonnull 17
         7: .line 404
            aload 5 /* readerField */
            invokevirtual org.apache.avro.Schema$Field.hasDefaultValue:()Z
            ifne 18
         8: .line 406
            aload 5 /* readerField */
            invokevirtual org.apache.avro.Schema$Field.schema:()Lorg/apache/avro/Schema;
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            getstatic org.apache.avro.Schema$Type.ENUM:Lorg/apache/avro/Schema$Type;
            if_acmpne 11
            aload 5 /* readerField */
            invokevirtual org.apache.avro.Schema$Field.schema:()Lorg/apache/avro/Schema;
            invokevirtual org.apache.avro.Schema.getEnumDefault:()Ljava/lang/String;
            ifnull 11
         9: .line 407
            aload 4 /* result */
            aload 0 /* this */
            ldc "type"
            aload 5 /* readerField */
            invokevirtual org.apache.avro.Schema$Field.schema:()Lorg/apache/avro/Schema;
            aload 2 /* writer */
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.getCompatibility:(Ljava/lang/String;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        10: .line 408
            goto 18
        11: .line 409
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult org.apache.avro.Schema$Field java.util.Iterator org.apache.avro.Schema$Field
      StackMap stack:
            aload 4 /* result */
        12: .line 410
            getstatic org.apache.avro.SchemaCompatibility$SchemaIncompatibilityType.READER_FIELD_MISSING_DEFAULT_VALUE:Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;
        13: .line 411
            aload 1 /* reader */
            aload 2 /* writer */
            aload 5 /* readerField */
            invokevirtual org.apache.avro.Schema$Field.name:()Ljava/lang/String;
            aload 3 /* location */
            invokestatic org.apache.avro.SchemaCompatibility.asList:(Ljava/util/Deque;)Ljava/util/List;
        14: .line 410
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.incompatible:(Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/lang/String;Ljava/util/List;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
        15: .line 409
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        16: .line 414
            goto 18
        17: .line 415
      StackMap locals:
      StackMap stack:
            aload 4 /* result */
            aload 0 /* this */
            ldc "type"
            aload 5 /* readerField */
            invokevirtual org.apache.avro.Schema$Field.schema:()Lorg/apache/avro/Schema;
            aload 7 /* writerField */
            invokevirtual org.apache.avro.Schema$Field.schema:()Lorg/apache/avro/Schema;
            aload 3 /* location */
            invokevirtual org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.getCompatibility:(Ljava/lang/String;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            invokevirtual org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.mergedWith:(Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        18: .line 418
      StackMap locals:
      StackMap stack:
            aload 3 /* location */
            invokeinterface java.util.Deque.removeFirst:()Ljava/lang/Object;
            pop
        end local 7 // org.apache.avro.Schema$Field writerField
        end local 5 // org.apache.avro.Schema$Field readerField
        19: .line 397
      StackMap locals: org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker org.apache.avro.Schema org.apache.avro.Schema java.util.Deque org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        20: .line 422
            aload 3 /* location */
            invokeinterface java.util.Deque.removeFirst:()Ljava/lang/Object;
            pop
        21: .line 423
            aload 4 /* result */
            areturn
        end local 4 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
        end local 3 // java.util.Deque location
        end local 2 // org.apache.avro.Schema writer
        end local 1 // org.apache.avro.Schema reader
        end local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0         this  Lorg/apache/avro/SchemaCompatibility$ReaderWriterCompatibilityChecker;
            0   22     1       reader  Lorg/apache/avro/Schema;
            0   22     2       writer  Lorg/apache/avro/Schema;
            0   22     3     location  Ljava/util/Deque<Ljava/lang/String;>;
            1   22     4       result  Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            4   19     5  readerField  Lorg/apache/avro/Schema$Field;
            6   19     7  writerField  Lorg/apache/avro/Schema$Field;
    Signature: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque<Ljava/lang/String;>;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    MethodParameters:
          Name  Flags
      reader    final
      writer    final
      location  final

  private org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult checkReaderEnumContainsAllWriterEnumSymbols(org.apache.avro.Schema, org.apache.avro.Schema, java.util.Deque<java.lang.String>);
    descriptor: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
        start local 1 // org.apache.avro.Schema reader
        start local 2 // org.apache.avro.Schema writer
        start local 3 // java.util.Deque location
         0: .line 428
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.compatible:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        start local 4 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
         1: .line 429
            aload 3 /* location */
            ldc "symbols"
            invokeinterface java.util.Deque.addFirst:(Ljava/lang/Object;)V
         2: .line 430
            new java.util.TreeSet
            dup
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getEnumSymbols:()Ljava/util/List;
            invokespecial java.util.TreeSet.<init>:(Ljava/util/Collection;)V
            astore 5 /* symbols */
        start local 5 // java.util.Set symbols
         3: .line 431
            aload 5 /* symbols */
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getEnumSymbols:()Ljava/util/List;
            invokeinterface java.util.Set.removeAll:(Ljava/util/Collection;)Z
            pop
         4: .line 432
            aload 5 /* symbols */
            invokeinterface java.util.Set.isEmpty:()Z
            ifne 12
         5: .line 433
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getEnumDefault:()Ljava/lang/String;
            ifnull 9
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getEnumSymbols:()Ljava/util/List;
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getEnumDefault:()Ljava/lang/String;
            invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
            ifeq 9
         6: .line 434
            aload 5 /* symbols */
            invokeinterface java.util.Set.clear:()V
         7: .line 435
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.compatible:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
         8: .line 436
            goto 12
         9: .line 437
      StackMap locals: org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult java.util.Set
      StackMap stack:
            getstatic org.apache.avro.SchemaCompatibility$SchemaIncompatibilityType.MISSING_ENUM_SYMBOLS:Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;
            aload 1 /* reader */
        10: .line 438
            aload 2 /* writer */
            aload 5 /* symbols */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            aload 3 /* location */
            invokestatic org.apache.avro.SchemaCompatibility.asList:(Ljava/util/Deque;)Ljava/util/List;
        11: .line 437
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.incompatible:(Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/lang/String;Ljava/util/List;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        12: .line 442
      StackMap locals:
      StackMap stack:
            aload 3 /* location */
            invokeinterface java.util.Deque.removeFirst:()Ljava/lang/Object;
            pop
        13: .line 443
            aload 4 /* result */
            areturn
        end local 5 // java.util.Set symbols
        end local 4 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
        end local 3 // java.util.Deque location
        end local 2 // org.apache.avro.Schema writer
        end local 1 // org.apache.avro.Schema reader
        end local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      this  Lorg/apache/avro/SchemaCompatibility$ReaderWriterCompatibilityChecker;
            0   14     1    reader  Lorg/apache/avro/Schema;
            0   14     2    writer  Lorg/apache/avro/Schema;
            0   14     3  location  Ljava/util/Deque<Ljava/lang/String;>;
            1   14     4    result  Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            3   14     5   symbols  Ljava/util/Set<Ljava/lang/String;>;
    Signature: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque<Ljava/lang/String;>;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    MethodParameters:
          Name  Flags
      reader    final
      writer    final
      location  final

  private org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult checkFixedSize(org.apache.avro.Schema, org.apache.avro.Schema, java.util.Deque<java.lang.String>);
    descriptor: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
        start local 1 // org.apache.avro.Schema reader
        start local 2 // org.apache.avro.Schema writer
        start local 3 // java.util.Deque location
         0: .line 448
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.compatible:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        start local 4 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
         1: .line 449
            aload 3 /* location */
            ldc "size"
            invokeinterface java.util.Deque.addFirst:(Ljava/lang/Object;)V
         2: .line 450
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getFixedSize:()I
            istore 5 /* actual */
        start local 5 // int actual
         3: .line 451
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getFixedSize:()I
            istore 6 /* expected */
        start local 6 // int expected
         4: .line 452
            iload 5 /* actual */
            iload 6 /* expected */
            if_icmpeq 9
         5: .line 453
            ldc "expected: %d, found: %d"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            iload 6 /* expected */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iload 5 /* actual */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 7 /* message */
        start local 7 // java.lang.String message
         6: .line 454
            getstatic org.apache.avro.SchemaCompatibility$SchemaIncompatibilityType.FIXED_SIZE_MISMATCH:Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;
            aload 1 /* reader */
            aload 2 /* writer */
         7: .line 455
            aload 7 /* message */
            aload 3 /* location */
            invokestatic org.apache.avro.SchemaCompatibility.asList:(Ljava/util/Deque;)Ljava/util/List;
         8: .line 454
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.incompatible:(Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/lang/String;Ljava/util/List;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        end local 7 // java.lang.String message
         9: .line 458
      StackMap locals: org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult int int
      StackMap stack:
            aload 3 /* location */
            invokeinterface java.util.Deque.removeFirst:()Ljava/lang/Object;
            pop
        10: .line 459
            aload 4 /* result */
            areturn
        end local 6 // int expected
        end local 5 // int actual
        end local 4 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
        end local 3 // java.util.Deque location
        end local 2 // org.apache.avro.Schema writer
        end local 1 // org.apache.avro.Schema reader
        end local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lorg/apache/avro/SchemaCompatibility$ReaderWriterCompatibilityChecker;
            0   11     1    reader  Lorg/apache/avro/Schema;
            0   11     2    writer  Lorg/apache/avro/Schema;
            0   11     3  location  Ljava/util/Deque<Ljava/lang/String;>;
            1   11     4    result  Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            3   11     5    actual  I
            4   11     6  expected  I
            6    9     7   message  Ljava/lang/String;
    Signature: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque<Ljava/lang/String;>;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    MethodParameters:
          Name  Flags
      reader    final
      writer    final
      location  final

  private org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult checkSchemaNames(org.apache.avro.Schema, org.apache.avro.Schema, java.util.Deque<java.lang.String>);
    descriptor: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
        start local 1 // org.apache.avro.Schema reader
        start local 2 // org.apache.avro.Schema writer
        start local 3 // java.util.Deque location
         0: .line 464
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.compatible:()Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        start local 4 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
         1: .line 465
            aload 3 /* location */
            ldc "name"
            invokeinterface java.util.Deque.addFirst:(Ljava/lang/Object;)V
         2: .line 466
            aload 1 /* reader */
            aload 2 /* writer */
            invokestatic org.apache.avro.SchemaCompatibility.schemaNameEquals:(Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;)Z
            ifne 7
         3: .line 467
            ldc "expected: %s"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getFullName:()Ljava/lang/String;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 5 /* message */
        start local 5 // java.lang.String message
         4: .line 468
            getstatic org.apache.avro.SchemaCompatibility$SchemaIncompatibilityType.NAME_MISMATCH:Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;
            aload 1 /* reader */
            aload 2 /* writer */
         5: .line 469
            aload 5 /* message */
            aload 3 /* location */
            invokestatic org.apache.avro.SchemaCompatibility.asList:(Ljava/util/Deque;)Ljava/util/List;
         6: .line 468
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.incompatible:(Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/lang/String;Ljava/util/List;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            astore 4 /* result */
        end local 5 // java.lang.String message
         7: .line 472
      StackMap locals: org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult
      StackMap stack:
            aload 3 /* location */
            invokeinterface java.util.Deque.removeFirst:()Ljava/lang/Object;
            pop
         8: .line 473
            aload 4 /* result */
            areturn
        end local 4 // org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult result
        end local 3 // java.util.Deque location
        end local 2 // org.apache.avro.Schema writer
        end local 1 // org.apache.avro.Schema reader
        end local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/apache/avro/SchemaCompatibility$ReaderWriterCompatibilityChecker;
            0    9     1    reader  Lorg/apache/avro/Schema;
            0    9     2    writer  Lorg/apache/avro/Schema;
            0    9     3  location  Ljava/util/Deque<Ljava/lang/String;>;
            1    9     4    result  Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            4    7     5   message  Ljava/lang/String;
    Signature: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque<Ljava/lang/String;>;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    MethodParameters:
          Name  Flags
      reader    final
      writer    final
      location  final

  private org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult typeMismatch(org.apache.avro.Schema, org.apache.avro.Schema, java.util.Deque<java.lang.String>);
    descriptor: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
        start local 1 // org.apache.avro.Schema reader
        start local 2 // org.apache.avro.Schema writer
        start local 3 // java.util.Deque location
         0: .line 478
            ldc "reader type: %s not compatible with writer type: %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 1 /* reader */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            aastore
            dup
            iconst_1
         1: .line 479
            aload 2 /* writer */
            invokevirtual org.apache.avro.Schema.getType:()Lorg/apache/avro/Schema$Type;
            aastore
         2: .line 478
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            astore 4 /* message */
        start local 4 // java.lang.String message
         3: .line 480
            getstatic org.apache.avro.SchemaCompatibility$SchemaIncompatibilityType.TYPE_MISMATCH:Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;
            aload 1 /* reader */
            aload 2 /* writer */
            aload 4 /* message */
         4: .line 481
            aload 3 /* location */
            invokestatic org.apache.avro.SchemaCompatibility.asList:(Ljava/util/Deque;)Ljava/util/List;
         5: .line 480
            invokestatic org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult.incompatible:(Lorg/apache/avro/SchemaCompatibility$SchemaIncompatibilityType;Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/lang/String;Ljava/util/List;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
            areturn
        end local 4 // java.lang.String message
        end local 3 // java.util.Deque location
        end local 2 // org.apache.avro.Schema writer
        end local 1 // org.apache.avro.Schema reader
        end local 0 // org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/apache/avro/SchemaCompatibility$ReaderWriterCompatibilityChecker;
            0    6     1    reader  Lorg/apache/avro/Schema;
            0    6     2    writer  Lorg/apache/avro/Schema;
            0    6     3  location  Ljava/util/Deque<Ljava/lang/String;>;
            3    6     4   message  Ljava/lang/String;
    Signature: (Lorg/apache/avro/Schema;Lorg/apache/avro/Schema;Ljava/util/Deque<Ljava/lang/String;>;)Lorg/apache/avro/SchemaCompatibility$SchemaCompatibilityResult;
    MethodParameters:
          Name  Flags
      reader    final
      writer    final
      location  final

  static int[] $SWITCH_TABLE$org$apache$avro$Schema$Type();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 193
            getstatic org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.$SWITCH_TABLE$org$apache$avro$Schema$Type:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic org.apache.avro.Schema$Type.values:()[Lorg/apache/avro/Schema$Type;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic org.apache.avro.Schema$Type.ARRAY:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            iconst_3
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic org.apache.avro.Schema$Type.BOOLEAN:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            bipush 13
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic org.apache.avro.Schema$Type.BYTES:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            bipush 8
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic org.apache.avro.Schema$Type.DOUBLE:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            bipush 12
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic org.apache.avro.Schema$Type.ENUM:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            iconst_2
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            getstatic org.apache.avro.Schema$Type.FIXED:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            bipush 6
            iastore
        18: goto 20
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        19: pop
      StackMap locals:
      StackMap stack:
        20: aload 0
            getstatic org.apache.avro.Schema$Type.FLOAT:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            bipush 11
            iastore
        21: goto 23
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        22: pop
      StackMap locals:
      StackMap stack:
        23: aload 0
            getstatic org.apache.avro.Schema$Type.INT:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            bipush 9
            iastore
        24: goto 26
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        25: pop
      StackMap locals:
      StackMap stack:
        26: aload 0
            getstatic org.apache.avro.Schema$Type.LONG:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            bipush 10
            iastore
        27: goto 29
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        28: pop
      StackMap locals:
      StackMap stack:
        29: aload 0
            getstatic org.apache.avro.Schema$Type.MAP:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            iconst_4
            iastore
        30: goto 32
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        31: pop
      StackMap locals:
      StackMap stack:
        32: aload 0
            getstatic org.apache.avro.Schema$Type.NULL:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            bipush 14
            iastore
        33: goto 35
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        34: pop
      StackMap locals:
      StackMap stack:
        35: aload 0
            getstatic org.apache.avro.Schema$Type.RECORD:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            iconst_1
            iastore
        36: goto 38
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        37: pop
      StackMap locals:
      StackMap stack:
        38: aload 0
            getstatic org.apache.avro.Schema$Type.STRING:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            bipush 7
            iastore
        39: goto 41
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        40: pop
      StackMap locals:
      StackMap stack:
        41: aload 0
            getstatic org.apache.avro.Schema$Type.UNION:Lorg/apache/avro/Schema$Type;
            invokevirtual org.apache.avro.Schema$Type.ordinal:()I
            iconst_5
            iastore
        42: goto 44
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        43: pop
      StackMap locals:
      StackMap stack:
        44: aload 0
            dup
            putstatic org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker.$SWITCH_TABLE$org$apache$avro$Schema$Type:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError
          17    18      19  Class java.lang.NoSuchFieldError
          20    21      22  Class java.lang.NoSuchFieldError
          23    24      25  Class java.lang.NoSuchFieldError
          26    27      28  Class java.lang.NoSuchFieldError
          29    30      31  Class java.lang.NoSuchFieldError
          32    33      34  Class java.lang.NoSuchFieldError
          35    36      37  Class java.lang.NoSuchFieldError
          38    39      40  Class java.lang.NoSuchFieldError
          41    42      43  Class java.lang.NoSuchFieldError
}
SourceFile: "SchemaCompatibility.java"
NestHost: org.apache.avro.SchemaCompatibility
InnerClasses:
  public Field = org.apache.avro.Schema$Field of org.apache.avro.Schema
  public final Type = org.apache.avro.Schema$Type of org.apache.avro.Schema
  private final ReaderWriter = org.apache.avro.SchemaCompatibility$ReaderWriter of org.apache.avro.SchemaCompatibility
  private final ReaderWriterCompatibilityChecker = org.apache.avro.SchemaCompatibility$ReaderWriterCompatibilityChecker of org.apache.avro.SchemaCompatibility
  public final SchemaCompatibilityResult = org.apache.avro.SchemaCompatibility$SchemaCompatibilityResult of org.apache.avro.SchemaCompatibility
  public final SchemaCompatibilityType = org.apache.avro.SchemaCompatibility$SchemaCompatibilityType of org.apache.avro.SchemaCompatibility
  public final SchemaIncompatibilityType = org.apache.avro.SchemaCompatibility$SchemaIncompatibilityType of org.apache.avro.SchemaCompatibility