program sample
    implicit none
    character(100000)::s,t
    character::top,las
    integer(8) :: i,j,m,n,a,b,c0,c1
    integer(8),allocatable :: x(:),y(:)
  
    read(*,*) s
    n=len_trim(s)
    a=1
    b=n
    c0=0
    c1=0
    m=0
    do i=1,n/2
        do 
        if(s(a:a) .eq. 'x' .and. a<n)then
            a=a+1
            c0=c0+1
        elseif(a==n)then
            write(*,*)0
            stop
        else
            top=s(a:a)
            exit
        end if
        end do
        do
        if(s(b:b) .eq. 'x')then
            b=b-1
            c1=c1+1
        else
            las=s(b:b)
            exit
        end if
        end do
        if(top .ne. las)then
            write(*,*)-1
            stop
        else
            m=m+abs(c0-c1)
            a=a+1
            b=b-1
            c0=0
            c1=0
        end if
        if(a>=b)then
            exit
        endif
    end do

    write(*,*) m
  
    stop
end program sample
  

