#include <bits/stdc++.h>
using namespace std;
int poww[11];
inline void pre() {
  for (int i = 0; i <= 10; i++) {
    poww[i] = 1 << i;
  }
}
inline long long calc(string s) {
  int len = s.length();
  long long ans = 0;
  long long con = 0;
  long long temp = 0;
  for (int i = 0; i < len; i++) {
    int el = s[len - i - 1] - '0';
    temp = el * poww[i];
    con += temp;
  }
  for (int i = 0; i < len - 1; i++) {
    ans += poww[i + 1];
  }
  con += ans;
  return con + 1;
}
inline string convert(long long a) {
  string st = "";
  while (a > 0) {
    int temp = a % 10;
    a /= 10;
    string ss = temp == 4 ? "0" : "1";
    st = ss + st;
  }
  return st;
}
int main() {
  pre();
  long long a;
  cin >> a;
  string str = convert(a);
  cout << calc(str) << endl;
}
