final class org.aspectj.weaver.bcel.ShadowRange extends org.aspectj.weaver.bcel.Range
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: org.aspectj.weaver.bcel.ShadowRange
  super_class: org.aspectj.weaver.bcel.Range
{
  private org.aspectj.weaver.bcel.BcelShadow shadow;
    descriptor: Lorg/aspectj/weaver/bcel/BcelShadow;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.aspectj.apache.bcel.generic.InstructionList);
    descriptor: (Lorg/aspectj/apache/bcel/generic/InstructionList;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.bcel.ShadowRange this
        start local 1 // org.aspectj.apache.bcel.generic.InstructionList body
         0: .line 43
            aload 0 /* this */
            aload 1 /* body */
            invokespecial org.aspectj.weaver.bcel.Range.<init>:(Lorg/aspectj/apache/bcel/generic/InstructionList;)V
         1: .line 44
            return
        end local 1 // org.aspectj.apache.bcel.generic.InstructionList body
        end local 0 // org.aspectj.weaver.bcel.ShadowRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/aspectj/weaver/bcel/ShadowRange;
            0    2     1  body  Lorg/aspectj/apache/bcel/generic/InstructionList;
    MethodParameters:
      Name  Flags
      body  

  protected void associateWithTargets(org.aspectj.apache.bcel.generic.InstructionHandle, org.aspectj.apache.bcel.generic.InstructionHandle);
    descriptor: (Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // org.aspectj.weaver.bcel.ShadowRange this
        start local 1 // org.aspectj.apache.bcel.generic.InstructionHandle start
        start local 2 // org.aspectj.apache.bcel.generic.InstructionHandle end
         0: .line 48
            aload 0 /* this */
            aload 1 /* start */
            putfield org.aspectj.weaver.bcel.ShadowRange.start:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
         1: .line 49
            aload 0 /* this */
            aload 2 /* end */
            putfield org.aspectj.weaver.bcel.ShadowRange.end:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
         2: .line 50
            aload 1 /* start */
            aload 0 /* this */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.addTargeter:(Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
         3: .line 51
            aload 2 /* end */
            aload 0 /* this */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.addTargeter:(Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
         4: .line 52
            return
        end local 2 // org.aspectj.apache.bcel.generic.InstructionHandle end
        end local 1 // org.aspectj.apache.bcel.generic.InstructionHandle start
        end local 0 // org.aspectj.weaver.bcel.ShadowRange this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    5     0   this  Lorg/aspectj/weaver/bcel/ShadowRange;
            0    5     1  start  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            0    5     2    end  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
    MethodParameters:
       Name  Flags
      start  
      end    

  public void associateWithShadow(org.aspectj.weaver.bcel.BcelShadow);
    descriptor: (Lorg/aspectj/weaver/bcel/BcelShadow;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.aspectj.weaver.bcel.ShadowRange this
        start local 1 // org.aspectj.weaver.bcel.BcelShadow shadow
         0: .line 55
            aload 0 /* this */
            aload 1 /* shadow */
            putfield org.aspectj.weaver.bcel.ShadowRange.shadow:Lorg/aspectj/weaver/bcel/BcelShadow;
         1: .line 56
            aload 1 /* shadow */
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.bcel.BcelShadow.setRange:(Lorg/aspectj/weaver/bcel/ShadowRange;)V
         2: .line 57
            return
        end local 1 // org.aspectj.weaver.bcel.BcelShadow shadow
        end local 0 // org.aspectj.weaver.bcel.ShadowRange this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lorg/aspectj/weaver/bcel/ShadowRange;
            0    3     1  shadow  Lorg/aspectj/weaver/bcel/BcelShadow;
    MethodParameters:
        Name  Flags
      shadow  

  public org.aspectj.weaver.Shadow$Kind getKind();
    descriptor: ()Lorg/aspectj/weaver/Shadow$Kind;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.bcel.ShadowRange this
         0: .line 62
            aload 0 /* this */
            getfield org.aspectj.weaver.bcel.ShadowRange.shadow:Lorg/aspectj/weaver/bcel/BcelShadow;
            invokevirtual org.aspectj.weaver.bcel.BcelShadow.getKind:()Lorg/aspectj/weaver/Shadow$Kind;
            areturn
        end local 0 // org.aspectj.weaver.bcel.ShadowRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/bcel/ShadowRange;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.bcel.ShadowRange this
         0: .line 67
            aload 0 /* this */
            getfield org.aspectj.weaver.bcel.ShadowRange.shadow:Lorg/aspectj/weaver/bcel/BcelShadow;
            invokevirtual org.aspectj.weaver.bcel.BcelShadow.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.aspectj.weaver.bcel.ShadowRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/bcel/ShadowRange;

  void extractInstructionsInto(org.aspectj.weaver.bcel.LazyMethodGen, org.aspectj.weaver.IntMap, boolean);
    descriptor: (Lorg/aspectj/weaver/bcel/LazyMethodGen;Lorg/aspectj/weaver/IntMap;Z)V
    flags: (0x0000) 
    Code:
      stack=4, locals=16, args_size=4
        start local 0 // org.aspectj.weaver.bcel.ShadowRange this
        start local 1 // org.aspectj.weaver.bcel.LazyMethodGen freshMethod
        start local 2 // org.aspectj.weaver.IntMap remap
        start local 3 // boolean addReturn
         0: .line 71
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.bcel.ShadowRange.getBody:()Lorg/aspectj/apache/bcel/generic/InstructionList;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.bcel.ShadowRange.toString:()Ljava/lang/String;
            invokestatic org.aspectj.weaver.bcel.LazyMethodGen.assertGoodBody:(Lorg/aspectj/apache/bcel/generic/InstructionList;Ljava/lang/String;)V
         1: .line 72
            aload 1 /* freshMethod */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.assertGoodBody:()V
         2: .line 73
            aload 1 /* freshMethod */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.getBody:()Lorg/aspectj/apache/bcel/generic/InstructionList;
            astore 4 /* freshBody */
        start local 4 // org.aspectj.apache.bcel.generic.InstructionList freshBody
         3: .line 75
            aload 0 /* this */
            getfield org.aspectj.weaver.bcel.ShadowRange.start:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getNext:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 5 /* oldIh */
        start local 5 // org.aspectj.apache.bcel.generic.InstructionHandle oldIh
         4: goto 61
         5: .line 77
      StackMap locals: org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle
      StackMap stack:
            aload 5 /* oldIh */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getInstruction:()Lorg/aspectj/apache/bcel/generic/Instruction;
            astore 6 /* oldI */
        start local 6 // org.aspectj.apache.bcel.generic.Instruction oldI
         6: .line 78
            aload 6 /* oldI */
            getstatic org.aspectj.weaver.bcel.ShadowRange.RANGEINSTRUCTION:Lorg/aspectj/apache/bcel/generic/Instruction;
            if_acmpne 7
            aload 6 /* oldI */
            goto 8
      StackMap locals: org.aspectj.apache.bcel.generic.Instruction
      StackMap stack:
         7: aload 6 /* oldI */
            invokestatic org.aspectj.weaver.bcel.Utility.copyInstruction:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/Instruction;
      StackMap locals:
      StackMap stack: org.aspectj.apache.bcel.generic.Instruction
         8: astore 7 /* freshI */
        start local 7 // org.aspectj.apache.bcel.generic.Instruction freshI
         9: .line 82
            aload 7 /* freshI */
            instanceof org.aspectj.apache.bcel.generic.InstructionBranch
            ifeq 27
        10: .line 85
            aload 6 /* oldI */
            checkcast org.aspectj.apache.bcel.generic.InstructionBranch
            astore 9 /* oldBranch */
        start local 9 // org.aspectj.apache.bcel.generic.InstructionBranch oldBranch
        11: .line 86
            aload 7 /* freshI */
            checkcast org.aspectj.apache.bcel.generic.InstructionBranch
            astore 10 /* freshBranch */
        start local 10 // org.aspectj.apache.bcel.generic.InstructionBranch freshBranch
        12: .line 87
            aload 9 /* oldBranch */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionBranch.getTarget:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 11 /* oldTarget */
        start local 11 // org.aspectj.apache.bcel.generic.InstructionHandle oldTarget
        13: .line 88
            aload 11 /* oldTarget */
            aload 9 /* oldBranch */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.removeTargeter:(Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
        14: .line 89
            aload 11 /* oldTarget */
            aload 10 /* freshBranch */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.addTargeter:(Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
        15: .line 90
            aload 10 /* freshBranch */
            instanceof org.aspectj.apache.bcel.generic.InstructionSelect
            ifeq 25
        16: .line 91
            aload 6 /* oldI */
            checkcast org.aspectj.apache.bcel.generic.InstructionSelect
            astore 12 /* oldSelect */
        start local 12 // org.aspectj.apache.bcel.generic.InstructionSelect oldSelect
        17: .line 92
            aload 7 /* freshI */
            checkcast org.aspectj.apache.bcel.generic.InstructionSelect
            astore 13 /* freshSelect */
        start local 13 // org.aspectj.apache.bcel.generic.InstructionSelect freshSelect
        18: .line 93
            aload 13 /* freshSelect */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionSelect.getTargets:()[Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 14 /* oldTargets */
        start local 14 // org.aspectj.apache.bcel.generic.InstructionHandle[] oldTargets
        19: .line 94
            aload 14 /* oldTargets */
            arraylength
            iconst_1
            isub
            istore 15 /* k */
        start local 15 // int k
        20: goto 24
        21: .line 95
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.Instruction top org.aspectj.apache.bcel.generic.InstructionBranch org.aspectj.apache.bcel.generic.InstructionBranch org.aspectj.apache.bcel.generic.InstructionHandle org.aspectj.apache.bcel.generic.InstructionSelect org.aspectj.apache.bcel.generic.InstructionSelect org.aspectj.apache.bcel.generic.InstructionHandle[] int
      StackMap stack:
            aload 14 /* oldTargets */
            iload 15 /* k */
            aaload
            aload 12 /* oldSelect */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.removeTargeter:(Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
        22: .line 96
            aload 14 /* oldTargets */
            iload 15 /* k */
            aaload
            aload 13 /* freshSelect */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.addTargeter:(Lorg/aspectj/apache/bcel/generic/InstructionTargeter;)V
        23: .line 94
            iinc 15 /* k */ -1
      StackMap locals:
      StackMap stack:
        24: iload 15 /* k */
            ifge 21
        end local 15 // int k
        end local 14 // org.aspectj.apache.bcel.generic.InstructionHandle[] oldTargets
        end local 13 // org.aspectj.apache.bcel.generic.InstructionSelect freshSelect
        end local 12 // org.aspectj.apache.bcel.generic.InstructionSelect oldSelect
        25: .line 99
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.Instruction top org.aspectj.apache.bcel.generic.InstructionBranch org.aspectj.apache.bcel.generic.InstructionBranch org.aspectj.apache.bcel.generic.InstructionHandle
      StackMap stack:
            aload 4 /* freshBody */
            aload 10 /* freshBranch */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/InstructionBranch;)Lorg/aspectj/apache/bcel/generic/BranchHandle;
            astore 8 /* freshIh */
        end local 11 // org.aspectj.apache.bcel.generic.InstructionHandle oldTarget
        end local 10 // org.aspectj.apache.bcel.generic.InstructionBranch freshBranch
        end local 9 // org.aspectj.apache.bcel.generic.InstructionBranch oldBranch
        start local 8 // org.aspectj.apache.bcel.generic.InstructionHandle freshIh
        26: .line 100
            goto 28
        end local 8 // org.aspectj.apache.bcel.generic.InstructionHandle freshIh
        27: .line 101
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.Instruction
      StackMap stack:
            aload 4 /* freshBody */
            aload 7 /* freshI */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 8 /* freshIh */
        start local 8 // org.aspectj.apache.bcel.generic.InstructionHandle freshIh
        28: .line 129
      StackMap locals: org.aspectj.apache.bcel.generic.InstructionHandle
      StackMap stack:
            aload 5 /* oldIh */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getTargetersCopy:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 10
            goto 47
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.InstructionHandle top java.util.Iterator
      StackMap stack:
        29: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.apache.bcel.generic.InstructionTargeter
            astore 9 /* source */
        start local 9 // org.aspectj.apache.bcel.generic.InstructionTargeter source
        30: .line 130
            aload 9 /* source */
            instanceof org.aspectj.apache.bcel.generic.LocalVariableTag
            ifeq 43
        31: .line 131
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.bcel.ShadowRange.getKind:()Lorg/aspectj/weaver/Shadow$Kind;
            astore 11 /* kind */
        start local 11 // org.aspectj.weaver.Shadow$Kind kind
        32: .line 132
            aload 11 /* kind */
            getstatic org.aspectj.weaver.Shadow.AdviceExecution:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 35
            aload 11 /* kind */
            getstatic org.aspectj.weaver.Shadow.ConstructorExecution:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 35
            aload 11 /* kind */
            getstatic org.aspectj.weaver.Shadow.MethodExecution:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 35
        33: .line 133
            aload 11 /* kind */
            getstatic org.aspectj.weaver.Shadow.PreInitialization:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 35
            aload 11 /* kind */
            getstatic org.aspectj.weaver.Shadow.Initialization:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpeq 35
        34: .line 134
            aload 11 /* kind */
            getstatic org.aspectj.weaver.Shadow.StaticInitialization:Lorg/aspectj/weaver/Shadow$Kind;
            if_acmpne 41
        35: .line 135
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.InstructionHandle org.aspectj.apache.bcel.generic.InstructionTargeter java.util.Iterator org.aspectj.weaver.Shadow$Kind
      StackMap stack:
            aload 9 /* source */
            checkcast org.aspectj.apache.bcel.generic.LocalVariableTag
            astore 12 /* sourceLocalVariableTag */
        start local 12 // org.aspectj.apache.bcel.generic.LocalVariableTag sourceLocalVariableTag
        36: .line 136
            aload 12 /* sourceLocalVariableTag */
            invokevirtual org.aspectj.apache.bcel.generic.LocalVariableTag.getSlot:()I
            ifne 39
        37: .line 138
            aload 12 /* sourceLocalVariableTag */
            invokevirtual org.aspectj.apache.bcel.generic.LocalVariableTag.getName:()Ljava/lang/String;
            ldc "this"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 39
        38: .line 139
            aload 12 /* sourceLocalVariableTag */
            ldc "ajc$this"
            invokevirtual org.aspectj.apache.bcel.generic.LocalVariableTag.setName:(Ljava/lang/String;)V
        39: .line 143
      StackMap locals: org.aspectj.apache.bcel.generic.LocalVariableTag
      StackMap stack:
            aload 9 /* source */
            aload 5 /* oldIh */
            aload 8 /* freshIh */
            invokeinterface org.aspectj.apache.bcel.generic.InstructionTargeter.updateTarget:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
        end local 12 // org.aspectj.apache.bcel.generic.LocalVariableTag sourceLocalVariableTag
        40: .line 144
            goto 47
        41: .line 147
      StackMap locals:
      StackMap stack:
            aload 9 /* source */
            aload 5 /* oldIh */
            aconst_null
            invokeinterface org.aspectj.apache.bcel.generic.InstructionTargeter.updateTarget:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
        end local 11 // org.aspectj.weaver.Shadow$Kind kind
        42: .line 149
            goto 47
      StackMap locals:
      StackMap stack:
        43: aload 9 /* source */
            instanceof org.aspectj.weaver.bcel.Range
            ifeq 46
        44: .line 151
            aload 9 /* source */
            checkcast org.aspectj.weaver.bcel.Range
            aload 5 /* oldIh */
            aload 8 /* freshIh */
            aload 4 /* freshBody */
            invokevirtual org.aspectj.weaver.bcel.Range.updateTarget:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionList;)V
        45: .line 152
            goto 47
        46: .line 155
      StackMap locals:
      StackMap stack:
            aload 9 /* source */
            aload 5 /* oldIh */
            aload 8 /* freshIh */
            invokeinterface org.aspectj.apache.bcel.generic.InstructionTargeter.updateTarget:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
        end local 9 // org.aspectj.apache.bcel.generic.InstructionTargeter source
        47: .line 129
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.InstructionHandle top java.util.Iterator
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 29
        48: .line 167
            aload 7 /* freshI */
            invokevirtual org.aspectj.apache.bcel.generic.Instruction.isLocalVariableInstruction:()Z
            ifne 49
            aload 7 /* freshI */
            instanceof org.aspectj.apache.bcel.generic.RET
            ifeq 60
        49: .line 169
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.Instruction org.aspectj.apache.bcel.generic.InstructionHandle
      StackMap stack:
            aload 7 /* freshI */
            invokevirtual org.aspectj.apache.bcel.generic.Instruction.getIndex:()I
            istore 9 /* oldIndex */
        start local 9 // int oldIndex
        50: .line 171
            aload 2 /* remap */
            iload 9 /* oldIndex */
            invokevirtual org.aspectj.weaver.IntMap.hasKey:(I)Z
            ifne 54
        51: .line 172
            aload 1 /* freshMethod */
            iconst_2
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.allocateLocal:(I)I
            istore 10 /* freshIndex */
        start local 10 // int freshIndex
        52: .line 173
            aload 2 /* remap */
            iload 9 /* oldIndex */
            iload 10 /* freshIndex */
            invokevirtual org.aspectj.weaver.IntMap.put:(II)V
        53: .line 174
            goto 55
        end local 10 // int freshIndex
        54: .line 175
      StackMap locals: int
      StackMap stack:
            aload 2 /* remap */
            iload 9 /* oldIndex */
            invokevirtual org.aspectj.weaver.IntMap.get:(I)I
            istore 10 /* freshIndex */
        start local 10 // int freshIndex
        55: .line 177
      StackMap locals: int
      StackMap stack:
            aload 7 /* freshI */
            instanceof org.aspectj.apache.bcel.generic.RET
            ifeq 58
        56: .line 178
            aload 7 /* freshI */
            iload 10 /* freshIndex */
            invokevirtual org.aspectj.apache.bcel.generic.Instruction.setIndex:(I)V
        57: .line 179
            goto 60
        58: .line 180
      StackMap locals:
      StackMap stack:
            aload 7 /* freshI */
            checkcast org.aspectj.apache.bcel.generic.InstructionLV
            iload 10 /* freshIndex */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionLV.setIndexAndCopyIfNecessary:(I)Lorg/aspectj/apache/bcel/generic/InstructionLV;
            astore 7 /* freshI */
        59: .line 181
            aload 8 /* freshIh */
            aload 7 /* freshI */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.setInstruction:(Lorg/aspectj/apache/bcel/generic/Instruction;)V
        end local 10 // int freshIndex
        end local 9 // int oldIndex
        end local 8 // org.aspectj.apache.bcel.generic.InstructionHandle freshIh
        end local 7 // org.aspectj.apache.bcel.generic.Instruction freshI
        end local 6 // org.aspectj.apache.bcel.generic.Instruction oldI
        60: .line 75
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle
      StackMap stack:
            aload 5 /* oldIh */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getNext:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 5 /* oldIh */
      StackMap locals:
      StackMap stack:
        61: aload 5 /* oldIh */
            aload 0 /* this */
            getfield org.aspectj.weaver.bcel.ShadowRange.end:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            if_acmpne 5
        end local 5 // org.aspectj.apache.bcel.generic.InstructionHandle oldIh
        62: .line 192
            aload 4 /* freshBody */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.getStart:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 5 /* newIh */
        start local 5 // org.aspectj.apache.bcel.generic.InstructionHandle newIh
        63: goto 73
        64: .line 193
      StackMap locals:
      StackMap stack:
            aload 5 /* newIh */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getTargeters:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 6 /* tIter */
        start local 6 // java.util.Iterator tIter
        65: .line 194
            goto 71
        66: .line 195
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 6 /* tIter */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.apache.bcel.generic.InstructionTargeter
            astore 7 /* source */
        start local 7 // org.aspectj.apache.bcel.generic.InstructionTargeter source
        67: .line 196
            aload 7 /* source */
            instanceof org.aspectj.apache.bcel.generic.LocalVariableTag
            ifeq 71
        68: .line 197
            aload 7 /* source */
            checkcast org.aspectj.apache.bcel.generic.LocalVariableTag
            astore 8 /* lvt */
        start local 8 // org.aspectj.apache.bcel.generic.LocalVariableTag lvt
        69: .line 198
            aload 8 /* lvt */
            invokevirtual org.aspectj.apache.bcel.generic.LocalVariableTag.isRemapped:()Z
            ifne 71
            aload 2 /* remap */
            aload 8 /* lvt */
            invokevirtual org.aspectj.apache.bcel.generic.LocalVariableTag.getSlot:()I
            invokevirtual org.aspectj.weaver.IntMap.hasKey:(I)Z
            ifeq 71
        70: .line 199
            aload 8 /* lvt */
            aload 2 /* remap */
            aload 8 /* lvt */
            invokevirtual org.aspectj.apache.bcel.generic.LocalVariableTag.getSlot:()I
            invokevirtual org.aspectj.weaver.IntMap.get:(I)I
            invokevirtual org.aspectj.apache.bcel.generic.LocalVariableTag.updateSlot:(I)V
        end local 8 // org.aspectj.apache.bcel.generic.LocalVariableTag lvt
        end local 7 // org.aspectj.apache.bcel.generic.InstructionTargeter source
        71: .line 194
      StackMap locals:
      StackMap stack:
            aload 6 /* tIter */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 66
        end local 6 // java.util.Iterator tIter
        72: .line 192
            aload 5 /* newIh */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getNext:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 5 /* newIh */
      StackMap locals:
      StackMap stack:
        73: aload 5 /* newIh */
            aload 4 /* freshBody */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.getEnd:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            if_acmpne 64
        end local 5 // org.aspectj.apache.bcel.generic.InstructionHandle newIh
        74: .line 209
            aload 0 /* this */
            getfield org.aspectj.weaver.bcel.ShadowRange.start:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getNext:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 5 /* oldIh */
        start local 5 // org.aspectj.apache.bcel.generic.InstructionHandle oldIh
        75: goto 79
        76: .line 210
      StackMap locals:
      StackMap stack:
            aload 5 /* oldIh */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getNext:()Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 6 /* next */
        start local 6 // org.aspectj.apache.bcel.generic.InstructionHandle next
        77: .line 211
            aload 0 /* this */
            getfield org.aspectj.weaver.bcel.ShadowRange.body:Lorg/aspectj/apache/bcel/generic/InstructionList;
            aload 5 /* oldIh */
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.delete:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
        78: .line 212
            aload 6 /* next */
            astore 5 /* oldIh */
        end local 6 // org.aspectj.apache.bcel.generic.InstructionHandle next
        79: .line 209
      StackMap locals:
      StackMap stack:
            aload 5 /* oldIh */
            aload 0 /* this */
            getfield org.aspectj.weaver.bcel.ShadowRange.end:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            if_acmpne 76
        end local 5 // org.aspectj.apache.bcel.generic.InstructionHandle oldIh
        80: .line 214
            goto 83
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList
      StackMap stack: org.aspectj.apache.bcel.generic.TargetLostException
        81: pop
        82: .line 215
            new org.aspectj.weaver.BCException
            dup
            ldc "shouldn't have gotten a target lost"
            invokespecial org.aspectj.weaver.BCException.<init>:(Ljava/lang/String;)V
            athrow
        83: .line 219
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 5 /* ret */
        start local 5 // org.aspectj.apache.bcel.generic.InstructionHandle ret
        84: .line 220
            iload 3 /* addReturn */
            ifeq 86
        85: .line 222
            aload 4 /* freshBody */
            aload 1 /* freshMethod */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.getReturnType:()Lorg/aspectj/apache/bcel/generic/Type;
            invokestatic org.aspectj.apache.bcel.generic.InstructionFactory.createReturn:(Lorg/aspectj/apache/bcel/generic/Type;)Lorg/aspectj/apache/bcel/generic/Instruction;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionList.append:(Lorg/aspectj/apache/bcel/generic/Instruction;)Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            astore 5 /* ret */
        86: .line 225
      StackMap locals: org.aspectj.apache.bcel.generic.InstructionHandle
      StackMap stack:
            aload 0 /* this */
            getfield org.aspectj.weaver.bcel.ShadowRange.end:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            invokevirtual org.aspectj.apache.bcel.generic.InstructionHandle.getTargetersCopy:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 7
            goto 93
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle top java.util.Iterator
      StackMap stack:
        87: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.aspectj.apache.bcel.generic.InstructionTargeter
            astore 6 /* t */
        start local 6 // org.aspectj.apache.bcel.generic.InstructionTargeter t
        88: .line 226
            aload 6 /* t */
            aload 0 /* this */
            if_acmpne 90
        89: .line 227
            goto 93
        90: .line 229
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle org.aspectj.apache.bcel.generic.InstructionTargeter java.util.Iterator
      StackMap stack:
            iload 3 /* addReturn */
            ifne 92
        91: .line 230
            new org.aspectj.weaver.BCException
            dup
            ldc "range has target, but we aren't adding a return"
            invokespecial org.aspectj.weaver.BCException.<init>:(Ljava/lang/String;)V
            athrow
        92: .line 232
      StackMap locals:
      StackMap stack:
            aload 6 /* t */
            aload 0 /* this */
            getfield org.aspectj.weaver.bcel.ShadowRange.end:Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            aload 5 /* ret */
            invokeinterface org.aspectj.apache.bcel.generic.InstructionTargeter.updateTarget:(Lorg/aspectj/apache/bcel/generic/InstructionHandle;Lorg/aspectj/apache/bcel/generic/InstructionHandle;)V
        end local 6 // org.aspectj.apache.bcel.generic.InstructionTargeter t
        93: .line 225
      StackMap locals: org.aspectj.weaver.bcel.ShadowRange org.aspectj.weaver.bcel.LazyMethodGen org.aspectj.weaver.IntMap int org.aspectj.apache.bcel.generic.InstructionList org.aspectj.apache.bcel.generic.InstructionHandle top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 87
        94: .line 236
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.bcel.ShadowRange.getBody:()Lorg/aspectj/apache/bcel/generic/InstructionList;
            aload 0 /* this */
            invokevirtual org.aspectj.weaver.bcel.ShadowRange.toString:()Ljava/lang/String;
            invokestatic org.aspectj.weaver.bcel.LazyMethodGen.assertGoodBody:(Lorg/aspectj/apache/bcel/generic/InstructionList;Ljava/lang/String;)V
        95: .line 237
            aload 1 /* freshMethod */
            invokevirtual org.aspectj.weaver.bcel.LazyMethodGen.assertGoodBody:()V
        96: .line 238
            return
        end local 5 // org.aspectj.apache.bcel.generic.InstructionHandle ret
        end local 4 // org.aspectj.apache.bcel.generic.InstructionList freshBody
        end local 3 // boolean addReturn
        end local 2 // org.aspectj.weaver.IntMap remap
        end local 1 // org.aspectj.weaver.bcel.LazyMethodGen freshMethod
        end local 0 // org.aspectj.weaver.bcel.ShadowRange this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   97     0                    this  Lorg/aspectj/weaver/bcel/ShadowRange;
            0   97     1             freshMethod  Lorg/aspectj/weaver/bcel/LazyMethodGen;
            0   97     2                   remap  Lorg/aspectj/weaver/IntMap;
            0   97     3               addReturn  Z
            3   97     4               freshBody  Lorg/aspectj/apache/bcel/generic/InstructionList;
            4   62     5                   oldIh  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
            6   60     6                    oldI  Lorg/aspectj/apache/bcel/generic/Instruction;
            9   60     7                  freshI  Lorg/aspectj/apache/bcel/generic/Instruction;
           26   27     8                 freshIh  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
           28   60     8                 freshIh  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
           11   26     9               oldBranch  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
           12   26    10             freshBranch  Lorg/aspectj/apache/bcel/generic/InstructionBranch;
           13   26    11               oldTarget  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
           17   25    12               oldSelect  Lorg/aspectj/apache/bcel/generic/InstructionSelect;
           18   25    13             freshSelect  Lorg/aspectj/apache/bcel/generic/InstructionSelect;
           19   25    14              oldTargets  [Lorg/aspectj/apache/bcel/generic/InstructionHandle;
           20   25    15                       k  I
           30   47     9                  source  Lorg/aspectj/apache/bcel/generic/InstructionTargeter;
           32   42    11                    kind  Lorg/aspectj/weaver/Shadow$Kind;
           36   40    12  sourceLocalVariableTag  Lorg/aspectj/apache/bcel/generic/LocalVariableTag;
           50   60     9                oldIndex  I
           52   54    10              freshIndex  I
           55   60    10              freshIndex  I
           63   74     5                   newIh  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
           65   72     6                   tIter  Ljava/util/Iterator<Lorg/aspectj/apache/bcel/generic/InstructionTargeter;>;
           67   71     7                  source  Lorg/aspectj/apache/bcel/generic/InstructionTargeter;
           69   71     8                     lvt  Lorg/aspectj/apache/bcel/generic/LocalVariableTag;
           75   80     5                   oldIh  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
           77   79     6                    next  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
           84   97     5                     ret  Lorg/aspectj/apache/bcel/generic/InstructionHandle;
           88   93     6                       t  Lorg/aspectj/apache/bcel/generic/InstructionTargeter;
      Exception table:
        from    to  target  type
          74    80      81  Class org.aspectj.apache.bcel.generic.TargetLostException
    MethodParameters:
             Name  Flags
      freshMethod  
      remap        
      addReturn    

  public org.aspectj.weaver.bcel.BcelShadow getShadow();
    descriptor: ()Lorg/aspectj/weaver/bcel/BcelShadow;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.aspectj.weaver.bcel.ShadowRange this
         0: .line 241
            aload 0 /* this */
            getfield org.aspectj.weaver.bcel.ShadowRange.shadow:Lorg/aspectj/weaver/bcel/BcelShadow;
            areturn
        end local 0 // org.aspectj.weaver.bcel.ShadowRange this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/aspectj/weaver/bcel/ShadowRange;
}
SourceFile: "ShadowRange.java"
InnerClasses:
  public final Kind = org.aspectj.weaver.Shadow$Kind of org.aspectj.weaver.Shadow