//描述
//对一个字符串中的所有单词,如果单词的首字母不是大写字母,
// 则把单词的首字母变成大写字母。 在字符串中,单词之间通过空白符分隔,
// 空白符包括:空格(' ')、制表符('\t')、回车符('\r')、换行符('\n')。
//输入描述:
//输入一行:待处理的字符串(长度小于100)。
//输出描述:
//可能有多组测试数据,对于每组数据, 输出一行:转换后的字符串。
//输入:
//
//if so, you already have a google account. you can sign in on the right.
//
//输出:
//
//If So, You Already Have A Google Account. You Can Sign In On The Right.
#include <cstdio>
#include <algorithm>
#include <string>
#include <iostream>
using namespace std;
int main(){
    string str;
    while(getline(cin,str)){
        str.insert(0," ");
        for(int i=0;i<str.size();i++){
            if((str[i]==' '||str[i]=='\t'||str[i]=='\r'||str[i]=='\n')&&str[i+1]>='a'&&str[i+1]<='z'){
                str[i+1]=str[i+1]-32;
            }
        }
        cout<<str.substr(1,str.size())<<endl;
    }
}