#include<cstdio>
#include<iostream>
#include<algorithm>
#include<queue>
#include<string>
#include<vector>
#include<deque>
#include<set>
#include<map>

using namespace std;

#define PB push_back()
#define SZ(x) ((int)x.size())
#define PI 3.141592653589
#define REP(i,N) for(int(i)=0;(i)<(int)(N);++(i))
int N;
int D,M;
int mini;
typedef long long LL;
void solve_case()
{
	mini=50000;
  scanf("%d",&M);

	LL best=M;
	REP(i,D)
	{
	  int cur;
		scanf("%d",&cur);
    //kupim za mini, predam za cur
		if (mini!=50000)
		{
			LL mam=M/mini;
			LL rem=M%mini;
			LL zisk=mam*cur+rem;
			best=max(best,zisk);
		}
		if (cur<mini)
			mini=cur;
	}
	cout<<best-M<<endl;

}
int main()
{
  while(scanf("%d",&D),D)
	  solve_case();
	

	return 0;
}
