#include #include #include using namespace std; void ins() {} templatevoid ins(T& v,Rest&... rest){cin>>v;ins(rest...);} #define rep(i,n) for(int i=0,_i=(n);i<_i;++i) #define all(f,c,...) (([&](decltype((c)) cccc) { return (f)(begin(cccc), end(cccc), ## __VA_ARGS__); })(c)) int main() { int N, K; ins(N, K); vector A(N); rep(i, N) { cin >> A[i]; } all(sort, A); all(reverse, A); int ans = 0; rep(bit, 1<<(N-1)) { int x = K; if (bit == 0) continue; rep(i, N) { if (bit & (1 << i)) { x %= A[i]; } } ans = max(ans, x % A.back()); } cout << ans << endl; return 0; }