#include <bits/stdc++.h>
int main() {
  char ara[100];
  int i, length = 0, m = 2, n = 1;
  scanf("%s", &ara);
  for (i = 0; ara[i] != '\0'; i++) {
    length++;
  }
  if (ara[0] >= 97 && ara[0] <= 122) {
    if (ara[1] >= 97 && ara[1] <= 122) {
      while (m < length) {
        if (ara[m] >= 97 && ara[m] <= 122)
          ;
        else {
          break;
        }
        m++;
      }
      if (m == length) {
        printf("%s", ara);
      } else {
        printf("%s", ara);
      }
    } else if (ara[1] >= 65 && ara[1] <= 90) {
      while (m < length) {
        if (ara[m] >= 65 && ara[m] <= 90)
          ;
        else {
          break;
        }
        m++;
      }
      if (m == length) {
        ara[0] = 'A' + ara[0] - 'a';
        while (n < length) {
          if (ara[n] >= 65 && ara[n] <= 90) {
            ara[n] = 'a' + ara[n] - 'A';
          }
          n++;
        }
        printf("%s", ara);
      } else {
        printf("%s", ara);
      }
    } else {
      ara[0] = 'A' + ara[0] - 'a';
      printf("%s", ara);
    }
  } else if (ara[0] >= 65 && ara[0] <= 90) {
    if (ara[1] >= 65 && ara[1] <= 90) {
      while (m < length) {
        if (ara[m] >= 65 && ara[m] <= 90)
          ;
        else {
          break;
        }
        m++;
      }
      if (m == length) {
        ara[0] = 'a' + ara[0] - 'A';
        while (n < length) {
          if (ara[n] >= 65 && ara[n] <= 90) {
            ara[n] = 'a' + ara[n] - 'A';
          }
          n++;
        }
        printf("%s", ara);
      } else {
        printf("%s", ara);
      }
    } else if (ara[1] >= 97 && ara[1] <= 122) {
      printf("%s", ara);
    } else {
      ara[0] = 'a' + ara[0] - 'A';
      printf("%s", ara);
    }
  }
  return 0;
}
