program probB
  implicit none
  integer*8 n,i,j,k,l,tmp,tmp_2,tmp_3,del_tmp,mi,pl
  integer*8,allocatable :: a(:),b(:),del(:),minus_b(:),plus_a(:)

  read(*,*) n
  allocate(a(n),b(n),del(n),minus_b(n),plus_a(n))
  read(*,*) a
  read(*,*) b

  minus_b=0
  tmp_2=0
  tmp_3=0
  pl=0
  mi=0
  do i=1,n
     del(i)=b(i)-a(i)
     if(del(i)>0)then
        pl=pl+del(i)
     else
        mi=mi-del(i)
     end if
     
     select case(del(i))
     case(:-1)
        tmp_2=tmp_2+1
        minus_b(tmp_2)=i
     case(1:)
        tmp_3=tmp_3+1
        plus_a(tmp_3)=i
     end select
     
  end do

  if(pl+mi<0) then
     write(*,*)'No'
     stop
  end if

  i=0
  ! do while(mi<0.and.i<n)
  !    i=i+1
  !    if(del(i)>0) then
  !       mi=mi-del(i)
  !       a(i)=+del(i)
  !    end if
  ! end do

  l=1
  do i=1,tmp_2
     k=minus_b(i)
     do while (del(k)<0.and.l<=tmp_3)
        j=plus_a(l)
        if(del(j)>=2) then
!           write(*,*) del
           if(mod(del(j),2)==0)then
              a(j)=a(j)+min(del(j),-del(k)*2)
              b(k)=b(k)+min(del(j),-del(k)*2)/2
           else
              a(j)=a(j)+min(del(j)-1,-del(k)*2)
              b(k)=b(k)+(min(del(j)-1,-del(k)*2))/2
           end if
           del(k)=b(k)-a(k)
           del(j)=b(j)-a(j)
        else
           l=l+1
        end if
     end do
     if(sum(del)<0) then
        write(*,*)'No'
        stop
     end if
  end do
  do i=1,n
     if(del(i)<0) then
        write(*,*) 'No'
        stop
     end if
  end do
  

  write(*,*) 'Yes'  
end program probB
