#5084. hashit

内存限制:256 MiB 时间限制:20 Sec

题目描述

你有一个字符串S,一开始为空串,要求支持两种操作
在S后面加入字母C
删除S最后一个字母
问每次操作后S有多少个两两不同的连续子串

输入格式

一行一个字符串Q,表示对S的操作
如果第i个字母是小写字母c,表示第一种加字母c的操作
如果为-表示删除操作,保证所有删除操作前S都非空
|Q|<=10^5

输出格式

输出|Q|行,第i行表示i个操作之后S内有多少个不同子串

样例

样例输入


			
aba-caba

样例输出


			
1
3
5
3
6
9
12
17

数据范围与提示