using System;

class Program
{
    static void Main(string[] args)
    {
        int n = int.Parse(Console.ReadLine());
        string[] nizA = Console.ReadLine().Split();
        string[] nizB = Console.ReadLine().Split();
        int[] A= new int[n];
        int[] B= new int[n];
        for(int i = 0; i < n; i++)
        {
            A[i] = int.Parse(nizA[i]);
            B[i] = int.Parse(nizB[i]);
        }
        // OVAKO:   int resenje = (char)B[0] ^ (char)A[0];
        int max = 0;
        int trbrojA;
        int trbrojB;
        int vrednostA;
        int vrednostB;
        for(int l = 0; l <= n-2; l++) 
        {
            for(int d =1 + l; d < n; d++)
            {
                vrednostA=trbrojA = A[l];
                vrednostB=trbrojB = B[l];

                for(int i = l+1; i<=d;i++)
                {
                    vrednostA = vrednostA ^ A[i];
                    vrednostB = vrednostB & B[i];
                }
                if (vrednostA * vrednostB > max)
                {
                    max = vrednostA * vrednostB; 
                }
            }
        }
        Console.WriteLine(max);
        //string binaryForm = Convert.ToString(n, b);
        //Console.WriteLine(binaryForm);
    }
}