import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; public class Solution { static public int GCD(int a, int b) { if(a<0) a=a*-1; if(b<0) b=b*-1; if (b==0) return a; return GCD(b,a%b); } static public int sum(int a,int b){ if(a==b) return a; return a+b; } static public int max(int a,int b){ if(a>b) return a; else if(b>a) return b; else return a; } static public int functionOfLnR(int a,int b){ int value=0; value=GCD(a,b)*(sum(a,b)-max(a,b)); return value; } static long maximumValue(int[] a) { int maxVal=0; for(int i=0;imaxVal) { maxVal=temp; } temp=sum(a[i],a[j]); if (temp>maxVal) { maxVal=temp; } temp=max(a[i],a[j]); if (temp>maxVal) { maxVal=temp; } temp=functionOfLnR(a[i],a[j]); if (temp>maxVal) { maxVal=temp; } } } return maxVal; } public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int[] a = new int[n]; for(int a_i = 0; a_i < n; a_i++){ a[a_i] = in.nextInt(); } long result = maximumValue(a); System.out.println(result); in.close(); } }