public class org.bouncycastle.math.ec.custom.sec.SecT283Field
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.bouncycastle.math.ec.custom.sec.SecT283Field
  super_class: java.lang.Object
{
  private static final long M27;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 134217727

  private static final long M57;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 144115188075855871

  private static final long[] ROOT_Z;
    descriptor: [J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=0, args_size=0
         0: .line 14
            iconst_5
            newarray 11
            dup
            iconst_0
            ldc 878416384462358536
            lastore
            dup
            iconst_1
            ldc 3513665537849438403
            lastore
            dup
            iconst_2
            ldc -9076969306111048948
            lastore
            dup
            iconst_3
            ldc 585610922974906400
            lastore
            dup
            iconst_4
            ldc 34087042
            lastore
            putstatic org.bouncycastle.math.ec.custom.sec.SecT283Field.ROOT_Z:[J
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.math.ec.custom.sec.SecT283Field this
         0: .line 9
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.bouncycastle.math.ec.custom.sec.SecT283Field this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/math/ec/custom/sec/SecT283Field;

  public static void add(long[], long[], long[]);
    descriptor: ([J[J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // long[] x
        start local 1 // long[] y
        start local 2 // long[] z
         0: .line 18
            aload 2 /* z */
            iconst_0
            aload 0 /* x */
            iconst_0
            laload
            aload 1 /* y */
            iconst_0
            laload
            lxor
            lastore
         1: .line 19
            aload 2 /* z */
            iconst_1
            aload 0 /* x */
            iconst_1
            laload
            aload 1 /* y */
            iconst_1
            laload
            lxor
            lastore
         2: .line 20
            aload 2 /* z */
            iconst_2
            aload 0 /* x */
            iconst_2
            laload
            aload 1 /* y */
            iconst_2
            laload
            lxor
            lastore
         3: .line 21
            aload 2 /* z */
            iconst_3
            aload 0 /* x */
            iconst_3
            laload
            aload 1 /* y */
            iconst_3
            laload
            lxor
            lastore
         4: .line 22
            aload 2 /* z */
            iconst_4
            aload 0 /* x */
            iconst_4
            laload
            aload 1 /* y */
            iconst_4
            laload
            lxor
            lastore
         5: .line 23
            return
        end local 2 // long[] z
        end local 1 // long[] y
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     x  [J
            0    6     1     y  [J
            0    6     2     z  [J
    MethodParameters:
      Name  Flags
      x     
      y     
      z     

  public static void addExt(long[], long[], long[]);
    descriptor: ([J[J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // long[] xx
        start local 1 // long[] yy
        start local 2 // long[] zz
         0: .line 27
            aload 2 /* zz */
            iconst_0
            aload 0 /* xx */
            iconst_0
            laload
            aload 1 /* yy */
            iconst_0
            laload
            lxor
            lastore
         1: .line 28
            aload 2 /* zz */
            iconst_1
            aload 0 /* xx */
            iconst_1
            laload
            aload 1 /* yy */
            iconst_1
            laload
            lxor
            lastore
         2: .line 29
            aload 2 /* zz */
            iconst_2
            aload 0 /* xx */
            iconst_2
            laload
            aload 1 /* yy */
            iconst_2
            laload
            lxor
            lastore
         3: .line 30
            aload 2 /* zz */
            iconst_3
            aload 0 /* xx */
            iconst_3
            laload
            aload 1 /* yy */
            iconst_3
            laload
            lxor
            lastore
         4: .line 31
            aload 2 /* zz */
            iconst_4
            aload 0 /* xx */
            iconst_4
            laload
            aload 1 /* yy */
            iconst_4
            laload
            lxor
            lastore
         5: .line 32
            aload 2 /* zz */
            iconst_5
            aload 0 /* xx */
            iconst_5
            laload
            aload 1 /* yy */
            iconst_5
            laload
            lxor
            lastore
         6: .line 33
            aload 2 /* zz */
            bipush 6
            aload 0 /* xx */
            bipush 6
            laload
            aload 1 /* yy */
            bipush 6
            laload
            lxor
            lastore
         7: .line 34
            aload 2 /* zz */
            bipush 7
            aload 0 /* xx */
            bipush 7
            laload
            aload 1 /* yy */
            bipush 7
            laload
            lxor
            lastore
         8: .line 35
            aload 2 /* zz */
            bipush 8
            aload 0 /* xx */
            bipush 8
            laload
            aload 1 /* yy */
            bipush 8
            laload
            lxor
            lastore
         9: .line 36
            return
        end local 2 // long[] zz
        end local 1 // long[] yy
        end local 0 // long[] xx
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0    xx  [J
            0   10     1    yy  [J
            0   10     2    zz  [J
    MethodParameters:
      Name  Flags
      xx    
      yy    
      zz    

  public static void addOne(long[], long[]);
    descriptor: ([J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // long[] x
        start local 1 // long[] z
         0: .line 40
            aload 1 /* z */
            iconst_0
            aload 0 /* x */
            iconst_0
            laload
            lconst_1
            lxor
            lastore
         1: .line 41
            aload 1 /* z */
            iconst_1
            aload 0 /* x */
            iconst_1
            laload
            lastore
         2: .line 42
            aload 1 /* z */
            iconst_2
            aload 0 /* x */
            iconst_2
            laload
            lastore
         3: .line 43
            aload 1 /* z */
            iconst_3
            aload 0 /* x */
            iconst_3
            laload
            lastore
         4: .line 44
            aload 1 /* z */
            iconst_4
            aload 0 /* x */
            iconst_4
            laload
            lastore
         5: .line 45
            return
        end local 1 // long[] z
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     x  [J
            0    6     1     z  [J
    MethodParameters:
      Name  Flags
      x     
      z     

  public static long[] fromBigInteger(java.math.BigInteger);
    descriptor: (Ljava/math/BigInteger;)[J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // java.math.BigInteger x
         0: .line 49
            aload 0 /* x */
            invokestatic org.bouncycastle.math.raw.Nat320.fromBigInteger64:(Ljava/math/BigInteger;)[J
            astore 1 /* z */
        start local 1 // long[] z
         1: .line 50
            aload 1 /* z */
            iconst_0
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.reduce37:([JI)V
         2: .line 51
            aload 1 /* z */
            areturn
        end local 1 // long[] z
        end local 0 // java.math.BigInteger x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     x  Ljava/math/BigInteger;
            1    3     1     z  [J
    MethodParameters:
      Name  Flags
      x     

  public static void invert(long[], long[]);
    descriptor: ([J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // long[] x
        start local 1 // long[] z
         0: .line 56
            aload 0 /* x */
            invokestatic org.bouncycastle.math.raw.Nat320.isZero64:([J)Z
            ifeq 2
         1: .line 58
            new java.lang.IllegalStateException
            dup
            invokespecial java.lang.IllegalStateException.<init>:()V
            athrow
         2: .line 63
      StackMap locals:
      StackMap stack:
            invokestatic org.bouncycastle.math.raw.Nat320.create64:()[J
            astore 2 /* t0 */
        start local 2 // long[] t0
         3: .line 64
            invokestatic org.bouncycastle.math.raw.Nat320.create64:()[J
            astore 3 /* t1 */
        start local 3 // long[] t1
         4: .line 66
            aload 0 /* x */
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.square:([J[J)V
         5: .line 67
            aload 2 /* t0 */
            aload 0 /* x */
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
         6: .line 68
            aload 2 /* t0 */
            iconst_2
            aload 3 /* t1 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.squareN:([JI[J)V
         7: .line 69
            aload 3 /* t1 */
            aload 2 /* t0 */
            aload 3 /* t1 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
         8: .line 70
            aload 3 /* t1 */
            iconst_4
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.squareN:([JI[J)V
         9: .line 71
            aload 2 /* t0 */
            aload 3 /* t1 */
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
        10: .line 72
            aload 2 /* t0 */
            bipush 8
            aload 3 /* t1 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.squareN:([JI[J)V
        11: .line 73
            aload 3 /* t1 */
            aload 2 /* t0 */
            aload 3 /* t1 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
        12: .line 74
            aload 3 /* t1 */
            aload 3 /* t1 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.square:([J[J)V
        13: .line 75
            aload 3 /* t1 */
            aload 0 /* x */
            aload 3 /* t1 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
        14: .line 76
            aload 3 /* t1 */
            bipush 17
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.squareN:([JI[J)V
        15: .line 77
            aload 2 /* t0 */
            aload 3 /* t1 */
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
        16: .line 78
            aload 2 /* t0 */
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.square:([J[J)V
        17: .line 79
            aload 2 /* t0 */
            aload 0 /* x */
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
        18: .line 80
            aload 2 /* t0 */
            bipush 35
            aload 3 /* t1 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.squareN:([JI[J)V
        19: .line 81
            aload 3 /* t1 */
            aload 2 /* t0 */
            aload 3 /* t1 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
        20: .line 82
            aload 3 /* t1 */
            bipush 70
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.squareN:([JI[J)V
        21: .line 83
            aload 2 /* t0 */
            aload 3 /* t1 */
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
        22: .line 84
            aload 2 /* t0 */
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.square:([J[J)V
        23: .line 85
            aload 2 /* t0 */
            aload 0 /* x */
            aload 2 /* t0 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
        24: .line 86
            aload 2 /* t0 */
            sipush 141
            aload 3 /* t1 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.squareN:([JI[J)V
        25: .line 87
            aload 3 /* t1 */
            aload 2 /* t0 */
            aload 3 /* t1 */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
        26: .line 88
            aload 3 /* t1 */
            aload 1 /* z */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.square:([J[J)V
        27: .line 89
            return
        end local 3 // long[] t1
        end local 2 // long[] t0
        end local 1 // long[] z
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   28     0     x  [J
            0   28     1     z  [J
            3   28     2    t0  [J
            4   28     3    t1  [J
    MethodParameters:
      Name  Flags
      x     
      z     

  public static void multiply(long[], long[], long[]);
    descriptor: ([J[J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // long[] x
        start local 1 // long[] y
        start local 2 // long[] z
         0: .line 93
            invokestatic org.bouncycastle.math.raw.Nat320.createExt64:()[J
            astore 3 /* tt */
        start local 3 // long[] tt
         1: .line 94
            aload 0 /* x */
            aload 1 /* y */
            aload 3 /* tt */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMultiply:([J[J[J)V
         2: .line 95
            aload 3 /* tt */
            aload 2 /* z */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.reduce:([J[J)V
         3: .line 96
            return
        end local 3 // long[] tt
        end local 2 // long[] z
        end local 1 // long[] y
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  [J
            0    4     1     y  [J
            0    4     2     z  [J
            1    4     3    tt  [J
    MethodParameters:
      Name  Flags
      x     
      y     
      z     

  public static void multiplyAddToExt(long[], long[], long[]);
    descriptor: ([J[J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // long[] x
        start local 1 // long[] y
        start local 2 // long[] zz
         0: .line 100
            invokestatic org.bouncycastle.math.raw.Nat320.createExt64:()[J
            astore 3 /* tt */
        start local 3 // long[] tt
         1: .line 101
            aload 0 /* x */
            aload 1 /* y */
            aload 3 /* tt */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMultiply:([J[J[J)V
         2: .line 102
            aload 2 /* zz */
            aload 3 /* tt */
            aload 2 /* zz */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.addExt:([J[J[J)V
         3: .line 103
            return
        end local 3 // long[] tt
        end local 2 // long[] zz
        end local 1 // long[] y
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  [J
            0    4     1     y  [J
            0    4     2    zz  [J
            1    4     3    tt  [J
    MethodParameters:
      Name  Flags
      x     
      y     
      zz    

  public static void reduce(long[], long[]);
    descriptor: ([J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=22, args_size=2
        start local 0 // long[] xx
        start local 1 // long[] z
         0: .line 107
            aload 0 /* xx */
            iconst_0
            laload
            lstore 2 /* x0 */
        start local 2 // long x0
         1: aload 0 /* xx */
            iconst_1
            laload
            lstore 4 /* x1 */
        start local 4 // long x1
         2: aload 0 /* xx */
            iconst_2
            laload
            lstore 6 /* x2 */
        start local 6 // long x2
         3: aload 0 /* xx */
            iconst_3
            laload
            lstore 8 /* x3 */
        start local 8 // long x3
         4: aload 0 /* xx */
            iconst_4
            laload
            lstore 10 /* x4 */
        start local 10 // long x4
         5: .line 108
            aload 0 /* xx */
            iconst_5
            laload
            lstore 12 /* x5 */
        start local 12 // long x5
         6: aload 0 /* xx */
            bipush 6
            laload
            lstore 14 /* x6 */
        start local 14 // long x6
         7: aload 0 /* xx */
            bipush 7
            laload
            lstore 16 /* x7 */
        start local 16 // long x7
         8: aload 0 /* xx */
            bipush 8
            laload
            lstore 18 /* x8 */
        start local 18 // long x8
         9: .line 110
            lload 8 /* x3 */
            lload 18 /* x8 */
            bipush 37
            lshl
            lload 18 /* x8 */
            bipush 42
            lshl
            lxor
            lload 18 /* x8 */
            bipush 44
            lshl
            lxor
            lload 18 /* x8 */
            bipush 49
            lshl
            lxor
            lxor
            lstore 8 /* x3 */
        10: .line 111
            lload 10 /* x4 */
            lload 18 /* x8 */
            bipush 27
            lushr
            lload 18 /* x8 */
            bipush 22
            lushr
            lxor
            lload 18 /* x8 */
            bipush 20
            lushr
            lxor
            lload 18 /* x8 */
            bipush 15
            lushr
            lxor
            lxor
            lstore 10 /* x4 */
        11: .line 113
            lload 6 /* x2 */
            lload 16 /* x7 */
            bipush 37
            lshl
            lload 16 /* x7 */
            bipush 42
            lshl
            lxor
            lload 16 /* x7 */
            bipush 44
            lshl
            lxor
            lload 16 /* x7 */
            bipush 49
            lshl
            lxor
            lxor
            lstore 6 /* x2 */
        12: .line 114
            lload 8 /* x3 */
            lload 16 /* x7 */
            bipush 27
            lushr
            lload 16 /* x7 */
            bipush 22
            lushr
            lxor
            lload 16 /* x7 */
            bipush 20
            lushr
            lxor
            lload 16 /* x7 */
            bipush 15
            lushr
            lxor
            lxor
            lstore 8 /* x3 */
        13: .line 116
            lload 4 /* x1 */
            lload 14 /* x6 */
            bipush 37
            lshl
            lload 14 /* x6 */
            bipush 42
            lshl
            lxor
            lload 14 /* x6 */
            bipush 44
            lshl
            lxor
            lload 14 /* x6 */
            bipush 49
            lshl
            lxor
            lxor
            lstore 4 /* x1 */
        14: .line 117
            lload 6 /* x2 */
            lload 14 /* x6 */
            bipush 27
            lushr
            lload 14 /* x6 */
            bipush 22
            lushr
            lxor
            lload 14 /* x6 */
            bipush 20
            lushr
            lxor
            lload 14 /* x6 */
            bipush 15
            lushr
            lxor
            lxor
            lstore 6 /* x2 */
        15: .line 119
            lload 2 /* x0 */
            lload 12 /* x5 */
            bipush 37
            lshl
            lload 12 /* x5 */
            bipush 42
            lshl
            lxor
            lload 12 /* x5 */
            bipush 44
            lshl
            lxor
            lload 12 /* x5 */
            bipush 49
            lshl
            lxor
            lxor
            lstore 2 /* x0 */
        16: .line 120
            lload 4 /* x1 */
            lload 12 /* x5 */
            bipush 27
            lushr
            lload 12 /* x5 */
            bipush 22
            lushr
            lxor
            lload 12 /* x5 */
            bipush 20
            lushr
            lxor
            lload 12 /* x5 */
            bipush 15
            lushr
            lxor
            lxor
            lstore 4 /* x1 */
        17: .line 122
            lload 10 /* x4 */
            bipush 27
            lushr
            lstore 20 /* t */
        start local 20 // long t
        18: .line 123
            aload 1 /* z */
            iconst_0
            lload 2 /* x0 */
            lload 20 /* t */
            lxor
            lload 20 /* t */
            iconst_5
            lshl
            lxor
            lload 20 /* t */
            bipush 7
            lshl
            lxor
            lload 20 /* t */
            bipush 12
            lshl
            lxor
            lastore
        19: .line 124
            aload 1 /* z */
            iconst_1
            lload 4 /* x1 */
            lastore
        20: .line 125
            aload 1 /* z */
            iconst_2
            lload 6 /* x2 */
            lastore
        21: .line 126
            aload 1 /* z */
            iconst_3
            lload 8 /* x3 */
            lastore
        22: .line 127
            aload 1 /* z */
            iconst_4
            lload 10 /* x4 */
            ldc 134217727
            land
            lastore
        23: .line 128
            return
        end local 20 // long t
        end local 18 // long x8
        end local 16 // long x7
        end local 14 // long x6
        end local 12 // long x5
        end local 10 // long x4
        end local 8 // long x3
        end local 6 // long x2
        end local 4 // long x1
        end local 2 // long x0
        end local 1 // long[] z
        end local 0 // long[] xx
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   24     0    xx  [J
            0   24     1     z  [J
            1   24     2    x0  J
            2   24     4    x1  J
            3   24     6    x2  J
            4   24     8    x3  J
            5   24    10    x4  J
            6   24    12    x5  J
            7   24    14    x6  J
            8   24    16    x7  J
            9   24    18    x8  J
           18   24    20     t  J
    MethodParameters:
      Name  Flags
      xx    
      z     

  public static void reduce37(long[], int);
    descriptor: ([JI)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=9, locals=6, args_size=2
        start local 0 // long[] z
        start local 1 // int zOff
         0: .line 132
            aload 0 /* z */
            iload 1 /* zOff */
            iconst_4
            iadd
            laload
            lstore 2 /* z4 */
        start local 2 // long z4
         1: lload 2 /* z4 */
            bipush 27
            lushr
            lstore 4 /* t */
        start local 4 // long t
         2: .line 133
            aload 0 /* z */
            iload 1 /* zOff */
            dup2
            laload
            lload 4 /* t */
            lload 4 /* t */
            iconst_5
            lshl
            lxor
            lload 4 /* t */
            bipush 7
            lshl
            lxor
            lload 4 /* t */
            bipush 12
            lshl
            lxor
            lxor
            lastore
         3: .line 134
            aload 0 /* z */
            iload 1 /* zOff */
            iconst_4
            iadd
            lload 2 /* z4 */
            ldc 134217727
            land
            lastore
         4: .line 135
            return
        end local 4 // long t
        end local 2 // long z4
        end local 1 // int zOff
        end local 0 // long[] z
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     z  [J
            0    5     1  zOff  I
            1    5     2    z4  J
            2    5     4     t  J
    MethodParameters:
      Name  Flags
      z     
      zOff  

  public static void sqrt(long[], long[]);
    descriptor: ([J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=8, locals=13, args_size=2
        start local 0 // long[] x
        start local 1 // long[] z
         0: .line 139
            invokestatic org.bouncycastle.math.raw.Nat320.create64:()[J
            astore 2 /* odd */
        start local 2 // long[] odd
         1: .line 142
            aload 0 /* x */
            iconst_0
            laload
            invokestatic org.bouncycastle.math.raw.Interleave.unshuffle:(J)J
            lstore 3 /* u0 */
        start local 3 // long u0
         2: aload 0 /* x */
            iconst_1
            laload
            invokestatic org.bouncycastle.math.raw.Interleave.unshuffle:(J)J
            lstore 5 /* u1 */
        start local 5 // long u1
         3: .line 143
            lload 3 /* u0 */
            ldc 4294967295
            land
            lload 5 /* u1 */
            bipush 32
            lshl
            lor
            lstore 7 /* e0 */
        start local 7 // long e0
         4: .line 144
            aload 2 /* odd */
            iconst_0
            lload 3 /* u0 */
            bipush 32
            lushr
            lload 5 /* u1 */
            ldc -4294967296
            land
            lor
            lastore
         5: .line 146
            aload 0 /* x */
            iconst_2
            laload
            invokestatic org.bouncycastle.math.raw.Interleave.unshuffle:(J)J
            lstore 3 /* u0 */
            aload 0 /* x */
            iconst_3
            laload
            invokestatic org.bouncycastle.math.raw.Interleave.unshuffle:(J)J
            lstore 5 /* u1 */
         6: .line 147
            lload 3 /* u0 */
            ldc 4294967295
            land
            lload 5 /* u1 */
            bipush 32
            lshl
            lor
            lstore 9 /* e1 */
        start local 9 // long e1
         7: .line 148
            aload 2 /* odd */
            iconst_1
            lload 3 /* u0 */
            bipush 32
            lushr
            lload 5 /* u1 */
            ldc -4294967296
            land
            lor
            lastore
         8: .line 150
            aload 0 /* x */
            iconst_4
            laload
            invokestatic org.bouncycastle.math.raw.Interleave.unshuffle:(J)J
            lstore 3 /* u0 */
         9: .line 151
            lload 3 /* u0 */
            ldc 4294967295
            land
            lstore 11 /* e2 */
        start local 11 // long e2
        10: .line 152
            aload 2 /* odd */
            iconst_2
            lload 3 /* u0 */
            bipush 32
            lushr
            lastore
        11: .line 154
            aload 2 /* odd */
            getstatic org.bouncycastle.math.ec.custom.sec.SecT283Field.ROOT_Z:[J
            aload 1 /* z */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.multiply:([J[J[J)V
        12: .line 156
            aload 1 /* z */
            iconst_0
            dup2
            laload
            lload 7 /* e0 */
            lxor
            lastore
        13: .line 157
            aload 1 /* z */
            iconst_1
            dup2
            laload
            lload 9 /* e1 */
            lxor
            lastore
        14: .line 158
            aload 1 /* z */
            iconst_2
            dup2
            laload
            lload 11 /* e2 */
            lxor
            lastore
        15: .line 159
            return
        end local 11 // long e2
        end local 9 // long e1
        end local 7 // long e0
        end local 5 // long u1
        end local 3 // long u0
        end local 2 // long[] odd
        end local 1 // long[] z
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0     x  [J
            0   16     1     z  [J
            1   16     2   odd  [J
            2   16     3    u0  J
            3   16     5    u1  J
            4   16     7    e0  J
            7   16     9    e1  J
           10   16    11    e2  J
    MethodParameters:
      Name  Flags
      x     
      z     

  public static void square(long[], long[]);
    descriptor: ([J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // long[] x
        start local 1 // long[] z
         0: .line 163
            bipush 9
            invokestatic org.bouncycastle.math.raw.Nat.create64:(I)[J
            astore 2 /* tt */
        start local 2 // long[] tt
         1: .line 164
            aload 0 /* x */
            aload 2 /* tt */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implSquare:([J[J)V
         2: .line 165
            aload 2 /* tt */
            aload 1 /* z */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.reduce:([J[J)V
         3: .line 166
            return
        end local 2 // long[] tt
        end local 1 // long[] z
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  [J
            0    4     1     z  [J
            1    4     2    tt  [J
    MethodParameters:
      Name  Flags
      x     
      z     

  public static void squareAddToExt(long[], long[]);
    descriptor: ([J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // long[] x
        start local 1 // long[] zz
         0: .line 170
            bipush 9
            invokestatic org.bouncycastle.math.raw.Nat.create64:(I)[J
            astore 2 /* tt */
        start local 2 // long[] tt
         1: .line 171
            aload 0 /* x */
            aload 2 /* tt */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implSquare:([J[J)V
         2: .line 172
            aload 1 /* zz */
            aload 2 /* tt */
            aload 1 /* zz */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.addExt:([J[J[J)V
         3: .line 173
            return
        end local 2 // long[] tt
        end local 1 // long[] zz
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0     x  [J
            0    4     1    zz  [J
            1    4     2    tt  [J
    MethodParameters:
      Name  Flags
      x     
      zz    

  public static void squareN(long[], int, long[]);
    descriptor: ([JI[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // long[] x
        start local 1 // int n
        start local 2 // long[] z
         0: .line 179
            bipush 9
            invokestatic org.bouncycastle.math.raw.Nat.create64:(I)[J
            astore 3 /* tt */
        start local 3 // long[] tt
         1: .line 180
            aload 0 /* x */
            aload 3 /* tt */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implSquare:([J[J)V
         2: .line 181
            aload 3 /* tt */
            aload 2 /* z */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.reduce:([J[J)V
         3: .line 183
            goto 6
         4: .line 185
      StackMap locals: long[]
      StackMap stack:
            aload 2 /* z */
            aload 3 /* tt */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implSquare:([J[J)V
         5: .line 186
            aload 3 /* tt */
            aload 2 /* z */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.reduce:([J[J)V
         6: .line 183
      StackMap locals:
      StackMap stack:
            iinc 1 /* n */ -1
            iload 1 /* n */
            ifgt 4
         7: .line 188
            return
        end local 3 // long[] tt
        end local 2 // long[] z
        end local 1 // int n
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0     x  [J
            0    8     1     n  I
            0    8     2     z  [J
            1    8     3    tt  [J
    MethodParameters:
      Name  Flags
      x     
      n     
      z     

  public static int trace(long[]);
    descriptor: ([J)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // long[] x
         0: .line 193
            aload 0 /* x */
            iconst_0
            laload
            aload 0 /* x */
            iconst_4
            laload
            bipush 15
            lushr
            lxor
            l2i
            iconst_1
            iand
            ireturn
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  [J
    MethodParameters:
      Name  Flags
      x     

  protected static void implCompactExt(long[]);
    descriptor: ([J)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=7, locals=21, args_size=1
        start local 0 // long[] zz
         0: .line 198
            aload 0 /* zz */
            iconst_0
            laload
            lstore 1 /* z0 */
        start local 1 // long z0
         1: aload 0 /* zz */
            iconst_1
            laload
            lstore 3 /* z1 */
        start local 3 // long z1
         2: aload 0 /* zz */
            iconst_2
            laload
            lstore 5 /* z2 */
        start local 5 // long z2
         3: aload 0 /* zz */
            iconst_3
            laload
            lstore 7 /* z3 */
        start local 7 // long z3
         4: aload 0 /* zz */
            iconst_4
            laload
            lstore 9 /* z4 */
        start local 9 // long z4
         5: .line 199
            aload 0 /* zz */
            iconst_5
            laload
            lstore 11 /* z5 */
        start local 11 // long z5
         6: aload 0 /* zz */
            bipush 6
            laload
            lstore 13 /* z6 */
        start local 13 // long z6
         7: aload 0 /* zz */
            bipush 7
            laload
            lstore 15 /* z7 */
        start local 15 // long z7
         8: aload 0 /* zz */
            bipush 8
            laload
            lstore 17 /* z8 */
        start local 17 // long z8
         9: aload 0 /* zz */
            bipush 9
            laload
            lstore 19 /* z9 */
        start local 19 // long z9
        10: .line 200
            aload 0 /* zz */
            iconst_0
            lload 1 /* z0 */
            lload 3 /* z1 */
            bipush 57
            lshl
            lxor
            lastore
        11: .line 201
            aload 0 /* zz */
            iconst_1
            lload 3 /* z1 */
            bipush 7
            lushr
            lload 5 /* z2 */
            bipush 50
            lshl
            lxor
            lastore
        12: .line 202
            aload 0 /* zz */
            iconst_2
            lload 5 /* z2 */
            bipush 14
            lushr
            lload 7 /* z3 */
            bipush 43
            lshl
            lxor
            lastore
        13: .line 203
            aload 0 /* zz */
            iconst_3
            lload 7 /* z3 */
            bipush 21
            lushr
            lload 9 /* z4 */
            bipush 36
            lshl
            lxor
            lastore
        14: .line 204
            aload 0 /* zz */
            iconst_4
            lload 9 /* z4 */
            bipush 28
            lushr
            lload 11 /* z5 */
            bipush 29
            lshl
            lxor
            lastore
        15: .line 205
            aload 0 /* zz */
            iconst_5
            lload 11 /* z5 */
            bipush 35
            lushr
            lload 13 /* z6 */
            bipush 22
            lshl
            lxor
            lastore
        16: .line 206
            aload 0 /* zz */
            bipush 6
            lload 13 /* z6 */
            bipush 42
            lushr
            lload 15 /* z7 */
            bipush 15
            lshl
            lxor
            lastore
        17: .line 207
            aload 0 /* zz */
            bipush 7
            lload 15 /* z7 */
            bipush 49
            lushr
            lload 17 /* z8 */
            bipush 8
            lshl
            lxor
            lastore
        18: .line 208
            aload 0 /* zz */
            bipush 8
            lload 17 /* z8 */
            bipush 56
            lushr
            lload 19 /* z9 */
            iconst_1
            lshl
            lxor
            lastore
        19: .line 209
            aload 0 /* zz */
            bipush 9
            lload 19 /* z9 */
            bipush 63
            lushr
            lastore
        20: .line 210
            return
        end local 19 // long z9
        end local 17 // long z8
        end local 15 // long z7
        end local 13 // long z6
        end local 11 // long z5
        end local 9 // long z4
        end local 7 // long z3
        end local 5 // long z2
        end local 3 // long z1
        end local 1 // long z0
        end local 0 // long[] zz
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   21     0    zz  [J
            1   21     1    z0  J
            2   21     3    z1  J
            3   21     5    z2  J
            4   21     7    z3  J
            5   21     9    z4  J
            6   21    11    z5  J
            7   21    13    z6  J
            8   21    15    z7  J
            9   21    17    z8  J
           10   21    19    z9  J
    MethodParameters:
      Name  Flags
      zz    

  protected static void implExpand(long[], long[]);
    descriptor: ([J[J)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=7, locals=12, args_size=2
        start local 0 // long[] x
        start local 1 // long[] z
         0: .line 214
            aload 0 /* x */
            iconst_0
            laload
            lstore 2 /* x0 */
        start local 2 // long x0
         1: aload 0 /* x */
            iconst_1
            laload
            lstore 4 /* x1 */
        start local 4 // long x1
         2: aload 0 /* x */
            iconst_2
            laload
            lstore 6 /* x2 */
        start local 6 // long x2
         3: aload 0 /* x */
            iconst_3
            laload
            lstore 8 /* x3 */
        start local 8 // long x3
         4: aload 0 /* x */
            iconst_4
            laload
            lstore 10 /* x4 */
        start local 10 // long x4
         5: .line 215
            aload 1 /* z */
            iconst_0
            lload 2 /* x0 */
            ldc 144115188075855871
            land
            lastore
         6: .line 216
            aload 1 /* z */
            iconst_1
            lload 2 /* x0 */
            bipush 57
            lushr
            lload 4 /* x1 */
            bipush 7
            lshl
            lxor
            ldc 144115188075855871
            land
            lastore
         7: .line 217
            aload 1 /* z */
            iconst_2
            lload 4 /* x1 */
            bipush 50
            lushr
            lload 6 /* x2 */
            bipush 14
            lshl
            lxor
            ldc 144115188075855871
            land
            lastore
         8: .line 218
            aload 1 /* z */
            iconst_3
            lload 6 /* x2 */
            bipush 43
            lushr
            lload 8 /* x3 */
            bipush 21
            lshl
            lxor
            ldc 144115188075855871
            land
            lastore
         9: .line 219
            aload 1 /* z */
            iconst_4
            lload 8 /* x3 */
            bipush 36
            lushr
            lload 10 /* x4 */
            bipush 28
            lshl
            lxor
            lastore
        10: .line 220
            return
        end local 10 // long x4
        end local 8 // long x3
        end local 6 // long x2
        end local 4 // long x1
        end local 2 // long x0
        end local 1 // long[] z
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0     x  [J
            0   11     1     z  [J
            1   11     2    x0  J
            2   11     4    x1  J
            3   11     6    x2  J
            4   11     8    x3  J
            5   11    10    x4  J
    MethodParameters:
      Name  Flags
      x     
      z     

  protected static void implMultiply(long[], long[], long[]);
    descriptor: ([J[J[J)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=6, locals=108, args_size=3
        start local 0 // long[] x
        start local 1 // long[] y
        start local 2 // long[] zz
         0: .line 243
            iconst_5
            newarray 11
            astore 3 /* a */
        start local 3 // long[] a
         1: iconst_5
            newarray 11
            astore 4 /* b */
        start local 4 // long[] b
         2: .line 244
            aload 0 /* x */
            aload 3 /* a */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implExpand:([J[J)V
         3: .line 245
            aload 1 /* y */
            aload 4 /* b */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implExpand:([J[J)V
         4: .line 247
            bipush 26
            newarray 11
            astore 5 /* p */
        start local 5 // long[] p
         5: .line 249
            aload 3 /* a */
            iconst_0
            laload
            aload 4 /* b */
            iconst_0
            laload
            aload 5 /* p */
            iconst_0
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
         6: .line 250
            aload 3 /* a */
            iconst_1
            laload
            aload 4 /* b */
            iconst_1
            laload
            aload 5 /* p */
            iconst_2
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
         7: .line 251
            aload 3 /* a */
            iconst_2
            laload
            aload 4 /* b */
            iconst_2
            laload
            aload 5 /* p */
            iconst_4
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
         8: .line 252
            aload 3 /* a */
            iconst_3
            laload
            aload 4 /* b */
            iconst_3
            laload
            aload 5 /* p */
            bipush 6
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
         9: .line 253
            aload 3 /* a */
            iconst_4
            laload
            aload 4 /* b */
            iconst_4
            laload
            aload 5 /* p */
            bipush 8
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
        10: .line 255
            aload 3 /* a */
            iconst_0
            laload
            aload 3 /* a */
            iconst_1
            laload
            lxor
            lstore 6 /* u0 */
        start local 6 // long u0
        11: aload 4 /* b */
            iconst_0
            laload
            aload 4 /* b */
            iconst_1
            laload
            lxor
            lstore 8 /* v0 */
        start local 8 // long v0
        12: .line 256
            aload 3 /* a */
            iconst_0
            laload
            aload 3 /* a */
            iconst_2
            laload
            lxor
            lstore 10 /* u1 */
        start local 10 // long u1
        13: aload 4 /* b */
            iconst_0
            laload
            aload 4 /* b */
            iconst_2
            laload
            lxor
            lstore 12 /* v1 */
        start local 12 // long v1
        14: .line 257
            aload 3 /* a */
            iconst_2
            laload
            aload 3 /* a */
            iconst_4
            laload
            lxor
            lstore 14 /* u2 */
        start local 14 // long u2
        15: aload 4 /* b */
            iconst_2
            laload
            aload 4 /* b */
            iconst_4
            laload
            lxor
            lstore 16 /* v2 */
        start local 16 // long v2
        16: .line 258
            aload 3 /* a */
            iconst_3
            laload
            aload 3 /* a */
            iconst_4
            laload
            lxor
            lstore 18 /* u3 */
        start local 18 // long u3
        17: aload 4 /* b */
            iconst_3
            laload
            aload 4 /* b */
            iconst_4
            laload
            lxor
            lstore 20 /* v3 */
        start local 20 // long v3
        18: .line 260
            lload 10 /* u1 */
            aload 3 /* a */
            iconst_3
            laload
            lxor
            lload 12 /* v1 */
            aload 4 /* b */
            iconst_3
            laload
            lxor
            aload 5 /* p */
            bipush 18
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
        19: .line 261
            lload 14 /* u2 */
            aload 3 /* a */
            iconst_1
            laload
            lxor
            lload 16 /* v2 */
            aload 4 /* b */
            iconst_1
            laload
            lxor
            aload 5 /* p */
            bipush 20
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
        20: .line 263
            lload 6 /* u0 */
            lload 18 /* u3 */
            lxor
            lstore 22 /* A4 */
        start local 22 // long A4
        21: lload 8 /* v0 */
            lload 20 /* v3 */
            lxor
            lstore 24 /* B4 */
        start local 24 // long B4
        22: .line 264
            lload 22 /* A4 */
            aload 3 /* a */
            iconst_2
            laload
            lxor
            lstore 26 /* A5 */
        start local 26 // long A5
        23: lload 24 /* B4 */
            aload 4 /* b */
            iconst_2
            laload
            lxor
            lstore 28 /* B5 */
        start local 28 // long B5
        24: .line 266
            lload 22 /* A4 */
            lload 24 /* B4 */
            aload 5 /* p */
            bipush 22
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
        25: .line 267
            lload 26 /* A5 */
            lload 28 /* B5 */
            aload 5 /* p */
            bipush 24
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
        26: .line 269
            lload 6 /* u0 */
            lload 8 /* v0 */
            aload 5 /* p */
            bipush 10
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
        27: .line 270
            lload 10 /* u1 */
            lload 12 /* v1 */
            aload 5 /* p */
            bipush 12
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
        28: .line 271
            lload 14 /* u2 */
            lload 16 /* v2 */
            aload 5 /* p */
            bipush 14
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
        29: .line 272
            lload 18 /* u3 */
            lload 20 /* v3 */
            aload 5 /* p */
            bipush 16
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implMulw:(JJ[JI)V
        30: .line 289
            aload 2 /* zz */
            iconst_0
            aload 5 /* p */
            iconst_0
            laload
            lastore
        31: .line 290
            aload 2 /* zz */
            bipush 9
            aload 5 /* p */
            bipush 9
            laload
            lastore
        32: .line 292
            aload 5 /* p */
            iconst_0
            laload
            aload 5 /* p */
            iconst_1
            laload
            lxor
            lstore 30 /* t1 */
        start local 30 // long t1
        33: .line 293
            lload 30 /* t1 */
            aload 5 /* p */
            iconst_2
            laload
            lxor
            lstore 32 /* t2 */
        start local 32 // long t2
        34: .line 294
            lload 32 /* t2 */
            aload 5 /* p */
            bipush 10
            laload
            lxor
            lstore 34 /* t3 */
        start local 34 // long t3
        35: .line 296
            aload 2 /* zz */
            iconst_1
            lload 34 /* t3 */
            lastore
        36: .line 298
            aload 5 /* p */
            iconst_3
            laload
            aload 5 /* p */
            iconst_4
            laload
            lxor
            lstore 36 /* t4 */
        start local 36 // long t4
        37: .line 299
            aload 5 /* p */
            bipush 11
            laload
            aload 5 /* p */
            bipush 12
            laload
            lxor
            lstore 38 /* t5 */
        start local 38 // long t5
        38: .line 300
            lload 36 /* t4 */
            lload 38 /* t5 */
            lxor
            lstore 40 /* t6 */
        start local 40 // long t6
        39: .line 301
            lload 32 /* t2 */
            lload 40 /* t6 */
            lxor
            lstore 42 /* t7 */
        start local 42 // long t7
        40: .line 303
            aload 2 /* zz */
            iconst_2
            lload 42 /* t7 */
            lastore
        41: .line 305
            lload 30 /* t1 */
            lload 36 /* t4 */
            lxor
            lstore 44 /* t8 */
        start local 44 // long t8
        42: .line 306
            aload 5 /* p */
            iconst_5
            laload
            aload 5 /* p */
            bipush 6
            laload
            lxor
            lstore 46 /* t9 */
        start local 46 // long t9
        43: .line 307
            lload 44 /* t8 */
            lload 46 /* t9 */
            lxor
            lstore 48 /* t10 */
        start local 48 // long t10
        44: .line 308
            lload 48 /* t10 */
            aload 5 /* p */
            bipush 8
            laload
            lxor
            lstore 50 /* t11 */
        start local 50 // long t11
        45: .line 309
            aload 5 /* p */
            bipush 13
            laload
            aload 5 /* p */
            bipush 14
            laload
            lxor
            lstore 52 /* t12 */
        start local 52 // long t12
        46: .line 310
            lload 50 /* t11 */
            lload 52 /* t12 */
            lxor
            lstore 54 /* t13 */
        start local 54 // long t13
        47: .line 311
            aload 5 /* p */
            bipush 18
            laload
            aload 5 /* p */
            bipush 22
            laload
            lxor
            lstore 56 /* t14 */
        start local 56 // long t14
        48: .line 312
            lload 56 /* t14 */
            aload 5 /* p */
            bipush 24
            laload
            lxor
            lstore 58 /* t15 */
        start local 58 // long t15
        49: .line 313
            lload 54 /* t13 */
            lload 58 /* t15 */
            lxor
            lstore 60 /* t16 */
        start local 60 // long t16
        50: .line 315
            aload 2 /* zz */
            iconst_3
            lload 60 /* t16 */
            lastore
        51: .line 317
            aload 5 /* p */
            bipush 7
            laload
            aload 5 /* p */
            bipush 8
            laload
            lxor
            lstore 62 /* t17 */
        start local 62 // long t17
        52: .line 318
            lload 62 /* t17 */
            aload 5 /* p */
            bipush 9
            laload
            lxor
            lstore 64 /* t18 */
        start local 64 // long t18
        53: .line 319
            lload 64 /* t18 */
            aload 5 /* p */
            bipush 17
            laload
            lxor
            lstore 66 /* t19 */
        start local 66 // long t19
        54: .line 321
            aload 2 /* zz */
            bipush 8
            lload 66 /* t19 */
            lastore
        55: .line 323
            lload 64 /* t18 */
            lload 46 /* t9 */
            lxor
            lstore 68 /* t20 */
        start local 68 // long t20
        56: .line 324
            aload 5 /* p */
            bipush 15
            laload
            aload 5 /* p */
            bipush 16
            laload
            lxor
            lstore 70 /* t21 */
        start local 70 // long t21
        57: .line 325
            lload 68 /* t20 */
            lload 70 /* t21 */
            lxor
            lstore 72 /* t22 */
        start local 72 // long t22
        58: .line 327
            aload 2 /* zz */
            bipush 7
            lload 72 /* t22 */
            lastore
        59: .line 329
            lload 72 /* t22 */
            lload 34 /* t3 */
            lxor
            lstore 74 /* t23 */
        start local 74 // long t23
        60: .line 330
            aload 5 /* p */
            bipush 19
            laload
            aload 5 /* p */
            bipush 20
            laload
            lxor
            lstore 76 /* t24 */
        start local 76 // long t24
        61: .line 332
            aload 5 /* p */
            bipush 25
            laload
            aload 5 /* p */
            bipush 24
            laload
            lxor
            lstore 78 /* t25 */
        start local 78 // long t25
        62: .line 333
            aload 5 /* p */
            bipush 18
            laload
            aload 5 /* p */
            bipush 23
            laload
            lxor
            lstore 80 /* t26 */
        start local 80 // long t26
        63: .line 334
            lload 76 /* t24 */
            lload 78 /* t25 */
            lxor
            lstore 82 /* t27 */
        start local 82 // long t27
        64: .line 335
            lload 82 /* t27 */
            lload 80 /* t26 */
            lxor
            lstore 84 /* t28 */
        start local 84 // long t28
        65: .line 336
            lload 84 /* t28 */
            lload 74 /* t23 */
            lxor
            lstore 86 /* t29 */
        start local 86 // long t29
        66: .line 338
            aload 2 /* zz */
            iconst_4
            lload 86 /* t29 */
            lastore
        67: .line 340
            lload 42 /* t7 */
            lload 66 /* t19 */
            lxor
            lstore 88 /* t30 */
        start local 88 // long t30
        68: .line 341
            lload 82 /* t27 */
            lload 88 /* t30 */
            lxor
            lstore 90 /* t31 */
        start local 90 // long t31
        69: .line 342
            aload 5 /* p */
            bipush 21
            laload
            aload 5 /* p */
            bipush 22
            laload
            lxor
            lstore 92 /* t32 */
        start local 92 // long t32
        70: .line 343
            lload 90 /* t31 */
            lload 92 /* t32 */
            lxor
            lstore 94 /* t33 */
        start local 94 // long t33
        71: .line 345
            aload 2 /* zz */
            iconst_5
            lload 94 /* t33 */
            lastore
        72: .line 347
            lload 50 /* t11 */
            aload 5 /* p */
            iconst_0
            laload
            lxor
            lstore 96 /* t34 */
        start local 96 // long t34
        73: .line 348
            lload 96 /* t34 */
            aload 5 /* p */
            bipush 9
            laload
            lxor
            lstore 98 /* t35 */
        start local 98 // long t35
        74: .line 349
            lload 98 /* t35 */
            lload 52 /* t12 */
            lxor
            lstore 100 /* t36 */
        start local 100 // long t36
        75: .line 350
            lload 100 /* t36 */
            aload 5 /* p */
            bipush 21
            laload
            lxor
            lstore 102 /* t37 */
        start local 102 // long t37
        76: .line 351
            lload 102 /* t37 */
            aload 5 /* p */
            bipush 23
            laload
            lxor
            lstore 104 /* t38 */
        start local 104 // long t38
        77: .line 352
            lload 104 /* t38 */
            aload 5 /* p */
            bipush 25
            laload
            lxor
            lstore 106 /* t39 */
        start local 106 // long t39
        78: .line 354
            aload 2 /* zz */
            bipush 6
            lload 106 /* t39 */
            lastore
        79: .line 356
            aload 2 /* zz */
            invokestatic org.bouncycastle.math.ec.custom.sec.SecT283Field.implCompactExt:([J)V
        80: .line 357
            return
        end local 106 // long t39
        end local 104 // long t38
        end local 102 // long t37
        end local 100 // long t36
        end local 98 // long t35
        end local 96 // long t34
        end local 94 // long t33
        end local 92 // long t32
        end local 90 // long t31
        end local 88 // long t30
        end local 86 // long t29
        end local 84 // long t28
        end local 82 // long t27
        end local 80 // long t26
        end local 78 // long t25
        end local 76 // long t24
        end local 74 // long t23
        end local 72 // long t22
        end local 70 // long t21
        end local 68 // long t20
        end local 66 // long t19
        end local 64 // long t18
        end local 62 // long t17
        end local 60 // long t16
        end local 58 // long t15
        end local 56 // long t14
        end local 54 // long t13
        end local 52 // long t12
        end local 50 // long t11
        end local 48 // long t10
        end local 46 // long t9
        end local 44 // long t8
        end local 42 // long t7
        end local 40 // long t6
        end local 38 // long t5
        end local 36 // long t4
        end local 34 // long t3
        end local 32 // long t2
        end local 30 // long t1
        end local 28 // long B5
        end local 26 // long A5
        end local 24 // long B4
        end local 22 // long A4
        end local 20 // long v3
        end local 18 // long u3
        end local 16 // long v2
        end local 14 // long u2
        end local 12 // long v1
        end local 10 // long u1
        end local 8 // long v0
        end local 6 // long u0
        end local 5 // long[] p
        end local 4 // long[] b
        end local 3 // long[] a
        end local 2 // long[] zz
        end local 1 // long[] y
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   81     0     x  [J
            0   81     1     y  [J
            0   81     2    zz  [J
            1   81     3     a  [J
            2   81     4     b  [J
            5   81     5     p  [J
           11   81     6    u0  J
           12   81     8    v0  J
           13   81    10    u1  J
           14   81    12    v1  J
           15   81    14    u2  J
           16   81    16    v2  J
           17   81    18    u3  J
           18   81    20    v3  J
           21   81    22    A4  J
           22   81    24    B4  J
           23   81    26    A5  J
           24   81    28    B5  J
           33   81    30    t1  J
           34   81    32    t2  J
           35   81    34    t3  J
           37   81    36    t4  J
           38   81    38    t5  J
           39   81    40    t6  J
           40   81    42    t7  J
           42   81    44    t8  J
           43   81    46    t9  J
           44   81    48   t10  J
           45   81    50   t11  J
           46   81    52   t12  J
           47   81    54   t13  J
           48   81    56   t14  J
           49   81    58   t15  J
           50   81    60   t16  J
           52   81    62   t17  J
           53   81    64   t18  J
           54   81    66   t19  J
           56   81    68   t20  J
           57   81    70   t21  J
           58   81    72   t22  J
           60   81    74   t23  J
           61   81    76   t24  J
           62   81    78   t25  J
           63   81    80   t26  J
           64   81    82   t27  J
           65   81    84   t28  J
           66   81    86   t29  J
           68   81    88   t30  J
           69   81    90   t31  J
           70   81    92   t32  J
           71   81    94   t33  J
           73   81    96   t34  J
           74   81    98   t35  J
           75   81   100   t36  J
           76   81   102   t37  J
           77   81   104   t38  J
           78   81   106   t39  J
    MethodParameters:
      Name  Flags
      x     
      y     
      zz    

  protected static void implMulw(long, long, long[], int);
    descriptor: (JJ[JI)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=7, locals=15, args_size=4
        start local 0 // long x
        start local 2 // long y
        start local 4 // long[] z
        start local 5 // int zOff
         0: .line 364
            bipush 8
            newarray 11
            astore 6 /* u */
        start local 6 // long[] u
         1: .line 366
            aload 6 /* u */
            iconst_1
            lload 2 /* y */
            lastore
         2: .line 367
            aload 6 /* u */
            iconst_2
            aload 6 /* u */
            iconst_1
            laload
            iconst_1
            lshl
            lastore
         3: .line 368
            aload 6 /* u */
            iconst_3
            aload 6 /* u */
            iconst_2
            laload
            lload 2 /* y */
            lxor
            lastore
         4: .line 369
            aload 6 /* u */
            iconst_4
            aload 6 /* u */
            iconst_2
            laload
            iconst_1
            lshl
            lastore
         5: .line 370
            aload 6 /* u */
            iconst_5
            aload 6 /* u */
            iconst_4
            laload
            lload 2 /* y */
            lxor
            lastore
         6: .line 371
            aload 6 /* u */
            bipush 6
            aload 6 /* u */
            iconst_3
            laload
            iconst_1
            lshl
            lastore
         7: .line 372
            aload 6 /* u */
            bipush 7
            aload 6 /* u */
            bipush 6
            laload
            lload 2 /* y */
            lxor
            lastore
         8: .line 374
            lload 0 /* x */
            l2i
            istore 7 /* j */
        start local 7 // int j
         9: .line 375
            lconst_0
            lstore 10 /* h */
        start local 10 // long h
        10: aload 6 /* u */
            iload 7 /* j */
            bipush 7
            iand
            laload
            lstore 12 /* l */
        start local 12 // long l
        11: .line 376
            bipush 48
            istore 14 /* k */
        start local 14 // int k
        12: .line 379
      StackMap locals: long long long[] int long[] int top top long long int
      StackMap stack:
            lload 0 /* x */
            iload 14 /* k */
            lushr
            l2i
            istore 7 /* j */
        13: .line 380
            aload 6 /* u */
            iload 7 /* j */
            bipush 7
            iand
            laload
        14: .line 381
            aload 6 /* u */
            iload 7 /* j */
            iconst_3
            iushr
            bipush 7
            iand
            laload
            iconst_3
            lshl
        15: .line 380
            lxor
        16: .line 382
            aload 6 /* u */
            iload 7 /* j */
            bipush 6
            iushr
            bipush 7
            iand
            laload
            bipush 6
            lshl
        17: .line 380
            lxor
            lstore 8 /* g */
        start local 8 // long g
        18: .line 383
            lload 12 /* l */
            lload 8 /* g */
            iload 14 /* k */
            lshl
            lxor
            lstore 12 /* l */
        19: .line 384
            lload 10 /* h */
            lload 8 /* g */
            iload 14 /* k */
            ineg
            lushr
            lxor
            lstore 10 /* h */
        20: .line 386
            iinc 14 /* k */ -9
            iload 14 /* k */
        21: .line 377
            ifgt 12
        22: .line 388
            lload 10 /* h */
            lload 0 /* x */
            ldc 72198606942111744
            land
            lload 2 /* y */
            bipush 7
            lshl
            bipush 63
            lshr
            land
            bipush 8
            lushr
            lxor
            lstore 10 /* h */
        23: .line 392
            aload 4 /* z */
            iload 5 /* zOff */
            lload 12 /* l */
            ldc 144115188075855871
            land
            lastore
        24: .line 393
            aload 4 /* z */
            iload 5 /* zOff */
            iconst_1
            iadd
            lload 12 /* l */
            bipush 57
            lushr
            lload 10 /* h */
            bipush 7
            lshl
            lxor
            lastore
        25: .line 394
            return
        end local 14 // int k
        end local 12 // long l
        end local 10 // long h
        end local 8 // long g
        end local 7 // int j
        end local 6 // long[] u
        end local 5 // int zOff
        end local 4 // long[] z
        end local 2 // long y
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   26     0     x  J
            0   26     2     y  J
            0   26     4     z  [J
            0   26     5  zOff  I
            1   26     6     u  [J
            9   26     7     j  I
           18   26     8     g  J
           10   26    10     h  J
           11   26    12     l  J
           12   26    14     k  I
    MethodParameters:
      Name  Flags
      x     
      y     
      z     
      zOff  

  protected static void implSquare(long[], long[]);
    descriptor: ([J[J)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // long[] x
        start local 1 // long[] zz
         0: .line 398
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 4
         2: .line 400
      StackMap locals: int
      StackMap stack:
            aload 0 /* x */
            iload 2 /* i */
            laload
            aload 1 /* zz */
            iload 2 /* i */
            iconst_1
            ishl
            invokestatic org.bouncycastle.math.raw.Interleave.expand64To128:(J[JI)V
         3: .line 398
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* i */
            iconst_4
            if_icmplt 2
        end local 2 // int i
         5: .line 402
            aload 1 /* zz */
            bipush 8
            aload 0 /* x */
            iconst_4
            laload
            l2i
            invokestatic org.bouncycastle.math.raw.Interleave.expand32to64:(I)J
            lastore
         6: .line 403
            return
        end local 1 // long[] zz
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     x  [J
            0    7     1    zz  [J
            1    5     2     i  I
    MethodParameters:
      Name  Flags
      x     
      zz    
}
SourceFile: "SecT283Field.java"