eolymp
bolt
Try our new interface for solving problems
Problems

Arriving to LKSH

Arriving to LKSH

Do you know is it easy to arrange a check-in at LKSH? For example, in 2012 it was necessary to order a bus for n LKSH students that wanted to get to "Berendeevy Polyany" from Moscow. One director told to another that its possible to order some of m buses. He knows the capacity of each bus and at once understood what is the minimum number of buses he must order to bring all LKSH students to the camp.

Can you quickly solve this problem?

Input

The first line contains two integers n and m (1n106, 1m1000). Next line contains m integers from 1 to 1000 - the bus capacities.

Output

Print in the first line k - the minimum number of buses that director needs to order. In the next line print k integers - the buses numbers to order. The buses are numbered from 1 to m in the same order like at the input. If some solutions are possible - print any. If there is no solutions, print "-1".

Time limit 1 second
Memory limit 64 MiB
Input example #1
345 5
100 130 190 140 150

Output example #1
3
3 4 5
Input example #2
345 3
100 100 100
Output example #2
-1
Source 2012 ЛКШ Август Параллель B1 День 1, Задача А