#include <bits/stdc++.h>
using namespace std;
int main() {
  int n;
  cin >> n;
  int biti0 = 0, biti1 = (1 << 10) - 1;
  for (int i = 0; i < n; ++i) {
    char op;
    int x;
    cin >> op >> x;
    if (op == '|') {
      biti0 |= x;
      biti1 |= x;
    } else if (op == '&') {
      biti0 &= x;
      biti1 &= x;
    } else {
      biti0 ^= x;
      biti1 ^= x;
    }
  }
  int ormask = 0, xormask = 0;
  for (int b = 0; b < 10; ++b) {
    int r0 = biti0 & (1 << b), r1 = biti1 & (1 << b);
    if (r0 && r1)
      xormask += (1 << b);
    else if ((!r0) && r1)
      ormask += (1 << b);
    else if (r0 && (!r1)) {
      ormask += (1 << b);
      xormask += (1 << b);
    }
  }
  cout << "2\n"
       << "& " << ormask << "\n^ " << xormask << "\n";
  return 0;
}
