#include <bits/stdc++.h>
using namespace std;
const long double eps = 1e-9;
const long double PI = 4.0 * atan(1.0);
const long long oo = 1e9;
const long long OO = 1e18;
long long n;
string s;
long long nbf[100001], nbt[100001];
map<char, long long> occ;
signed main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  ;
  cin >> s;
  n = s.length();
  fill_n(nbf, n + 1, 0);
  fill_n(nbt, n + 1, 0);
  set<char> lettres;
  for (long long i = 0; i < n; i++) {
    lettres.insert(s[i]);
    nbf[i] = lettres.size();
    occ[s[i]]++;
  }
  set<char> lettress;
  for (long long i = n - 1; i >= 0; i--) {
    lettress.insert(s[i]);
    nbt[i] = lettress.size();
  }
  bool ok = 0;
  for (long long i = 0; i < n; i++) {
    if (nbf[i] == 2 and nbt[i + 1] == 2) ok = 1;
  }
  ok = 0;
  vector<long long> occs;
  for (auto it = occ.begin(); it != occ.end(); it++) {
    occs.push_back(it->second);
  }
  sort(occs.rbegin(), occs.rend());
  if (occs[0] >= 2) {
    if (occs.size() == 3) ok = 1;
    if (occs.size() == 2 and occs[1] >= 2) ok = 1;
  }
  if (occs.size() == 4) ok = 1;
  if (ok)
    cout << "Yes";
  else
    cout << "No";
  cout << endl;
}
