import java.util.*;
// warm-up
public class Main {

	static void solve() {
		Scanner sc = new Scanner(System.in);
		int[] c = new int[256];
		String tok = sc.next();
		boolean ok = true;
		for(char ch: tok.toCharArray()) c[(int)ch]++;
		for (char ch : tok.toCharArray()) if (c[(int)ch]%2!=0) { ok=false; break; }
		System.out.println(ok ? "Yes" : "No");
		sc.close();
	}

	public static void main(String args[]) {
		solve();
	}

} import java.util.*; util.* java public class Main {

	static void solve() {
		Scanner sc = new Scanner(System.in);
		int[] c = new int[256];
		String tok = sc.next();
		boolean ok = true;
		for(char ch: tok.toCharArray()) c[(int)ch]++;
		for (char ch : tok.toCharArray()) if (c[(int)ch]%2!=0) { ok=false; break; }
		System.out.println(ok ? "Yes" : "No");
		sc.close();
	}

	public static void main(String args[]) {
		solve();
	}

} Main static void solve() {
		Scanner sc = new Scanner(System.in);
		int[] c = new int[256];
		String tok = sc.next();
		boolean ok = true;
		for(char ch: tok.toCharArray()) c[(int)ch]++;
		for (char ch : tok.toCharArray()) if (c[(int)ch]%2!=0) { ok=false; break; }
		System.out.println(ok ? "Yes" : "No");
		sc.close();
	} solve {
		Scanner sc = new Scanner(System.in);
		int[] c = new int[256];
		String tok = sc.next();
		boolean ok = true;
		for(char ch: tok.toCharArray()) c[(int)ch]++;
		for (char ch : tok.toCharArray()) if (c[(int)ch]%2!=0) { ok=false; break; }
		System.out.println(ok ? "Yes" : "No");
		sc.close();
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int[] c = new int[256]; c new int[256] 256 String tok = sc.next(); tok sc.next() sc.next sc boolean ok = true; ok true for(char ch: tok.toCharArray()) c[(int)ch]++; char ch tok.toCharArray() tok.toCharArray tok c[(int)ch]++; c[(int)ch]++ c[(int)ch] c (int)ch for (char ch : tok.toCharArray()) if (c[(int)ch]%2!=0) { ok=false; break; } char ch tok.toCharArray() tok.toCharArray tok if (c[(int)ch]%2!=0) { ok=false; break; } if (c[(int)ch]%2!=0) { ok=false; break; } c[(int)ch]%2!=0 c[(int)ch]%2 c[(int)ch] c (int)ch 2 0 { ok=false; break; } ok=false ok false break; System.out.println(ok ? "Yes" : "No") System.out.println System.out System System.out ok ? "Yes" : "No" ok "Yes" "No" sc.close() sc.close sc public static void main(String args[]) {
		solve();
	} main {
		solve();
	} solve() solve String args[] args public class Main {

	static void solve() {
		Scanner sc = new Scanner(System.in);
		int[] c = new int[256];
		String tok = sc.next();
		boolean ok = true;
		for(char ch: tok.toCharArray()) c[(int)ch]++;
		for (char ch : tok.toCharArray()) if (c[(int)ch]%2!=0) { ok=false; break; }
		System.out.println(ok ? "Yes" : "No");
		sc.close();
	}

	public static void main(String args[]) {
		solve();
	}

} public class Main {

	static void solve() {
		Scanner sc = new Scanner(System.in);
		int[] c = new int[256];
		String tok = sc.next();
		boolean ok = true;
		for(char ch: tok.toCharArray()) c[(int)ch]++;
		for (char ch : tok.toCharArray()) if (c[(int)ch]%2!=0) { ok=false; break; }
		System.out.println(ok ? "Yes" : "No");
		sc.close();
	}

	public static void main(String args[]) {
		solve();
	}

} Main
import java.util.*;
// warm-up
public class Main {

	static void solve() {
		Scanner sc = new Scanner(System.in);
		int[] c = new int[256];
		String tok = sc.next();
		boolean ok = true;
		for(char ch: tok.toCharArray()) c[(int)ch]++;
		for (char ch : tok.toCharArray()) if (c[(int)ch]%2!=0) { ok=false; break; }
		System.out.println(ok ? "Yes" : "No");
		sc.close();
	}

	public static void main(String args[]) {
		solve();
	}

}
