You've got an $*n* × *m*$ pixel picture. Each pixel can be white or black. Your task is to change the colors of as few pixels as possible to obtain a barcode picture.
A picture is a barcode if the following conditions are fulfilled:
- All pixels in each column are of the same color.
- The width of each monochrome vertical line is at least
$*x*$and at most$*y*$pixels. In other words, if we group all neighbouring columns of the pixels with equal color, the size of each group can not be less than$*x*$or greater than$*y*$.
Input
The first line contains four space-separated integers $*n*$, $*m*$, $*x*$ and $*y*$ ($1 ≤ *n*, *m*, *x*, *y* ≤ 1000; *x* ≤ *y*$).
Then follow $*n*$ lines, describing the original image. Each of these lines contains exactly $*m*$ characters. Character "." represents a white pixel and "#" represents a black pixel. The picture description doesn't have any other characters besides "." and "#".
Output
In the first line print the minimum number of pixels to repaint. It is guaranteed that the answer exists.
Note
In the first test sample the picture after changing some colors can looks as follows:
.##.. .##.. .##.. .##.. .##.. .##..
In the second test sample the picture after changing some colors can looks as follows:
.#.#. .#.#.
样例
6 5 1 2
##.#.
.###.
###..
#...#
.##.#
###..
11
2 5 1 1
#####
.....
5
题面与样例版权归 Codeforces 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。