#include using namespace std; int dp[1 << 20]; int main() { int n, k; cin >> n >> k; int a[n]; for(int i = 0; i < n; ++i) cin >> a[i]; dp[0] = k; for(int mask = 1; mask < (1 << n); ++mask) { for(int i = 0; i < n; ++i) { if(mask >> i & 1) { dp[mask] = max(dp[mask], dp[mask ^ (1 << i)] % a[i]); } } } cout << dp[(1 << n) - 1] << '\n'; return 0; }