#include <bits/stdc++.h>
using namespace std;
long long mod = 1e9 + 7;
long long mod_pow(long long val, long long pow) {
  long long ans = 1;
  while (pow > 0) {
    if (pow % 2 == 0) {
      val *= val;
      val %= mod;
      pow /= 2;
    } else {
      ans *= val;
      ans %= mod;
      pow--;
    }
  }
  return ans;
}
int main() {
  string s;
  cin >> s;
  long long val, ans = 0, n = s.size();
  for (long long i = 0; i < n; i++) {
    if (s[i] == '-') val = 62;
    if (s[i] == '_')
      val = 63;
    else if (s[i] >= 'A' and s[i] <= 'Z')
      val = s[i] - 'A' + 10;
    else if (s[i] >= 'a' and s[i] <= 'z')
      val = s[i] - 'a' + 36;
    else if (s[i] >= '0' and s[i] <= '9')
      val = s[i] - '0';
    for (long long j = 0; j < 6; j++) {
      long long valu = 1 << j;
      if (!(valu & val)) ans++;
    }
  }
  cout << mod_pow(3LL, ans);
}
