#include <bits/stdc++.h>
using namespace std;
long long int L[200005];
long long int R[200005];
long long int a[200005];
int main() {
  ios_base ::sync_with_stdio(false);
  cin.tie(0);
  int n, k;
  long long int x;
  cin >> n >> k >> x;
  long long int mul = x;
  for (int i = 1; i < k; i++) x *= mul;
  for (int i = 0; i < n; i++) cin >> a[i];
  L[0] = a[0];
  for (int i = 1; i < n; i++) L[i] = L[i - 1] | a[i];
  R[n - 1] = a[n - 1];
  for (int i = n - 2; i >= 0; i--) R[i] = R[i + 1] | a[i];
  long long int ans = 0;
  long long int _max = -1;
  for (int i = 0; i < n; i++) {
    ans = 0;
    if (i - 1 >= 0) ans |= L[i - 1];
    ans |= (a[i] * x);
    if (i + 1 < n) ans |= R[i + 1];
    _max = max(_max, ans);
  }
  cout << _max << endl;
  return 0;
}
