#include <stdio.h>
#include <stdint.h>

__attribute__((noinline))
int morph_posint_radix( char * in, char * out ) {
    uint64_t value = 0;
        while( *in ) {
            if( *in >= '0' && *in <= '9' ) {
                value *= 10;
                value += *in - '0';
            }
            else
                return -1;

            in++;
        }

        uint64_t v = value;
        while( v ) {
            out ++;
            v /= 16;
        }

        *out-- = '\0';
        while( value ) {
            unsigned digit = value % 16;
            if( digit < 10 ) {
                *out-- = digit + '0';
            } else if( digit < 16 ) {
                *out-- = digit + 'a' - 10;
            } else {
                return -1;
            }
            value /= 16;
        }

    return 0;
}

int main() {
    char bufA[1024];
    char bufB[1024];

    char * in = bufA;
    char * out = bufB;

    scanf("%s", in);
    morph_posint_radix( in, out );
    printf("%s\n", out);

    return 0;
}