import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 動物の総数
		int x = sc.nextInt();
		// 足の数
		int y = sc.nextInt();

		// yが奇数の場合はNo
		if (y % 2 != 0) {
			System.out.println("No");
			return;
		}
		// すべてカメと仮定する b:カメの数
		int b = x;
		if (4 * b == y) {
			// すべてカメの場合
			System.out.println("Yes");
			return;
		} else if (4 * b < y) {
			System.out.println("No");
			return;
		} else {
			// 差分の足の数鶴の数
			int a = (4 * b - y) / 2;
			if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			}
			b -= a;
			if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			}
		}
		System.out.println("No");
	}
} import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 動物の総数
		int x = sc.nextInt();
		// 足の数
		int y = sc.nextInt();

		// yが奇数の場合はNo
		if (y % 2 != 0) {
			System.out.println("No");
			return;
		}
		// すべてカメと仮定する b:カメの数
		int b = x;
		if (4 * b == y) {
			// すべてカメの場合
			System.out.println("Yes");
			return;
		} else if (4 * b < y) {
			System.out.println("No");
			return;
		} else {
			// 差分の足の数鶴の数
			int a = (4 * b - y) / 2;
			if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			}
			b -= a;
			if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			}
		}
		System.out.println("No");
	}
} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 動物の総数
		int x = sc.nextInt();
		// 足の数
		int y = sc.nextInt();

		// yが奇数の場合はNo
		if (y % 2 != 0) {
			System.out.println("No");
			return;
		}
		// すべてカメと仮定する b:カメの数
		int b = x;
		if (4 * b == y) {
			// すべてカメの場合
			System.out.println("Yes");
			return;
		} else if (4 * b < y) {
			System.out.println("No");
			return;
		} else {
			// 差分の足の数鶴の数
			int a = (4 * b - y) / 2;
			if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			}
			b -= a;
			if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			}
		}
		System.out.println("No");
	} main {
		Scanner sc = new Scanner(System.in);
		// 動物の総数
		int x = sc.nextInt();
		// 足の数
		int y = sc.nextInt();

		// yが奇数の場合はNo
		if (y % 2 != 0) {
			System.out.println("No");
			return;
		}
		// すべてカメと仮定する b:カメの数
		int b = x;
		if (4 * b == y) {
			// すべてカメの場合
			System.out.println("Yes");
			return;
		} else if (4 * b < y) {
			System.out.println("No");
			return;
		} else {
			// 差分の足の数鶴の数
			int a = (4 * b - y) / 2;
			if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			}
			b -= a;
			if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			}
		}
		System.out.println("No");
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int x = sc.nextInt(); x sc.nextInt() sc.nextInt sc int y = sc.nextInt(); y sc.nextInt() sc.nextInt sc if (y % 2 != 0) {
			System.out.println("No");
			return;
		} y % 2 != 0 y % 2 y 2 0 {
			System.out.println("No");
			return;
		} System.out.println("No") System.out.println System.out System System.out "No" return; int b = x; b x if (4 * b == y) {
			// すべてカメの場合
			System.out.println("Yes");
			return;
		} else if (4 * b < y) {
			System.out.println("No");
			return;
		} else {
			// 差分の足の数鶴の数
			int a = (4 * b - y) / 2;
			if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			}
			b -= a;
			if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			}
		} 4 * b == y 4 * b 4 b y {
			// すべてカメの場合
			System.out.println("Yes");
			return;
		} System.out.println("Yes") System.out.println System.out System System.out "Yes" return; if (4 * b < y) {
			System.out.println("No");
			return;
		} else {
			// 差分の足の数鶴の数
			int a = (4 * b - y) / 2;
			if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			}
			b -= a;
			if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			}
		} 4 * b < y 4 * b 4 b y {
			System.out.println("No");
			return;
		} System.out.println("No") System.out.println System.out System System.out "No" return; {
			// 差分の足の数鶴の数
			int a = (4 * b - y) / 2;
			if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			}
			b -= a;
			if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			}
		} int a = (4 * b - y) / 2; a (4 * b - y) / 2 (4 * b - y) 4 * b 4 b y 2 if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			} (4 * b - y) % 2 != 0 (4 * b - y) % 2 (4 * b - y) 4 * b 4 b y 2 0 {
				// 割り切れない場合
				System.out.println("No");
				return;
			} System.out.println("No") System.out.println System.out System System.out "No" return; b -= a b a if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			} a >= 0 && b >= 0 && (2 * a + 4 * b == y) a >= 0 && b >= 0 && (2 * a + 4 * b == y) a >= 0 a 0 b >= 0 b 0 (2 * a + 4 * b == y) 2 * a + 4 * b 2 * a 2 a 4 * b 4 b y {
				System.out.println("Yes");
				return;
			} System.out.println("Yes") System.out.println System.out System System.out "Yes" return; System.out.println("No") System.out.println System.out System System.out "No" String[] args args public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 動物の総数
		int x = sc.nextInt();
		// 足の数
		int y = sc.nextInt();

		// yが奇数の場合はNo
		if (y % 2 != 0) {
			System.out.println("No");
			return;
		}
		// すべてカメと仮定する b:カメの数
		int b = x;
		if (4 * b == y) {
			// すべてカメの場合
			System.out.println("Yes");
			return;
		} else if (4 * b < y) {
			System.out.println("No");
			return;
		} else {
			// 差分の足の数鶴の数
			int a = (4 * b - y) / 2;
			if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			}
			b -= a;
			if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			}
		}
		System.out.println("No");
	}
} public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 動物の総数
		int x = sc.nextInt();
		// 足の数
		int y = sc.nextInt();

		// yが奇数の場合はNo
		if (y % 2 != 0) {
			System.out.println("No");
			return;
		}
		// すべてカメと仮定する b:カメの数
		int b = x;
		if (4 * b == y) {
			// すべてカメの場合
			System.out.println("Yes");
			return;
		} else if (4 * b < y) {
			System.out.println("No");
			return;
		} else {
			// 差分の足の数鶴の数
			int a = (4 * b - y) / 2;
			if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			}
			b -= a;
			if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			}
		}
		System.out.println("No");
	}
} Main
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 動物の総数
		int x = sc.nextInt();
		// 足の数
		int y = sc.nextInt();

		// yが奇数の場合はNo
		if (y % 2 != 0) {
			System.out.println("No");
			return;
		}
		// すべてカメと仮定する b:カメの数
		int b = x;
		if (4 * b == y) {
			// すべてカメの場合
			System.out.println("Yes");
			return;
		} else if (4 * b < y) {
			System.out.println("No");
			return;
		} else {
			// 差分の足の数鶴の数
			int a = (4 * b - y) / 2;
			if ((4 * b - y) % 2 != 0) {
				// 割り切れない場合
				System.out.println("No");
				return;
			}
			b -= a;
			if (a >= 0 && b >= 0 && (2 * a + 4 * b == y)) {
				System.out.println("Yes");
				return;
			}
		}
		System.out.println("No");
	}
}