#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<time.h>
#include<math.h>
//积水问题
char map[20010];
int isfinish(int x)
{
	int up=0,down=0,len,i,flag=1;
	len=strlen(map);
	for(i=x;i<=len-1;i++)
	{
		
		if(map[i]=='\\')
		{
			down++;
			flag=0;
		}
		if(map[i]=='/')
		{
			up++;
			if(flag==1)
				return 0;
		}
		if(up>down)
			return 0;
	}
	
	
	return 1;
}
int main()
{
	int stack[20010],i,j=0,len,puddle[10010]={0},total=0,top=0,flag=1;
	scanf("%s",map);
	len=strlen(map);
	for(i=0;i<=len-1;i++)
	{

		if(map[i]=='\\')
		{
			top++;
			stack[top]=i;
		}
		if(map[i]=='/' && top!=0)
		{
			if(flag==1)
			{
				flag=0;
				j++;
			}
			puddle[j]+=i-stack[top];
			total+=i-stack[top];
			top--;
			if(top==0)
				flag=1;
			if(flag==0)
				flag=isfinish(i+1);
		}

	}
	printf("%d\n%d",total,j);
	for(i=1;i<=j;i++)
		printf(" %d",puddle[i]);
	printf("\n");
	return 0;
}
