#include using namespace std; using ll =long long; #define rep(i,N) for(int (i)=0;(i)<(N);++(i)) #define SORT(i) sort((i).begin(),(i).end()) constexpr int INF = 2000000000; constexpr ll mod = 1000000007; int dx[8] = { -2, -2, -1, -1, 1, 1, 2, 2 }; int dy[8] = { -1, 1, -2, 2, -2, 2, -1, 1 }; int main() { int a, b; cin >> a >> b; queue>q; queuenum; q.push(make_pair(0, 0)); num.push(0); while (!q.empty()) { auto now = q.front(); q.pop(); auto cnt = num.front(); num.pop(); if (cnt >= 3)continue; rep(i, 8) { int y = now.first + dy[i]; int x = now.second + dx[i]; if (y == b && x == a) { cout << "YES" << "\n"; return 0; } q.push(make_pair(y, x)); num.push(cnt + 1); } } cout << "NO" << "\n"; return 0; }