class org.bouncycastle.math.ec.WNafUtil$1 implements org.bouncycastle.math.ec.PreCompCallback
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.bouncycastle.math.ec.WNafUtil$1
  super_class: java.lang.Object
{
  private final org.bouncycastle.math.ec.WNafPreCompInfo val$wnafPreCompP;
    descriptor: Lorg/bouncycastle/math/ec/WNafPreCompInfo;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final org.bouncycastle.math.ec.ECPointMap val$pointMap;
    descriptor: Lorg/bouncycastle/math/ec/ECPointMap;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  private final boolean val$includeNegated;
    descriptor: Z
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(org.bouncycastle.math.ec.WNafPreCompInfo, org.bouncycastle.math.ec.ECPointMap, boolean);
    descriptor: (Lorg/bouncycastle/math/ec/WNafPreCompInfo;Lorg/bouncycastle/math/ec/ECPointMap;Z)V
    flags: (0x0000) 
    Code:
      stack=2, locals=4, args_size=4
        start local 0 // org.bouncycastle.math.ec.WNafUtil$1 this
         0: .line 348
            aload 0 /* this */
            aload 1
            putfield org.bouncycastle.math.ec.WNafUtil$1.val$wnafPreCompP:Lorg/bouncycastle/math/ec/WNafPreCompInfo;
            aload 0 /* this */
            aload 2
            putfield org.bouncycastle.math.ec.WNafUtil$1.val$pointMap:Lorg/bouncycastle/math/ec/ECPointMap;
            aload 0 /* this */
            iload 3
            putfield org.bouncycastle.math.ec.WNafUtil$1.val$includeNegated:Z
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.bouncycastle.math.ec.WNafUtil$1 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/math/ec/WNafUtil$1;
    MethodParameters:
                    Name  Flags
      val$wnafPreCompP    final
      val$pointMap        final
      val$includeNegated  final

  public org.bouncycastle.math.ec.PreCompInfo precompute(org.bouncycastle.math.ec.PreCompInfo);
    descriptor: (Lorg/bouncycastle/math/ec/PreCompInfo;)Lorg/bouncycastle/math/ec/PreCompInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.bouncycastle.math.ec.WNafUtil$1 this
        start local 1 // org.bouncycastle.math.ec.PreCompInfo existing
         0: .line 352
            new org.bouncycastle.math.ec.WNafPreCompInfo
            dup
            invokespecial org.bouncycastle.math.ec.WNafPreCompInfo.<init>:()V
            astore 2 /* result */
        start local 2 // org.bouncycastle.math.ec.WNafPreCompInfo result
         1: .line 354
            aload 0 /* this */
            getfield org.bouncycastle.math.ec.WNafUtil$1.val$wnafPreCompP:Lorg/bouncycastle/math/ec/WNafPreCompInfo;
            invokevirtual org.bouncycastle.math.ec.WNafPreCompInfo.getTwice:()Lorg/bouncycastle/math/ec/ECPoint;
            astore 3 /* twiceP */
        start local 3 // org.bouncycastle.math.ec.ECPoint twiceP
         2: .line 355
            aload 3 /* twiceP */
            ifnull 5
         3: .line 357
            aload 0 /* this */
            getfield org.bouncycastle.math.ec.WNafUtil$1.val$pointMap:Lorg/bouncycastle/math/ec/ECPointMap;
            aload 3 /* twiceP */
            invokeinterface org.bouncycastle.math.ec.ECPointMap.map:(Lorg/bouncycastle/math/ec/ECPoint;)Lorg/bouncycastle/math/ec/ECPoint;
            astore 4 /* twiceQ */
        start local 4 // org.bouncycastle.math.ec.ECPoint twiceQ
         4: .line 358
            aload 2 /* result */
            aload 4 /* twiceQ */
            invokevirtual org.bouncycastle.math.ec.WNafPreCompInfo.setTwice:(Lorg/bouncycastle/math/ec/ECPoint;)V
        end local 4 // org.bouncycastle.math.ec.ECPoint twiceQ
         5: .line 361
      StackMap locals: org.bouncycastle.math.ec.WNafPreCompInfo org.bouncycastle.math.ec.ECPoint
      StackMap stack:
            aload 0 /* this */
            getfield org.bouncycastle.math.ec.WNafUtil$1.val$wnafPreCompP:Lorg/bouncycastle/math/ec/WNafPreCompInfo;
            invokevirtual org.bouncycastle.math.ec.WNafPreCompInfo.getPreComp:()[Lorg/bouncycastle/math/ec/ECPoint;
            astore 4 /* preCompP */
        start local 4 // org.bouncycastle.math.ec.ECPoint[] preCompP
         6: .line 362
            aload 4 /* preCompP */
            arraylength
            anewarray org.bouncycastle.math.ec.ECPoint
            astore 5 /* preCompQ */
        start local 5 // org.bouncycastle.math.ec.ECPoint[] preCompQ
         7: .line 363
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         8: goto 11
         9: .line 365
      StackMap locals: org.bouncycastle.math.ec.ECPoint[] org.bouncycastle.math.ec.ECPoint[] int
      StackMap stack:
            aload 5 /* preCompQ */
            iload 6 /* i */
            aload 0 /* this */
            getfield org.bouncycastle.math.ec.WNafUtil$1.val$pointMap:Lorg/bouncycastle/math/ec/ECPointMap;
            aload 4 /* preCompP */
            iload 6 /* i */
            aaload
            invokeinterface org.bouncycastle.math.ec.ECPointMap.map:(Lorg/bouncycastle/math/ec/ECPoint;)Lorg/bouncycastle/math/ec/ECPoint;
            aastore
        10: .line 363
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 6 /* i */
            aload 4 /* preCompP */
            arraylength
            if_icmplt 9
        end local 6 // int i
        12: .line 367
            aload 2 /* result */
            aload 5 /* preCompQ */
            invokevirtual org.bouncycastle.math.ec.WNafPreCompInfo.setPreComp:([Lorg/bouncycastle/math/ec/ECPoint;)V
        13: .line 369
            aload 0 /* this */
            getfield org.bouncycastle.math.ec.WNafUtil$1.val$includeNegated:Z
            ifeq 21
        14: .line 371
            aload 5 /* preCompQ */
            arraylength
            anewarray org.bouncycastle.math.ec.ECPoint
            astore 6 /* preCompNegQ */
        start local 6 // org.bouncycastle.math.ec.ECPoint[] preCompNegQ
        15: .line 372
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        16: goto 19
        17: .line 374
      StackMap locals: org.bouncycastle.math.ec.WNafUtil$1 org.bouncycastle.math.ec.PreCompInfo org.bouncycastle.math.ec.WNafPreCompInfo org.bouncycastle.math.ec.ECPoint org.bouncycastle.math.ec.ECPoint[] org.bouncycastle.math.ec.ECPoint[] org.bouncycastle.math.ec.ECPoint[] int
      StackMap stack:
            aload 6 /* preCompNegQ */
            iload 7 /* i */
            aload 5 /* preCompQ */
            iload 7 /* i */
            aaload
            invokevirtual org.bouncycastle.math.ec.ECPoint.negate:()Lorg/bouncycastle/math/ec/ECPoint;
            aastore
        18: .line 372
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 7 /* i */
            aload 6 /* preCompNegQ */
            arraylength
            if_icmplt 17
        end local 7 // int i
        20: .line 376
            aload 2 /* result */
            aload 6 /* preCompNegQ */
            invokevirtual org.bouncycastle.math.ec.WNafPreCompInfo.setPreCompNeg:([Lorg/bouncycastle/math/ec/ECPoint;)V
        end local 6 // org.bouncycastle.math.ec.ECPoint[] preCompNegQ
        21: .line 379
      StackMap locals:
      StackMap stack:
            aload 2 /* result */
            areturn
        end local 5 // org.bouncycastle.math.ec.ECPoint[] preCompQ
        end local 4 // org.bouncycastle.math.ec.ECPoint[] preCompP
        end local 3 // org.bouncycastle.math.ec.ECPoint twiceP
        end local 2 // org.bouncycastle.math.ec.WNafPreCompInfo result
        end local 1 // org.bouncycastle.math.ec.PreCompInfo existing
        end local 0 // org.bouncycastle.math.ec.WNafUtil$1 this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   22     0         this  Lorg/bouncycastle/math/ec/WNafUtil$1;
            0   22     1     existing  Lorg/bouncycastle/math/ec/PreCompInfo;
            1   22     2       result  Lorg/bouncycastle/math/ec/WNafPreCompInfo;
            2   22     3       twiceP  Lorg/bouncycastle/math/ec/ECPoint;
            4    5     4       twiceQ  Lorg/bouncycastle/math/ec/ECPoint;
            6   22     4     preCompP  [Lorg/bouncycastle/math/ec/ECPoint;
            7   22     5     preCompQ  [Lorg/bouncycastle/math/ec/ECPoint;
            8   12     6            i  I
           15   21     6  preCompNegQ  [Lorg/bouncycastle/math/ec/ECPoint;
           16   20     7            i  I
    MethodParameters:
          Name  Flags
      existing  
}
SourceFile: "WNafUtil.java"
EnclosingMethod: org.bouncycastle.math.ec.WNafUtil.mapPointWithPrecomp:(Lorg/bouncycastle/math/ec/ECPoint;IZLorg/bouncycastle/math/ec/ECPointMap;)Lorg/bouncycastle/math/ec/ECPoint;
NestHost: org.bouncycastle.math.ec.WNafUtil
InnerClasses:
  org.bouncycastle.math.ec.WNafUtil$1