def solve(s): MOD = 1000000007 n = len(s) if "o" not in s: if ">" in s and "<" in s: return 0 return pow(2, s.count("."), MOD) - 1 left_sum = 0 unknown_count = 0 total = 0 for c in s: if c == ".": unknown_count += 1 elif c == "o": total += pow(2, unknown_count, MOD) - 1 total %= MOD unknown_count = 0 elif c == "<": total += pow(2, unknown_count, MOD) - 1 - left_sum total %= MOD unknown_count = 0 elif c == ">": left_sum += pow(2, unknown_count, MOD) - 1 left_sum %= MOD unknown_count = 0 elif c == "=": left_sum = total return total t = int(input()) for case in range(1, t + 1): s = input().strip() result = solve(s) print(f"Case #{case}: {result}")