#include using namespace std; using ll=long long; using Graph=vector>; #define MOD 1000000007 int main(){ int N,K; cin>>N>>K; vector A(N); for(int i=0;i>A[i]; } sort(A.begin(),A.end()); reverse(A.begin(),A.end()); int ans=0; for(int i=0;i<(1<<(N-1));i++){ int x=K; for(int j=0;j>j)&1)==1){ x%=A[j]; } } ans=max(ans,x%A[N-1]); } cout< dp(1<>j)&1)==1){ dp[i]=max(dp[i],dp[i-(1<