#include <bits/stdc++.h>
using namespace std;
int n, i, j, k, t;
map<string, string> m;
string s;
void GenerateAnswer();
int main() {
  GenerateAnswer();
  scanf("%d", &n);
  while (n--) {
    cin >> s;
    cout << m[s] << "\n";
  }
  return 0;
}
void GenerateAnswer() {
  m["00000000"] = "!x&x";
  m["00000001"] = "x&y&z";
  m["00000010"] = "!z&x&y";
  m["00000011"] = "x&y";
  m["00000100"] = "!y&x&z";
  m["00000101"] = "x&z";
  m["00000110"] = "!y&x&z|!z&x&y";
  m["00000111"] = "(y|z)&x";
  m["00001000"] = "!y&!z&x";
  m["00001001"] = "!y&!z&x|x&y&z";
  m["00001010"] = "!z&x";
  m["00001011"] = "!z&x|x&y";
  m["00001100"] = "!y&x";
  m["00001101"] = "!y&x|x&z";
  m["00001110"] = "!(y&z)&x";
  m["00001111"] = "x";
  m["00010000"] = "!x&y&z";
  m["00010001"] = "y&z";
  m["00010010"] = "!x&y&z|!z&x&y";
  m["00010011"] = "(x|z)&y";
  m["00010100"] = "!x&y&z|!y&x&z";
  m["00010101"] = "(x|y)&z";
  m["00010110"] = "!x&y&z|!y&x&z|!z&x&y";
  m["00010111"] = "(x|y)&z|x&y";
  m["00011000"] = "!x&y&z|!y&!z&x";
  m["00011001"] = "!y&!z&x|y&z";
  m["00011010"] = "!x&y&z|!z&x";
  m["00011011"] = "!z&x|y&z";
  m["00011100"] = "!x&y&z|!y&x";
  m["00011101"] = "!y&x|y&z";
  m["00011110"] = "!(y&z)&x|!x&y&z";
  m["00011111"] = "x|y&z";
  m["00100000"] = "!x&!z&y";
  m["00100001"] = "!x&!z&y|x&y&z";
  m["00100010"] = "!z&y";
  m["00100011"] = "!z&y|x&y";
  m["00100100"] = "!x&!z&y|!y&x&z";
  m["00100101"] = "!x&!z&y|x&z";
  m["00100110"] = "!y&x&z|!z&y";
  m["00100111"] = "!z&y|x&z";
  m["00101000"] = "!(!x&!y|x&y|z)";
  m["00101001"] = "!(!x&!y|x&y|z)|x&y&z";
  m["00101010"] = "!z&(x|y)";
  m["00101011"] = "!z&(x|y)|x&y";
  m["00101100"] = "!x&!z&y|!y&x";
  m["00101101"] = "!x&!z&y|!y&x|x&z";
  m["00101110"] = "!y&x|!z&y";
  m["00101111"] = "!z&y|x";
  m["00110000"] = "!x&y";
  m["00110001"] = "!x&y|y&z";
  m["00110010"] = "!(x&z)&y";
  m["00110011"] = "y";
  m["00110100"] = "!x&y|!y&x&z";
  m["00110101"] = "!x&y|x&z";
  m["00110110"] = "!(x&z)&y|!y&x&z";
  m["00110111"] = "x&z|y";
  m["00111000"] = "!x&y|!y&!z&x";
  m["00111001"] = "!x&y|!y&!z&x|y&z";
  m["00111010"] = "!x&y|!z&x";
  m["00111011"] = "!z&x|y";
  m["00111100"] = "!x&y|!y&x";
  m["00111101"] = "!x&y|!y&x|x&z";
  m["00111110"] = "!(x&z)&y|!y&x";
  m["00111111"] = "x|y";
  m["01000000"] = "!x&!y&z";
  m["01000001"] = "!x&!y&z|x&y&z";
  m["01000010"] = "!x&!y&z|!z&x&y";
  m["01000011"] = "!x&!y&z|x&y";
  m["01000100"] = "!y&z";
  m["01000101"] = "!y&z|x&z";
  m["01000110"] = "!y&z|!z&x&y";
  m["01000111"] = "!y&z|x&y";
  m["01001000"] = "!(!x&!z|x&z|y)";
  m["01001001"] = "!(!x&!z|x&z|y)|x&y&z";
  m["01001010"] = "!x&!y&z|!z&x";
  m["01001011"] = "!x&!y&z|!z&x|x&y";
  m["01001100"] = "!y&(x|z)";
  m["01001101"] = "!y&(x|z)|x&z";
  m["01001110"] = "!y&z|!z&x";
  m["01001111"] = "!y&z|x";
  m["01010000"] = "!x&z";
  m["01010001"] = "!x&z|y&z";
  m["01010010"] = "!x&z|!z&x&y";
  m["01010011"] = "!x&z|x&y";
  m["01010100"] = "!(x&y)&z";
  m["01010101"] = "z";
  m["01010110"] = "!(x&y)&z|!z&x&y";
  m["01010111"] = "x&y|z";
  m["01011000"] = "!x&z|!y&!z&x";
  m["01011001"] = "!x&z|!y&!z&x|y&z";
  m["01011010"] = "!x&z|!z&x";
  m["01011011"] = "!x&z|!z&x|x&y";
  m["01011100"] = "!x&z|!y&x";
  m["01011101"] = "!y&x|z";
  m["01011110"] = "!(x&y)&z|!z&x";
  m["01011111"] = "x|z";
  m["01100000"] = "!(!y&!z|x|y&z)";
  m["01100001"] = "!(!y&!z|x|y&z)|x&y&z";
  m["01100010"] = "!x&!y&z|!z&y";
  m["01100011"] = "!x&!y&z|!z&y|x&y";
  m["01100100"] = "!x&!z&y|!y&z";
  m["01100101"] = "!x&!z&y|!y&z|x&z";
  m["01100110"] = "!y&z|!z&y";
  m["01100111"] = "!y&z|!z&y|x&y";
  m["01101000"] = "!(!x&!y|x&y|z)|!x&!y&z";
  m["01101001"] = "!(!x&!y|x&y|z)|!x&!y&z|x&y&z";
  m["01101010"] = "!x&!y&z|!z&(x|y)";
  m["01101011"] = "!x&!y&z|!z&(x|y)|x&y";
  m["01101100"] = "!x&!z&y|!y&(x|z)";
  m["01101101"] = "!x&!z&y|!y&(x|z)|x&z";
  m["01101110"] = "!y&(x|z)|!z&y";
  m["01101111"] = "!y&z|!z&y|x";
  m["01110000"] = "!x&(y|z)";
  m["01110001"] = "!x&(y|z)|y&z";
  m["01110010"] = "!x&z|!z&y";
  m["01110011"] = "!x&z|y";
  m["01110100"] = "!x&y|!y&z";
  m["01110101"] = "!x&y|z";
  m["01110110"] = "!(x&y)&z|!z&y";
  m["01110111"] = "y|z";
  m["01111000"] = "!x&(y|z)|!y&!z&x";
  m["01111001"] = "!x&(y|z)|!y&!z&x|y&z";
  m["01111010"] = "!x&(y|z)|!z&x";
  m["01111011"] = "!x&z|!z&x|y";
  m["01111100"] = "!x&(y|z)|!y&x";
  m["01111101"] = "!x&y|!y&x|z";
  m["01111110"] = "!x&y|!y&z|!z&x";
  m["01111111"] = "x|y|z";
  m["10000000"] = "!(x|y|z)";
  m["10000001"] = "!(x|y|z)|x&y&z";
  m["10000010"] = "!(!x&y|!y&x|z)";
  m["10000011"] = "!(x|y|z)|x&y";
  m["10000100"] = "!(!x&z|!z&x|y)";
  m["10000101"] = "!(x|y|z)|x&z";
  m["10000110"] = "!(!x&y|!y&x|z)|!y&x&z";
  m["10000111"] = "!(x|y|z)|(y|z)&x";
  m["10001000"] = "!y&!z";
  m["10001001"] = "!y&!z|x&y&z";
  m["10001010"] = "!(!x&y|z)";
  m["10001011"] = "!y&!z|x&y";
  m["10001100"] = "!(!x&z|y)";
  m["10001101"] = "!y&!z|x&z";
  m["10001110"] = "!(!x&y|z)|!y&x";
  m["10001111"] = "!y&!z|x";
  m["10010000"] = "!(!y&z|!z&y|x)";
  m["10010001"] = "!(x|y|z)|y&z";
  m["10010010"] = "!(!x&y|!y&x|z)|!x&y&z";
  m["10010011"] = "!(x|y|z)|(x|z)&y";
  m["10010100"] = "!(!x&z|!z&x|y)|!x&y&z";
  m["10010101"] = "!(x|y|z)|(x|y)&z";
  m["10010110"] = "!(!x&y|!y&x|z)|!x&y&z|!y&x&z";
  m["10010111"] = "!(x|y|z)|(x|y)&z|x&y";
  m["10011000"] = "!x&y&z|!y&!z";
  m["10011001"] = "!y&!z|y&z";
  m["10011010"] = "!(!x&y|z)|!x&y&z";
  m["10011011"] = "!(!x&y|z)|y&z";
  m["10011100"] = "!(!x&z|y)|!x&y&z";
  m["10011101"] = "!(!x&z|y)|y&z";
  m["10011110"] = "!(!x&y|z)|!x&y&z|!y&x";
  m["10011111"] = "!y&!z|x|y&z";
  m["10100000"] = "!x&!z";
  m["10100001"] = "!x&!z|x&y&z";
  m["10100010"] = "!(!y&x|z)";
  m["10100011"] = "!x&!z|x&y";
  m["10100100"] = "!x&!z|!y&x&z";
  m["10100101"] = "!x&!z|x&z";
  m["10100110"] = "!(!y&x|z)|!y&x&z";
  m["10100111"] = "!(!y&x|z)|x&z";
  m["10101000"] = "!(x&y|z)";
  m["10101001"] = "!(x&y|z)|x&y&z";
  m["10101010"] = "!z";
  m["10101011"] = "!z|x&y";
  m["10101100"] = "!x&!z|!y&x";
  m["10101101"] = "!(x&y|z)|x&z";
  m["10101110"] = "!y&x|!z";
  m["10101111"] = "!z|x";
  m["10110000"] = "!(!y&z|x)";
  m["10110001"] = "!x&!z|y&z";
  m["10110010"] = "!(!y&x|z)|!x&y";
  m["10110011"] = "!x&!z|y";
  m["10110100"] = "!(!y&z|x)|!y&x&z";
  m["10110101"] = "!(!y&z|x)|x&z";
  m["10110110"] = "!(!y&x|z)|!x&y|!y&x&z";
  m["10110111"] = "!x&!z|x&z|y";
  m["10111000"] = "!x&y|!y&!z";
  m["10111001"] = "!(x&y|z)|y&z";
  m["10111010"] = "!x&y|!z";
  m["10111011"] = "!z|y";
  m["10111100"] = "!(!x&!y&z|x&y)";
  m["10111101"] = "!x&!z|!y&x|y&z";
  m["10111110"] = "!x&y|!y&x|!z";
  m["10111111"] = "!z|x|y";
  m["11000000"] = "!x&!y";
  m["11000001"] = "!x&!y|x&y&z";
  m["11000010"] = "!x&!y|!z&x&y";
  m["11000011"] = "!x&!y|x&y";
  m["11000100"] = "!(!z&x|y)";
  m["11000101"] = "!x&!y|x&z";
  m["11000110"] = "!(!z&x|y)|!z&x&y";
  m["11000111"] = "!(!z&x|y)|x&y";
  m["11001000"] = "!(x&z|y)";
  m["11001001"] = "!(x&z|y)|x&y&z";
  m["11001010"] = "!x&!y|!z&x";
  m["11001011"] = "!(x&z|y)|x&y";
  m["11001100"] = "!y";
  m["11001101"] = "!y|x&z";
  m["11001110"] = "!y|!z&x";
  m["11001111"] = "!y|x";
  m["11010000"] = "!(!z&y|x)";
  m["11010001"] = "!x&!y|y&z";
  m["11010010"] = "!(!z&y|x)|!z&x&y";
  m["11010011"] = "!(!z&y|x)|x&y";
  m["11010100"] = "!(!z&x|y)|!x&z";
  m["11010101"] = "!x&!y|z";
  m["11010110"] = "!(!z&x|y)|!x&z|!z&x&y";
  m["11010111"] = "!x&!y|x&y|z";
  m["11011000"] = "!x&z|!y&!z";
  m["11011001"] = "!(x&z|y)|y&z";
  m["11011010"] = "!(!x&!z&y|x&z)";
  m["11011011"] = "!x&!y|!z&x|y&z";
  m["11011100"] = "!x&z|!y";
  m["11011101"] = "!y|z";
  m["11011110"] = "!x&z|!y|!z&x";
  m["11011111"] = "!y|x|z";
  m["11100000"] = "!(x|y&z)";
  m["11100001"] = "!(x|y&z)|x&y&z";
  m["11100010"] = "!x&!y|!z&y";
  m["11100011"] = "!(x|y&z)|x&y";
  m["11100100"] = "!x&!z|!y&z";
  m["11100101"] = "!(x|y&z)|x&z";
  m["11100110"] = "!(!y&!z&x|y&z)";
  m["11100111"] = "!x&!y|!z&y|x&z";
  m["11101000"] = "!((x|y)&z|x&y)";
  m["11101001"] = "!((x|y)&z|x&y)|x&y&z";
  m["11101010"] = "!x&!y|!z";
  m["11101011"] = "!x&!y|!z|x&y";
  m["11101100"] = "!x&!z|!y";
  m["11101101"] = "!x&!z|!y|x&z";
  m["11101110"] = "!y|!z";
  m["11101111"] = "!y|!z|x";
  m["11110000"] = "!x";
  m["11110001"] = "!x|y&z";
  m["11110010"] = "!x|!z&y";
  m["11110011"] = "!x|y";
  m["11110100"] = "!x|!y&z";
  m["11110101"] = "!x|z";
  m["11110110"] = "!x|!y&z|!z&y";
  m["11110111"] = "!x|y|z";
  m["11111000"] = "!x|!y&!z";
  m["11111001"] = "!x|!y&!z|y&z";
  m["11111010"] = "!x|!z";
  m["11111011"] = "!x|!z|y";
  m["11111100"] = "!x|!y";
  m["11111101"] = "!x|!y|z";
  m["11111110"] = "!(x&y&z)";
  m["11111111"] = "!x|x";
}

### Prompt

In Cpp, your task is to solve the following problem:

You are given a boolean function of three variables which is defined by its truth table. You need to find an expression of minimum length that equals to this function. The expression may consist of: 

  * Operation AND ('&', ASCII code 38) 
  * Operation OR ('|', ASCII code 124) 
  * Operation NOT ('!', ASCII code 33) 
  * Variables x, y and z (ASCII codes 120-122) 
  * Parentheses ('(', ASCII code 40, and ')', ASCII code 41) 



If more than one expression of minimum length exists, you should find the lexicographically smallest one.

Operations have standard priority. NOT has the highest priority, then AND goes, and OR has the lowest priority. The expression should satisfy the following grammar:

E ::= E '|' T | T

T ::= T '&' F | F

F ::= '!' F | '(' E ')' | 'x' | 'y' | 'z'

Input

The first line contains one integer n — the number of functions in the input (1 ≤ n ≤ 10 000).

The following n lines contain descriptions of functions, the i-th of them contains a string of length 8 that consists of digits 0 and 1 — the truth table of the i-th function. The digit on position j (0 ≤ j < 8) equals to the value of the function in case of <image>, <image> and <image>.

Output

You should output n lines, the i-th line should contain the expression of minimum length which equals to the i-th function. If there is more than one such expression, output the lexicographically smallest of them. Expressions should satisfy the given grammar and shouldn't contain white spaces.

Example

Input

4
00110011
00000111
11110000
00011111


Output

y
(y|z)&amp;x
!x
x|y&amp;z

Note

The truth table for the second function:

<image>

### Response

```cpp
#include <bits/stdc++.h>
using namespace std;
int n, i, j, k, t;
map<string, string> m;
string s;
void GenerateAnswer();
int main() {
  GenerateAnswer();
  scanf("%d", &n);
  while (n--) {
    cin >> s;
    cout << m[s] << "\n";
  }
  return 0;
}
void GenerateAnswer() {
  m["00000000"] = "!x&x";
  m["00000001"] = "x&y&z";
  m["00000010"] = "!z&x&y";
  m["00000011"] = "x&y";
  m["00000100"] = "!y&x&z";
  m["00000101"] = "x&z";
  m["00000110"] = "!y&x&z|!z&x&y";
  m["00000111"] = "(y|z)&x";
  m["00001000"] = "!y&!z&x";
  m["00001001"] = "!y&!z&x|x&y&z";
  m["00001010"] = "!z&x";
  m["00001011"] = "!z&x|x&y";
  m["00001100"] = "!y&x";
  m["00001101"] = "!y&x|x&z";
  m["00001110"] = "!(y&z)&x";
  m["00001111"] = "x";
  m["00010000"] = "!x&y&z";
  m["00010001"] = "y&z";
  m["00010010"] = "!x&y&z|!z&x&y";
  m["00010011"] = "(x|z)&y";
  m["00010100"] = "!x&y&z|!y&x&z";
  m["00010101"] = "(x|y)&z";
  m["00010110"] = "!x&y&z|!y&x&z|!z&x&y";
  m["00010111"] = "(x|y)&z|x&y";
  m["00011000"] = "!x&y&z|!y&!z&x";
  m["00011001"] = "!y&!z&x|y&z";
  m["00011010"] = "!x&y&z|!z&x";
  m["00011011"] = "!z&x|y&z";
  m["00011100"] = "!x&y&z|!y&x";
  m["00011101"] = "!y&x|y&z";
  m["00011110"] = "!(y&z)&x|!x&y&z";
  m["00011111"] = "x|y&z";
  m["00100000"] = "!x&!z&y";
  m["00100001"] = "!x&!z&y|x&y&z";
  m["00100010"] = "!z&y";
  m["00100011"] = "!z&y|x&y";
  m["00100100"] = "!x&!z&y|!y&x&z";
  m["00100101"] = "!x&!z&y|x&z";
  m["00100110"] = "!y&x&z|!z&y";
  m["00100111"] = "!z&y|x&z";
  m["00101000"] = "!(!x&!y|x&y|z)";
  m["00101001"] = "!(!x&!y|x&y|z)|x&y&z";
  m["00101010"] = "!z&(x|y)";
  m["00101011"] = "!z&(x|y)|x&y";
  m["00101100"] = "!x&!z&y|!y&x";
  m["00101101"] = "!x&!z&y|!y&x|x&z";
  m["00101110"] = "!y&x|!z&y";
  m["00101111"] = "!z&y|x";
  m["00110000"] = "!x&y";
  m["00110001"] = "!x&y|y&z";
  m["00110010"] = "!(x&z)&y";
  m["00110011"] = "y";
  m["00110100"] = "!x&y|!y&x&z";
  m["00110101"] = "!x&y|x&z";
  m["00110110"] = "!(x&z)&y|!y&x&z";
  m["00110111"] = "x&z|y";
  m["00111000"] = "!x&y|!y&!z&x";
  m["00111001"] = "!x&y|!y&!z&x|y&z";
  m["00111010"] = "!x&y|!z&x";
  m["00111011"] = "!z&x|y";
  m["00111100"] = "!x&y|!y&x";
  m["00111101"] = "!x&y|!y&x|x&z";
  m["00111110"] = "!(x&z)&y|!y&x";
  m["00111111"] = "x|y";
  m["01000000"] = "!x&!y&z";
  m["01000001"] = "!x&!y&z|x&y&z";
  m["01000010"] = "!x&!y&z|!z&x&y";
  m["01000011"] = "!x&!y&z|x&y";
  m["01000100"] = "!y&z";
  m["01000101"] = "!y&z|x&z";
  m["01000110"] = "!y&z|!z&x&y";
  m["01000111"] = "!y&z|x&y";
  m["01001000"] = "!(!x&!z|x&z|y)";
  m["01001001"] = "!(!x&!z|x&z|y)|x&y&z";
  m["01001010"] = "!x&!y&z|!z&x";
  m["01001011"] = "!x&!y&z|!z&x|x&y";
  m["01001100"] = "!y&(x|z)";
  m["01001101"] = "!y&(x|z)|x&z";
  m["01001110"] = "!y&z|!z&x";
  m["01001111"] = "!y&z|x";
  m["01010000"] = "!x&z";
  m["01010001"] = "!x&z|y&z";
  m["01010010"] = "!x&z|!z&x&y";
  m["01010011"] = "!x&z|x&y";
  m["01010100"] = "!(x&y)&z";
  m["01010101"] = "z";
  m["01010110"] = "!(x&y)&z|!z&x&y";
  m["01010111"] = "x&y|z";
  m["01011000"] = "!x&z|!y&!z&x";
  m["01011001"] = "!x&z|!y&!z&x|y&z";
  m["01011010"] = "!x&z|!z&x";
  m["01011011"] = "!x&z|!z&x|x&y";
  m["01011100"] = "!x&z|!y&x";
  m["01011101"] = "!y&x|z";
  m["01011110"] = "!(x&y)&z|!z&x";
  m["01011111"] = "x|z";
  m["01100000"] = "!(!y&!z|x|y&z)";
  m["01100001"] = "!(!y&!z|x|y&z)|x&y&z";
  m["01100010"] = "!x&!y&z|!z&y";
  m["01100011"] = "!x&!y&z|!z&y|x&y";
  m["01100100"] = "!x&!z&y|!y&z";
  m["01100101"] = "!x&!z&y|!y&z|x&z";
  m["01100110"] = "!y&z|!z&y";
  m["01100111"] = "!y&z|!z&y|x&y";
  m["01101000"] = "!(!x&!y|x&y|z)|!x&!y&z";
  m["01101001"] = "!(!x&!y|x&y|z)|!x&!y&z|x&y&z";
  m["01101010"] = "!x&!y&z|!z&(x|y)";
  m["01101011"] = "!x&!y&z|!z&(x|y)|x&y";
  m["01101100"] = "!x&!z&y|!y&(x|z)";
  m["01101101"] = "!x&!z&y|!y&(x|z)|x&z";
  m["01101110"] = "!y&(x|z)|!z&y";
  m["01101111"] = "!y&z|!z&y|x";
  m["01110000"] = "!x&(y|z)";
  m["01110001"] = "!x&(y|z)|y&z";
  m["01110010"] = "!x&z|!z&y";
  m["01110011"] = "!x&z|y";
  m["01110100"] = "!x&y|!y&z";
  m["01110101"] = "!x&y|z";
  m["01110110"] = "!(x&y)&z|!z&y";
  m["01110111"] = "y|z";
  m["01111000"] = "!x&(y|z)|!y&!z&x";
  m["01111001"] = "!x&(y|z)|!y&!z&x|y&z";
  m["01111010"] = "!x&(y|z)|!z&x";
  m["01111011"] = "!x&z|!z&x|y";
  m["01111100"] = "!x&(y|z)|!y&x";
  m["01111101"] = "!x&y|!y&x|z";
  m["01111110"] = "!x&y|!y&z|!z&x";
  m["01111111"] = "x|y|z";
  m["10000000"] = "!(x|y|z)";
  m["10000001"] = "!(x|y|z)|x&y&z";
  m["10000010"] = "!(!x&y|!y&x|z)";
  m["10000011"] = "!(x|y|z)|x&y";
  m["10000100"] = "!(!x&z|!z&x|y)";
  m["10000101"] = "!(x|y|z)|x&z";
  m["10000110"] = "!(!x&y|!y&x|z)|!y&x&z";
  m["10000111"] = "!(x|y|z)|(y|z)&x";
  m["10001000"] = "!y&!z";
  m["10001001"] = "!y&!z|x&y&z";
  m["10001010"] = "!(!x&y|z)";
  m["10001011"] = "!y&!z|x&y";
  m["10001100"] = "!(!x&z|y)";
  m["10001101"] = "!y&!z|x&z";
  m["10001110"] = "!(!x&y|z)|!y&x";
  m["10001111"] = "!y&!z|x";
  m["10010000"] = "!(!y&z|!z&y|x)";
  m["10010001"] = "!(x|y|z)|y&z";
  m["10010010"] = "!(!x&y|!y&x|z)|!x&y&z";
  m["10010011"] = "!(x|y|z)|(x|z)&y";
  m["10010100"] = "!(!x&z|!z&x|y)|!x&y&z";
  m["10010101"] = "!(x|y|z)|(x|y)&z";
  m["10010110"] = "!(!x&y|!y&x|z)|!x&y&z|!y&x&z";
  m["10010111"] = "!(x|y|z)|(x|y)&z|x&y";
  m["10011000"] = "!x&y&z|!y&!z";
  m["10011001"] = "!y&!z|y&z";
  m["10011010"] = "!(!x&y|z)|!x&y&z";
  m["10011011"] = "!(!x&y|z)|y&z";
  m["10011100"] = "!(!x&z|y)|!x&y&z";
  m["10011101"] = "!(!x&z|y)|y&z";
  m["10011110"] = "!(!x&y|z)|!x&y&z|!y&x";
  m["10011111"] = "!y&!z|x|y&z";
  m["10100000"] = "!x&!z";
  m["10100001"] = "!x&!z|x&y&z";
  m["10100010"] = "!(!y&x|z)";
  m["10100011"] = "!x&!z|x&y";
  m["10100100"] = "!x&!z|!y&x&z";
  m["10100101"] = "!x&!z|x&z";
  m["10100110"] = "!(!y&x|z)|!y&x&z";
  m["10100111"] = "!(!y&x|z)|x&z";
  m["10101000"] = "!(x&y|z)";
  m["10101001"] = "!(x&y|z)|x&y&z";
  m["10101010"] = "!z";
  m["10101011"] = "!z|x&y";
  m["10101100"] = "!x&!z|!y&x";
  m["10101101"] = "!(x&y|z)|x&z";
  m["10101110"] = "!y&x|!z";
  m["10101111"] = "!z|x";
  m["10110000"] = "!(!y&z|x)";
  m["10110001"] = "!x&!z|y&z";
  m["10110010"] = "!(!y&x|z)|!x&y";
  m["10110011"] = "!x&!z|y";
  m["10110100"] = "!(!y&z|x)|!y&x&z";
  m["10110101"] = "!(!y&z|x)|x&z";
  m["10110110"] = "!(!y&x|z)|!x&y|!y&x&z";
  m["10110111"] = "!x&!z|x&z|y";
  m["10111000"] = "!x&y|!y&!z";
  m["10111001"] = "!(x&y|z)|y&z";
  m["10111010"] = "!x&y|!z";
  m["10111011"] = "!z|y";
  m["10111100"] = "!(!x&!y&z|x&y)";
  m["10111101"] = "!x&!z|!y&x|y&z";
  m["10111110"] = "!x&y|!y&x|!z";
  m["10111111"] = "!z|x|y";
  m["11000000"] = "!x&!y";
  m["11000001"] = "!x&!y|x&y&z";
  m["11000010"] = "!x&!y|!z&x&y";
  m["11000011"] = "!x&!y|x&y";
  m["11000100"] = "!(!z&x|y)";
  m["11000101"] = "!x&!y|x&z";
  m["11000110"] = "!(!z&x|y)|!z&x&y";
  m["11000111"] = "!(!z&x|y)|x&y";
  m["11001000"] = "!(x&z|y)";
  m["11001001"] = "!(x&z|y)|x&y&z";
  m["11001010"] = "!x&!y|!z&x";
  m["11001011"] = "!(x&z|y)|x&y";
  m["11001100"] = "!y";
  m["11001101"] = "!y|x&z";
  m["11001110"] = "!y|!z&x";
  m["11001111"] = "!y|x";
  m["11010000"] = "!(!z&y|x)";
  m["11010001"] = "!x&!y|y&z";
  m["11010010"] = "!(!z&y|x)|!z&x&y";
  m["11010011"] = "!(!z&y|x)|x&y";
  m["11010100"] = "!(!z&x|y)|!x&z";
  m["11010101"] = "!x&!y|z";
  m["11010110"] = "!(!z&x|y)|!x&z|!z&x&y";
  m["11010111"] = "!x&!y|x&y|z";
  m["11011000"] = "!x&z|!y&!z";
  m["11011001"] = "!(x&z|y)|y&z";
  m["11011010"] = "!(!x&!z&y|x&z)";
  m["11011011"] = "!x&!y|!z&x|y&z";
  m["11011100"] = "!x&z|!y";
  m["11011101"] = "!y|z";
  m["11011110"] = "!x&z|!y|!z&x";
  m["11011111"] = "!y|x|z";
  m["11100000"] = "!(x|y&z)";
  m["11100001"] = "!(x|y&z)|x&y&z";
  m["11100010"] = "!x&!y|!z&y";
  m["11100011"] = "!(x|y&z)|x&y";
  m["11100100"] = "!x&!z|!y&z";
  m["11100101"] = "!(x|y&z)|x&z";
  m["11100110"] = "!(!y&!z&x|y&z)";
  m["11100111"] = "!x&!y|!z&y|x&z";
  m["11101000"] = "!((x|y)&z|x&y)";
  m["11101001"] = "!((x|y)&z|x&y)|x&y&z";
  m["11101010"] = "!x&!y|!z";
  m["11101011"] = "!x&!y|!z|x&y";
  m["11101100"] = "!x&!z|!y";
  m["11101101"] = "!x&!z|!y|x&z";
  m["11101110"] = "!y|!z";
  m["11101111"] = "!y|!z|x";
  m["11110000"] = "!x";
  m["11110001"] = "!x|y&z";
  m["11110010"] = "!x|!z&y";
  m["11110011"] = "!x|y";
  m["11110100"] = "!x|!y&z";
  m["11110101"] = "!x|z";
  m["11110110"] = "!x|!y&z|!z&y";
  m["11110111"] = "!x|y|z";
  m["11111000"] = "!x|!y&!z";
  m["11111001"] = "!x|!y&!z|y&z";
  m["11111010"] = "!x|!z";
  m["11111011"] = "!x|!z|y";
  m["11111100"] = "!x|!y";
  m["11111101"] = "!x|!y|z";
  m["11111110"] = "!(x&y&z)";
  m["11111111"] = "!x|x";
}

```