#include <bits/stdc++.h>
using namespace std;
const int md = 1e9 + 7;
const int MAX = 1e5 + 5;
const int MAXN = 1e6 + 5;
void solve() {
  string s;
  cin >> s;
  string s1 = s;
  string s2 = s;
  string s3 = s;
  if (s.length() < 3) {
    cout << "No";
    return;
  }
  for (long long i = 0; i < s.length(); i += 1) {
    if (i == 0) {
      if (s[i] == 'A') {
        s1[i] = '.';
        s1[i + 1] = 'A';
      }
      if (s[i] == 'B') {
        s2[i] = '.';
        s2[i + 1] = 'B';
      }
      if (s[i] == 'C') {
        s3[i] = '.';
        s3[i + 1] = 'C';
      }
    } else if (i == s.length() - 1) {
      if (s[i] == 'A') {
        s1[i] = '.';
        s1[i - 1] = 'A';
      }
      if (s[i] == 'B') {
        s2[i] = '.';
        s2[i - 1] = 'B';
      }
      if (s[i] == 'C') {
        s3[i] = '.';
        s3[i - 1] = 'C';
      }
    } else {
      if (s[i] == 'A') {
        s1[i] = '.';
        s1[i - 1] = 'A';
        s1[i + 1] = 'A';
      }
      if (s[i] == 'B') {
        s2[i] = '.';
        s2[i - 1] = 'B';
        s2[i + 1] = 'B';
      }
      if (s[i] == 'C') {
        s3[i] = '.';
        s3[i - 1] = 'C';
        s3[i + 1] = 'C';
      }
    }
  }
  bool flag = false;
  for (long long i = 0; i < s.length(); i += 1) {
    long long aa = 0, bb = 0, cc = 0;
    if (s[i] == 'A' || s1[i] == 'A' || s2[i] == 'A' || s3[i] == 'A') {
      aa++;
    }
    if (s[i] == 'B' || s1[i] == 'B' || s2[i] == 'B' || s3[i] == 'B') {
      bb++;
    }
    if (s[i] == 'C' || s1[i] == 'C' || s2[i] == 'C' || s3[i] == 'C') {
      cc++;
    }
    if (aa > 0 && bb > 0 && cc > 0) {
      flag = true;
    }
  }
  if (flag) {
    cout << "Yes";
  } else {
    cout << "No";
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  solve();
  return 0;
}
