def rotate
import bend-collections@1.0.0.0/spec/crypto/keccak/permutation.bend as Permutationimport Base
import bend-collections@1.0.0.0/src/crypto/keccak/types.bend as T
22def rotate(a: T.Lane, +n: Nat) -> T.Lane:
23 match a n:
24 case T.W{lo,hi} 0n: T.W{lo,hi}
25 case T.W{lo,hi} 32n: T.W{hi,lo}
26 case T.W{lo,hi} n: rotate_nonzero(lo,hi,n,Nat.is_lt(n,32n))