/* imports all std modules {{{*/
import
  std.algorithm,
  std.array,
  std.ascii,
  std.base64,
  std.bigint,
  std.bitmanip,
  std.compiler,
  std.complex,
  std.concurrency,
  std.container,
  std.conv,
  std.csv,
  std.datetime,
  std.demangle,
  std.encoding,
  std.exception,
  std.file,
  std.format,
  std.functional,
  std.getopt,
  std.json,
  std.math,
  std.mathspecial,
  std.meta,
  std.mmfile,
  std.net.curl,
  std.net.isemail,
  std.numeric,
  std.parallelism,
  std.path,
  std.process,
  std.random,
  std.range,
  std.regex,
  std.signals,
  std.socket,
  std.stdint,
  std.stdio,
  std.string,
  std.system,
  std.traits,
  std.typecons,
  std.uni,
  std.uri,
  std.utf,
  std.uuid,
  std.variant,
  std.zip,
  std.zlib;
/*}}}*/

/+---test
RRLRL
---+/
/+---test
RRLLLLRLRRLL
---+/
/+---test
RRRLLRLLRRRLLLLL
---+/

void main(string[] args) {
  const S = readln.chomp;

  auto ans = new size_t[S.length];

  char prev = 'R';
  size_t st, md;
  foreach (i, c; S~'R') {
    if (prev != c) {
      if (c == 'L') {
        md = i;
      }
      if (c == 'R') {
        const len = i - st;
        ans[md-1] = ans[md] = len/2;

        if (ans[md]*2 != len) {
          if ((md-st)%2 == 0) {
            ++ans[md];
          } else {
            ++ans[md-1];
          }
        }

        st = i;
      }
    }
    prev = c;
  }
  foreach (i, v; ans) {
    if (i != 0) " ".write;
    v.write;
  }
  writeln;
}
