#include<bits/stdc++.h>
using namespace std;

void func(vector<int> b){
    for(int i = 0; i < b.size(); i++){
        if(b[i] == 0) cout << 'S';
        else cout << 'W';
    }
    cout << endl;

    return;
}

int main(){

    bool flag = false;
    // s = 0, w = 1
    int n; cin >> n;
    vector<char> a(n);
    for(int i = 0; i < n; i++){
        cin >> a[i];
    }

    vector<int> b(n);
    // s, s
    b[0] = 0;
    b[1] = 0;

    for(int i = 1; i < n - 1; i++){
        if(a[i] == 'o' && b[i] == 0){
            b[i + 1] = b[i - 1];
        }else if(a[i] == 'x' && b[i] == 1){
            b[i + 1] = b[i - 1];
        }else{
            if(b[i - 1] == 0) b[i + 1] = 1;
            else b[i + 1] = 0;
        }
    }

    if(a[n - 1] == 'o' && b[n - 1] == 0){
        if(b[0] == b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }else if(a[n - 1] == 'x' && b[n - 1] == 1){
        if(b[0] == b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }else{
        if(b[0] != b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }


    // s, w
    b[0] = 0;
    b[1] = 1;

    for(int i = 1; i < n - 1; i++){
        if(a[i] == 'o' && b[i] == 0){
            b[i + 1] = b[i - 1];
        }else if(a[i] == 'x' && b[i] == 1){
            b[i + 1] = b[i - 1];
        }else{
            if(b[i - 1] == 0) b[i + 1] = 1;
            else b[i + 1] = 0;
        }
    }

    if(a[n - 1] == 'o' && b[n - 1] == 0){
        if(b[0] == b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }else if(a[n - 1] == 'x' && b[n - 1] == 1){
        if(b[0] == b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }else{
        if(b[0] != b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }


    // w, s
    b[0] = 1;
    b[1] = 0;

    for(int i = 1; i < n - 1; i++){
        if(a[i] == 'o' && b[i] == 0){
            b[i + 1] = b[i - 1];
        }else if(a[i] == 'x' && b[i] == 1){
            b[i + 1] = b[i - 1];
        }else{
            if(b[i - 1] == 0) b[i + 1] = 1;
            else b[i + 1] = 0;
        }
    }

    if(a[n - 1] == 'o' && b[n - 1] == 0){
        if(b[0] == b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }else if(a[n - 1] == 'x' && b[n - 1] == 1){
        if(b[0] == b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }else{
        if(b[0] != b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }


    // w, w
    b[0] = 1;
    b[1] = 1;

    for(int i = 1; i < n - 1; i++){
        if(a[i] == 'o' && b[i] == 0){
            b[i + 1] = b[i - 1];
        }else if(a[i] == 'x' && b[i] == 1){
            b[i + 1] = b[i - 1];
        }else{
            if(b[i - 1] == 0) b[i + 1] = 1;
            else b[i + 1] = 0;
        }
    }

    if(a[n - 1] == 'o' && b[n - 1] == 0){
        if(b[0] == b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }else if(a[n - 1] == 'x' && b[n - 1] == 1){
        if(b[0] == b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }else{
        if(b[0] != b[n - 2]){
            if(a[0] == 'o' && b[0] == 0){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else if(a[0] == 'x' && b[0] == 1){
                if(b[1] == b[n - 1]){
                    func(b);
                    return 0;
                }
            }else{
                if(b[1] != b[n - 1]){
                    func(b);
                    return 0;
                }
            }
        }
    }

    cout << -1 << endl;
    return 0;
}



Measured memory_bytes: 1280