fun main(args: Array<String>) {
    val pw = java.io.PrintWriter(System.out)
    Problem.solve(java.util.Scanner(System.`in`), pw)
    pw.flush()
}

object Problem {
    fun solve(sc: java.util.Scanner, pw: java.io.PrintWriter) {
        val S = sc.next().toCharArray() + CharArray(1) { 'R' }
        val N = S.count() - 1
        val ans = mutableListOf<Int>()
        var nr = 0
        var nl = 0
        var prev = 'R'
        val count = mutableListOf<Pair<Int, Int>>()
        for (i in 0..N) {
            if (prev == 'L' && S[i] == 'R') {
                count.add(Pair(nr, nl))
                nr = 0
                nl = 0
            }
            if (S[i] == 'R') nr++
            if (S[i] == 'L') nl++
            prev = S[i]
        }
        count.forEach {
            val nr = it.first
            val nl = it.second
            repeat(nr - 1) {
                ans += 0
            }
            var a = (nl + nr) / 2
            if (nr % 2 == 1 && nl % 2 == 0) {
                a += 1
            }
            ans += a
            ans += (nl + nr) - a
            repeat(nl - 1) {
                ans += 0
            }
        }
        pw.println(ans.joinToString(" "))
    }
}
