/*#include<stdio.h>
int main() {
char word[10000] = {0};
char word2[10000] = {0};
int i;
scanf("%s %s", word, word2);
//gets(word);
for(i=0; i<strlen(word); i++) {
printf("%c ", word[i]);
}
}
*/
// strcmp, strcpy, strstr, strchr
// #include<string.h>
/*#include <stdio.h>
int main()
{
char h[10000]={0};
int i;
scanf("%s", h);
for(i=0; i<strlen(h); i++){
printf("%c", h[i]);
}
}
*/
/*
#include <stdio.h>
int main()
{
char h[31]={0};
int i;
gets(h);
for(i=0; i<strlen(h); i++){
printf("%c", h[i]);
}
}
*/
/*
#include <stdio.h>
int main()
{
char h[100]={0};
gets(h);
if(strlen(h)==4 && h[0]=='l' && h[1]=='o'&&h[2]=='v'&&h[3]=='e'){
printf("I love you.");
}
}
*/
/*
#include <stdio.h>
int main()
{
char h[101]={0};
int i;
gets(h);
for(i=0; i<strlen(h); i++){
if(h[i]!=' '){
printf("%c", h[i]);
}
}
}
*/
/*
#include<stdio.h>
#include<string.h>
int main() {
char word1[100] = {0}, word2[100] = {0};
int i;
scanf("%s %s", word1, word2);
// hello
// hella
// stchr //
// strstr //
for(i=0; i<strlen(word1); i++) {
printf("[%d:%c] \n", &word1[i], word1[i]);
}
printf("%d\n", strstr(word1, word2));
// strcpy str copy
printf("%s %s\n", word1, word2);
strcpy(word1, word2);
printf("%s %s\n", word1, word2);
// strcmp
printf("%d", strcmp(word1, word2));// str comparison
if(strcmp(word1, word2)==0) {
}
}
// 1419 1754 2721
*/
/*
#include<stdio.h>
#include<string.h>
int main()
{
char h[101]={0};
int i,c=0;
gets(h);
for(i=0; i<strlen(h); i++){
if(h[i]=='l'){
if(h[i+1]=='o'){
if(h[i+2]=='v'){
if(h[i+3]=='e'){
c++;
}
}
}
}
}
printf("%d", c);
}
*/
#include<stdio.h>
#include<string.h>
int main()
{
char h[10000]={0}, n[10000]={0};
int i;
scanf("%s %s", h, n);
if(strlen(h) > strlen(n)){
printf("%s %s", n,h);
}
else if(strlen(h) < strlen(n)){
printf("%s %s", h,n);
}
else {
for(i=0; i<strlen(h); i++){
if(h[i] > n[i]){
printf("%s %s", n,h);
break;
}
else if(h[i] < n[i]) {
printf("%s %s", h,n);
break;
}
}
}
}