import java.util.Scanner;
import java.lang.Integer;
import java.lang.Long;
import java.lang.String;

public class ss
{
	public static void main(String [] argv)
	{
		Scanner sc = new Scanner(System.in);
		
		while(sc.hasNextLine())
		{
			int d = sc.nextInt();
			
			if(d == 0) break;
			
			int sum = sc.nextInt();
			sc.nextLine();
			
			int[] prize = new int[d];
			
			for(int i = 0; i < d; i++)
			{
				prize[i] = sc.nextInt();
			}
			sc.nextLine();
			
			int max_zisk = 0;
			int buyday = 0;
			int sell_day = 0;
			
			int count, res, v, prize_last = 0, first_min_prize;
			first_min_prize = Integer.MAX_VALUE;
			
			for(int i = 0; i < d; i++)
			{
				if (prize[i] < first_min_prize) first_min_prize = prize[i];
				else
				{
					continue;
				}
				for(int j = i; j < d; j++)
				{
					if(prize[i] < prize[j] && prize[j] > prize_last)
					{
						prize_last = prize[j];
						count = sum / prize[i];
						res = count * prize[j];
						v = res - sum + (sum % prize[i]);
						if(v > max_zisk) max_zisk = v;
					}
				}
			}
			System.out.println(max_zisk);
		}
	}
}
