Du har bakat bullar och lagt dem på en lång rad. Totalt har du N bullar, där den i:te finns på x-koordinat x_i. Du skulle vilja samla ihop bullarna så att de ligger bredvid varandra, alltså på koordinater a,a+1,a+2,…,a+N−1 för något a. Men bullarna är väldigt varma och kan endast hanteras med hjälp av en spade med bredd D. I ett drag kan du välja ett intervall av längd D och vända på alla bullar i det intervallet. Mer specifikt kan du välja ett intervall på formen \[L,L+D−1]. En bulle vars x-koordinat uppfyller L≤x_i≤L+D−1 flyttas då till x-koordinat L+D−1−(x_i−L).
Du får givet de N bullarnas positioner och talet D. Din uppgift är att hitta en sekvens av drag så att bullarna hamnar bredvid varandra. Du får använda högst 105 drag.
Den första raden innehåller två heltal N och D (2≤N,D≤200).
Den andra raden innehåller N heltal x_i (1≤x_i≤200). Alla talen x_i är olika.
Om det inte finns någon lösning, skriv ut "-1".
Annars, skriv först ut en rad med heltalet M (0≤M≤105), antalet drag. Skriv därefter ut M rader, där den i:te innehåller heltalet L_i.
Detta innebär att det i:te draget vänder på intervallet \[L_i,L_i+D−1]. Talet L_i får vara nästan\footnote{Heltalet måste uppfylla −2147483648≤L_i≤2147483647, annars får du fel svar.} vilket heltal som helst, inklusive negativt. Lösningen räknas som korrekt om bullarna ligger bredvid varandra efter att samtliga drag utförts. Ordningen på bullarna spelar ingen roll.