round 22
theta rho pi chi iota




round 22: before theta
A[0] = 0x8e40c07b0d238fa6
A[1] = 0x37134b79fd660455
A[2] = 0x1652f265b3e89871
A[3] = 0x64aad6f1a39136ad
A[4] = 0x61968f67126305d9
A[5] = 0xc63c7a24ce973907
A[6] = 0x4d28d0f2da97ea3b
A[7] = 0x203e3e43998813ce
A[8] = 0x3049bb7e3b8260b2
A[9] = 0x6becd6fbf750072f
A[10] = 0xb569778041217e0a
A[11] = 0x962b6336a1174b20
A[12] = 0x6a0b6bc2eaae2a94
A[13] = 0xbb403c896b7e9e94
A[14] = 0x32dcd40582c97159
A[15] = 0x993522ae46b12a4b
A[16] = 0x0234a8b8a5d1f0e5
A[17] = 0x6b897515c9555cb3
A[18] = 0x433e5631ed1354ad
A[19] = 0xb910cd48ef5b58d9
A[20] = 0x34da3677c9776644
A[21] = 0xe0f352a400904acc
A[22] = 0xf722f1c303fea1ec
A[23] = 0x04178678d51993fc
A[24] = 0x9ead6730f4ba91d4



round 22: theta
C[0] = A[0] ^ A[5] ^ A[10] ^ A[15] ^ A[20]
= 0x8e40c07b0d238fa6 ^ 0xc63c7a24ce973907 ^ 0xb569778041217e0a ^ 0x993522ae46b12a4b ^ 0x34da3677c9776644
= 0x50fad9060d5384a4
C[1] = A[1] ^ A[6] ^ A[11] ^ A[16] ^ A[21]
= 0x37134b79fd660455 ^ 0x4d28d0f2da97ea3b ^ 0x962b6336a1174b20 ^ 0x0234a8b8a5d1f0e5 ^ 0xe0f352a400904acc
= 0x0ed702a123a71f67
C[2] = A[2] ^ A[7] ^ A[12] ^ A[17] ^ A[22]
= 0x1652f265b3e89871 ^ 0x203e3e43998813ce ^ 0x6a0b6bc2eaae2a94 ^ 0x6b897515c9555cb3 ^ 0xf722f1c303fea1ec
= 0xc0cc23320a655c74
C[3] = A[3] ^ A[8] ^ A[13] ^ A[18] ^ A[23]
= 0x64aad6f1a39136ad ^ 0x3049bb7e3b8260b2 ^ 0xbb403c896b7e9e94 ^ 0x433e5631ed1354ad ^ 0x04178678d51993fc
= 0xa88a814fcb670fda
C[4] = A[4] ^ A[9] ^ A[14] ^ A[19] ^ A[24]
= 0x61968f67126305d9 ^ 0x6becd6fbf750072f ^ 0x32dcd40582c97159 ^ 0xb910cd48ef5b58d9 ^ 0x9ead6730f4ba91d4
= 0x1f1b27e17c1bbaa2
D[0] = LeftRotation(C[1], 1) ^ C[4]
= LeftRotation(0x0ed702a123a71f67, 1) ^ 0x1f1b27e17c1bbaa2
= 0x1dae0542474e3ece ^ 0x1f1b27e17c1bbaa2
= 0x02b522a33b55846c
D[1] = LeftRotation(C[2], 1) ^ C[0]
= LeftRotation(0xc0cc23320a655c74, 1) ^ 0x50fad9060d5384a4
= 0x8198466414cab8e9 ^ 0x50fad9060d5384a4
= 0xd1629f6219993c4d
D[2] = LeftRotation(C[3], 1) ^ C[1]
= LeftRotation(0xa88a814fcb670fda, 1) ^ 0x0ed702a123a71f67
= 0x5115029f96ce1fb5 ^ 0x0ed702a123a71f67
= 0x5fc2003eb56900d2
D[3] = LeftRotation(C[4], 1) ^ C[2]
= LeftRotation(0x1f1b27e17c1bbaa2, 1) ^ 0xc0cc23320a655c74
= 0x3e364fc2f8377544 ^ 0xc0cc23320a655c74
= 0xfefa6cf0f2522930
D[4] = LeftRotation(C[0], 1) ^ C[3]
= LeftRotation(0x50fad9060d5384a4, 1) ^ 0xa88a814fcb670fda
= 0xa1f5b20c1aa70948 ^ 0xa88a814fcb670fda
= 0x097f3343d1c00692
A[0] = A[0] ^ D[0]
= 0x8e40c07b0d238fa6 ^ 0x02b522a33b55846c
= 0x8cf5e2d836760bca
A[5] = A[5] ^ D[0]
= 0xc63c7a24ce973907 ^ 0x02b522a33b55846c
= 0xc4895887f5c2bd6b
A[10] = A[10] ^ D[0]
= 0xb569778041217e0a ^ 0x02b522a33b55846c
= 0xb7dc55237a74fa66
A[15] = A[15] ^ D[0]
= 0x993522ae46b12a4b ^ 0x02b522a33b55846c
= 0x9b80000d7de4ae27
A[20] = A[20] ^ D[0]
= 0x34da3677c9776644 ^ 0x02b522a33b55846c
= 0x366f14d4f222e228
A[1] = A[1] ^ D[1]
= 0x37134b79fd660455 ^ 0xd1629f6219993c4d
= 0xe671d41be4ff3818
A[6] = A[6] ^ D[1]
= 0x4d28d0f2da97ea3b ^ 0xd1629f6219993c4d
= 0x9c4a4f90c30ed676
A[11] = A[11] ^ D[1]
= 0x962b6336a1174b20 ^ 0xd1629f6219993c4d
= 0x4749fc54b88e776d
A[16] = A[16] ^ D[1]
= 0x0234a8b8a5d1f0e5 ^ 0xd1629f6219993c4d
= 0xd35637dabc48cca8
A[21] = A[21] ^ D[1]
= 0xe0f352a400904acc ^ 0xd1629f6219993c4d
= 0x3191cdc619097681
A[2] = A[2] ^ D[2]
= 0x1652f265b3e89871 ^ 0x5fc2003eb56900d2
= 0x4990f25b068198a3
A[7] = A[7] ^ D[2]
= 0x203e3e43998813ce ^ 0x5fc2003eb56900d2
= 0x7ffc3e7d2ce1131c
A[12] = A[12] ^ D[2]
= 0x6a0b6bc2eaae2a94 ^ 0x5fc2003eb56900d2
= 0x35c96bfc5fc72a46
A[17] = A[17] ^ D[2]
= 0x6b897515c9555cb3 ^ 0x5fc2003eb56900d2
= 0x344b752b7c3c5c61
A[22] = A[22] ^ D[2]
= 0xf722f1c303fea1ec ^ 0x5fc2003eb56900d2
= 0xa8e0f1fdb697a13e
A[3] = A[3] ^ D[3]
= 0x64aad6f1a39136ad ^ 0xfefa6cf0f2522930
= 0x9a50ba0151c31f9d
A[8] = A[8] ^ D[3]
= 0x3049bb7e3b8260b2 ^ 0xfefa6cf0f2522930
= 0xceb3d78ec9d04982
A[13] = A[13] ^ D[3]
= 0xbb403c896b7e9e94 ^ 0xfefa6cf0f2522930
= 0x45ba5079992cb7a4
A[18] = A[18] ^ D[3]
= 0x433e5631ed1354ad ^ 0xfefa6cf0f2522930
= 0xbdc43ac11f417d9d
A[23] = A[23] ^ D[3]
= 0x04178678d51993fc ^ 0xfefa6cf0f2522930
= 0xfaedea88274bbacc
A[4] = A[4] ^ D[4]
= 0x61968f67126305d9 ^ 0x097f3343d1c00692
= 0x68e9bc24c3a3034b
A[9] = A[9] ^ D[4]
= 0x6becd6fbf750072f ^ 0x097f3343d1c00692
= 0x6293e5b8269001bd
A[14] = A[14] ^ D[4]
= 0x32dcd40582c97159 ^ 0x097f3343d1c00692
= 0x3ba3e746530977cb
A[19] = A[19] ^ D[4]
= 0xb910cd48ef5b58d9 ^ 0x097f3343d1c00692
= 0xb06ffe0b3e9b5e4b
A[24] = A[24] ^ D[4]
= 0x9ead6730f4ba91d4 ^ 0x097f3343d1c00692
= 0x97d25473257a9746



round 22: after theta
A[0] = 0x8cf5e2d836760bca
A[1] = 0xe671d41be4ff3818
A[2] = 0x4990f25b068198a3
A[3] = 0x9a50ba0151c31f9d
A[4] = 0x68e9bc24c3a3034b
A[5] = 0xc4895887f5c2bd6b
A[6] = 0x9c4a4f90c30ed676
A[7] = 0x7ffc3e7d2ce1131c
A[8] = 0xceb3d78ec9d04982
A[9] = 0x6293e5b8269001bd
A[10] = 0xb7dc55237a74fa66
A[11] = 0x4749fc54b88e776d
A[12] = 0x35c96bfc5fc72a46
A[13] = 0x45ba5079992cb7a4
A[14] = 0x3ba3e746530977cb
A[15] = 0x9b80000d7de4ae27
A[16] = 0xd35637dabc48cca8
A[17] = 0x344b752b7c3c5c61
A[18] = 0xbdc43ac11f417d9d
A[19] = 0xb06ffe0b3e9b5e4b
A[20] = 0x366f14d4f222e228
A[21] = 0x3191cdc619097681
A[22] = 0xa8e0f1fdb697a13e
A[23] = 0xfaedea88274bbacc
A[24] = 0x97d25473257a9746



round 22: rho
A[0] = LeftRotation(A[0] , 0)
= LeftRotation(0x8cf5e2d836760bca, 0)
= 0x8cf5e2d836760bca
A[1] = LeftRotation(A[1] , 1)
= LeftRotation(0xe671d41be4ff3818, 1)
= 0xcce3a837c9fe7031
A[2] = LeftRotation(A[2] , 62)
= LeftRotation(0x4990f25b068198a3, 62)
= 0xd2643c96c1a06628
A[3] = LeftRotation(A[3] , 28)
= LeftRotation(0x9a50ba0151c31f9d, 28)
= 0x151c31f9d9a50ba0
A[4] = LeftRotation(A[4] , 27)
= LeftRotation(0x68e9bc24c3a3034b, 27)
= 0x261d181a5b474de1
A[5] = LeftRotation(A[5] , 36)
= LeftRotation(0xc4895887f5c2bd6b, 36)
= 0x5c2bd6bc4895887f
A[6] = LeftRotation(A[6] , 44)
= LeftRotation(0x9c4a4f90c30ed676, 44)
= 0xed6769c4a4f90c30
A[7] = LeftRotation(A[7] , 6)
= LeftRotation(0x7ffc3e7d2ce1131c, 6)
= 0xff0f9f4b3844c71f
A[8] = LeftRotation(A[8] , 55)
= LeftRotation(0xceb3d78ec9d04982, 55)
= 0xc16759ebc764e824
A[9] = LeftRotation(A[9] , 20)
= LeftRotation(0x6293e5b8269001bd, 20)
= 0x5b8269001bd6293e
A[10] = LeftRotation(A[10] , 3)
= LeftRotation(0xb7dc55237a74fa66, 3)
= 0xbee2a91bd3a7d335
A[11] = LeftRotation(A[11] , 10)
= LeftRotation(0x4749fc54b88e776d, 10)
= 0x27f152e239ddb51d
A[12] = LeftRotation(A[12] , 43)
= LeftRotation(0x35c96bfc5fc72a46, 43)
= 0x395231ae4b5fe2fe
A[13] = LeftRotation(A[13] , 25)
= LeftRotation(0x45ba5079992cb7a4, 25)
= 0xf332596f488b74a0
A[14] = LeftRotation(A[14] , 39)
= LeftRotation(0x3ba3e746530977cb, 39)
= 0x84bbe59dd1f3a329
A[15] = LeftRotation(A[15] , 41)
= LeftRotation(0x9b80000d7de4ae27, 41)
= 0xc95c4f3700001afb
A[16] = LeftRotation(A[16] , 45)
= LeftRotation(0xd35637dabc48cca8, 45)
= 0x19951a6ac6fb5789
A[17] = LeftRotation(A[17] , 15)
= LeftRotation(0x344b752b7c3c5c61, 15)
= 0xba95be1e2e309a25
A[18] = LeftRotation(A[18] , 21)
= LeftRotation(0xbdc43ac11f417d9d, 21)
= 0x5823e82fb3b7b887
A[19] = LeftRotation(A[19] , 8)
= LeftRotation(0xb06ffe0b3e9b5e4b, 8)
= 0x6ffe0b3e9b5e4bb0
A[20] = LeftRotation(A[20] , 18)
= LeftRotation(0x366f14d4f222e228, 18)
= 0x5353c88b88a0d9bc
A[21] = LeftRotation(A[21] , 2)
= LeftRotation(0x3191cdc619097681, 2)
= 0xc64737186425da04
A[22] = LeftRotation(A[22] , 61)
= LeftRotation(0xa8e0f1fdb697a13e, 61)
= 0xd51c1e3fb6d2f427
A[23] = LeftRotation(A[23] , 56)
= LeftRotation(0xfaedea88274bbacc, 56)
= 0xccfaedea88274bba



round 22: after rho
A[0] = 0x8cf5e2d836760bca
A[1] = 0xcce3a837c9fe7031
A[2] = 0xd2643c96c1a06628
A[3] = 0x151c31f9d9a50ba0
A[4] = 0x261d181a5b474de1
A[5] = 0x5c2bd6bc4895887f
A[6] = 0xed6769c4a4f90c30
A[7] = 0xff0f9f4b3844c71f
A[8] = 0xc16759ebc764e824
A[9] = 0x5b8269001bd6293e
A[10] = 0xbee2a91bd3a7d335
A[11] = 0x27f152e239ddb51d
A[12] = 0x395231ae4b5fe2fe
A[13] = 0xf332596f488b74a0
A[14] = 0x84bbe59dd1f3a329
A[15] = 0xc95c4f3700001afb
A[16] = 0x19951a6ac6fb5789
A[17] = 0xba95be1e2e309a25
A[18] = 0x5823e82fb3b7b887
A[19] = 0x6ffe0b3e9b5e4bb0
A[20] = 0x5353c88b88a0d9bc
A[21] = 0xc64737186425da04
A[22] = 0xd51c1e3fb6d2f427
A[23] = 0xccfaedea88274bba
A[24] = 0x951cc95ea5d1a5f4



round 22: pi
A1temp = A[1]
= 0xcce3a837c9fe7031
A[1] = A[6]
= 0xed6769c4a4f90c30
A[6] = A[9]
= 0x5b8269001bd6293e
A[9] = A[22]
= 0xd51c1e3fb6d2f427
A[22] = A[14]
= 0x84bbe59dd1f3a329
A[14] = A[20]
= 0x5353c88b88a0d9bc
A[20] = A[2]
= 0xd2643c96c1a06628
A[2] = A[12]
= 0x395231ae4b5fe2fe
A[12] = A[13]
= 0xf332596f488b74a0
A[13] = A[19]
= 0x6ffe0b3e9b5e4bb0
A[19] = A[23]
= 0xccfaedea88274bba
A[23] = A[15]
= 0xc95c4f3700001afb
A[15] = A[4]
= 0x261d181a5b474de1
A[4] = A[24]
= 0x951cc95ea5d1a5f4
A[24] = A[21]
= 0xc64737186425da04
A[21] = A[8]
= 0xc16759ebc764e824
A[8] = A[16]
= 0x19951a6ac6fb5789
A[16] = A[5]
= 0x5c2bd6bc4895887f
A[5] = A[3]
= 0x151c31f9d9a50ba0
A[3] = A[18]
= 0x5823e82fb3b7b887
A[18] = A[17]
= 0xba95be1e2e309a25
A[17] = A[11]
= 0x27f152e239ddb51d
A[11] = A[7]
= 0xff0f9f4b3844c71f
A[7] = A[10]
= 0xbee2a91bd3a7d335
A[10] = A1temp
= 0xcce3a837c9fe7031



round 22: after pi
A[0] = 0x8cf5e2d836760bca
A[1] = 0xed6769c4a4f90c30
A[2] = 0x395231ae4b5fe2fe
A[3] = 0x5823e82fb3b7b887
A[4] = 0x951cc95ea5d1a5f4
A[5] = 0x151c31f9d9a50ba0
A[6] = 0x5b8269001bd6293e
A[7] = 0xbee2a91bd3a7d335
A[8] = 0x19951a6ac6fb5789
A[9] = 0xd51c1e3fb6d2f427
A[10] = 0xcce3a837c9fe7031
A[11] = 0xff0f9f4b3844c71f
A[12] = 0xf332596f488b74a0
A[13] = 0x6ffe0b3e9b5e4bb0
A[14] = 0x5353c88b88a0d9bc
A[15] = 0x261d181a5b474de1
A[16] = 0x5c2bd6bc4895887f
A[17] = 0x27f152e239ddb51d
A[18] = 0xba95be1e2e309a25
A[19] = 0xccfaedea88274bba
A[20] = 0xd2643c96c1a06628
A[21] = 0xc16759ebc764e824
A[22] = 0x84bbe59dd1f3a329
A[23] = 0xc95c4f3700001afb
A[24] = 0xc64737186425da04



round 22: chi
A0temp = A[0]
= 0x8cf5e2d836760bca
A1temp = A[1]
= 0xed6769c4a4f90c30
A[0] = A[0] ^ (~A1temp & A[2])
= 0x8cf5e2d836760bca ^ (~0xed6769c4a4f90c30 & 0x395231ae4b5fe2fe)
= 0x8cf5e2d836760bca ^ (0x1298963b5b06f3cf & 0x395231ae4b5fe2fe)
= 0x8cf5e2d836760bca ^ 0x1010102a4b06e2ce
= 0x9ce5f2f27d70e904
A[1] = A[1] ^ (~A[2] & A[3])
= 0xed6769c4a4f90c30 ^ (~0x395231ae4b5fe2fe & 0x5823e82fb3b7b887)
= 0xed6769c4a4f90c30 ^ (0xc6adce51b4a01d01 & 0x5823e82fb3b7b887)
= 0xed6769c4a4f90c30 ^ 0x4021c801b0a01801
= 0xed6769c4a4f90c30
A[2] = A[2] ^ (~A[3] & A[4])
= 0x395231ae4b5fe2fe ^ (~0x5823e82fb3b7b887 & 0x951cc95ea5d1a5f4)
= 0x395231ae4b5fe2fe ^ (0xa7dc17d04c484778 & 0x951cc95ea5d1a5f4)
= 0x395231ae4b5fe2fe ^ 0x851c015004400570
= 0x1802202e0317a086
A[3] = A[3] ^ (~A[4] & A0temp)
= 0x5823e82fb3b7b887 ^ (~0x951cc95ea5d1a5f4 & 0x8cf5e2d836760bca)
= 0x5823e82fb3b7b887 ^ (0x6ae336a15a2e5a0b & 0x8cf5e2d836760bca)
= 0x5823e82fb3b7b887 ^ 0x08e1228012260a0a
= 0x7061d88ff9b9fa8d
A[4] = A[4] ^ (~A0temp & A1temp)
= 0x951cc95ea5d1a5f4 ^ (~0x8cf5e2d836760bca & 0xed6769c4a4f90c30)
= 0x951cc95ea5d1a5f4 ^ (0x730a1d27c989f435 & 0xed6769c4a4f90c30)
= 0x951cc95ea5d1a5f4 ^ 0x6102090480890430
= 0xa41ed878ecd845c0
A5temp = A[5]
= 0x151c31f9d9a50ba0
A6temp = A[6]
= 0x5b8269001bd6293e
A[5] = A[5] ^ (~A6temp & A[7])
= 0x151c31f9d9a50ba0 ^ (~0x5b8269001bd6293e & 0xbee2a91bd3a7d335)
= 0x151c31f9d9a50ba0 ^ (0xa47d96ffe429d6c1 & 0xbee2a91bd3a7d335)
= 0x151c31f9d9a50ba0 ^ 0xa460801bc021d201
= 0xb17cb1e21984d9a1
A[6] = A[6] ^ (~A[7] & A[8])
= 0x5b8269001bd6293e ^ (~0xbee2a91bd3a7d335 & 0x19951a6ac6fb5789)
= 0x5b8269001bd6293e ^ (0x411d56e42c582cca & 0x19951a6ac6fb5789)
= 0x5b8269001bd6293e ^ 0x0115126004580488
= 0x5b8269001bd6293e
A[7] = A[7] ^ (~A[8] & A[9])
= 0xbee2a91bd3a7d335 ^ (~0x19951a6ac6fb5789 & 0xd51c1e3fb6d2f427)
= 0xbee2a91bd3a7d335 ^ (0xe66ae5953904a876 & 0xd51c1e3fb6d2f427)
= 0xbee2a91bd3a7d335 ^ 0xc40804153000a026
= 0x1880080ac2a35301
A[8] = A[8] ^ (~A[9] & A5temp)
= 0x19951a6ac6fb5789 ^ (~0xd51c1e3fb6d2f427 & 0x151c31f9d9a50ba0)
= 0x19951a6ac6fb5789 ^ (0x2ae3e1c0492d0bd8 & 0x151c31f9d9a50ba0)
= 0x19951a6ac6fb5789 ^ 0x000021c049250b80
= 0x3377bb6a87de5499
A[9] = A[9] ^ (~A5temp & A6temp)
= 0xd51c1e3fb6d2f427 ^ (~0x151c31f9d9a50ba0 & 0x5b8269001bd6293e)
= 0xd51c1e3fb6d2f427 ^ (0xeae3ce06265af45f & 0x5b8269001bd6293e)
= 0xd51c1e3fb6d2f427 ^ 0x4a8248000252201e
= 0x7ffe963db4d02432
A10temp = A[10]
= 0xcce3a837c9fe7031
A11temp = A[11]
= 0xff0f9f4b3844c71f
A[10] = A[10] ^ (~A11temp & A[12])
= 0xcce3a837c9fe7031 ^ (~0xff0f9f4b3844c71f & 0xf332596f488b74a0)
= 0xcce3a837c9fe7031 ^ (0x00f060b4c7bb38e0 & 0xf332596f488b74a0)
= 0xcce3a837c9fe7031 ^ 0x00304024408b30a0
= 0xccd3e81389754091
A[11] = A[11] ^ (~A[12] & A[13])
= 0xff0f9f4b3844c71f ^ (~0xf332596f488b74a0 & 0x6ffe0b3e9b5e4bb0)
= 0xff0f9f4b3844c71f ^ (0x0ccda690b7748b5f & 0x6ffe0b3e9b5e4bb0)
= 0xff0f9f4b3844c71f ^ 0x0ccc021093540b10
= 0xff0f9f4b3844c71f
A[12] = A[12] ^ (~A[13] & A[14])
= 0xf332596f488b74a0 ^ (~0x6ffe0b3e9b5e4bb0 & 0x5353c88b88a0d9bc)
= 0xf332596f488b74a0 ^ (0x9001f4c164a1b44f & 0x5353c88b88a0d9bc)
= 0xf332596f488b74a0 ^ 0x1001c08100a0900c
= 0x6332092e080a40a0
A[13] = A[13] ^ (~A[14] & A10temp)
= 0x6ffe0b3e9b5e4bb0 ^ (~0x5353c88b88a0d9bc & 0xcce3a837c9fe7031)
= 0x6ffe0b3e9b5e4bb0 ^ (0xacac3774775f2643 & 0xcce3a837c9fe7031)
= 0x6ffe0b3e9b5e4bb0 ^ 0x8ca02034415e2001
= 0xcfde1a5adb556fb0
A[14] = A[14] ^ (~A10temp & A11temp)
= 0x5353c88b88a0d9bc ^ (~0xcce3a837c9fe7031 & 0xff0f9f4b3844c71f)
= 0x5353c88b88a0d9bc ^ (0x331c57c836018fce & 0xff0f9f4b3844c71f)
= 0x5353c88b88a0d9bc ^ 0x330c17483000870e
= 0x604399c388a1dd3c
A15temp = A[15]
= 0x261d181a5b474de1
A16temp = A[16]
= 0x5c2bd6bc4895887f
A[15] = A[15] ^ (~A16temp & A[17])
= 0x261d181a5b474de1 ^ (~0x5c2bd6bc4895887f & 0x27f152e239ddb51d)
= 0x261d181a5b474de1 ^ (0xa3d42943b76a7780 & 0x27f152e239ddb51d)
= 0x261d181a5b474de1 ^ 0x23d0004231483500
= 0x05cd18586a0f78e1
A[16] = A[16] ^ (~A[17] & A[18])
= 0x5c2bd6bc4895887f ^ (~0x27f152e239ddb51d & 0xba95be1e2e309a25)
= 0x5c2bd6bc4895887f ^ (0xd80ead1dc6224ae2 & 0xba95be1e2e309a25)
= 0x5c2bd6bc4895887f ^ 0x9804ac1c06200a20
= 0x5c2bd6bc4895887f
A[17] = A[17] ^ (~A[18] & A[19])
= 0x27f152e239ddb51d ^ (~0xba95be1e2e309a25 & 0xccfaedea88274bba)
= 0x27f152e239ddb51d ^ (0x456a41e1d1cf65da & 0xccfaedea88274bba)
= 0x27f152e239ddb51d ^ 0x446a41e08007419a
= 0x2291120228109005
A[18] = A[18] ^ (~A[19] & A15temp)
= 0xba95be1e2e309a25 ^ (~0xccfaedea88274bba & 0x261d181a5b474de1)
= 0xba95be1e2e309a25 ^ (0x3305121577d8b445 & 0x261d181a5b474de1)
= 0xba95be1e2e309a25 ^ 0x2205101053400441
= 0x9994ac1e1fe82e20
A[19] = A[19] ^ (~A15temp & A16temp)
= 0xccfaedea88274bba ^ (~0x261d181a5b474de1 & 0x5c2bd6bc4895887f)
= 0xccfaedea88274bba ^ (0xd9e2e7e5a4b8b21e & 0x5c2bd6bc4895887f)
= 0xccfaedea88274bba ^ 0x5822c6a40090801e
= 0xcd1aaf0aa8bffba6
A20temp = A[20]
= 0xd2643c96c1a06628
A21temp = A[21]
= 0xc16759ebc764e824
A[20] = A[20] ^ (~A21temp & A[22])
= 0xd2643c96c1a06628 ^ (~0xc16759ebc764e824 & 0x84bbe59dd1f3a329)
= 0xd2643c96c1a06628 ^ (0x3e98a614389b17db & 0x84bbe59dd1f3a329)
= 0xd2643c96c1a06628 ^ 0x0498a41410930309
= 0xd6fc9882d1336521
A[21] = A[21] ^ (~A[22] & A[23])
= 0xc16759ebc764e824 ^ (~0x84bbe59dd1f3a329 & 0xc95c4f3700001afb)
= 0xc16759ebc764e824 ^ (0x7b441a622e0c5cd6 & 0xc95c4f3700001afb)
= 0xc16759ebc764e824 ^ 0x49440a22000018d2
= 0xc16759ebc764e824
A[22] = A[22] ^ (~A[23] & A[24])
= 0x84bbe59dd1f3a329 ^ (~0xc95c4f3700001afb & 0xc64737186425da04)
= 0x84bbe59dd1f3a329 ^ (0x36a3b0c8ffffe504 & 0xc64737186425da04)
= 0x84bbe59dd1f3a329 ^ 0x060330086425c004
= 0x8018451500000229
A[23] = A[23] ^ (~A[24] & A20temp)
= 0xc95c4f3700001afb ^ (~0xc64737186425da04 & 0xd2643c96c1a06628)
= 0xc95c4f3700001afb ^ (0x39b8c8e79bda25fb & 0xd2643c96c1a06628)
= 0xc95c4f3700001afb ^ 0x1020088681802428
= 0xc9e48fb291d23bd2
A[24] = A[24] ^ (~A20temp & A21temp)
= 0xc64737186425da04 ^ (~0xd2643c96c1a06628 & 0xc16759ebc764e824)
= 0xc64737186425da04 ^ (0x2d9bc3693e5f99d7 & 0xc16759ebc764e824)
= 0xc64737186425da04 ^ 0x0103416906448804
= 0xc2dcf61174765b05



round 22: after chi
A[0] = 0x9ce5f2f27d70e904
A[1] = 0xad46a1c514591431
A[2] = 0xbc4e30fe4f1fe78e
A[3] = 0x50c2caafa191b28d
A[4] = 0xf41ec05a2558a1c4
A[5] = 0xb17cb1e21984d9a1
A[6] = 0x5a977b601f8e2db6
A[7] = 0x7aeaad0ee3a77313
A[8] = 0x19953baa8fde5c09
A[9] = 0x9f9e563fb480d439
A[10] = 0xccd3e81389754091
A[11] = 0xf3c39d5bab10cc0f
A[12] = 0xe33399ee482be4ac
A[13] = 0xe35e2b0ada006bb1
A[14] = 0x605fdfc3b8a05eb2
A[15] = 0x05cd18586a0f78e1
A[16] = 0xc42f7aa04eb5825f
A[17] = 0x639b1302b9daf487
A[18] = 0x9890ae0e7d709e64
A[19] = 0x94d82b4e88b7cba4
A[20] = 0xd6fc9882d1336521
A[21] = 0x882353c9c764f0f6
A[22] = 0x82b8d595b5d6632d
A[23] = 0xd97c47b181803ed3
A[24] = 0xc744767162615200



round 22: iota
A[0] = A[0] ^ rc[22]
= 0x9ce5f2f27d70e904 ^ 0x0000000080000001
= 0x9ce5f2f2fd70e905



round 22: after iota
A[0] = 0x9ce5f2f2fd70e905
A[1] = 0xad46a1c514591431
A[2] = 0xbc4e30fe4f1fe78e
A[3] = 0x50c2caafa191b28d
A[4] = 0xf41ec05a2558a1c4
A[5] = 0xb17cb1e21984d9a1
A[6] = 0x5a977b601f8e2db6
A[7] = 0x7aeaad0ee3a77313
A[8] = 0x19953baa8fde5c09
A[9] = 0x9f9e563fb480d439
A[10] = 0xccd3e81389754091
A[11] = 0xf3c39d5bab10cc0f
A[12] = 0xe33399ee482be4ac
A[13] = 0xe35e2b0ada006bb1
A[14] = 0x605fdfc3b8a05eb2
A[15] = 0x05cd18586a0f78e1
A[16] = 0xc42f7aa04eb5825f
A[17] = 0x639b1302b9daf487
A[18] = 0x9890ae0e7d709e64
A[19] = 0x94d82b4e88b7cba4
A[20] = 0xd6fc9882d1336521
A[21] = 0x882353c9c764f0f6
A[22] = 0x82b8d595b5d6632d
A[23] = 0xd97c47b181803ed3
A[24] = 0xc744767162615200