#D4714. Gathering Children

    ID: 3917 Type: Default 2000ms 1073MiB

Gathering Children

Gathering Children

Given is a string S consisting of L and R.

Let N be the length of S. There are N squares arranged from left to right, and the i-th character of S from the left is written on the i-th square from the left.

The character written on the leftmost square is always R, and the character written on the rightmost square is always L.

Initially, one child is standing on each square.

Each child will perform the move below 10^{100} times:

  • Move one square in the direction specified by the character written in the square on which the child is standing. L denotes left, and R denotes right.

Find the number of children standing on each square after the children performed the moves.

Constraints

  • S is a string of length between 2 and 10^5 (inclusive).
  • Each character of S is L or R.
  • The first and last characters of S are R and L, respectively.

Input

Input is given from Standard Input in the following format:

S

Output

Print the number of children standing on each square after the children performed the moves, in order from left to right.

Examples

Input

RRLRL

Output

0 1 2 1 1

Input

RRLLLLRLRRLL

Output

0 3 3 0 0 0 1 1 0 2 2 0

Input

RRRLLRLLRRRLLLLL

Output

0 0 3 2 0 2 1 0 0 0 4 4 0 0 0 0

inputFormat

Input

Input is given from Standard Input in the following format:

S

outputFormat

Output

Print the number of children standing on each square after the children performed the moves, in order from left to right.

Examples

Input

RRLRL

Output

0 1 2 1 1

Input

RRLLLLRLRRLL

Output

0 3 3 0 0 0 1 1 0 2 2 0

Input

RRRLLRLLRRRLLLLL

Output

0 0 3 2 0 2 1 0 0 0 4 4 0 0 0 0

样例

RRLLLLRLRRLL
0 3 3 0 0 0 1 1 0 2 2 0