No surrender! 1#4071

No surrender! 1

1 second
128 megabytes
Easy

Vanya is in a hurry to catch the buses heading to LCS. However, he also needs to buy a gift for Katya, whose birthday is approaching. On his way, he finds a store where he can purchase the gift, which costs coins. Vanya has bills in his wallet, but the seller cannot provide change, so Vanya must pay the exact amount using his bills. Additionally, Vanya is pressed for time, so he wants to use the fewest number of bills possible to make the exact payment.

Your task is to help Vanya achieve this.

Input

The first line of the input contains three non-negative integers: , , and (0 \le n \le 1000, 0 \le c \le 1000, 1 \le k \le 1000000000). The following numbers a_1, a_2, , a_n (1 \le a_i \le 1000) represent the denominations of the bills in Vanya's wallet, listed in the order they appear.

Output

On the first line of the output, print a single number — the minimum number of bills Vanya can use to make the exact payment. On the second line, print numbers — the indices of the bills Vanya should use, in ascending order, as he must take the bills sequentially from his wallet.

If it is impossible to gather the exact amount without requiring change, print .

Vanya is not concerned with how the exact amount is gathered, so if there are multiple solutions, any valid one can be provided. The number can be ignored in your solution.

Examples

Example 1

Loading
Loading

Example 3

Loading
Loading

Note

In the first example, the possible solutions sorted in lexicographical order are:

  • (the first and second bills, with denominations and )

  • (the second and fifth bills, with denominations and )

  • (the third and fourth bills, with denominations and )

Any of these options can be output.