if (x[i] & q) != 0
                            x[0] ^= p # invert
                    else
                        t = (x[0] ^ x[i]) & p;
                        x[0] ^= t;