Problem description


Palindromiczny plakat
(B)
Limit pamięci: 256 MB
Limit czasu: 1.00 s

Bajtazar projektuje nowy plakat Olimpiady Informatycznej Juniorów. Po głębokim zastanowieniu postanowił, że plakat będzie miał N wierszy i M kolumn, a każda komórka będzie zawierała małą literę alfabetu angielskiego.

Dodatkowo, Bajtazar bardzo lubi palindromy. Będzie usatysfakcjonowany tylko i wyłącznie gdy dokładnie R wierszy będzie palindromami oraz gdy dokładnie C kolumn będzie palindromami. Pomóż mu w tym i zaprojektuj plakat, który będzie mu się podobał lub stwierdź, że nie jest to możliwe.

Wejście

W pierwszym (i jedynym) wierszu wejścia znajdują się cztery liczby całkowite N,M,R i C oznaczające odpowiednio liczbę wierszy, liczbę kolumn, ile wierszy powinno być palindromami i ile kolumn powinno być palindromami w plakacie.

Wyjście

Należy wypisać N wierszy wyjścia, w każdym po M małych liter alfabetu angielskiego oznaczające projekt plakatu, który zadowoli Bajtazara lub -1 jeżeli nie jest to możliwe.

Jeżeli istnieje wiele możliwych rozwiązań, Twój program może wypisać dowolne z nich.

Ograniczenia

2 ≤ N, M ≤ 2 000

0 ≤ R ≤ N

0 ≤ C ≤ M

Podzadania

Podzadanie Warunki Punkty
1 R = 0 lub C = 0 8
2 N = 2, M = 2 9
3 N = 2 17
4 R = N lub C = M 32
5 Brak dodatkowych ograniczeń 34

Przykład

Wejście Wyjście
4 5 1 2
oijio
oiooj
oioij
oioij
Wejście Wyjście
2 2 2 1
-1