[<AutoOpen>]
module Program

open System

let read f = stdin.ReadLine() |> f
let reada f = stdin.ReadLine().Split() |> Array.map f
let reads f = stdin.ReadLine().Split() |> Array.toList |> List.map f

[<EntryPoint>]
let main _ =
    let S = (read string).ToCharArray()
    let N = S.Length

    let rs =
        let a = Array.create S.Length 0
        let mutable c = 0
        for i in [0 .. N-1] do
            if S.[i] = 'L' then
                a.[i] <- c
                c <- 0
            else
                c <- c + 1
        a
    let ls =
        let a = Array.create S.Length 0
        let mutable c = 0
        for i in [N-1 .. -1 .. 0] do
            if S.[i] = 'R' then
                a.[i] <- c
                c <- 0
            else
                c <- c + 1
        a
    let ans =
        let d = Array.create N 0
        for i in [0 .. N-1] do
            if ls.[i] <> 0 then
                let l = ls.[i]
                let r = rs.[i+1]
                if (l + r) % 2 = 0 then
                    d.[i] <- (l + r) / 2
                    d.[i+1] <- (l + r) / 2
                else
                    let m = (l + r) / 2
                    if l % 2 = 0 then
                        d.[i] <- m + 1
                        d.[i+1] <- m
                    else
                        d.[i] <- m
                        d.[i+1] <- m + 1
        d
    // eprintfn "*%A" rs
    // eprintfn "*%A" ls
    // eprintfn "*%A" ans
    String.Join(" ", ans)
    |> printfn "%s"
    0