module Main; import CPLib.Bits::{bit_check, bit_set}; import CPLib.IO; main : IO () = ( let n = *read_i; let k = *read_i; let as = *read_is(n); let as = as.sort; let ans = range(0, 1.shift_left(n)).map(|flag| let flag = flag.bit_set(0); let x = range(0, n).fold(k, |i, x| if !flag.bit_check(n-i-1) { x }; let a = as.@(n-i-1); let x = x % a; x ); x ).fold(I64::minimum, max); ans.to_string.println;; pure() );