N,M,K = map(int,input().split()) a = list(map(int,input().split())) b = list(map(int,input().split())) P = 10 ** 9 + 7 C = 1024 S = [0] * C T = [0] * C Sum = 0 S[0] += 1 for i in a: Sum ^= i S[Sum] += 1 Sum = 0 T[0] += 1 for i in b: Sum ^= i T[Sum] += 1 SS = [0] * C TT = [0] * C for i in range(C): SS[0] += S[i] * (S[i]-1) // 2 SS[0] %= P TT[0] += T[i] * (T[i]-1) // 2 TT[0] %= P for j in range(i+1,C): SS[i^j] += S[i] * S[j] SS[i^j] %= P TT[i^j] += T[i] * T[j] TT[i^j] %= P ans = 0 for i in range(C): ans += SS[i] * TT[i^K] ans %= P print(ans)