func_code_string: #include <bits/stdc++.h>   using namespace std;   int px[4000010];   int py[4000010];   char c[2010][2010];   int n, m;   bool pd(int x, int y, int d) {     if (x < 0 || y < 0 || x + d >= n || y + d >= m) return false;     for (int t = 1; t <= px[0]; t++)       if ((px[t] != x) && (px[t] != x + d) && (py[t] != y) && (py[t] != y + d))         return false;     for (int i = 0; i <= d; i++) {       if (c[x + i][y] ==  . ) c[x + i][y] =  + ;       if (c[x][y + i] ==  . ) c[x][y + i] =  + ;       if (c[x + i][y + d] ==  . ) c[x + i][y + d] =  + ;       if (c[x + d][y + i] ==  . ) c[x + d][y + i] =  + ;     }     for (int i = 0; i < n; i++) printf( %s n , c[i]);     return true;   }   int main() {     int i, j;     scanf( %d%d , &n, &m);     int x0 = n, x1 = -1, y0 = m, y1 = -1;     px[0] = 0;     py[0] = 0;     for (i = 0; i < n; i++) {       scanf( %s , c[i]);       for (j = 0; j < m; j++) {         if (c[i][j] ==  w ) {           px[++px[0]] = i;           py[++py[0]] = j;           x0 = min(x0, i);           x1 = max(x1, i);           y0 = min(y0, j);           y1 = max(y1, j);         }       }     }     if (px[0] > n * 4) {       printf( -1 n );       return 0;     }     int d = max(x1 - x0, y1 - y0);     if (pd(x0, y0, d)) return 0;     if (pd(x0, max(y1 - d, 0), d)) return 0;     if (pd(max(x1 - d, 0), y0, d)) return 0;     printf( -1 n );     return 0;   }   