import java.util.Scanner;
 
class Main {
	int n;
	boolean[] dp;
	
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		Main m = new Main(sc);
		m.solve();
		sc.close();
	}
	Main(Scanner sc){
		n = sc.nextInt();
		dp = new boolean[n+1];
		dp[0] = true;
	}
	void solve(){
		for(int i=1;i<=n;i++){
			if(i-4>=0){
				dp[i] = dp[i-4]||dp[i];
			}
			if(i-7>=0){
				dp[i] = dp[i-7]||dp[i];
			}
		}
		if(dp[n]){
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	}
} import java.util.Scanner; Scanner java.util class Main {
	int n;
	boolean[] dp;
	
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		Main m = new Main(sc);
		m.solve();
		sc.close();
	}
	Main(Scanner sc){
		n = sc.nextInt();
		dp = new boolean[n+1];
		dp[0] = true;
	}
	void solve(){
		for(int i=1;i<=n;i++){
			if(i-4>=0){
				dp[i] = dp[i-4]||dp[i];
			}
			if(i-7>=0){
				dp[i] = dp[i-7]||dp[i];
			}
		}
		if(dp[n]){
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	}
} Main int n; n boolean[] dp; dp public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		Main m = new Main(sc);
		m.solve();
		sc.close();
	} main {
		Scanner sc = new Scanner(System.in);
		Main m = new Main(sc);
		m.solve();
		sc.close();
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) Main m = new Main(sc); m new Main(sc) m.solve() m.solve m sc.close() sc.close sc String[] args args Main(Scanner sc){
		n = sc.nextInt();
		dp = new boolean[n+1];
		dp[0] = true;
	} Main {
		n = sc.nextInt();
		dp = new boolean[n+1];
		dp[0] = true;
	} n = sc.nextInt() n sc.nextInt() sc.nextInt sc dp = new boolean[n+1] dp new boolean[n+1] n+1 n 1 dp[0] = true dp[0] dp 0 true Scanner sc sc void solve(){
		for(int i=1;i<=n;i++){
			if(i-4>=0){
				dp[i] = dp[i-4]||dp[i];
			}
			if(i-7>=0){
				dp[i] = dp[i-7]||dp[i];
			}
		}
		if(dp[n]){
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	} solve {
		for(int i=1;i<=n;i++){
			if(i-4>=0){
				dp[i] = dp[i-4]||dp[i];
			}
			if(i-7>=0){
				dp[i] = dp[i-7]||dp[i];
			}
		}
		if(dp[n]){
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	} for(int i=1;i<=n;i++){
			if(i-4>=0){
				dp[i] = dp[i-4]||dp[i];
			}
			if(i-7>=0){
				dp[i] = dp[i-7]||dp[i];
			}
		} int i=1; int i=1; i 1 i<=n i n i++ i++ i {
			if(i-4>=0){
				dp[i] = dp[i-4]||dp[i];
			}
			if(i-7>=0){
				dp[i] = dp[i-7]||dp[i];
			}
		} {
			if(i-4>=0){
				dp[i] = dp[i-4]||dp[i];
			}
			if(i-7>=0){
				dp[i] = dp[i-7]||dp[i];
			}
		} if(i-4>=0){
				dp[i] = dp[i-4]||dp[i];
			} i-4>=0 i-4 i 4 0 {
				dp[i] = dp[i-4]||dp[i];
			} dp[i] = dp[i-4]||dp[i] dp[i] dp i dp[i-4]||dp[i] dp[i-4] dp i-4 i 4 dp[i] dp i if(i-7>=0){
				dp[i] = dp[i-7]||dp[i];
			} i-7>=0 i-7 i 7 0 {
				dp[i] = dp[i-7]||dp[i];
			} dp[i] = dp[i-7]||dp[i] dp[i] dp i dp[i-7]||dp[i] dp[i-7] dp i-7 i 7 dp[i] dp i if(dp[n]){
			System.out.println("Yes");
		} else {
			System.out.println("No");
		} dp[n] dp n {
			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"
import java.util.Scanner;
 
class Main {
	int n;
	boolean[] dp;
	
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		Main m = new Main(sc);
		m.solve();
		sc.close();
	}
	Main(Scanner sc){
		n = sc.nextInt();
		dp = new boolean[n+1];
		dp[0] = true;
	}
	void solve(){
		for(int i=1;i<=n;i++){
			if(i-4>=0){
				dp[i] = dp[i-4]||dp[i];
			}
			if(i-7>=0){
				dp[i] = dp[i-7]||dp[i];
			}
		}
		if(dp[n]){
			System.out.println("Yes");
		} else {
			System.out.println("No");
		}
	}
}