def AdAes.round
import bend-osdev-aead@0.1.0.0/aesround.bend as Aesroundimport Base
169# AESRound(a, k)
170def AdAes.round(s: AdSbox, a: AdBlk, k: AdBlk) -> AdBlk:
171 match s a k:
172 case AdSbox{+t} AdBlk{+a0, +a1, +a2, +a3} AdBlk{k0, k1, k2, k3}:
173 AdBlk{U32.xor(ad.aes.col(t, a0, a1, a2, a3), k0), U32.xor(ad.aes.col(t, a1, a2, a3, a0), k1), U32.xor(ad.aes.col(t, a2, a3, a0, a1), k2), U32.xor(ad.aes.col(t, a3, a0, a1, a2), k3)}