#include<iostream>
#include<vector>
#include<cmath>

using namespace std;

vector<int> P;
vector<int> Maxima;

int main()
{
	int D, M;
	cin >> D;
	while (D!=0)
	{
		cin >> M;
		P.resize(D);
		Maxima.resize(D);		
		for(int i=0; i<D; i++) cin >> P[i];
		Maxima[D-1]=D-1;		
		
		for(int i=D-2; i>=0; i--) 
			if (P[i] > P[Maxima[i+1]]) Maxima[i] = i;
			else Maxima[i] = Maxima[i+1];

		//for(int i=0; i<D; i++) cout << Maxima[i] << " ";
//cout << endl;
		int MAX = M;
		if (D>0) for(int i=0; i<D-1; i++)
		{
			int pocet=M/P[i];
			int zostalo = M%P[i]; //cout << pocet << " " << zostalo << endl;
			
			int j = Maxima[i+1];			
			int sum = pocet*P[j]+zostalo;
			MAX=max(sum, MAX);
		}
		cout << MAX-M << endl;
		cin >> D;
	}

	return 0;
}

