// https://c...content-available-to-author-only...s.com/group/ctwVty4ZXZ/contest/273704/problem/D
#include <bits/stdc++.h>
using namespace std;
typedef long long int ll;
typedef long double ld;
char c;
string s;
bool flag = false, fflag = false;
int main()
{
cin >> s;
// Check all letters are upper except the first one.
for (int i = 1; s[i]; i++)
{
c = s[i];
if (!isupper(c))
{
flag = true;
break;
}
}
if (!flag)
{
transform(s.begin(), s.end(), s.begin(), ::tolower);
s[0] = toupper(s[0]);
cout << s << endl;
}
else
{
cout << s << endl;
}
return 0;
}
Ly8gaHR0cHM6Ly9jLi4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5zLmNvbS9ncm91cC9jdHdWdHk0WlhaL2NvbnRlc3QvMjczNzA0L3Byb2JsZW0vRAoKI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdHlwZWRlZiBsb25nIGxvbmcgaW50IGxsOwp0eXBlZGVmIGxvbmcgZG91YmxlIGxkOwoKY2hhciBjOwpzdHJpbmcgczsKYm9vbCBmbGFnID0gZmFsc2UsIGZmbGFnID0gZmFsc2U7CgppbnQgbWFpbigpCnsKICAgIGNpbiA+PiBzOwogICAgLy8gQ2hlY2sgYWxsIGxldHRlcnMgYXJlIHVwcGVyIGV4Y2VwdCB0aGUgZmlyc3Qgb25lLgogICAgZm9yIChpbnQgaSA9IDE7IHNbaV07IGkrKykKICAgIHsKICAgICAgICBjID0gc1tpXTsKICAgICAgICBpZiAoIWlzdXBwZXIoYykpCiAgICAgICAgewogICAgICAgICAgICBmbGFnID0gdHJ1ZTsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgfQoKICAgIGlmICghZmxhZykKICAgIHsKICAgICAgICB0cmFuc2Zvcm0ocy5iZWdpbigpLCBzLmVuZCgpLCBzLmJlZ2luKCksIDo6dG9sb3dlcik7CiAgICAgICAgc1swXSA9IHRvdXBwZXIoc1swXSk7CiAgICAgICAgY291dCA8PCBzIDw8IGVuZGw7CiAgICB9CiAgICBlbHNlCiAgICB7CiAgICAgICAgY291dCA8PCBzIDw8IGVuZGw7CiAgICB9CgogICAgcmV0dXJuIDA7Cn0=