#include <bits/stdc++.h>
using namespace std;
bool dp[103][9];
string str;
int p[103][9], a[103];
void print(int i, int j) {
  int k;
  if (p[i][j] == -1) {
    cout << a[i];
    return;
  }
  k = p[i][j];
  print(i - 1, k);
  if ((k * 10 + a[i]) % 8 == j) cout << a[i];
}
int main() {
  int sz;
  cin >> str;
  sz = str.size();
  for (int i = 1; i <= sz; i++) {
    a[i] = str[i - 1] - 48;
  }
  for (int i = 1; i <= sz; i++) {
    dp[i][a[i] % 8] = 1;
    p[i][a[i] % 8] = -1;
    for (int j = 0; j <= 7; j++) {
      if (dp[i - 1][j] && dp[i][(j * 10 + a[i]) % 8] == 0)
        p[i][(j * 10 + a[i]) % 8] = j;
      if (dp[i - 1][j] && dp[i][j] == 0) p[i][j] = j;
      dp[i][j] += dp[i - 1][j];
      dp[i][(j * 10 + a[i]) % 8] += dp[i - 1][j];
    }
  }
  for (int l = 1; l <= sz; l++) {
    if (dp[l][0]) {
      cout << "YES" << endl;
      print(l, 0);
      return 0;
    }
  }
  cout << "NO" << endl;
  return 0;
}
