I Zagreb, Kroatiens huvudstad, har man beslutat att bygga ett stort köpcentrum i förorten i samband med att IOI 2007 arrangeras. Det tänkbara området för att bygga köpcentrumet är indelat i ett rutnät med $m$ kvarter horisontellt och $n$ kvarter vertikalt, såsom visas i figuren nedan.

Zagrebs stad har beslutat att välja ut ett rektangulärt område på $a$ kvarter horisontellt gånger $b$ kvarter vertikalt inom det tänkbara området och bygga köpcentrumet där. I några av kvarteren inom det tänkbara området bor det dock redan människor, och på den marken går det inte att bygga köpcentrumet. Om det inte finns något bebott kvarter inom ett rektangulärt område på $a$ kvarter horisontellt gånger $b$ kvarter vertikalt, kan köpcentrumet byggas genom att man köper upp alla kvarter inom det rektangulära området.
Av ekonomiska skäl för Zagrebs stad måste kostnaden för markförvärvet hållas så låg som möjligt. För att kunna ta fram ett budgetförslag måste man snarast beräkna den kostnad som krävs för markförvärvet för att bygga köpcentrumet. Därför har Zagrebs stad beslutat att ge dig, som är kandidat till att representera ditt land vid IOI 2007, i uppdrag att skriva ett program för detta ändamål.
Skriv ett program som, givet storleken på det tänkbara området, storleken på köpcentrumet samt för varje kvarter information om huruvida det bor människor där och, om ingen bor där, kostnaden för att köpa det kvarteret, beräknar den minsta kostnaden som krävs för markförvärv för att bygga köpcentrumet.
I det följande betecknas kvarteret i den $i$-te kolumnen från vänster och den $j$-te raden uppifrån i det tänkbara området med $(i, j)$.
Indata
Den första raden i indatafilen mall.in innehåller två heltal $m, n$ ($1 \le m, n \le 1000$) åtskilda av ett blanksteg. Detta anger att storleken på det tänkbara området är $m$ kvarter horisontellt och $n$ kvarter vertikalt.
Den andra raden innehåller två heltal $a, b$ ($1 \le a, b \le 1000$) åtskilda av ett blanksteg. Detta anger att storleken på köpcentrumet är $a$ kvarter horisontellt och $b$ kvarter vertikalt.
De följande $n$ raderna (från rad $3$ till rad $n + 2$) innehåller information om varje kvarter inom det tänkbara området. Rad $j + 2$ ($1 \le j \le n$) anger informationen om kvarteren på den $j$-te raden uppifrån och innehåller $m$ heltal $c_{1,j}, \dots, c_{m,j}$ ($-1 \le c_{i,j} \le 100$) åtskilda av blanksteg. När $c_{i,j} = -1$ anger det att det bor människor i kvarteret $(i, j)$. Annars anger det att kostnaden för att köpa kvarteret $(i, j)$ är $c_{i,j}$.
Observera att för den indata som används vid bedömningen är det alltid möjligt att bygga köpcentrumet.
Utdata
Utdata ska skrivas till standardutdata. Skriv ut den minsta kostnaden som krävs för markförvärv för att bygga köpcentrumet.
Exempel
Indata 1
7 6 3 2 26 29 84 15 -1 1 71 45 14 38 91 62 77 35 68 -1 -1 90 63 56 70 31 2 4 74 72 41 90 100 26 21 -1 44 72 60 71 4 40 93 48 -1 50
Utdata 1
184
Byggplatsen för köpcentrumet i detta exempel på in- och utdata illustreras nedan. Ett kvarter markerat med $\times$ betyder att det redan bor människor där.

Observera
Var uppmärksam på indatans storlek. Eftersom iostream i C++ är långsamt är det i synnerhet lämpligt att vid behov använda fscanf eller liknande.