#include<cstdio>
#include<iostream>
#include<cctype>
#include<string>
using namespace std;
bool isC(char* str) {
    if(str[0] <'a' || str[0] >'z') {
        return false;
    }
    int i;
    for(i=1;str[i];++i) {
        if(str[i] == '_' && str[i-1] == '_') {
            return false;
        } else if((str[i] <'a' || str[i] >'z') && str[i] != '_') {
            return false;
        }
    }
    return str[i-1] >= 'a' && str[i-1] <= 'z';
}

string convertToC(char* str) {
    if(str[0] < 'a' || str[0] >'z') {
        return "";
    }
    string s("");
    for(int i=0;str[i];++i) {
        if(islower(str[i])) {
            s += str[i];
        } else if(isupper(str[i])) {
            s += "_";
            s += tolower(str[i]);
        } else {
            return "";
        }
    }
    return s;
}

void convertToJava(char* str) {
    string result = "";
    bool capitalize = false;
    int idx1 = 0;
    int idx2 = 0;
    for(int i=0;str[i];++i) {
        if(str[i] == '_') {
            capitalize = true;
            idx2++;
        } else {
            if(capitalize) {
                str[idx1] = toupper(str[idx2]);
                capitalize = false;
            } else {
                str[idx1] = str[idx2];
            }
            idx1++;
            idx2++;
        }
    }
    str[idx1] = 0;
}
int main() {
    char str[101];
    while(scanf("%s", str) != EOF) {
        string result;
        if(isC(str)) {
            convertToJava(str);
            printf("%s\n", str);
            continue;
        } else {
            string s = convertToC(str);
            if(s == "") {
                printf("Error!\n");
            } else {
                cout<<s<<'\n';
            }
        }
    }
}