n,q=gets.split.map &:to_i a=gets.split.map &:to_i z=0 b=[0]+a.map{|x|z=z^x} $<.map{|s|l,r=s.split;p b[l.to_i-1]^b[r.to_i]}