#include<bits/stdc++.h>
#define rep(i,n)for(int i=0;i<n;i++)
using namespace std;

string dir[]{ "',.!?","abcABC","defDEF","ghiGHI","jklJKL","mnoMNO","pqrsPQRS","tuvTUV","wxyzWXYZ" };
int main() {
	string s;
	while (cin >> s) {
		int cnt = -1;
		string ans;
		rep(i, s.size()) {
			if (i&&s[i] == '0'&&s[i - 1] == '0')ans += ' ';
			if (i&&s[i] != s[i - 1]) {
				if (~cnt&&s[i - 1] != '0')
					ans += dir[s[i - 1] - '1'][cnt%dir[s[i - 1] - '1'].size()];
				cnt = -1;
			}
			if (s[i] != '0')cnt++;
		}
		if (~cnt)
			ans += dir[*s.rbegin() - '1'][cnt%dir[*s.rbegin() - '1'].size()];
		cout << ans << endl;
	}
}