#include <bits/stdc++.h>
using namespace std;
int main() {
  long int n, m;
  cin >> n;
  cin >> m;
  char str[2002][2002];
  long int A[10002][2];
  long int cnt = 0;
  long int i, j;
  for (i = 0; i < n; i++) {
    cin >> str[i];
    for (j = 0; j < m; j++) {
      if (str[i][j] == 'w') {
        A[cnt][0] = i;
        A[cnt][1] = j;
        cnt++;
      }
    }
  }
  long int i_min = n, i_max = 0, j_min = m, j_max = 0;
  for (i = 0; i < cnt; i++) {
    if (A[i][0] < i_min) i_min = A[i][0];
    if (A[i][0] > i_max) i_max = A[i][0];
    if (A[i][1] < j_min) j_min = A[i][1];
    if (A[i][1] > j_max) j_max = A[i][1];
  }
  long int dim;
  long int Idy = -1;
  long int Idx = -1;
  if (i_max - i_min > j_max - j_min) {
    dim = i_max - i_min + 1;
    for (i = 0; i < cnt; i++) {
      if (A[i][0] != i_max && A[i][0] != i_min) {
        Idy = A[i][1];
        break;
      }
    }
    if (Idy == -1) {
      if (m - j_min > dim)
        j_max = j_min + dim - 1;
      else {
        j_max = m - 1;
        j_min = j_max - dim + 1;
      }
    } else {
      if (j_max == j_min) {
        if (j_min + dim - 1 < m)
          j_max = j_min + dim - 1;
        else
          j_min = j_max - dim + 1;
      } else {
        if (Idy == j_min)
          j_max = j_min + dim - 1;
        else
          j_min = j_max - dim + 1;
      }
    }
  } else if (i_max - i_min < j_max - j_min) {
    dim = j_max - j_min + 1;
    for (i = 0; i < cnt; i++) {
      if (A[i][1] != j_max && A[i][1] != j_min) {
        Idx = A[i][0];
        break;
      }
    }
    if (Idx == -1) {
      if (n - i_min > dim)
        i_max = i_min + dim - 1;
      else {
        i_max = n - 1;
        i_min = i_max - dim + 1;
      }
    } else {
      if (i_max == i_min) {
        if (i_min + dim - 1 < n)
          i_max = i_min + dim - 1;
        else
          i_min = i_max - dim + 1;
      } else {
        if (Idx == i_min)
          i_max = i_min + dim - 1;
        else
          i_min = i_max - dim + 1;
      }
    }
  }
  if (!((i_max < n) && (i_min >= 0) && (j_max < m) && (j_min >= 0))) {
    cout << "-1"
         << "\n";
    return 0;
  }
  long int cnt2 = 0;
  for (j = j_min; j <= j_max; j++) {
    if (str[i_min][j] == 'w')
      cnt2++;
    else
      str[i_min][j] = '+';
    if (i_max == i_min) continue;
    if (str[i_max][j] == 'w')
      cnt2++;
    else
      str[i_max][j] = '+';
  }
  for (i = i_min + 1; i < i_max; i++) {
    if (str[i][j_min] == 'w')
      cnt2++;
    else
      str[i][j_min] = '+';
    if (j_max == j_min) continue;
    if (str[i][j_max] == 'w')
      cnt2++;
    else
      str[i][j_max] = '+';
  }
  if (cnt == -1) {
    for (i = 0; i < 2000; i++) cout << "w";
    cout << endl;
    for (i = 1; i < 2000 - 1; i++) {
      cout << "w";
      for (j = 1; j < 1999; j++) cout << ".";
      cout << "w";
      cout << endl;
    }
    for (i = 0; i < 2000; i++) cout << "w";
    cout << endl;
    return 0;
  }
  if (cnt != cnt2) {
    cout << "-1\n";
    return 0;
  }
  for (i = 0; i < n; i++) {
    for (j = 0; j < m; j++) cout << str[i][j];
    cout << "\n";
  }
  return 0;
}
