fun main(arg: Array<String>) {
    val N = nextInt()
    val S = next() //.map { if (it == 'o') 1 else 0 }
    val a = IntArray(N + 1)
    val b = IntArray(N + 1)
    val c = IntArray(N + 1)
    for (i in 1 .. N) a[i] = if (S[i - 1] == 'o') 0 else 1
    for (b1 in 0 .. 1) {
        for (b2 in 0 .. 1) {
            b[1] = b1
            b[2] = b2
            for (i in 1 .. N) c[i] = a[i]
            c[1] = c[1] xor b[1]
            for (i in 2 until N) {
                c[i] = c[i] xor b[i]
                b[i + 1] = b[i - 1] xor c[i]
            }
            c[N] = c[N] xor b[N]
            if ((b[1] == (b[N - 1] xor c[N])) && (b[N] == (b[2] xor c[1]))) {
                val sb = StringBuilder()
                for (i in 1 .. N) sb.append(if (b[i] == 0) 'S' else 'W')
                return println(sb.toString())
            }
        }
    }
    println(-1)
}

fun next() = readLine()!!
fun nextInt(delta: Int = 0) = Integer.parseInt(next()) + delta
