program main
  implicit none
  integer :: n, i, begin, even, odd, i_atr
  logical :: rtol
  character(100000) :: s
  integer, allocatable :: res(:)
  read (*, *) s
  n = len_trim(s)
  allocate (res(n))
  res(:) = 0

  begin = 1
  rtol = .false.
  do i = 2, n + 1
    if (i == n + 1 .or. (s(i:i) == "R" .and. rtol)) then
      ! 区間 [begin, i - 1] が1つのbasin. そのbasinに対する処理
      even = (i - 1) / 2 - (begin - 1) / 2
      odd = (i - begin) - even
      if (mod(i_atr, 2) == 0) then
        res(i_atr) = even
        res(i_atr + 1) = odd
      else
        res(i_atr) = odd
        res(i_atr + 1) = even
      end if

      ! 次のbasinのための処理
      begin = i
      rtol = .false.
    else if (s(i:i) == "L") then
      if (.not. rtol) then
        i_atr = i - 1
        rtol = .true.
      end if
    end if
  end do

  write (*, "(100000(i0, ' '))") res(:)
end program main
