import java.util.Scanner;

public class Main{
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();

		int maxCake = N/4;
		int maxDounut = N/7;
		final int CACE_PRICE= 4;
		final int DOUNUT_PRICE= 7;


		boolean isOK = false;
		for (int i = 0; i <= maxCake ; i++) {
			for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			}
		}
		if (isOK) {
			System.out.println("Yes");
		} else {
			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 N = sc.nextInt();

		int maxCake = N/4;
		int maxDounut = N/7;
		final int CACE_PRICE= 4;
		final int DOUNUT_PRICE= 7;


		boolean isOK = false;
		for (int i = 0; i <= maxCake ; i++) {
			for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			}
		}
		if (isOK) {
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	}
} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();

		int maxCake = N/4;
		int maxDounut = N/7;
		final int CACE_PRICE= 4;
		final int DOUNUT_PRICE= 7;


		boolean isOK = false;
		for (int i = 0; i <= maxCake ; i++) {
			for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			}
		}
		if (isOK) {
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	} main {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();

		int maxCake = N/4;
		int maxDounut = N/7;
		final int CACE_PRICE= 4;
		final int DOUNUT_PRICE= 7;


		boolean isOK = false;
		for (int i = 0; i <= maxCake ; i++) {
			for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			}
		}
		if (isOK) {
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc int maxCake = N/4; maxCake N/4 N 4 int maxDounut = N/7; maxDounut N/7 N 7 final int CACE_PRICE= 4; CACE_PRICE 4 final int DOUNUT_PRICE= 7; DOUNUT_PRICE 7 boolean isOK = false; isOK false for (int i = 0; i <= maxCake ; i++) {
			for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			}
		} int i = 0; int i = 0; i 0 i <= maxCake i maxCake i++ i++ i {
			for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			}
		} {
			for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			}
		} for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			} int j = 0; int j = 0; j 0 j <= maxDounut j maxDounut j++ j++ j {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			} {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			} if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				} (CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N (CACE_PRICE*i)+ (DOUNUT_PRICE*j) (CACE_PRICE*i) CACE_PRICE i (DOUNUT_PRICE*j) DOUNUT_PRICE j N {
					isOK = true;
					break;
				} isOK = true isOK true break; if (isOK) {
			System.out.println("Yes");
		} else {
			System.out.println("No");
		} isOK {
			System.out.println("Yes");
		} System.out.println("Yes") System.out.println System.out System System.out "Yes" {
			System.out.println("No");
		} 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 N = sc.nextInt();

		int maxCake = N/4;
		int maxDounut = N/7;
		final int CACE_PRICE= 4;
		final int DOUNUT_PRICE= 7;


		boolean isOK = false;
		for (int i = 0; i <= maxCake ; i++) {
			for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			}
		}
		if (isOK) {
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	}
} public class Main{
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();

		int maxCake = N/4;
		int maxDounut = N/7;
		final int CACE_PRICE= 4;
		final int DOUNUT_PRICE= 7;


		boolean isOK = false;
		for (int i = 0; i <= maxCake ; i++) {
			for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			}
		}
		if (isOK) {
			System.out.println("Yes");
		} else {
			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 N = sc.nextInt();

		int maxCake = N/4;
		int maxDounut = N/7;
		final int CACE_PRICE= 4;
		final int DOUNUT_PRICE= 7;


		boolean isOK = false;
		for (int i = 0; i <= maxCake ; i++) {
			for (int j = 0; j <= maxDounut ; j++) {
				if ((CACE_PRICE*i)+ (DOUNUT_PRICE*j) == N) {
					isOK = true;
					break;
				}
			}
		}
		if (isOK) {
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	}
}
