public class org.bouncycastle.math.raw.Interleave
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.bouncycastle.math.raw.Interleave
  super_class: java.lang.Object
{
  private static final long M32;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1431655765

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

  private static final long M64R;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: -6148914691236517206

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

  public static int expand8to16(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int x
         0: .line 53
            iload 0 /* x */
            sipush 255
            iand
            istore 0 /* x */
         1: .line 54
            iload 0 /* x */
            iload 0 /* x */
            iconst_4
            ishl
            ior
            sipush 3855
            iand
            istore 0 /* x */
         2: .line 55
            iload 0 /* x */
            iload 0 /* x */
            iconst_2
            ishl
            ior
            sipush 13107
            iand
            istore 0 /* x */
         3: .line 56
            iload 0 /* x */
            iload 0 /* x */
            iconst_1
            ishl
            ior
            sipush 21845
            iand
            istore 0 /* x */
         4: .line 57
            iload 0 /* x */
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     x  I
    MethodParameters:
      Name  Flags
      x     

  public static int expand16to32(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int x
         0: .line 62
            iload 0 /* x */
            ldc 65535
            iand
            istore 0 /* x */
         1: .line 63
            iload 0 /* x */
            iload 0 /* x */
            bipush 8
            ishl
            ior
            ldc 16711935
            iand
            istore 0 /* x */
         2: .line 64
            iload 0 /* x */
            iload 0 /* x */
            iconst_4
            ishl
            ior
            ldc 252645135
            iand
            istore 0 /* x */
         3: .line 65
            iload 0 /* x */
            iload 0 /* x */
            iconst_2
            ishl
            ior
            ldc 858993459
            iand
            istore 0 /* x */
         4: .line 66
            iload 0 /* x */
            iload 0 /* x */
            iconst_1
            ishl
            ior
            ldc 1431655765
            iand
            istore 0 /* x */
         5: .line 67
            iload 0 /* x */
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     x  I
    MethodParameters:
      Name  Flags
      x     

  public static long expand32to64(int);
    descriptor: (I)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // int x
         0: .line 74
            iload 0 /* x */
            iload 0 /* x */
            bipush 8
            iushr
            ixor
            ldc 65280
            iand
            istore 1 /* t */
        start local 1 // int t
         1: iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            bipush 8
            ishl
            ixor
            ixor
            istore 0 /* x */
         2: .line 75
            iload 0 /* x */
            iload 0 /* x */
            iconst_4
            iushr
            ixor
            ldc 15728880
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_4
            ishl
            ixor
            ixor
            istore 0 /* x */
         3: .line 76
            iload 0 /* x */
            iload 0 /* x */
            iconst_2
            iushr
            ixor
            ldc 202116108
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_2
            ishl
            ixor
            ixor
            istore 0 /* x */
         4: .line 77
            iload 0 /* x */
            iload 0 /* x */
            iconst_1
            iushr
            ixor
            ldc 572662306
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_1
            ishl
            ixor
            ixor
            istore 0 /* x */
         5: .line 79
            iload 0 /* x */
            iconst_1
            iushr
            i2l
            ldc 1431655765
            land
            bipush 32
            lshl
            iload 0 /* x */
            i2l
            ldc 1431655765
            land
            lor
            lreturn
        end local 1 // int t
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     x  I
            1    6     1     t  I
    MethodParameters:
      Name  Flags
      x     

  public static void expand64To128(long, long[], int);
    descriptor: (J[JI)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=6, args_size=3
        start local 0 // long x
        start local 2 // long[] z
        start local 3 // int zOff
         0: .line 86
            lload 0 /* x */
            lload 0 /* x */
            bipush 16
            lushr
            lxor
            ldc 4294901760
            land
            lstore 4 /* t */
        start local 4 // long t
         1: lload 0 /* x */
            lload 4 /* t */
            lload 4 /* t */
            bipush 16
            lshl
            lxor
            lxor
            lstore 0 /* x */
         2: .line 87
            lload 0 /* x */
            lload 0 /* x */
            bipush 8
            lushr
            lxor
            ldc 280375465148160
            land
            lstore 4 /* t */
            lload 0 /* x */
            lload 4 /* t */
            lload 4 /* t */
            bipush 8
            lshl
            lxor
            lxor
            lstore 0 /* x */
         3: .line 88
            lload 0 /* x */
            lload 0 /* x */
            iconst_4
            lushr
            lxor
            ldc 67555025218437360
            land
            lstore 4 /* t */
            lload 0 /* x */
            lload 4 /* t */
            lload 4 /* t */
            iconst_4
            lshl
            lxor
            lxor
            lstore 0 /* x */
         4: .line 89
            lload 0 /* x */
            lload 0 /* x */
            iconst_2
            lushr
            lxor
            ldc 868082074056920076
            land
            lstore 4 /* t */
            lload 0 /* x */
            lload 4 /* t */
            lload 4 /* t */
            iconst_2
            lshl
            lxor
            lxor
            lstore 0 /* x */
         5: .line 90
            lload 0 /* x */
            lload 0 /* x */
            iconst_1
            lushr
            lxor
            ldc 2459565876494606882
            land
            lstore 4 /* t */
            lload 0 /* x */
            lload 4 /* t */
            lload 4 /* t */
            iconst_1
            lshl
            lxor
            lxor
            lstore 0 /* x */
         6: .line 92
            aload 2 /* z */
            iload 3 /* zOff */
            lload 0 /* x */
            ldc 6148914691236517205
            land
            lastore
         7: .line 93
            aload 2 /* z */
            iload 3 /* zOff */
            iconst_1
            iadd
            lload 0 /* x */
            iconst_1
            lushr
            ldc 6148914691236517205
            land
            lastore
         8: .line 94
            return
        end local 4 // long t
        end local 3 // int zOff
        end local 2 // long[] z
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     x  J
            0    9     2     z  [J
            0    9     3  zOff  I
            1    9     4     t  J
    MethodParameters:
      Name  Flags
      x     
      z     
      zOff  

  public static void expand64To128Rev(long, long[], int);
    descriptor: (J[JI)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=6, args_size=3
        start local 0 // long x
        start local 2 // long[] z
        start local 3 // int zOff
         0: .line 100
            lload 0 /* x */
            lload 0 /* x */
            bipush 16
            lushr
            lxor
            ldc 4294901760
            land
            lstore 4 /* t */
        start local 4 // long t
         1: lload 0 /* x */
            lload 4 /* t */
            lload 4 /* t */
            bipush 16
            lshl
            lxor
            lxor
            lstore 0 /* x */
         2: .line 101
            lload 0 /* x */
            lload 0 /* x */
            bipush 8
            lushr
            lxor
            ldc 280375465148160
            land
            lstore 4 /* t */
            lload 0 /* x */
            lload 4 /* t */
            lload 4 /* t */
            bipush 8
            lshl
            lxor
            lxor
            lstore 0 /* x */
         3: .line 102
            lload 0 /* x */
            lload 0 /* x */
            iconst_4
            lushr
            lxor
            ldc 67555025218437360
            land
            lstore 4 /* t */
            lload 0 /* x */
            lload 4 /* t */
            lload 4 /* t */
            iconst_4
            lshl
            lxor
            lxor
            lstore 0 /* x */
         4: .line 103
            lload 0 /* x */
            lload 0 /* x */
            iconst_2
            lushr
            lxor
            ldc 868082074056920076
            land
            lstore 4 /* t */
            lload 0 /* x */
            lload 4 /* t */
            lload 4 /* t */
            iconst_2
            lshl
            lxor
            lxor
            lstore 0 /* x */
         5: .line 104
            lload 0 /* x */
            lload 0 /* x */
            iconst_1
            lushr
            lxor
            ldc 2459565876494606882
            land
            lstore 4 /* t */
            lload 0 /* x */
            lload 4 /* t */
            lload 4 /* t */
            iconst_1
            lshl
            lxor
            lxor
            lstore 0 /* x */
         6: .line 106
            aload 2 /* z */
            iload 3 /* zOff */
            lload 0 /* x */
            ldc -6148914691236517206
            land
            lastore
         7: .line 107
            aload 2 /* z */
            iload 3 /* zOff */
            iconst_1
            iadd
            lload 0 /* x */
            iconst_1
            lshl
            ldc -6148914691236517206
            land
            lastore
         8: .line 108
            return
        end local 4 // long t
        end local 3 // int zOff
        end local 2 // long[] z
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    9     0     x  J
            0    9     2     z  [J
            0    9     3  zOff  I
            1    9     4     t  J
    MethodParameters:
      Name  Flags
      x     
      z     
      zOff  

  public static int shuffle(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // int x
         0: .line 114
            iload 0 /* x */
            iload 0 /* x */
            bipush 8
            iushr
            ixor
            ldc 65280
            iand
            istore 1 /* t */
        start local 1 // int t
         1: iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            bipush 8
            ishl
            ixor
            ixor
            istore 0 /* x */
         2: .line 115
            iload 0 /* x */
            iload 0 /* x */
            iconst_4
            iushr
            ixor
            ldc 15728880
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_4
            ishl
            ixor
            ixor
            istore 0 /* x */
         3: .line 116
            iload 0 /* x */
            iload 0 /* x */
            iconst_2
            iushr
            ixor
            ldc 202116108
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_2
            ishl
            ixor
            ixor
            istore 0 /* x */
         4: .line 117
            iload 0 /* x */
            iload 0 /* x */
            iconst_1
            iushr
            ixor
            ldc 572662306
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_1
            ishl
            ixor
            ixor
            istore 0 /* x */
         5: .line 118
            iload 0 /* x */
            ireturn
        end local 1 // int t
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     x  I
            1    6     1     t  I
    MethodParameters:
      Name  Flags
      x     

  public static long shuffle(long);
    descriptor: (J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=1
        start local 0 // long x
         0: .line 125
            lload 0 /* x */
            lload 0 /* x */
            bipush 16
            lushr
            lxor
            ldc 4294901760
            land
            lstore 2 /* t */
        start local 2 // long t
         1: lload 0 /* x */
            lload 2 /* t */
            lload 2 /* t */
            bipush 16
            lshl
            lxor
            lxor
            lstore 0 /* x */
         2: .line 126
            lload 0 /* x */
            lload 0 /* x */
            bipush 8
            lushr
            lxor
            ldc 280375465148160
            land
            lstore 2 /* t */
            lload 0 /* x */
            lload 2 /* t */
            lload 2 /* t */
            bipush 8
            lshl
            lxor
            lxor
            lstore 0 /* x */
         3: .line 127
            lload 0 /* x */
            lload 0 /* x */
            iconst_4
            lushr
            lxor
            ldc 67555025218437360
            land
            lstore 2 /* t */
            lload 0 /* x */
            lload 2 /* t */
            lload 2 /* t */
            iconst_4
            lshl
            lxor
            lxor
            lstore 0 /* x */
         4: .line 128
            lload 0 /* x */
            lload 0 /* x */
            iconst_2
            lushr
            lxor
            ldc 868082074056920076
            land
            lstore 2 /* t */
            lload 0 /* x */
            lload 2 /* t */
            lload 2 /* t */
            iconst_2
            lshl
            lxor
            lxor
            lstore 0 /* x */
         5: .line 129
            lload 0 /* x */
            lload 0 /* x */
            iconst_1
            lushr
            lxor
            ldc 2459565876494606882
            land
            lstore 2 /* t */
            lload 0 /* x */
            lload 2 /* t */
            lload 2 /* t */
            iconst_1
            lshl
            lxor
            lxor
            lstore 0 /* x */
         6: .line 130
            lload 0 /* x */
            lreturn
        end local 2 // long t
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     x  J
            1    7     2     t  J
    MethodParameters:
      Name  Flags
      x     

  public static int shuffle2(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // int x
         0: .line 137
            iload 0 /* x */
            iload 0 /* x */
            bipush 7
            iushr
            ixor
            ldc 11141290
            iand
            istore 1 /* t */
        start local 1 // int t
         1: iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            bipush 7
            ishl
            ixor
            ixor
            istore 0 /* x */
         2: .line 138
            iload 0 /* x */
            iload 0 /* x */
            bipush 14
            iushr
            ixor
            ldc 52428
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            bipush 14
            ishl
            ixor
            ixor
            istore 0 /* x */
         3: .line 139
            iload 0 /* x */
            iload 0 /* x */
            iconst_4
            iushr
            ixor
            ldc 15728880
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_4
            ishl
            ixor
            ixor
            istore 0 /* x */
         4: .line 140
            iload 0 /* x */
            iload 0 /* x */
            bipush 8
            iushr
            ixor
            ldc 65280
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            bipush 8
            ishl
            ixor
            ixor
            istore 0 /* x */
         5: .line 141
            iload 0 /* x */
            ireturn
        end local 1 // int t
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     x  I
            1    6     1     t  I
    MethodParameters:
      Name  Flags
      x     

  public static int unshuffle(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // int x
         0: .line 148
            iload 0 /* x */
            iload 0 /* x */
            iconst_1
            iushr
            ixor
            ldc 572662306
            iand
            istore 1 /* t */
        start local 1 // int t
         1: iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_1
            ishl
            ixor
            ixor
            istore 0 /* x */
         2: .line 149
            iload 0 /* x */
            iload 0 /* x */
            iconst_2
            iushr
            ixor
            ldc 202116108
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_2
            ishl
            ixor
            ixor
            istore 0 /* x */
         3: .line 150
            iload 0 /* x */
            iload 0 /* x */
            iconst_4
            iushr
            ixor
            ldc 15728880
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_4
            ishl
            ixor
            ixor
            istore 0 /* x */
         4: .line 151
            iload 0 /* x */
            iload 0 /* x */
            bipush 8
            iushr
            ixor
            ldc 65280
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            bipush 8
            ishl
            ixor
            ixor
            istore 0 /* x */
         5: .line 152
            iload 0 /* x */
            ireturn
        end local 1 // int t
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     x  I
            1    6     1     t  I
    MethodParameters:
      Name  Flags
      x     

  public static long unshuffle(long);
    descriptor: (J)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=7, locals=4, args_size=1
        start local 0 // long x
         0: .line 159
            lload 0 /* x */
            lload 0 /* x */
            iconst_1
            lushr
            lxor
            ldc 2459565876494606882
            land
            lstore 2 /* t */
        start local 2 // long t
         1: lload 0 /* x */
            lload 2 /* t */
            lload 2 /* t */
            iconst_1
            lshl
            lxor
            lxor
            lstore 0 /* x */
         2: .line 160
            lload 0 /* x */
            lload 0 /* x */
            iconst_2
            lushr
            lxor
            ldc 868082074056920076
            land
            lstore 2 /* t */
            lload 0 /* x */
            lload 2 /* t */
            lload 2 /* t */
            iconst_2
            lshl
            lxor
            lxor
            lstore 0 /* x */
         3: .line 161
            lload 0 /* x */
            lload 0 /* x */
            iconst_4
            lushr
            lxor
            ldc 67555025218437360
            land
            lstore 2 /* t */
            lload 0 /* x */
            lload 2 /* t */
            lload 2 /* t */
            iconst_4
            lshl
            lxor
            lxor
            lstore 0 /* x */
         4: .line 162
            lload 0 /* x */
            lload 0 /* x */
            bipush 8
            lushr
            lxor
            ldc 280375465148160
            land
            lstore 2 /* t */
            lload 0 /* x */
            lload 2 /* t */
            lload 2 /* t */
            bipush 8
            lshl
            lxor
            lxor
            lstore 0 /* x */
         5: .line 163
            lload 0 /* x */
            lload 0 /* x */
            bipush 16
            lushr
            lxor
            ldc 4294901760
            land
            lstore 2 /* t */
            lload 0 /* x */
            lload 2 /* t */
            lload 2 /* t */
            bipush 16
            lshl
            lxor
            lxor
            lstore 0 /* x */
         6: .line 164
            lload 0 /* x */
            lreturn
        end local 2 // long t
        end local 0 // long x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0     x  J
            1    7     2     t  J
    MethodParameters:
      Name  Flags
      x     

  public static int unshuffle2(int);
    descriptor: (I)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // int x
         0: .line 171
            iload 0 /* x */
            iload 0 /* x */
            bipush 8
            iushr
            ixor
            ldc 65280
            iand
            istore 1 /* t */
        start local 1 // int t
         1: iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            bipush 8
            ishl
            ixor
            ixor
            istore 0 /* x */
         2: .line 172
            iload 0 /* x */
            iload 0 /* x */
            iconst_4
            iushr
            ixor
            ldc 15728880
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            iconst_4
            ishl
            ixor
            ixor
            istore 0 /* x */
         3: .line 173
            iload 0 /* x */
            iload 0 /* x */
            bipush 14
            iushr
            ixor
            ldc 52428
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            bipush 14
            ishl
            ixor
            ixor
            istore 0 /* x */
         4: .line 174
            iload 0 /* x */
            iload 0 /* x */
            bipush 7
            iushr
            ixor
            ldc 11141290
            iand
            istore 1 /* t */
            iload 0 /* x */
            iload 1 /* t */
            iload 1 /* t */
            bipush 7
            ishl
            ixor
            ixor
            istore 0 /* x */
         5: .line 175
            iload 0 /* x */
            ireturn
        end local 1 // int t
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0     x  I
            1    6     1     t  I
    MethodParameters:
      Name  Flags
      x     
}
SourceFile: "Interleave.java"