#include <bits/stdc++.h>
using namespace std;
long long arr[30][30];
long long cntr, k;
int n, m;
vector<map<long long, int>> v;
void f(int x, int y, long long val) {
  val ^= arr[x][y];
  if (x + y == n - 1) {
    v[x][val]++;
    return;
  }
  if (x < n) f(x + 1, y, val);
  if (y < m) f(x, y + 1, val);
}
void f1(int x, int y, long long val) {
  if (x + y == n - 1) {
    cntr += v[x][val ^ k];
    return;
  }
  val ^= arr[x][y];
  if (x > 0) f1(x - 1, y, val);
  if (y > 0) f1(x, y - 1, val);
}
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  cin >> n >> m >> k;
  v.resize(n + 1);
  for (int i = 0; i < n; ++i) {
    for (int j = 0; j < m; ++j) {
      cin >> arr[i][j];
    }
  }
  f(0, 0, 0);
  f1(n - 1, m - 1, 0);
  cout << cntr << endl;
  return 0;
}
