code: def HPERM_OP (tup, n, m):
      "tup - (a, t)"
      a, t = tup
      t = ((a << (16 - n)) ^ a) & m
      a = a ^ t ^ (t >> (16 - n))
      return (a, tf HPERM_OP (tup, n, m):
      "tup - (a, t)"
      a, t = tup
      t = ((a << (16 - n)) ^ a) & m
      a = a ^ t ^ (t >> (16 - n))
      return (a, t)
docs: tup - (a, t)