#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<algorithm>
#include<cstring>
#include<string>
#include<stack>
#include<queue>
#include<map>
#include<utility>
#include<vector>

using namespace std;

long long i, k, cnt1, cnt2, cnt3, cnt4, cnt5, cnt6, cnt7, cnt8, cnt9, cnt0, tmp;
char in[10500];
bool swi,swia,fswi;
long long len;
int main()
{
    //freopen("in.txt","r",stdin);
    memset(in,0,sizeof(in));
    while(gets(in))
    {
        swi=true;
        fswi = true;
        cnt1= cnt2= cnt3= cnt4= cnt5= cnt6= cnt7= cnt8= cnt9= cnt0= 0;
        len = strlen(in);
        for(i=0; i<len; i++)
        {
            if(swi)
            {
                if (in[i]!=in[i-1] && i!=0 && fswi)
                {
                    swi = fswi=false;
                    i--;
                }
                else
                {
                    fswi = true;
                    if(in[i]=='1')
                    {
                        cnt1++;

                    }
                    if(in[i]=='2')
                    {
                        cnt2++;
                    }
                    if(in[i]=='3')
                    {
                        cnt3++;
                    }
                    if(in[i]=='4')
                    {
                        cnt4++;
                    }
                    if(in[i]=='5')
                    {
                        cnt5++;
                    }
                    if(in[i]=='6')
                    {
                        cnt6++;
                    }
                    if(in[i]=='7')
                    {
                        cnt7++;
                    }
                    if(in[i]=='8')
                    {
                        cnt8++;
                    }
                    if(in[i]=='9')
                    {
                        cnt9++;
                    }
                    if(in[i]=='0')
                    {
                        cnt0++;
                    }
                }
            }
            if (!swi)
            {
                swi =true;
                //printf("YES2\n");
                if(cnt1 == 1) printf("'");
                else if(cnt1 == 2) printf(",");
                else if(cnt1 == 3) printf(".");
                else if(cnt1 == 4) printf("!");
                else if(cnt1 == 5) printf("?");

                else if(cnt2==1) printf("a");
                else if(cnt2==2) printf("b");
                else if(cnt2==3) printf("c");
                else if(cnt2==4) printf("A");
                else if(cnt2==5) printf("B");
                else if(cnt2==6) printf("C");

                else if(cnt3==1) printf("d");
                else if(cnt3==2) printf("e");
                else if(cnt3==3) printf("f");
                else if(cnt3==4) printf("D");
                else if(cnt3==5) printf("E");
                else if(cnt3==6) printf("F");

                else if(cnt4==1) printf("g");
                else if(cnt4==2) printf("h");
                else if(cnt4==3) printf("i");
                else if(cnt4==4) printf("G");
                else if(cnt4==5) printf("H");
                else if(cnt4==6) printf("I");

                else if(cnt5==1) printf("j");
                else if(cnt5==2) printf("k");
                else if(cnt5==3) printf("l");
                else if(cnt5==4) printf("J");
                else if(cnt5==5) printf("K");
                else if(cnt5==6) printf("L");

                else if(cnt6==1) printf("m");
                else if(cnt6==2) printf("n");
                else if(cnt6==3) printf("o");
                else if(cnt6==4) printf("M");
                else if(cnt6==5) printf("N");
                else if(cnt6==6) printf("O");

                else if(cnt7==1) printf("p");
                else if(cnt7==2) printf("q");
                else if(cnt7==3) printf("r");
                else if(cnt7==4) printf("s");
                else if(cnt7==5) printf("P");
                else if(cnt7==6) printf("Q");
                else if(cnt7==7) printf("R");
                else if(cnt7==8) printf("S");

                else if(cnt8==1) printf("t");
                else if(cnt8==2) printf("u");
                else if(cnt8==3) printf("v");
                else if(cnt8==4) printf("T");
                else if(cnt8==5) printf("U");
                else if(cnt8==6) printf("V");

                else if(cnt9==1) printf("w");
                else if(cnt9==2) printf("x");
                else if(cnt9==3) printf("y");
                else if(cnt9==4) printf("z");
                else if(cnt9==5) printf("W");
                else if(cnt9==6) printf("X");
                else if(cnt9==7) printf("Y");
                else if(cnt9==8) printf("Z");

                for(int k=2; k<=cnt0; k++)
                {
                    printf(" ");
                }
                cnt1= cnt2= cnt3= cnt4= cnt5= cnt6= cnt7= cnt8= cnt9= cnt0= 0;

            }
        }
        if(cnt1 == 1) printf("'");
        if(cnt1 == 2) printf(",");
        if(cnt1 == 3) printf(".");
        if(cnt1 == 4) printf("!");
        if(cnt1 == 5) printf("?");

        if(cnt2==1) printf("a");
        if(cnt2==2) printf("b");
        if(cnt2==3) printf("c");
        if(cnt2==4) printf("A");
        if(cnt2==5) printf("B");
        if(cnt2==6) printf("C");

        if(cnt3==1) printf("d");
        if(cnt3==2) printf("e");
        if(cnt3==3) printf("f");
        if(cnt3==4) printf("D");
        if(cnt3==5) printf("E");
        if(cnt3==6) printf("F");

        if(cnt4==1) printf("g");
        if(cnt4==2) printf("h");
        if(cnt4==3) printf("i");
        if(cnt4==4) printf("G");
        if(cnt4==5) printf("H");
        if(cnt4==6) printf("I");

        if(cnt5==1) printf("j");
        if(cnt5==2) printf("k");
        if(cnt5==3) printf("l");
        if(cnt5==4) printf("J");
        if(cnt5==5) printf("K");
        if(cnt5==6) printf("L");

        if(cnt6==1) printf("m");
        if(cnt6==2) printf("n");
        if(cnt6==3) printf("o");
        if(cnt6==4) printf("M");
        if(cnt6==5) printf("N");
        if(cnt6==6) printf("O");

        if(cnt7==1) printf("p");
        if(cnt7==2) printf("q");
        if(cnt7==3) printf("r");
        if(cnt7==4) printf("s");
        if(cnt7==5) printf("P");
        if(cnt7==6) printf("Q");
        if(cnt7==7) printf("R");
        if(cnt7==8) printf("S");

        if(cnt8==1) printf("t");
        if(cnt8==2) printf("u");
        if(cnt8==3) printf("v");
        if(cnt8==4) printf("T");
        if(cnt8==5) printf("U");
        if(cnt8==6) printf("V");

        if(cnt9==1) printf("w");
        if(cnt9==2) printf("x");
        if(cnt9==3) printf("y");
        if(cnt9==4) printf("z");
        if(cnt9==5) printf("W");
        if(cnt9==6) printf("X");
        if(cnt9==7) printf("Y");
        if(cnt9==8) printf("Z");
        cnt1= cnt2= cnt3= cnt4= cnt5= cnt6= cnt7= cnt8= cnt9= cnt0= 0;
        memset(in,0,sizeof(in));
        printf("\n");
    }

    return 0;
}

Measured memory_bytes: 1100