
function Main(input) {
    var S = input[0].split('');
    var child = (new Array(S.length)).fill(1);
    var copy = child.slice();

    // 連続する長さの最大を調べる
    var max = 1;
    var sameChar = 1;
    for (var i = 1; i < S.length; i++) {
        if (S[i - 1] === S[i]) {
            sameChar++;
        } else {
            sameChar = 1;
        }
        if (sameChar > max) {
            max = sameChar;
        }
    }

    var left = 0;
    var right = 0;
    for (var i = 0; i < max; i++) {
        copy = child.slice();
        for (var j = 0; j < S.length; j++) {
            if (j === 0) {
                child[j] = S[j + 1] === 'L' ? copy[j + 1] : 0;
            } else if (j === S.length - 1) {
                child[j] = S[j - 1] === 'R' ? copy[j - 1] : 0;
            } else {
                left = S[j - 1] === 'R' ? copy[j - 1] : 0;
                right = S[j + 1] === 'L' ? copy[j + 1] : 0;
                child[j] = left + right;
            }
        }
    }

    // 奇数ならもう一度
    if (max % 2 === 1) {
        copy = child.slice();
        for (var j = 0; j < S.length; j++) {
            if (j === 0) {
                // 最初
                child[j] = S[j + 1] === 'L' ? copy[j + 1] : 0;
            } else if (j === S.length - 1) {
                // 最後
                child[j] = S[j - 1] === 'R' ? copy[j - 1] : 0;
            } else {
                left = S[j - 1] === 'R' ? copy[j - 1] : 0;
                right = S[j + 1] === 'L' ? copy[j + 1] : 0;
                child[j] = left + right;
            }
        }
    }

    console.log(child.join(' '));
  }

Main(require("fs").readFileSync("/dev/stdin", "utf8").trim().split(/\n|\s/));