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".
class TreeNode(object):
    def __init__(self, x):
        self.val = x
        self.left = None
        self.right = None
 
class Solution(object):             
    def inorderTraversal(self, root): 
        stack=[]
        res=[]
        if not root:
            return []
        while root or stack:
            while root:
                stack.append(root)
                root=root.left
            if stack:
                a=stack.pop()
                root=a.right
                res.append(a.val)
        return res

if __name__ == '__main__':
    sol = Solution()
    tree = []
    tree.append(TreeNode(1))
    root = tree[0]
    str = input()
    for i in range(len(str) - 1):
        tree.append(TreeNode(i + 2))
        if str[i] == 'l':
            tree[i].left = tree[i + 1]
        else:
            tree[i].right = tree[i + 1]
    res = sol.inorderTraversal(root)
    for x in res:
        print(x)
