Arithmetic

Considering a number N and a list of n numbers l, give an arithmetic expression using the n numbers l that produces the value N.

Note : The priority of the operations is not taken into account. The parenthesizing is implicit to the left. Therefore:

1 - 2 * 3 + 4

Will be assessed as

((1 - 2) * 3) + 4

Input

  • 1 ≤ N ≤ 10^75
  • 10 ≤ n ≤ 25
  • 1 ≤ l ≤ 1000

Examples

Input :

-80955798032
412 995 365 36 728 8 428 765 571 283 444 786 715 363 41

Output :

412 - 995 + 365 - 36 * 728 + 8 - 428 * 765 * 571 + 283 + 444 - 786 - 715 + 363 - 41

Input :

143601566341846884535
219 24 513 647 713 431 587 442 165 969 534 908 401 384 478 372 794 310 767 410 477 172 975 544 935

Output :

219 * 24 - 513 - 647 - 713 + 431 + 587 + 442 + 165 - 969 * 534 * 908 * 401 + 384 - 478 - 372 - 794 + 310 - 767 * 410 * 477 + 172 + 975 + 544 * 935

I/O SU

Évènement organisé par ALIAS