#include <bits/stdc++.h>
using namespace std;
int n, m;
long long a[100010], ans;
long long gcd(long long a, long long b) { return b == 0 ? a : gcd(b, a % b); }
inline long long cal(long long a) {
  if (a % 2 == 0) return 0;
  long long tmp = 0;
  for (int i = 0; (a << i) < m; i++) {
    tmp += m - (a << i);
  }
  return tmp;
}
int main() {
  scanf("%d%d", &n, &m);
  long long d = 0;
  for (int i = 0; i < n; i++) {
    cin >> a[i];
    if (i)
      d = gcd(d, a[i] - 1);
    else
      d = a[i] - 1;
  }
  for (int i = 1; i * i <= d; i++) {
    if (d % i == 0) {
      ans += cal(i);
      if (i * i != d) ans += cal(d / i);
    }
  }
  cout << ans << endl;
  return 0;
}
