B - Formando equipos

Time limit: 2 seconds
Memory limit: 256 megabytes
Languages: MS C# .NET 4.7.2053,GNU G++11 5.1.0 ...

En la Universidad de la Habana se intenta probar una nueva forma de competir en los concursos ACM-ICPC. El concurso va a funcionar de forma similar pero la cantidad de personas en un equipo no tiene restricción, aunque cada equipo seguirá contando con una sola computadora. Para evitar que se formen equipos demasiado fuertes, el promedio de la capacidad de los integrantes de un equipo debe ser igual a cierto valor $P$. A pesar de que esta medida pretende que los equipos tengan el mismo nivel, Fito considera que aún se pueden formar equipos mucho más sólidos que el resto. Por ejemplo, una persona muy buena podría simplemente unirse a un conjunto de competidores, que en la concreta no le aporte nada serio el día del concurso, pero que sí le permita llegar al promedio exigido. Fito conoce a los $N$ estudiantes de la facultad que pueden participar en la competencia y necesita saber la mayor capacidad que puede tener un estudiante tal que pueda formar un equipo con promedio $P$.

Input

La entrada empieza con dos enteros $N$ $(1 \leq N \leq 50)$ y $P (1 \leq P \leq 600)$ que indican la cantidad de estudiantes y el promedio del equipo respectivamente. En la siguiente línea aparecen $N$ enteros que representan las capacidades de los estudiantes. Todas las capacidades son valores enteros entre $1$ y $600$.

Output

Imprimir la mayor capacidad que puede tener un estudiante tal que exista un equipo que lo contiene y tenga promedio $P$. Si no es posible se debe imprimir -1.

Sample test(s)

Input
3 90 80 90 100
Output
100