Problem: <image>

Input

The input contains two integers a1, a2 (0 ≤ ai ≤ 32), separated by a single space.

Output

Output a single integer.

Examples

Input

1 1


Output

0


Input

3 7


Output

0


Input

13 10


Output

1

Solution (in JAVA):

Solution:
import java.io.*;
import java.util.*;

public class B {

    final static String ans =
        "111111101010101111100101001111111"+
        "100000100000000001010110001000001"+
        "101110100110110000011010001011101"+
        "101110101011001001111101001011101"+
        "101110101100011000111100101011101"+
        "100000101010101011010000101000001"+
        "111111101010101010101010101111111"+
        "000000001111101111100111100000000"+
        "100010111100100001011110111111001"+
        "110111001111111100100001000101100"+
        "011100111010000101000111010001010"+
        "011110000110001111110101100000011"+
        "111111111111111000111001001011000"+
        "111000010111010011010011010100100"+
        "101010100010110010110101010000010"+
        "101100000101010001111101000000000"+
        "000010100011001101000111101011010"+
        "101001001111101111000101010001110"+
        "101101111111000100100001110001000"+
        "000010011000100110000011010000010"+
        "001101101001101110010010011011000"+
        "011101011010001000111101010100110"+
        "111010100110011101001101000001110"+
        "110001010010101111000101111111000"+
        "001000111011100001010110111110000"+
        "000000001110010110100010100010110"+
        "111111101000101111000110101011010"+
        "100000100111010101111100100011011"+
        "101110101001010000101000111111000"+
        "101110100011010010010111111011010"+
        "101110100100011011110110101110000"+
        "100000100110011001111100111100000"+
        "111111101101000101001101110010001";

    void solve() throws IOException {
        in("__std"); out("__std");
        println(ans.charAt(readInt() * 33 + readInt()));
        exit();
    }

    void in(String name) throws IOException {
        if (name.equals("__std")) {
            in = new BufferedReader(new InputStreamReader(System.in));
        } else {
            in = new BufferedReader(new FileReader(name));
        }
    }

    void out(String name) throws IOException {
        if (name.equals("__std")) {
            out = new PrintWriter(System.out);
        } else {
            out = new PrintWriter(name);
        }
    }

    void exit() {
        out.close();
        System.exit(0);
    }

    char readChar() throws IOException {
        return (char) in.read();
    }

    int readInt() throws IOException {
        return Integer.parseInt(readToken());
    }

    long readLong() throws IOException {
        return Long.parseLong(readToken());
    }

    double readDouble() throws IOException {
        return Double.parseDouble(readToken());
    }

    String readLine() throws IOException {
        st = null;
        return in.readLine();
    }

    String readToken() throws IOException {
        while (st == null || !st.hasMoreTokens()) {
            st = new StringTokenizer(in.readLine());
        }
        return st.nextToken();
    }

    boolean eof() throws IOException {
        return !in.ready();
    }

    void print(String format, Object ... args) {
        out.print(new Formatter(Locale.US).format(format, args));
    }

    void println(String format, Object ... args) {
        out.println(new Formatter(Locale.US).format(format, args));
    }

    void print(Object value) {
        out.print(value);
    }

    void println(Object value) {
        out.println(value);
    }

    void println() {
        out.println();
    }

    StringTokenizer st;

    BufferedReader in;
    PrintWriter out;

    public static void main(String[] args) throws IOException {
        new B().solve();
    }
}