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".
s=input()
class Node:
    def __init__(self,val):
        self.val = val
        self.nextptr = None
        self.prevptr = None
        
root = ref = Node(1)
idx = 1

for ch in s:
    
    idx+=1
    if idx>len(s):
        break
    newnode = Node(idx)
    if ch=='l':
        #if ref is root
        if ref.prevptr is None:
            root = newnode
        else:
            newnode.prevptr = ref.prevptr
            ref.prevptr.nextptr = newnode
        ref.prevptr = newnode
        newnode.nextptr = ref
        ref = ref.prevptr
        
    else:
        
        if ref.nextptr is not None:
            ref.nextptr.prevptr = newnode
            newnode.nextptr = ref.nextptr
        newnode.prevptr = ref
        ref.nextptr = newnode
        ref = ref.nextptr
        
            
        
            
curr = root       
for i in range(len(s)):
    print(curr.val)
    curr = curr.nextptr