import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		Map<String, Integer> map = new HashMap<String, Integer>();
		String w = sc.next();
		for (int i = 0; i < w.length(); i++) {
			if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			}
		}
		Iterator<Map.Entry<String, Integer>> itr = map.entrySet().iterator();
		while (itr.hasNext()) {
			// nextを使用して値を取得する
			Map.Entry<String, Integer> entry = itr.next();
			if (entry.getValue() % 2 != 0) {
				System.out.println("No");
				return;
			}

		}
		System.out.println("Yes");
	}

} import java.util.HashMap; HashMap java.util import java.util.Iterator; Iterator java.util import java.util.Map; Map java.util import java.util.Scanner; Scanner java.util public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		Map<String, Integer> map = new HashMap<String, Integer>();
		String w = sc.next();
		for (int i = 0; i < w.length(); i++) {
			if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			}
		}
		Iterator<Map.Entry<String, Integer>> itr = map.entrySet().iterator();
		while (itr.hasNext()) {
			// nextを使用して値を取得する
			Map.Entry<String, Integer> entry = itr.next();
			if (entry.getValue() % 2 != 0) {
				System.out.println("No");
				return;
			}

		}
		System.out.println("Yes");
	}

} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		Map<String, Integer> map = new HashMap<String, Integer>();
		String w = sc.next();
		for (int i = 0; i < w.length(); i++) {
			if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			}
		}
		Iterator<Map.Entry<String, Integer>> itr = map.entrySet().iterator();
		while (itr.hasNext()) {
			// nextを使用して値を取得する
			Map.Entry<String, Integer> entry = itr.next();
			if (entry.getValue() % 2 != 0) {
				System.out.println("No");
				return;
			}

		}
		System.out.println("Yes");
	} main {
		Scanner sc = new Scanner(System.in);
		Map<String, Integer> map = new HashMap<String, Integer>();
		String w = sc.next();
		for (int i = 0; i < w.length(); i++) {
			if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			}
		}
		Iterator<Map.Entry<String, Integer>> itr = map.entrySet().iterator();
		while (itr.hasNext()) {
			// nextを使用して値を取得する
			Map.Entry<String, Integer> entry = itr.next();
			if (entry.getValue() % 2 != 0) {
				System.out.println("No");
				return;
			}

		}
		System.out.println("Yes");
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) Map<String, Integer> map = new HashMap<String, Integer>(); map new HashMap<String, Integer>() String w = sc.next(); w sc.next() sc.next sc for (int i = 0; i < w.length(); i++) {
			if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			}
		} int i = 0; int i = 0; i 0 i < w.length() i w.length() w.length w i++ i++ i {
			if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			}
		} {
			if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			}
		} if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			} map.containsKey(String.valueOf(w.charAt(i))) map.containsKey map String.valueOf(w.charAt(i)) String.valueOf String w.charAt(i) w.charAt w i {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1) map.put map String.valueOf(w.charAt(i)) String.valueOf String w.charAt(i) w.charAt w i map.get(String.valueOf(w.charAt(i))) + 1 map.get(String.valueOf(w.charAt(i))) map.get map String.valueOf(w.charAt(i)) String.valueOf String w.charAt(i) w.charAt w i 1 {
				map.put(String.valueOf(w.charAt(i)), 1);
			} map.put(String.valueOf(w.charAt(i)), 1) map.put map String.valueOf(w.charAt(i)) String.valueOf String w.charAt(i) w.charAt w i 1 Iterator<Map.Entry<String, Integer>> itr = map.entrySet().iterator(); itr map.entrySet().iterator() map.entrySet().iterator map.entrySet() map.entrySet map while (itr.hasNext()) {
			// nextを使用して値を取得する
			Map.Entry<String, Integer> entry = itr.next();
			if (entry.getValue() % 2 != 0) {
				System.out.println("No");
				return;
			}

		} itr.hasNext() itr.hasNext itr {
			// nextを使用して値を取得する
			Map.Entry<String, Integer> entry = itr.next();
			if (entry.getValue() % 2 != 0) {
				System.out.println("No");
				return;
			}

		} Map.Entry<String, Integer> entry = itr.next(); entry itr.next() itr.next itr if (entry.getValue() % 2 != 0) {
				System.out.println("No");
				return;
			} entry.getValue() % 2 != 0 entry.getValue() % 2 entry.getValue() entry.getValue entry 2 0 {
				System.out.println("No");
				return;
			} System.out.println("No") System.out.println System.out System System.out "No" return; System.out.println("Yes") System.out.println System.out System System.out "Yes" String[] args args public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		Map<String, Integer> map = new HashMap<String, Integer>();
		String w = sc.next();
		for (int i = 0; i < w.length(); i++) {
			if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			}
		}
		Iterator<Map.Entry<String, Integer>> itr = map.entrySet().iterator();
		while (itr.hasNext()) {
			// nextを使用して値を取得する
			Map.Entry<String, Integer> entry = itr.next();
			if (entry.getValue() % 2 != 0) {
				System.out.println("No");
				return;
			}

		}
		System.out.println("Yes");
	}

} public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		Map<String, Integer> map = new HashMap<String, Integer>();
		String w = sc.next();
		for (int i = 0; i < w.length(); i++) {
			if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			}
		}
		Iterator<Map.Entry<String, Integer>> itr = map.entrySet().iterator();
		while (itr.hasNext()) {
			// nextを使用して値を取得する
			Map.Entry<String, Integer> entry = itr.next();
			if (entry.getValue() % 2 != 0) {
				System.out.println("No");
				return;
			}

		}
		System.out.println("Yes");
	}

} Main
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		Map<String, Integer> map = new HashMap<String, Integer>();
		String w = sc.next();
		for (int i = 0; i < w.length(); i++) {
			if (map.containsKey(String.valueOf(w.charAt(i)))) {
				map.put(String.valueOf(w.charAt(i)), map.get(String.valueOf(w.charAt(i))) + 1);
			} else {
				map.put(String.valueOf(w.charAt(i)), 1);
			}
		}
		Iterator<Map.Entry<String, Integer>> itr = map.entrySet().iterator();
		while (itr.hasNext()) {
			// nextを使用して値を取得する
			Map.Entry<String, Integer> entry = itr.next();
			if (entry.getValue() % 2 != 0) {
				System.out.println("No");
				return;
			}

		}
		System.out.println("Yes");
	}

}
