s = gets.chomp
d = 0
a = []
ans = []
len = s.size
len.times do |i|
  a.push([d,i])
  if(s[i] == "\\")
    d -= 1
  elsif(s[i] == "/")
    d += 1
  end
end
a.push([d,len])
b = Marshal.load(Marshal.dump(a))
a.sort!{|a,b| b <=> a}
h = 0
men = 0
if(a[0][1] > a[1][1])
r =dr= a[0][1]
l =dl= a[1][1]
else
r =dr = a[1][1]
l =dl = a[0][1]
end
menp=0
men = 0
h = a[1][0]
(l..(r-1)).each do |i|
  if(s[i] == "\\")
    menp = 0.5 + (h-b[i][0])
  elsif(s[i] == "/")
    menp = -1*0.5 + (h-b[i][0])
  else
    menp = (h-b[i][0])
  end
  men += menp if(menp >= 0)
end
ans.push(men.to_i)
a.slice!(0,2)
f= 0
while(a.size > 0)
  menko = 0
  if(a[0][1] > dr)
    l = dr
    dr =r = a[0][1]
    h = a[0][0]
    f = 1
  elsif(a[0][1] < dl)
    r = dl
    dl = l = a[0][1]
    h = a[0][0]
    f = 2
  else
    a.delete_at(0)
    next
  end
  (l..(r-1)).each do |i|
    if(s[i] == "\\")
      menp = 0.5 + (h-b[i][0])
    elsif(s[i] == "/")
      menp = -0.5 + (h-b[i][0])
    else
      menp = (h-b[i][0])
    end
    menko += menp if(menp > 0)
  end
  a.delete_at(0)
  if(f==1)
    ans.push(menko.to_i)
  elsif(f==2)
    ans.unshift(menko.to_i)
  end
end
max = 0
p ans.inject(:+)
ans.delete(0)
print l = ans.size
ans.each do |d|
  print(" #{d}")
end
puts ""