//麻烦得很
//在字符串中,单词之间通过空白符分隔,空白符包括:空格(' ')、制表符('\t')、回车符('\r')、换行符('\n')。
#include <iostream>
#include <cstdio>
#include <string>
#include <cstring>

using namespace std;
const int MAXSIZE=100;

int main(){
    string str;
    string sstr[MAXSIZE];

    while(getline(cin,str)){
        memset(sstr, 0, sizeof(sstr));
        int j=0;
        for(int i=0;i<str.size();++i){
             sstr[j]+=str[i];//就是这样,先无条件加进去,然后不对劲,就换
            if(str[i]==' '||str[i]=='\t'||str[i]=='\r'||str[i]=='\n'){//麻烦得很,!=用&&,等于用||,得记得换过来。   #1
                ++j;//出现空格就+1,那么空格后必然有j个单词,加上第一个有j+1个单词

            }
//             else{
//                 sstr[j]+=str[i];
//             }
//             cout<<j<<endl;
//             cout<<sstr[j]<<endl;
        }
        int k=j+1;

        for(int i=0;i<k;++i){
            if(sstr[i][0]>='a'&&sstr[i][0]<='z'){//有的首字母是数字!!!!!!!!!!!!!!!!!!!!
//                 cout<<sstr[i][0]<<endl;
                sstr[i][0]-=32;
//                 cout<<sstr[i][0]<<endl;
            }
        }

        for(int i=0;i<k;++i){
            cout<<sstr[i];
//             if(i!=k-1){
//                 cout<<' ';
//             }
        }
        cout<<endl;
    }

//     printf("1 ");
//     printf("2\t");
//     printf("3\r3.1");
//     printf("4\n");
//     printf("5");
}