implicit none
integer(8):: i,j,k,n,m,ans
integer(8),allocatable,dimension(:):: num,count

read (5,*) n
 
allocate(num(n))
allocate(count(n))
count=0
ans=0
m=1
count(1)=1
 
do i=1,n
    read (5,*) num(i)
enddo

call heapsort(n,num)

do i = 2,n
    if (num(m)==num(i)) then
        count(m)=count(m)+1
    else
        m=i
        count(m)=1
    endif
enddo

do i = 1,n
    ans=ans+mod(count(i),2)
enddo

write(6,"(i0)") ans
end

!---http://slpr.sakura.ne.jp/qp/sortf90/---
subroutine heapsort(n,array)
    implicit none
    integer(8),intent(in) :: n
    double precision,intent(inout) :: array(1:n)
   
    integer ::i,k,j,l
    double precision :: t
   
    if(n.le.0)then
        write(6,*)"Error, at heapsort"; stop
    endif
    if(n.eq.1)return

    l=n/2+1
    k=n
    do while(k.ne.1)
        if(l.gt.1)then
            l=l-1
            t=array(L)
        else
            t=array(k)
            array(k)=array(1)
            k=k-1
            if(k.eq.1) then
                array(1)=t
                exit
            endif
        endif
        i=l
        j=l+l
        do while(j.le.k)
            if(j.lt.k)then
                if(array(j).lt.array(j+1))j=j+1
            endif
            if (t.lt.array(j))then
                array(i)=array(j)
                i=j
                j=j+j
            else
                j=k+1
            endif
        enddo
        array(i)=t
    enddo

    return
end subroutine heapsort