There are n empty vessels on a river bank. The i-th vessel can contain at most ai liters of water. Almighty Ivan needs to fill some vessel with exactly A liters of water and take it home. To do so, he can perform the following operations:
Now Almighty Ivan needs your help. You should provide him with the list of operations which leads to the situation when one of the vessels contains exactly A liters of water. If there is no way to do so, print - 1.
Please note that you don't have to minimize the number of operations in this list, but the number of operations should not exceed 106.
The first line contains integers n and A (1 ≤ n ≤ 10, 1 ≤ A ≤ 5) — the number of vessels and the required number of liters. The next line contains n integers a1, a2, ..., an (1 ≤ ai ≤ 2·104) where ai is the volume of the i-th vessel.
If the answer doesn't exist, print - 1.
Otherwise, on the first line, print one integer m: the number of operations in the list. Then print m lines: the descriptions of the operations.
The description of each operation must start by an integer specifying its type (1, 2 or 3 as they are listed in the statement). For the first and second type, it must be followed by one integer number k (1 ≤ k ≤ n) which is the index of the vessel taking part in this operation. For the third type, it must be followed by two integer numbers i and j (1 ≤ i, j ≤ n, i ≠ j) which mean that Ivan should pour water from the i-th vessel to the j-th one until one of them is full or empty.
Please check the samples for better understanding.
2 1
5 2
4
1 1
3 1 2
2 2
3 1 2
4 3
1 2 1 1
-1
| Name |
|---|


