Squirrel Liss lived in a forest peacefully, but unexpected trouble happens. Stones fall from a mountain. Initially Squirrel Liss occupies an interval [0, 1]. Next, *n* stones will fall and Liss will escape from the stones. The stones are numbered from 1 to *n* in order.

The stones always fall to the center of Liss's interval. When Liss occupies the interval [*k* - *d*, *k* + *d*] and a stone falls to *k*, she will escape to the left or to the right. If she escapes to the left, her new interval will be [*k* - *d*, *k*]. If she escapes to the right, her new interval will be [*k*, *k* + *d*].

You are given a string *s* of length *n*. If the *i*-th character of *s* is "l" or "r", when the *i*-th stone falls Liss will escape to the left or to the right, respectively. Find the sequence of stones' numbers from left to right after all the *n* stones falls.
The input consists of only one line. The only line contains the string *s* (1 ≤ |*s*| ≤ 10<sup class="upper-index">6</sup>). Each character in *s* will be either "l" or "r".
import sys

def f(pos, c):
    half = pos[0] + (pos[1] - pos[0])/2
    if c == 'l':
        return (half, (pos[0], half))
    return (half, (half, pos[1]))

def main():
    s = sys.stdin.readline().strip()
    n = len(s)
    pos = (0.0, 1.0)
    rocks = []
    for i in range(len(s)):
        c = s[i]
        (rock, pos) = f(pos, c)
        rocks.append(rock)
    ans = sorted(range(1, n + 1), key=lambda i: rocks[i - 1])
    for i in range(n):
        sys.stdout.write('{}\n'.format(ans[i]))

main()
