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

typedef long long lld;

string ans;
map<string, bool> cache;

string menuever(string s, int k){
    std::reverse(s.begin(), s.begin()+k);
    for(int i=0; i<k; ++i)
        s[i] = s[i]=='-' ? '+' : '-';
    return s;
}

int solve(string s){
    queue<string> q;
    q.push(s);
    cache[s] = true;
    int dist = 0, len = s.length();
    while(!q.empty()){
        int qs = q.size();
        while(qs--){
            string p = q.front();
            // cout<< p <<'\n';
            q.pop();
            
            if(ans.compare(0, len, p) == 0) return dist;
            
            for(int i=1; i<=len; ++i){
                string rv = menuever(p, i);
                if(cache[rv]) continue;
                cache[rv] = true;
                q.push(rv);
            }
        }
        ++dist;
    }
    return dist;
}

int main(){
    for(int i=0; i<100; ++i) ans.push_back('+');
    int T;
    scanf("%d ", &T);
    for(int tc=0; tc<T; ++tc){
        string s;
        cin >> s;
        cache.clear();
        printf("Case #%d: %d\n", tc+1, solve(s));
    }
    return 0;
}