#include <bits/stdc++.h>
using namespace std;
bool check2(string s) {
  for (unsigned int i = 0; i < s.size() / 2; i++) {
    if (s[i] != s[s.size() - i - 1]) return false;
  }
  return true;
}
bool check(string s) {
  int n = s.size() / 2;
  for (int i = 0; i < n; i++) {
    if (s[i] != s[0]) return true;
  }
  return false;
}
bool is_one(string s) {
  string t = s;
  for (int i = 0; i < s.size() / 2; i++) {
    t = t.substr(1) + s[i];
    if (t != s && check2(t)) return true;
  }
  return false;
}
int main() {
  string s;
  cin >> s;
  if (!check(s))
    cout << "Impossible" << endl;
  else {
    if (is_one(s))
      cout << 1 << endl;
    else
      cout << 2 << endl;
  }
}
