#include <bits/stdc++.h>
using namespace std;
const int lim = 1010;

string s[lim];

void solve(int n){
    for(int i=0; i<n; i++) cin >> s[i];

    for(int i=0; i<n; i++){
        int dot_count = 0;
        for(int j=0; j<s[i].size(); j++){
            if(s[i][j] == '.'){
                dot_count++;
                s[i][j] = ' ';
            }
        }
        if(dot_count == 0) continue;
        s[i][--dot_count] = '+';

        int nec = i-1;
        while(nec >= 0 && dot_count < s[nec].size() && s[nec][dot_count] == ' '){
            s[nec][dot_count] = '|';
            nec--;
        }
    }

    return;
}

int main(){
    int n;
    while(true){
        cin >> n;
        if(n == 0) break;
        solve(n);
        for(int i=0; i<n; i++) cout << s[i] << endl;
    }
    return 0;
}
