#include <bits/stdc++.h>
using namespace std;
const int N=2e5+5;
int a[N],b[N],c[N<<2],nex[N<<2];
int main() {
	int n;
	scanf("%d",&n);
	for(int i=0;i<n;i++) scanf("%d",&a[i]);
	for(int i=0;i<n;i++) scanf("%d",&b[i]);
	for(int i=0;i<n;i++) {
		c[i]=a[i]^a[(i+1)%n];
		c[i+n]=c[i+2*n]=b[i]^b[(i+1)%n];
	}
	nex[0]=c[n]=-1;
	int j=-1;
	for(int i=0;i<3*n;i++) {
		while(j>=0&&c[i]!=c[j]) j=nex[j];
		nex[i+1]=++j;
	}
	for(int i=0;i<n;i++) {
		if(nex[3*n-i]==n) {
			printf("%d %d\n",i,a[i]^b[0]);
		}
	}
	return 0;
}