#include #include #include typedef unsigned long long ul; typedef signed long long ll; std::vector< ll > kx = {-2, -2, -1, -1, 1, 1, 2, 2}; std::vector< ll > ky = {-1, 1, -2, 2, -2, 2, -1, 1}; bool dfs(int depth, ll x, ll y, ll gx, ll gy) { if (x==gx && y==gy) return true; if (depth==0) return false; for (int i = 0; i < 8; ++i) { if (dfs(depth-1, x+kx[i], y+ky[i], gx, gy)) return true; } return false; } int main(void) { std::cin.tie(0); std::ios::sync_with_stdio(false); std::cout << std::fixed << std::setprecision(2); ll x, y; std::cin >> x >> y; std::cout << (dfs(3, 0, 0, x, y) ? "YES" : "NO") << std::endl; return 0; }