#include <algorithm>
#include <vector>
#include <cfloat>
#include <string>
#include <cmath>
#include <set>
#include <cstdlib>
#include <map>
#include <ctime>
#include <iomanip>
#include <functional>
#include <deque>
#include <iostream>
#include <cstring>
#include <queue>
#include <cstdio>
#include <stack>
#include <climits>
#include <sys/time.h>
#include <cctype>

using namespace std;

typedef long long ll;

int main() {
  int dx[] = {-1, 1, -1, 1, -2, -2, 2, 2};
  int dy[] = {-2, -2, 2, 2, -1, 1, -1, 1};
  int gx, gy;
  scanf("%d %d", &gx, &gy);
  int px, py;
  px = py = 0;
  if (px == gx && py == gy) {
    puts("YES");
    return 0;
  }
  for (int i = 0; i < 8; i++) {
    px = dx[i];
    py = dy[i];
    if (px == gx && py == gy) {
      puts("YES");
      return 0;
    }
    for (int j = 0; j < 8; j++) {
      px = dx[i]+dx[j];
      py = dy[i]+dy[j];
      if (px == gx && py == gy) {
	puts("YES");
	return 0;
      }
      for (int k = 0; k < 8; k++) {
	px = dx[i]+dx[j]+dx[k];
	py = dy[i]+dy[j]+dy[k];
	if (px == gx && py == gy) {
	  puts("YES");
	  return 0;
	}
      }
    }
  }

  puts("NO");
  return 0;
}