You are given a table consisting of n rows and m columns. Each cell of the table contains either 0 or 1. In one move, you are allowed to pick any row or any column and invert all values, that is, replace 0 by 1 and vice versa.
What is the minimum number of cells with value 1 you can get after applying some number of operations?
The first line of the input contains two integers n and m (1≤n≤20, 1≤m≤100000)− the number of rows and the number of columns, respectively.
Then n lines follows with the descriptions of the rows. Each line has length m and contains only digits '0' and '1'.
Output a single integer− the minimum possible number of ones you can get after applying some sequence of operations.
3 4
0110
1010
0111
2