public abstract class org.bouncycastle.math.raw.Nat576
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.bouncycastle.math.raw.Nat576
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.bouncycastle.math.raw.Nat576 this
         0: .line 7
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // org.bouncycastle.math.raw.Nat576 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/bouncycastle/math/raw/Nat576;

  public static void copy64(long[], long[]);
    descriptor: ([J[J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // long[] x
        start local 1 // long[] z
         0: .line 11
            aload 1 /* z */
            iconst_0
            aload 0 /* x */
            iconst_0
            laload
            lastore
         1: .line 12
            aload 1 /* z */
            iconst_1
            aload 0 /* x */
            iconst_1
            laload
            lastore
         2: .line 13
            aload 1 /* z */
            iconst_2
            aload 0 /* x */
            iconst_2
            laload
            lastore
         3: .line 14
            aload 1 /* z */
            iconst_3
            aload 0 /* x */
            iconst_3
            laload
            lastore
         4: .line 15
            aload 1 /* z */
            iconst_4
            aload 0 /* x */
            iconst_4
            laload
            lastore
         5: .line 16
            aload 1 /* z */
            iconst_5
            aload 0 /* x */
            iconst_5
            laload
            lastore
         6: .line 17
            aload 1 /* z */
            bipush 6
            aload 0 /* x */
            bipush 6
            laload
            lastore
         7: .line 18
            aload 1 /* z */
            bipush 7
            aload 0 /* x */
            bipush 7
            laload
            lastore
         8: .line 19
            aload 1 /* z */
            bipush 8
            aload 0 /* x */
            bipush 8
            laload
            lastore
         9: .line 20
            return
        end local 1 // long[] z
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0     x  [J
            0   10     1     z  [J
    MethodParameters:
      Name  Flags
      x     
      z     

  public static void copy64(long[], int, long[], int);
    descriptor: ([JI[JI)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // long[] x
        start local 1 // int xOff
        start local 2 // long[] z
        start local 3 // int zOff
         0: .line 24
            aload 2 /* z */
            iload 3 /* zOff */
            iconst_0
            iadd
            aload 0 /* x */
            iload 1 /* xOff */
            iconst_0
            iadd
            laload
            lastore
         1: .line 25
            aload 2 /* z */
            iload 3 /* zOff */
            iconst_1
            iadd
            aload 0 /* x */
            iload 1 /* xOff */
            iconst_1
            iadd
            laload
            lastore
         2: .line 26
            aload 2 /* z */
            iload 3 /* zOff */
            iconst_2
            iadd
            aload 0 /* x */
            iload 1 /* xOff */
            iconst_2
            iadd
            laload
            lastore
         3: .line 27
            aload 2 /* z */
            iload 3 /* zOff */
            iconst_3
            iadd
            aload 0 /* x */
            iload 1 /* xOff */
            iconst_3
            iadd
            laload
            lastore
         4: .line 28
            aload 2 /* z */
            iload 3 /* zOff */
            iconst_4
            iadd
            aload 0 /* x */
            iload 1 /* xOff */
            iconst_4
            iadd
            laload
            lastore
         5: .line 29
            aload 2 /* z */
            iload 3 /* zOff */
            iconst_5
            iadd
            aload 0 /* x */
            iload 1 /* xOff */
            iconst_5
            iadd
            laload
            lastore
         6: .line 30
            aload 2 /* z */
            iload 3 /* zOff */
            bipush 6
            iadd
            aload 0 /* x */
            iload 1 /* xOff */
            bipush 6
            iadd
            laload
            lastore
         7: .line 31
            aload 2 /* z */
            iload 3 /* zOff */
            bipush 7
            iadd
            aload 0 /* x */
            iload 1 /* xOff */
            bipush 7
            iadd
            laload
            lastore
         8: .line 32
            aload 2 /* z */
            iload 3 /* zOff */
            bipush 8
            iadd
            aload 0 /* x */
            iload 1 /* xOff */
            bipush 8
            iadd
            laload
            lastore
         9: .line 33
            return
        end local 3 // int zOff
        end local 2 // long[] z
        end local 1 // int xOff
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0     x  [J
            0   10     1  xOff  I
            0   10     2     z  [J
            0   10     3  zOff  I
    MethodParameters:
      Name  Flags
      x     
      xOff  
      z     
      zOff  

  public static long[] create64();
    descriptor: ()[J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 37
            bipush 9
            newarray 11
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static long[] createExt64();
    descriptor: ()[J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 42
            bipush 18
            newarray 11
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static boolean eq64(long[], long[]);
    descriptor: ([J[J)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // long[] x
        start local 1 // long[] y
         0: .line 47
            bipush 8
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 49
      StackMap locals: int
      StackMap stack:
            aload 0 /* x */
            iload 2 /* i */
            laload
            aload 1 /* y */
            iload 2 /* i */
            laload
            lcmp
            ifeq 4
         3: .line 51
            iconst_0
            ireturn
         4: .line 47
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ -1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            ifge 2
        end local 2 // int i
         6: .line 54
            iconst_1
            ireturn
        end local 1 // long[] y
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     x  [J
            0    7     1     y  [J
            1    6     2     i  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public static long[] fromBigInteger64(java.math.BigInteger);
    descriptor: (Ljava/math/BigInteger;)[J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.math.BigInteger x
         0: .line 59
            aload 0 /* x */
            invokevirtual java.math.BigInteger.signum:()I
            iflt 1
            aload 0 /* x */
            invokevirtual java.math.BigInteger.bitLength:()I
            sipush 576
            if_icmple 2
         1: .line 61
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            invokespecial java.lang.IllegalArgumentException.<init>:()V
            athrow
         2: .line 64
      StackMap locals:
      StackMap stack:
            invokestatic org.bouncycastle.math.raw.Nat576.create64:()[J
            astore 1 /* z */
        start local 1 // long[] z
         3: .line 65
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         4: .line 66
            goto 7
         5: .line 68
      StackMap locals: long[] int
      StackMap stack:
            aload 1 /* z */
            iload 2 /* i */
            iinc 2 /* i */ 1
            aload 0 /* x */
            invokevirtual java.math.BigInteger.longValue:()J
            lastore
         6: .line 69
            aload 0 /* x */
            bipush 64
            invokevirtual java.math.BigInteger.shiftRight:(I)Ljava/math/BigInteger;
            astore 0 /* x */
         7: .line 66
      StackMap locals:
      StackMap stack:
            aload 0 /* x */
            invokevirtual java.math.BigInteger.signum:()I
            ifne 5
         8: .line 71
            aload 1 /* z */
            areturn
        end local 2 // int i
        end local 1 // long[] z
        end local 0 // java.math.BigInteger x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     x  Ljava/math/BigInteger;
            3    9     1     z  [J
            4    9     2     i  I
    MethodParameters:
      Name  Flags
      x     

  public static boolean isOne64(long[]);
    descriptor: ([J)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long[] x
         0: .line 76
            aload 0 /* x */
            iconst_0
            laload
            lconst_1
            lcmp
            ifeq 2
         1: .line 78
            iconst_0
            ireturn
         2: .line 80
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 1 /* i */
        start local 1 // int i
         3: goto 7
         4: .line 82
      StackMap locals: int
      StackMap stack:
            aload 0 /* x */
            iload 1 /* i */
            laload
            lconst_0
            lcmp
            ifeq 6
         5: .line 84
            iconst_0
            ireturn
         6: .line 80
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 1 /* i */
            bipush 9
            if_icmplt 4
        end local 1 // int i
         8: .line 87
            iconst_1
            ireturn
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     x  [J
            3    8     1     i  I
    MethodParameters:
      Name  Flags
      x     

  public static boolean isZero64(long[]);
    descriptor: ([J)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // long[] x
         0: .line 92
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 5
         2: .line 94
      StackMap locals: int
      StackMap stack:
            aload 0 /* x */
            iload 1 /* i */
            laload
            lconst_0
            lcmp
            ifeq 4
         3: .line 96
            iconst_0
            ireturn
         4: .line 92
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 1 /* i */
            bipush 9
            if_icmplt 2
        end local 1 // int i
         6: .line 99
            iconst_1
            ireturn
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     x  [J
            1    6     1     i  I
    MethodParameters:
      Name  Flags
      x     

  public static java.math.BigInteger toBigInteger64(long[]);
    descriptor: ([J)Ljava/math/BigInteger;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // long[] x
         0: .line 104
            bipush 72
            newarray 8
            astore 1 /* bs */
        start local 1 // byte[] bs
         1: .line 105
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 7
         3: .line 107
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* x */
            iload 2 /* i */
            laload
            lstore 3 /* x_i */
        start local 3 // long x_i
         4: .line 108
            lload 3 /* x_i */
            lconst_0
            lcmp
            ifeq 6
         5: .line 110
            lload 3 /* x_i */
            aload 1 /* bs */
            bipush 8
            iload 2 /* i */
            isub
            iconst_3
            ishl
            invokestatic org.bouncycastle.util.Pack.longToBigEndian:(J[BI)V
        end local 3 // long x_i
         6: .line 105
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            bipush 9
            if_icmplt 3
        end local 2 // int i
         8: .line 113
            new java.math.BigInteger
            dup
            iconst_1
            aload 1 /* bs */
            invokespecial java.math.BigInteger.<init>:(I[B)V
            areturn
        end local 1 // byte[] bs
        end local 0 // long[] x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     x  [J
            1    9     1    bs  [B
            2    8     2     i  I
            4    6     3   x_i  J
    MethodParameters:
      Name  Flags
      x     
}
SourceFile: "Nat576.java"