Go: package main

import (
	"bufio"
	"fmt"
	"os"
)

var scanner = bufio.NewScanner(os.Stdin)

func nextString() string {
	scanner.Scan()
	return scanner.Text()
}

func main() {
	scanner.Split(bufio.ScanWords)

	str := nextString()
	for i := len(str) - 1; i >= 0; i-- {
		fmt.Print(str[i:(i + 1)])
	}
	fmt.Print("\n")
}

C++: #include<cstdio>
#include<ctype.h>
#include<iostream>
#include <algorithm>
using namespace std;

int main(){
    int cut=1;
    bool c;
    char str[21]={0};
    for(int i=0;i<20;i++){
        scanf("%c",&str[i]);
        if(str[i]=='\n')break;
            cut++;
        if (48<=c&&c<=57)str[i]+=0;
        else if (65<=c&&c<=90)str[i]+=0;
        else if (97<=c&&c<= 122)str[i]+=0;
        else{
            str[i]='\0';
        }
    }
    for(int j=cut;j>-1;--j){
        printf("%c",str[j]);
    }
        cout <<""<<endl;
    return 0;
}

C++: #include <iostream>
#include <string>
#include <algorithm>

using namespace std;
// cin >>
// cin <<
int main(){
	string a;
	int output;
	cin >>a;
	for(int i=(int)a.size();i>=0;i--){
		cout <<a[i];
	}
	cout <<endl;
	return 0;
}

C++: #include <iostream>
#include <string>
using namespace std;

int main(){
 string str[20];
 string str2[20];

 cin >> str;
 for(int i=0; i<sizeof(str)/; i++){
    int j = sizeof(str) / sizeof(string);
    str2[i] = str[j--];
   }

   return 0;
}

C++: #include <iostream>
#include <string>
using namespace std;

int main()
{
    string s;
	cin >> s;
	reverse(s.begin(), s.end());
	cout << s << endl;
    return 0;
}

C++: #include <algorithm>
#include <iostream>
#include <string>

int main() {
  std::string str;
  std::cin >> str;

  std::reverse(str.begin(), str.end());
  std::cout << str << std::endl;
}

C++: #include<iostream>
using namespace std;

int main(){
	std::ios::sync_with_stdio(false);
    std::cin.tie(0);
	
	char c[30]={0};int i=0;
	while(cin>>c[i++]);
	for(int j=0;j<i-1;j++){
		cout<<c[i-2-j];
	}
	cout<<endl;
	return 0;
}

C++: #include <iostream>
#include <algorithm>
#include <cmath>
#include <string>


using namespace std;


int main(){
  string str;
  while(cin >> str){
    //    cout << str << endl;
    string strtmp;
    for(int i=0;i<str.size();i++){
      strtmp.push_back(str[str.size()-1-i]);
    }
    cout << strtmp << endl;
  }

}

C++: #include<iostream>
using namespace std;

int main(){
	char str[20];
	int i = 0;
	while(cin >> str[i]){
		i++;
	}
	for(int j = i-1; j >= 0; j--){
		cout << str[j];
	}
	cout << endl;
	return 0;
}

C++: #include <cstdio>
#include <algorithm>
int main( int argc, char *argv[] ) {
	using namespace std;
	char str[20];
	scanf("%s", str);
	for (int i=0; i<20; i++) {
		if (str[i] == '\0') {
			int last = i-1;
			for (int j=0; j<i/2; j++) {
				swap(str[j], str[last-j]);
			}
			break;
		}
	}
	printf("%s\n", str);
	return 0;
}

C++: #include <bits/stdc++.h>
using namespace std;

int main () {
    int i;
    string str;
    cin >> str;
    for(i = 0; i < str.size(); ++i){
        cout << str.at(str.size() - i - 1);
    }
}

C++: #include <iostream>
#include <string>
using namespace std;
 
int main(){
    string a;
    cin >> a;
    for(int i = a.size(); i >= 0; i--){
        cout<<a[i];
    }
    cout<<endl;

    return 0;
}

C++: #include <iostream>

#include <string>

#include <algorithm>



using namespace std;



int main(){

	string str;

	cin >> str;

	reverse(str.begin(),str.end());

	cout << x << endl;

	return 0;

}

C++: #include<iostream>
#include<cstring>
using namespace std;

int main(){
  string str;
  int len; 
  cin >> str;
  len = str.length();

  for(int i=len;i>=0;i--){
    cout << str[i];
  }
 

}

C++: #include<algorithm>
#include<iostream>
#include<string>
#include<cstdio>
using namespace std;

#define rep(i,n) for(int i=0; i<n; i++)
int main(){
	char s[21];
	int n;
	scanf("%s", s);
	rep(i, 21) if(s[i]=='\0') n=i-1;
	for(int i=n; i>=0; i--) cout << s[i];
	cout << endl;
    return 0;
}

C++: #include<iostream>
#include<string>

using namespace std;

int main(void){
  string buf;
  cin>>buf;
  for(int i = buf.size()-1; i >= 0 ; i --)
    cout<<buf[i];
  cout<<endl;
}

C++: #include <cstdio>
#include <iostream>
#include <vector>

using namespace std;


int main(){
	char mozi[20];
	int last;
	scanf("%s",mozi);

	for(int i=0;mozi[i] != '\0';i++){
		last = i;
	}

	for(int i=last;0 <= i;i--){
		printf("%c",mozi[i]);
	}

	return 0;
}

C++: #include <iostream>
#include <algorithm>
using namespace std;
 
int main(void){
    string s;
    cin >> s;
    reverse(s.begin(),s.end());
    cout << s << endl;
}

C++: #include<iostream>
#include<string>
using namespace std;

int main()
{
	string a;
	cin>>a;
	for(int i=0;i<a.length()/2;i++){
		char tmp=a[i];
		a[i]=a[a.length()-i-1];
		a[a.length()-i-1]=tmp;
	}
	cout<<a<<endl;
	return 0;
}

C++: #include <iostream>
#include <string>
#include <algorithm>
using namespace std;

int main(void){
    string s;
    cin>>s;
    reverse(s.begin(),s.end());
    cout<<s<<endl;
    return 0;
}

C++: #include <iostream>
#include <string>
#include <vector>
#include <queue>
#include <stack>
#include <map>
#include <algorithm>
#include <sstream>
#include <cmath>
#include <set>
#include <iomanip>
using namespace std;

#define REP(i,n) for(int (i)=0;(i)<(int)(n);(i)++)
#define REMOVE(Itr,n) (Itr).erase(remove((Itr).begin(),(Itr).end(),n),(Itr).end())
#define PB_VEC(Itr1,Itr2) (Itr1).insert((Itr1).end(),(Itr2).begin(),(Itr2).end())
#define UNIQUE(Itr) sort((Itr).begin(),(Itr).end()); (Itr).erase(unique((Itr).begin(),(Itr).end()),(Itr).end())
#define BOUND(Itr,val) lower_bound((Itr).begin(),(Itr).end(),(val))
typedef long long ll;

int main(){
    
    
    string s;
    reverse(s.begin(),s.end());
    cout<<s<<endl;
    
    return 0;
}

C++: #include<iostream>
#include<array>
#include<algorithm>

int main(){
	std::array<char, 20>str;
	
	for(int i=0; i<20; ++i){
		std::cin >> str[i];
	}
	
	for(int i=str.size(); i>=0; --i){
		std::cout << str[i];
	}
	return 0;
}

C++: #include <iostream>
#include <algorithm>
#include <string>

int main(void){
	std::string seq;
	std::cin >> seq;

	std::reverse(seq.begin(), seq.end());

	std::cout << seq << std::endl;
	return 0;
}

C++: #include <iostream>
using namespace std;

int length(char chr[]) {
    int num = 0;
    for(int r = 0; r < 30; r++) {
        if(chr[r] == '\0') break;
        num++;
    }
    return(num);
}

int main(void) {
    char ary[30];
    scanf("%s", ary);
    int len = length(ary);
    
    for(int r = len - 1; r >= 0; r--) {
        putchar(ary[r]);
    }
    putchar('\n');
    
    //cout << len << endl;
    return(0);
}

C++: #include <iostream>
#include <string>

using namespace std;

int main(void)
{
  string str;

  cin >> str;

  for (auto itr = end(str); itr-- != begin(str);) cout << *itr;
  cout << endl;

  return 0;
}

C++: #include <iostream>
#include <string>
using namespace std;
 
int main() {
 
    string s;
    cin >> s;
 
    for (int i = s.size() - 1; i >= 0; i--) {
        cout << s[i];
    }
    cout << '\n';
    return 0;
}

C++: #include <cstdio>
#include <cstdlib>
#include <cmath>
#include <climits>
#include <cfloat>
#include <map>
#include <utility>
#include <set>
#include <iostream>
#include <memory>
#include <string>
#include <vector>
#include <algorithm>
#include <functional>
#include <sstream>
#include <complex>
#include <stack>
#include <queue>

using namespace std;
static const double EPS = 1e-10;

int main(){
	string str;

	cin >> str;
	reverse(str.begin(), str.end());
	cout << str << endl;

	return 0;
}

C++: import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	public static void main(String[] a) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String str = br.readLine();
		char[] data = str.toCharArray();

		StringBuffer sb = new StringBuffer(str);
		str = sb.reverse().toString();
		System.out.println(str);
	}
}