import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//List<String> list= new ArrayList<String>(Arrays.asList(s.split("")));
		//List<Integer> list=new ArrayList<Integer>();
		//Integer[] array = new Integer[m];
		int n = sc.nextInt();
		int a =sumDigits(n);
		if(n%a==0)
			System.out.println("Yes");
		else
			System.out.println("No");
	}

	private static int sumDigits(int n) {
		int sum = 0;
		//自然数の各桁の和を計算
		while (n != 0) {
			//sumDigitsは単独ではloopしないので、while loopを使う。
			sum += n % 10;
			//再右端の桁を得るために%10を利用する。
			n /= 10;
			//再右端の桁を取り除くためにn/=10を利用する。
		}
		return sum;//合計を返す
	}
} import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//List<String> list= new ArrayList<String>(Arrays.asList(s.split("")));
		//List<Integer> list=new ArrayList<Integer>();
		//Integer[] array = new Integer[m];
		int n = sc.nextInt();
		int a =sumDigits(n);
		if(n%a==0)
			System.out.println("Yes");
		else
			System.out.println("No");
	}

	private static int sumDigits(int n) {
		int sum = 0;
		//自然数の各桁の和を計算
		while (n != 0) {
			//sumDigitsは単独ではloopしないので、while loopを使う。
			sum += n % 10;
			//再右端の桁を得るために%10を利用する。
			n /= 10;
			//再右端の桁を取り除くためにn/=10を利用する。
		}
		return sum;//合計を返す
	}
} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//List<String> list= new ArrayList<String>(Arrays.asList(s.split("")));
		//List<Integer> list=new ArrayList<Integer>();
		//Integer[] array = new Integer[m];
		int n = sc.nextInt();
		int a =sumDigits(n);
		if(n%a==0)
			System.out.println("Yes");
		else
			System.out.println("No");
	} main {
		Scanner sc = new Scanner(System.in);
		//List<String> list= new ArrayList<String>(Arrays.asList(s.split("")));
		//List<Integer> list=new ArrayList<Integer>();
		//Integer[] array = new Integer[m];
		int n = sc.nextInt();
		int a =sumDigits(n);
		if(n%a==0)
			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 a =sumDigits(n); a sumDigits(n) sumDigits n if(n%a==0)
			System.out.println("Yes");
		else
			System.out.println("No"); n%a==0 n%a n a 0 System.out.println("Yes") System.out.println System.out System System.out "Yes" System.out.println("No") System.out.println System.out System System.out "No" String[] args args private static int sumDigits(int n) {
		int sum = 0;
		//自然数の各桁の和を計算
		while (n != 0) {
			//sumDigitsは単独ではloopしないので、while loopを使う。
			sum += n % 10;
			//再右端の桁を得るために%10を利用する。
			n /= 10;
			//再右端の桁を取り除くためにn/=10を利用する。
		}
		return sum;//合計を返す
	} sumDigits {
		int sum = 0;
		//自然数の各桁の和を計算
		while (n != 0) {
			//sumDigitsは単独ではloopしないので、while loopを使う。
			sum += n % 10;
			//再右端の桁を得るために%10を利用する。
			n /= 10;
			//再右端の桁を取り除くためにn/=10を利用する。
		}
		return sum;//合計を返す
	} int sum = 0; sum 0 while (n != 0) {
			//sumDigitsは単独ではloopしないので、while loopを使う。
			sum += n % 10;
			//再右端の桁を得るために%10を利用する。
			n /= 10;
			//再右端の桁を取り除くためにn/=10を利用する。
		} n != 0 n 0 {
			//sumDigitsは単独ではloopしないので、while loopを使う。
			sum += n % 10;
			//再右端の桁を得るために%10を利用する。
			n /= 10;
			//再右端の桁を取り除くためにn/=10を利用する。
		} sum += n % 10 sum n % 10 n 10 n /= 10 n 10 return sum;//合計を返す sum int n n public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//List<String> list= new ArrayList<String>(Arrays.asList(s.split("")));
		//List<Integer> list=new ArrayList<Integer>();
		//Integer[] array = new Integer[m];
		int n = sc.nextInt();
		int a =sumDigits(n);
		if(n%a==0)
			System.out.println("Yes");
		else
			System.out.println("No");
	}

	private static int sumDigits(int n) {
		int sum = 0;
		//自然数の各桁の和を計算
		while (n != 0) {
			//sumDigitsは単独ではloopしないので、while loopを使う。
			sum += n % 10;
			//再右端の桁を得るために%10を利用する。
			n /= 10;
			//再右端の桁を取り除くためにn/=10を利用する。
		}
		return sum;//合計を返す
	}
} public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//List<String> list= new ArrayList<String>(Arrays.asList(s.split("")));
		//List<Integer> list=new ArrayList<Integer>();
		//Integer[] array = new Integer[m];
		int n = sc.nextInt();
		int a =sumDigits(n);
		if(n%a==0)
			System.out.println("Yes");
		else
			System.out.println("No");
	}

	private static int sumDigits(int n) {
		int sum = 0;
		//自然数の各桁の和を計算
		while (n != 0) {
			//sumDigitsは単独ではloopしないので、while loopを使う。
			sum += n % 10;
			//再右端の桁を得るために%10を利用する。
			n /= 10;
			//再右端の桁を取り除くためにn/=10を利用する。
		}
		return sum;//合計を返す
	}
} Main
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		//List<String> list= new ArrayList<String>(Arrays.asList(s.split("")));
		//List<Integer> list=new ArrayList<Integer>();
		//Integer[] array = new Integer[m];
		int n = sc.nextInt();
		int a =sumDigits(n);
		if(n%a==0)
			System.out.println("Yes");
		else
			System.out.println("No");
	}

	private static int sumDigits(int n) {
		int sum = 0;
		//自然数の各桁の和を計算
		while (n != 0) {
			//sumDigitsは単独ではloopしないので、while loopを使う。
			sum += n % 10;
			//再右端の桁を得るために%10を利用する。
			n /= 10;
			//再右端の桁を取り除くためにn/=10を利用する。
		}
		return sum;//合計を返す
	}
}