Royal Croquet#721

Royal Croquet

0.25 seconds
64 megabytes
Very easy

Alice thought she had never seen such a peculiar croquet field: it was riddled with holes and furrows. Hedgehogs were used as balls, flamingos as mallets, and soldiers as hoops, forming a bridge and standing still while the game was in progress.

However, there was another peculiar rule, the breach of which could provoke the Queen's dreadful anger. In royal croquet, teams participate (the -th team has A_i players), and they must be distributed across sectors (the -th sector can hold B_j players). The game cannot commence until all players are allocated to the sectors such that no two players from the same team are in the same sector.

Can the game proceed?

Input

The first line contains two natural numbers and (1 \le N, M \le 100), indicating the number of teams and sectors, respectively. The second line contains numbers, representing the number of players in each team. No team has more than players. The third line contains numbers, representing the capacity of each sector. Each sector can hold at least and no more than players.

Output

On the first line, print if Alice can play croquet, and otherwise. If the answer is positive, also print lines, where the -th line contains the sector numbers for the players of team number . If multiple solutions exist, any one of them is acceptable.

Examples

Example 1

Loading
Loading