<image>

Input

The input contains two integers row, col (0 ≤ row, col ≤ 63), separated by a single space.

Output

Output "IN" or "OUT".

Examples

Input


0 0


Output


OUT


Input


27 0


Output


IN


Input


0 27


Output


OUT


Input


27 27


Output


IN
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.Scanner;

public class Main {
  static int getCode(int color) {
    if (color == -1237980) return 1;
    if (color == -14503604) return 2;
    return 1233212;
  }
  public static void main(String[] args) throws IOException {
    if (true) {
      solve();
      return;
    }
    BufferedImage img = ImageIO.read(new File("image.png"));
    double stepR = img.getHeight() / 64.;
    double semiR = stepR / 2;
    double stepC = img.getWidth() / 64.;
    double semiC = stepC / 2;
    for (int i = 0; i < 64; i++) {
      for (int j = 0; j < 64; j++) {
        int row = (int) Math.round(i * stepR + semiR);
        int col = (int) Math.round(j * stepC + semiC);
        int color = img.getRGB(col, row);
        System.err.print(getCode(color));
      }
    }
  }

  static void solve() {
    Scanner in = new Scanner(System.in);
    int r = in.nextInt();
    int c = in.nextInt();
    System.out.println(solve(r, c) == 1 ? "OUT" : "IN");
  }

  static int solve(int r, int c) {
    String s =
        "1111111111111111111111111121212222221211111111111111111111111111111111111111111111111121222121212112122222111111111111111111111111111111111111111111222121112111221211112112111111111111111111111111111111111111122221212122222111122221212221211111111111111111111111111111111122111111212111112222111121212122111111111111111111111111111111211221222221222122212112122111211212111111111111111111111111111222112112111111212111222211221221221221111111111111111111111112222221221221222122212221111221121121112221111111111111111111112222222222221111211111211121221122122121122211111111111111111112222222222222222222212222222112222112222222222111111111111111112222222222222222222222222222222222222222222222221111111111111112222222222222222222222222222222222222222222222222211111111111111222222222222222222222222222222222222222222222222221111111111111222222222222222222222222222222222222222222222222222211111111111222222222222222222222222222222222222222222222222222222111111111122222222222222222222222222222222222222222222222222222211111111122222222222222222222222222222222222222222222222222222222111111122222222222222222222222222222222222222222222222222222222221111111122222222222222222222222222222222222222222222222222222222111111111122222222222211121122222222222222111212122222222222221111111221111122222222211211122222222222222212111111122222222111111111122221111122222111221211122222222222222212212211212211111112211122222221111121112221122211222222222221211211122111111111222222112222222221111121121122122111222222222122122222112111122222222211222222222222122122211111222112222222111211211112221222222222221122222222211111211122212221112222222212122222121112112122222222122222222222212221211211211121122222211211211112212221112222222222222222222211121121221222122212222121222122221122211121222222222222222222221222222122221111211212111121211212222111222122222222222222222222111112112112221222111212122122121121112112112222222222222222222221221222212212221112122211111222212122222212222222222222222222221112221121121112221211222122221121222111211122222222222222222222221111122122212212221221111121122122112111212222222222222222222222212212111121211112121121212212111221221222222222222222222222222111122221212121212222122121121222112221112222222222222222222222221211211122211122221112112211112112211122222222222222222222222222222111222111212212212212211212221211211222222222222222222222222222222111212222221111122222221112111222222222222222212222222222222222112111122222121222222222221112112222222222222211222222222222222222222222222222111122222222222222222222222222221122222222222222222222222222212112122222222222222222222222222222112222222222222222222222222121112222222222222222222222222222222211122222222222222222222222211121112222222222222222222222222222211112222222112222222222222222222122222222222222222222222222222221111122222221212222222222222222111222222222222222222222122222221111112222222111211122222222222112122222222222122222121111222222111111222222212121211212111221212211212112122111221111121222222211111112222222211122111112111111122111221111112121122212222222211111111122222221211222212222122211222111122212222212122222222211111111112222222222121121121112122221222122121111121112222222221111111111122222222111122122121111211121211112221211122222222221111111111111222222222122111222221221212111212211122222222222221111111111111122222222211222112121112221112122211211122222222222111111111111111222222222111222211122212212222122221222222222222111111111111111112222222221221111212111111211112122222222222222111111111111111111122222222222212122221221221212211222222222222111111111111111111111222222222222211112222111121111222222222222111111111111111111111111222222222222222222221222222222222222221111111111111111111111111112222222222222222222222222222222222221111111111111111111111111111112222222222222222222222222222222211111111111111111111111111111111122222222222222222222222222222211111111111111111111111111111111111112222222222222222222222221111111111111111111111111111111111111111112222222222222222222211111111111111111111111111111111111111111111111122222222222211111111111111111111111111";
    int at = r * 64 + c;
    return s.charAt(at) - '0';
  }
}