Amanbol has a table A of size n×m. The rows of the table are numbered from 1 to n, and the columns are numbered from 1 to m. Each cell of the table either contains the character 'X', or one digit from '0' to '9'.
If the symbol 'X' is written on a table cell, it means that Amanbol marked this cell as blocked. Otherwise, the number written on this cell denotes its value.
After a recent hike in the mountains, Amanbol wants to find a hill in his table. He defines a hill as follows:
1. First we choose two numbers (s,e) such that (1 ≤ s ≤ e ≤ n).
2. Then for each k (s ≤ k ≤ e) we choose a pair (L_k,R_k) such that (1 ≤ L_k ≤ R_k ≤ m).
3. The conditions L_s ≥ L_{s+1} ≥ ... ≥ L_e and R_s ≤ R_{s+1} ≤ ... ≤ R_e should be satisfied.
Let's say that a cell (x,y) belongs to a hill if s ≤ x ≤ e and L_x ≤ y ≤ R_x. Among all possible hills, Amanbol wants to find the one with no blocked cells and the total value of all its cells is maximum.
Input
The first line of the input contains two integers n and m (1 ≤ n,m ≤ 2500) — the number of rows and columns in table A.
The i-th of the next n lines contains exactly m characters A_{i,1},...,A_{i,m}.
It is guaranteed that each table cell is a character 'X' or a digit from '0' to '9'. It is also guaranteed that it is always possible to find at least one hill in the table.
Output
Print a single integer — the maximum possible total value of all cells of the hill.