import java.io.*;
import java.util.*;

public class Main {
	private static final int READ_COUNT = 1;
	private static List<String> strList = new ArrayList<>();
	
	public static void main(String[] args) {
		read();
		
		int n = Integer.parseInt(strList.get(0));
		
		if (n % 4 == 0 || n % 7 == 0) {
			System.out.println("Yes");
			return;
		}
		
		for (int i = 1, iLen = n / 7; i <= iLen; i++) {
			if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			}
		}
		
		System.out.println("No");
	}
	
	private static void read() {
		try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
			for (int i = 0; i < READ_COUNT; i++) {
				strList.add(br.readLine());
			}
		} catch (IOException e) {
		}
	}
} import java.io.*; io.* java import java.util.*; util.* java public class Main {
	private static final int READ_COUNT = 1;
	private static List<String> strList = new ArrayList<>();
	
	public static void main(String[] args) {
		read();
		
		int n = Integer.parseInt(strList.get(0));
		
		if (n % 4 == 0 || n % 7 == 0) {
			System.out.println("Yes");
			return;
		}
		
		for (int i = 1, iLen = n / 7; i <= iLen; i++) {
			if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			}
		}
		
		System.out.println("No");
	}
	
	private static void read() {
		try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
			for (int i = 0; i < READ_COUNT; i++) {
				strList.add(br.readLine());
			}
		} catch (IOException e) {
		}
	}
} Main private static final int READ_COUNT = 1; READ_COUNT 1 private static List<String> strList = new ArrayList<>(); strList new ArrayList<>() public static void main(String[] args) {
		read();
		
		int n = Integer.parseInt(strList.get(0));
		
		if (n % 4 == 0 || n % 7 == 0) {
			System.out.println("Yes");
			return;
		}
		
		for (int i = 1, iLen = n / 7; i <= iLen; i++) {
			if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			}
		}
		
		System.out.println("No");
	} main {
		read();
		
		int n = Integer.parseInt(strList.get(0));
		
		if (n % 4 == 0 || n % 7 == 0) {
			System.out.println("Yes");
			return;
		}
		
		for (int i = 1, iLen = n / 7; i <= iLen; i++) {
			if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			}
		}
		
		System.out.println("No");
	} read() read int n = Integer.parseInt(strList.get(0)); n Integer.parseInt(strList.get(0)) Integer.parseInt Integer strList.get(0) strList.get strList 0 if (n % 4 == 0 || n % 7 == 0) {
			System.out.println("Yes");
			return;
		} n % 4 == 0 || n % 7 == 0 n % 4 == 0 n % 4 n 4 0 n % 7 == 0 n % 7 n 7 0 {
			System.out.println("Yes");
			return;
		} System.out.println("Yes") System.out.println System.out System System.out "Yes" return; for (int i = 1, iLen = n / 7; i <= iLen; i++) {
			if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			}
		} int i = 1, iLen = n / 7; int i = 1 i 1 iLen = n / 7; iLen n / 7 n 7 i <= iLen i iLen i++ i++ i {
			if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			}
		} {
			if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			}
		} if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			} (n - (i * 7)) % 4 == 0 (n - (i * 7)) % 4 (n - (i * 7)) n (i * 7) i 7 4 0 {
				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 private static void read() {
		try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
			for (int i = 0; i < READ_COUNT; i++) {
				strList.add(br.readLine());
			}
		} catch (IOException e) {
		}
	} read {
		try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
			for (int i = 0; i < READ_COUNT; i++) {
				strList.add(br.readLine());
			}
		} catch (IOException e) {
		}
	} try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
			for (int i = 0; i < READ_COUNT; i++) {
				strList.add(br.readLine());
			}
		} catch (IOException e) {
		} catch (IOException e) {
		} IOException e {
		} {
			for (int i = 0; i < READ_COUNT; i++) {
				strList.add(br.readLine());
			}
		} BufferedReader br = new BufferedReader(new InputStreamReader(System.in)) BufferedReader br = new BufferedReader(new InputStreamReader(System.in)) new BufferedReader(new InputStreamReader(System.in)) for (int i = 0; i < READ_COUNT; i++) {
				strList.add(br.readLine());
			} int i = 0; int i = 0; i 0 i < READ_COUNT i READ_COUNT i++ i++ i {
				strList.add(br.readLine());
			} {
				strList.add(br.readLine());
			} strList.add(br.readLine()) strList.add strList br.readLine() br.readLine br public class Main {
	private static final int READ_COUNT = 1;
	private static List<String> strList = new ArrayList<>();
	
	public static void main(String[] args) {
		read();
		
		int n = Integer.parseInt(strList.get(0));
		
		if (n % 4 == 0 || n % 7 == 0) {
			System.out.println("Yes");
			return;
		}
		
		for (int i = 1, iLen = n / 7; i <= iLen; i++) {
			if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			}
		}
		
		System.out.println("No");
	}
	
	private static void read() {
		try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
			for (int i = 0; i < READ_COUNT; i++) {
				strList.add(br.readLine());
			}
		} catch (IOException e) {
		}
	}
} public class Main {
	private static final int READ_COUNT = 1;
	private static List<String> strList = new ArrayList<>();
	
	public static void main(String[] args) {
		read();
		
		int n = Integer.parseInt(strList.get(0));
		
		if (n % 4 == 0 || n % 7 == 0) {
			System.out.println("Yes");
			return;
		}
		
		for (int i = 1, iLen = n / 7; i <= iLen; i++) {
			if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			}
		}
		
		System.out.println("No");
	}
	
	private static void read() {
		try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
			for (int i = 0; i < READ_COUNT; i++) {
				strList.add(br.readLine());
			}
		} catch (IOException e) {
		}
	}
} Main
import java.io.*;
import java.util.*;

public class Main {
	private static final int READ_COUNT = 1;
	private static List<String> strList = new ArrayList<>();
	
	public static void main(String[] args) {
		read();
		
		int n = Integer.parseInt(strList.get(0));
		
		if (n % 4 == 0 || n % 7 == 0) {
			System.out.println("Yes");
			return;
		}
		
		for (int i = 1, iLen = n / 7; i <= iLen; i++) {
			if ((n - (i * 7)) % 4 == 0) {
				System.out.println("Yes");
				return;
			}
		}
		
		System.out.println("No");
	}
	
	private static void read() {
		try (BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
			for (int i = 0; i < READ_COUNT; i++) {
				strList.add(br.readLine());
			}
		} catch (IOException e) {
		}
	}
}
