abstract class sun.security.provider.SHA2 extends sun.security.provider.DigestBase
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: sun.security.provider.SHA2
  super_class: sun.security.provider.DigestBase
{
  private static final int ITERATION;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 64

  private static final int[] ROUND_CONSTS;
    descriptor: [I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private int[] W;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  private int[] state;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  private final int[] initialHashes;
    descriptor: [I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 47
            bipush 64
            newarray 10
            dup
            iconst_0
         1: .line 48
            ldc 1116352408
            iastore
            dup
            iconst_1
            ldc 1899447441
            iastore
            dup
            iconst_2
            ldc -1245643825
            iastore
            dup
            iconst_3
            ldc -373957723
            iastore
            dup
            iconst_4
         2: .line 49
            ldc 961987163
            iastore
            dup
            iconst_5
            ldc 1508970993
            iastore
            dup
            bipush 6
            ldc -1841331548
            iastore
            dup
            bipush 7
            ldc -1424204075
            iastore
            dup
            bipush 8
         3: .line 50
            ldc -670586216
            iastore
            dup
            bipush 9
            ldc 310598401
            iastore
            dup
            bipush 10
            ldc 607225278
            iastore
            dup
            bipush 11
            ldc 1426881987
            iastore
            dup
            bipush 12
         4: .line 51
            ldc 1925078388
            iastore
            dup
            bipush 13
            ldc -2132889090
            iastore
            dup
            bipush 14
            ldc -1680079193
            iastore
            dup
            bipush 15
            ldc -1046744716
            iastore
            dup
            bipush 16
         5: .line 52
            ldc -459576895
            iastore
            dup
            bipush 17
            ldc -272742522
            iastore
            dup
            bipush 18
            ldc 264347078
            iastore
            dup
            bipush 19
            ldc 604807628
            iastore
            dup
            bipush 20
         6: .line 53
            ldc 770255983
            iastore
            dup
            bipush 21
            ldc 1249150122
            iastore
            dup
            bipush 22
            ldc 1555081692
            iastore
            dup
            bipush 23
            ldc 1996064986
            iastore
            dup
            bipush 24
         7: .line 54
            ldc -1740746414
            iastore
            dup
            bipush 25
            ldc -1473132947
            iastore
            dup
            bipush 26
            ldc -1341970488
            iastore
            dup
            bipush 27
            ldc -1084653625
            iastore
            dup
            bipush 28
         8: .line 55
            ldc -958395405
            iastore
            dup
            bipush 29
            ldc -710438585
            iastore
            dup
            bipush 30
            ldc 113926993
            iastore
            dup
            bipush 31
            ldc 338241895
            iastore
            dup
            bipush 32
         9: .line 56
            ldc 666307205
            iastore
            dup
            bipush 33
            ldc 773529912
            iastore
            dup
            bipush 34
            ldc 1294757372
            iastore
            dup
            bipush 35
            ldc 1396182291
            iastore
            dup
            bipush 36
        10: .line 57
            ldc 1695183700
            iastore
            dup
            bipush 37
            ldc 1986661051
            iastore
            dup
            bipush 38
            ldc -2117940946
            iastore
            dup
            bipush 39
            ldc -1838011259
            iastore
            dup
            bipush 40
        11: .line 58
            ldc -1564481375
            iastore
            dup
            bipush 41
            ldc -1474664885
            iastore
            dup
            bipush 42
            ldc -1035236496
            iastore
            dup
            bipush 43
            ldc -949202525
            iastore
            dup
            bipush 44
        12: .line 59
            ldc -778901479
            iastore
            dup
            bipush 45
            ldc -694614492
            iastore
            dup
            bipush 46
            ldc -200395387
            iastore
            dup
            bipush 47
            ldc 275423344
            iastore
            dup
            bipush 48
        13: .line 60
            ldc 430227734
            iastore
            dup
            bipush 49
            ldc 506948616
            iastore
            dup
            bipush 50
            ldc 659060556
            iastore
            dup
            bipush 51
            ldc 883997877
            iastore
            dup
            bipush 52
        14: .line 61
            ldc 958139571
            iastore
            dup
            bipush 53
            ldc 1322822218
            iastore
            dup
            bipush 54
            ldc 1537002063
            iastore
            dup
            bipush 55
            ldc 1747873779
            iastore
            dup
            bipush 56
        15: .line 62
            ldc 1955562222
            iastore
            dup
            bipush 57
            ldc 2024104815
            iastore
            dup
            bipush 58
            ldc -2067236844
            iastore
            dup
            bipush 59
            ldc -1933114872
            iastore
            dup
            bipush 60
        16: .line 63
            ldc -1866530822
            iastore
            dup
            bipush 61
            ldc -1538233109
            iastore
            dup
            bipush 62
            ldc -1090935817
            iastore
            dup
            bipush 63
            ldc -965641998
            iastore
        17: .line 47
            putstatic sun.security.provider.SHA2.ROUND_CONSTS:[I
        18: .line 64
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(java.lang.String, int, int[]);
    descriptor: (Ljava/lang/String;I[I)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // sun.security.provider.SHA2 this
        start local 1 // java.lang.String name
        start local 2 // int digestLength
        start local 3 // int[] initialHashes
         0: .line 79
            aload 0 /* this */
            aload 1 /* name */
            iload 2 /* digestLength */
            bipush 64
            invokespecial sun.security.provider.DigestBase.<init>:(Ljava/lang/String;II)V
         1: .line 80
            aload 0 /* this */
            aload 3 /* initialHashes */
            putfield sun.security.provider.SHA2.initialHashes:[I
         2: .line 81
            aload 0 /* this */
            bipush 8
            newarray 10
            putfield sun.security.provider.SHA2.state:[I
         3: .line 82
            aload 0 /* this */
            bipush 64
            newarray 10
            putfield sun.security.provider.SHA2.W:[I
         4: .line 83
            aload 0 /* this */
            invokevirtual sun.security.provider.SHA2.implReset:()V
         5: .line 84
            return
        end local 3 // int[] initialHashes
        end local 2 // int digestLength
        end local 1 // java.lang.String name
        end local 0 // sun.security.provider.SHA2 this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    6     0           this  Lsun/security/provider/SHA2;
            0    6     1           name  Ljava/lang/String;
            0    6     2   digestLength  I
            0    6     3  initialHashes  [I
    MethodParameters:
               Name  Flags
      name           
      digestLength   
      initialHashes  

  void implReset();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // sun.security.provider.SHA2 this
         0: .line 90
            aload 0 /* this */
            getfield sun.security.provider.SHA2.initialHashes:[I
            iconst_0
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_0
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         1: .line 91
            return
        end local 0 // sun.security.provider.SHA2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/security/provider/SHA2;

  void implDigest(byte[], int);
    descriptor: ([BI)V
    flags: (0x0000) 
    Code:
      stack=5, locals=7, args_size=3
        start local 0 // sun.security.provider.SHA2 this
        start local 1 // byte[] out
        start local 2 // int ofs
         0: .line 94
            aload 0 /* this */
            getfield sun.security.provider.SHA2.bytesProcessed:J
            iconst_3
            lshl
            lstore 3 /* bitsProcessed */
        start local 3 // long bitsProcessed
         1: .line 96
            aload 0 /* this */
            getfield sun.security.provider.SHA2.bytesProcessed:J
            l2i
            bipush 63
            iand
            istore 5 /* index */
        start local 5 // int index
         2: .line 97
            iload 5 /* index */
            bipush 56
            if_icmpge 3
            bipush 56
            iload 5 /* index */
            isub
            goto 4
      StackMap locals: long int
      StackMap stack:
         3: bipush 120
            iload 5 /* index */
            isub
      StackMap locals:
      StackMap stack: int
         4: istore 6 /* padLen */
        start local 6 // int padLen
         5: .line 98
            aload 0 /* this */
            getstatic sun.security.provider.SHA2.padding:[B
            iconst_0
            iload 6 /* padLen */
            invokevirtual sun.security.provider.SHA2.engineUpdate:([BII)V
         6: .line 100
            lload 3 /* bitsProcessed */
            bipush 32
            lushr
            l2i
            aload 0 /* this */
            getfield sun.security.provider.SHA2.buffer:[B
            bipush 56
            invokestatic sun.security.provider.ByteArrayAccess.i2bBig4:(I[BI)V
         7: .line 101
            lload 3 /* bitsProcessed */
            l2i
            aload 0 /* this */
            getfield sun.security.provider.SHA2.buffer:[B
            bipush 60
            invokestatic sun.security.provider.ByteArrayAccess.i2bBig4:(I[BI)V
         8: .line 102
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.security.provider.SHA2.buffer:[B
            iconst_0
            invokevirtual sun.security.provider.SHA2.implCompress:([BI)V
         9: .line 104
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_0
            aload 1 /* out */
            iload 2 /* ofs */
            aload 0 /* this */
            invokevirtual sun.security.provider.SHA2.engineGetDigestLength:()I
            invokestatic sun.security.provider.ByteArrayAccess.i2bBig:([II[BII)V
        10: .line 105
            return
        end local 6 // int padLen
        end local 5 // int index
        end local 3 // long bitsProcessed
        end local 2 // int ofs
        end local 1 // byte[] out
        end local 0 // sun.security.provider.SHA2 this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   11     0           this  Lsun/security/provider/SHA2;
            0   11     1            out  [B
            0   11     2            ofs  I
            1   11     3  bitsProcessed  J
            2   11     5          index  I
            5   11     6         padLen  I
    MethodParameters:
      Name  Flags
      out   
      ofs   

  private static int lf_ch(int, int, int);
    descriptor: (III)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // int x
        start local 1 // int y
        start local 2 // int z
         0: .line 115
            iload 0 /* x */
            iload 1 /* y */
            iand
            iload 0 /* x */
            iconst_m1
            ixor
            iload 2 /* z */
            iand
            ixor
            ireturn
        end local 2 // int z
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
            0    1     1     y  I
            0    1     2     z  I
    MethodParameters:
      Name  Flags
      x     
      y     
      z     

  private static int lf_maj(int, int, int);
    descriptor: (III)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // int x
        start local 1 // int y
        start local 2 // int z
         0: .line 126
            iload 0 /* x */
            iload 1 /* y */
            iand
            iload 0 /* x */
            iload 2 /* z */
            iand
            ixor
            iload 1 /* y */
            iload 2 /* z */
            iand
            ixor
            ireturn
        end local 2 // int z
        end local 1 // int y
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
            0    1     1     y  I
            0    1     2     z  I
    MethodParameters:
      Name  Flags
      x     
      y     
      z     

  private static int lf_R(int, int);
    descriptor: (II)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // int x
        start local 1 // int s
         0: .line 136
            iload 0 /* x */
            iload 1 /* s */
            iushr
            ireturn
        end local 1 // int s
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
            0    1     1     s  I
    MethodParameters:
      Name  Flags
      x     
      s     

  private static int lf_S(int, int);
    descriptor: (II)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // int x
        start local 1 // int s
         0: .line 146
            iload 0 /* x */
            iload 1 /* s */
            iushr
            iload 0 /* x */
            bipush 32
            iload 1 /* s */
            isub
            ishl
            ior
            ireturn
        end local 1 // int s
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
            0    1     1     s  I
    MethodParameters:
      Name  Flags
      x     
      s     

  private static int lf_sigma0(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int x
         0: .line 155
            iload 0 /* x */
            iconst_2
            invokestatic sun.security.provider.SHA2.lf_S:(II)I
            iload 0 /* x */
            bipush 13
            invokestatic sun.security.provider.SHA2.lf_S:(II)I
            ixor
            iload 0 /* x */
            bipush 22
            invokestatic sun.security.provider.SHA2.lf_S:(II)I
            ixor
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
    MethodParameters:
      Name  Flags
      x     

  private static int lf_sigma1(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int x
         0: .line 164
            iload 0 /* x */
            bipush 6
            invokestatic sun.security.provider.SHA2.lf_S:(II)I
            iload 0 /* x */
            bipush 11
            invokestatic sun.security.provider.SHA2.lf_S:(II)I
            ixor
            iload 0 /* x */
            bipush 25
            invokestatic sun.security.provider.SHA2.lf_S:(II)I
            ixor
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
    MethodParameters:
      Name  Flags
      x     

  private static int lf_delta0(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int x
         0: .line 173
            iload 0 /* x */
            bipush 7
            invokestatic sun.security.provider.SHA2.lf_S:(II)I
            iload 0 /* x */
            bipush 18
            invokestatic sun.security.provider.SHA2.lf_S:(II)I
            ixor
            iload 0 /* x */
            iconst_3
            invokestatic sun.security.provider.SHA2.lf_R:(II)I
            ixor
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
    MethodParameters:
      Name  Flags
      x     

  private static int lf_delta1(int);
    descriptor: (I)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // int x
         0: .line 182
            iload 0 /* x */
            bipush 17
            invokestatic sun.security.provider.SHA2.lf_S:(II)I
            iload 0 /* x */
            bipush 19
            invokestatic sun.security.provider.SHA2.lf_S:(II)I
            ixor
            iload 0 /* x */
            bipush 10
            invokestatic sun.security.provider.SHA2.lf_R:(II)I
            ixor
            ireturn
        end local 0 // int x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     x  I
    MethodParameters:
      Name  Flags
      x     

  void implCompress(byte[], int);
    descriptor: ([BI)V
    flags: (0x0000) 
    Code:
      stack=6, locals=14, args_size=3
        start local 0 // sun.security.provider.SHA2 this
        start local 1 // byte[] buf
        start local 2 // int ofs
         0: .line 189
            aload 1 /* buf */
            iload 2 /* ofs */
            aload 0 /* this */
            getfield sun.security.provider.SHA2.W:[I
            invokestatic sun.security.provider.ByteArrayAccess.b2iBig64:([BI[I)V
         1: .line 193
            bipush 16
            istore 3 /* t */
        start local 3 // int t
         2: goto 7
         3: .line 194
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.security.provider.SHA2.W:[I
            iload 3 /* t */
            aload 0 /* this */
            getfield sun.security.provider.SHA2.W:[I
            iload 3 /* t */
            iconst_2
            isub
            iaload
            invokestatic sun.security.provider.SHA2.lf_delta1:(I)I
            aload 0 /* this */
            getfield sun.security.provider.SHA2.W:[I
            iload 3 /* t */
            bipush 7
            isub
            iaload
            iadd
            aload 0 /* this */
            getfield sun.security.provider.SHA2.W:[I
            iload 3 /* t */
            bipush 15
            isub
            iaload
            invokestatic sun.security.provider.SHA2.lf_delta0:(I)I
            iadd
         4: .line 195
            aload 0 /* this */
            getfield sun.security.provider.SHA2.W:[I
            iload 3 /* t */
            bipush 16
            isub
            iaload
            iadd
         5: .line 194
            iastore
         6: .line 193
            iinc 3 /* t */ 1
      StackMap locals:
      StackMap stack:
         7: iload 3 /* t */
            bipush 64
            if_icmplt 3
        end local 3 // int t
         8: .line 198
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_0
            iaload
            istore 3 /* a */
        start local 3 // int a
         9: .line 199
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_1
            iaload
            istore 4 /* b */
        start local 4 // int b
        10: .line 200
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_2
            iaload
            istore 5 /* c */
        start local 5 // int c
        11: .line 201
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_3
            iaload
            istore 6 /* d */
        start local 6 // int d
        12: .line 202
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_4
            iaload
            istore 7 /* e */
        start local 7 // int e
        13: .line 203
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_5
            iaload
            istore 8 /* f */
        start local 8 // int f
        14: .line 204
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            bipush 6
            iaload
            istore 9 /* g */
        start local 9 // int g
        15: .line 205
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            bipush 7
            iaload
            istore 10 /* h */
        start local 10 // int h
        16: .line 207
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        17: goto 29
        18: .line 208
      StackMap locals: sun.security.provider.SHA2 byte[] int int int int int int int int int int
      StackMap stack:
            iload 10 /* h */
            iload 7 /* e */
            invokestatic sun.security.provider.SHA2.lf_sigma1:(I)I
            iadd
            iload 7 /* e */
            iload 8 /* f */
            iload 9 /* g */
            invokestatic sun.security.provider.SHA2.lf_ch:(III)I
            iadd
            getstatic sun.security.provider.SHA2.ROUND_CONSTS:[I
            iload 11 /* i */
            iaload
            iadd
            aload 0 /* this */
            getfield sun.security.provider.SHA2.W:[I
            iload 11 /* i */
            iaload
            iadd
            istore 12 /* T1 */
        start local 12 // int T1
        19: .line 209
            iload 3 /* a */
            invokestatic sun.security.provider.SHA2.lf_sigma0:(I)I
            iload 3 /* a */
            iload 4 /* b */
            iload 5 /* c */
            invokestatic sun.security.provider.SHA2.lf_maj:(III)I
            iadd
            istore 13 /* T2 */
        start local 13 // int T2
        20: .line 210
            iload 9 /* g */
            istore 10 /* h */
        21: .line 211
            iload 8 /* f */
            istore 9 /* g */
        22: .line 212
            iload 7 /* e */
            istore 8 /* f */
        23: .line 213
            iload 6 /* d */
            iload 12 /* T1 */
            iadd
            istore 7 /* e */
        24: .line 214
            iload 5 /* c */
            istore 6 /* d */
        25: .line 215
            iload 4 /* b */
            istore 5 /* c */
        26: .line 216
            iload 3 /* a */
            istore 4 /* b */
        27: .line 217
            iload 12 /* T1 */
            iload 13 /* T2 */
            iadd
            istore 3 /* a */
        end local 13 // int T2
        end local 12 // int T1
        28: .line 207
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        29: iload 11 /* i */
            bipush 64
            if_icmplt 18
        end local 11 // int i
        30: .line 219
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_0
            dup2
            iaload
            iload 3 /* a */
            iadd
            iastore
        31: .line 220
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_1
            dup2
            iaload
            iload 4 /* b */
            iadd
            iastore
        32: .line 221
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_2
            dup2
            iaload
            iload 5 /* c */
            iadd
            iastore
        33: .line 222
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_3
            dup2
            iaload
            iload 6 /* d */
            iadd
            iastore
        34: .line 223
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_4
            dup2
            iaload
            iload 7 /* e */
            iadd
            iastore
        35: .line 224
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            iconst_5
            dup2
            iaload
            iload 8 /* f */
            iadd
            iastore
        36: .line 225
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            bipush 6
            dup2
            iaload
            iload 9 /* g */
            iadd
            iastore
        37: .line 226
            aload 0 /* this */
            getfield sun.security.provider.SHA2.state:[I
            bipush 7
            dup2
            iaload
            iload 10 /* h */
            iadd
            iastore
        38: .line 227
            return
        end local 10 // int h
        end local 9 // int g
        end local 8 // int f
        end local 7 // int e
        end local 6 // int d
        end local 5 // int c
        end local 4 // int b
        end local 3 // int a
        end local 2 // int ofs
        end local 1 // byte[] buf
        end local 0 // sun.security.provider.SHA2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   39     0  this  Lsun/security/provider/SHA2;
            0   39     1   buf  [B
            0   39     2   ofs  I
            2    8     3     t  I
            9   39     3     a  I
           10   39     4     b  I
           11   39     5     c  I
           12   39     6     d  I
           13   39     7     e  I
           14   39     8     f  I
           15   39     9     g  I
           16   39    10     h  I
           17   30    11     i  I
           19   28    12    T1  I
           20   28    13    T2  I
    MethodParameters:
      Name  Flags
      buf   
      ofs   

  public java.lang.Object clone();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // sun.security.provider.SHA2 this
         0: .line 230
            aload 0 /* this */
            invokespecial sun.security.provider.DigestBase.clone:()Ljava/lang/Object;
            checkcast sun.security.provider.SHA2
            astore 1 /* copy */
        start local 1 // sun.security.provider.SHA2 copy
         1: .line 231
            aload 1 /* copy */
            aload 1 /* copy */
            getfield sun.security.provider.SHA2.state:[I
            invokevirtual int[].clone:()Ljava/lang/Object;
            checkcast int[]
            putfield sun.security.provider.SHA2.state:[I
         2: .line 232
            aload 1 /* copy */
            bipush 64
            newarray 10
            putfield sun.security.provider.SHA2.W:[I
         3: .line 233
            aload 1 /* copy */
            areturn
        end local 1 // sun.security.provider.SHA2 copy
        end local 0 // sun.security.provider.SHA2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/security/provider/SHA2;
            1    4     1  copy  Lsun/security/provider/SHA2;
    Exceptions:
      throws java.lang.CloneNotSupportedException
}
SourceFile: "SHA2.java"
NestMembers:
  sun.security.provider.SHA2$SHA224  sun.security.provider.SHA2$SHA256
InnerClasses:
  public final SHA224 = sun.security.provider.SHA2$SHA224 of sun.security.provider.SHA2
  public final SHA256 = sun.security.provider.SHA2$SHA256 of sun.security.provider.SHA2