import java.util.*;
import java.io.*;

public class ss
{
	public static void main(String[] args) throws IOException
	{
		Scanner sc = new Scanner(System.in);
		String line1;
		String line2;
		int m,d;
		String[] prvni = new String[2];
		//int pocet = Integer.parseInt(line);
		do
		{
			int[] min = new int[70000];
			int[] max = new int[70000];	
			line1 = sc.nextLine();
			//if (Integer.parseInt(line1) == 0) break;			
			prvni = line1.split(" ");
			d=Integer.parseInt(prvni[0]);
			if (d == 0) break;
			m=Integer.parseInt(prvni[1]);
			String[] druhy = new String[d];
			
			line2 = sc.nextLine();			
			druhy = line2.split(" ");
			int pocet = -1;
			for(int i=0;i<d;i++)
			{
				int cislo = Integer.parseInt(druhy[i]);
				//System.out.println(cislo+"-");
								
				if((pocet >= 0)&&(cislo < min[pocet]))
				{
					pocet++;
					min[pocet] = cislo;
					//System.out.println("CHYBA");
				}
				
				if(pocet == -1)
				{
					min[0] = cislo;
					pocet++;
				}
				if(pocet > -1)
				{
					for(int j = 0; j<=pocet;j++)
					{
						if(max[j] < cislo)
						{
							max[j] = cislo;
						}
					}
				}	
			}
			int soucet = 0;
			//System.out.println(pocet);
			for(int j=0;j<=pocet;j++)
			{
				//System.out.println((m/min[j])*(max[j]-min[j]));
				//System.out.println("min:"+min[j]+", max:"+max[j]);				
				if(soucet < ((m/min[j])*(max[j]-min[j])))
				{
					soucet = (m/min[j])*(max[j]-min[j]);
				}
			}
			System.out.println(soucet);
		} while(1==1);
	}
}
