#include <stdio.h>
#include <ctype.h>
#include <errno.h>
#include <string.h>
/** /
int Chop_if(char str[],char ch){
	int i = 0;
	for (i = 0; str[i] != '\0'; i++);
	if (i > 0){
		if(str[i - 1] == ch) str[i - 1] = '\0';
	}
	else return -1;
	return 0;
}
/**/
int StringToUpper(char str[]){//inplace modify.
	int i = 0;
	for (i = 0; str[i] != '\0'; i++) str[i] = toupper(str[i]);
	return 0;
}
/*
int PrintValue(char str[]){
	int i = 0;
	for (i = 0; str[i] != '\0'; i++)printf("%d ",str[i]);
	return 0;
}
*/

int main(){

	static const int Len = 4;
	char buff[Len];
#if 1	//can process both for problem.
	while (1){
		if (fgets(buff, Len, stdin) == NULL && errno != EINVAL) break;
		//Chop_if(buff,'\n');
		//Chop_if(buff,26);//value of eof at char value.but eof can get int value.
		StringToUpper(buff);
		printf("%s", buff);
		//PrintValue(buff);
	}
#else
	int ch = EOF;
	while ((ch = getchar()) != EOF){//よく考えたら、stdinが詰まってるのでブロッキングしません！
		ch = toupper(ch);
		putc(ch, stdout);
		fflush(stdout);//>>192が正解！
	}
#endif
	return 0;
}