#include using namespace std; long long gcd(long long x, long long y) { if (y == 0) return x; return gcd(y, x % y); } long long lcm(long long x, long long y) { if (x == 0 || y == 0) return 0; return x / gcd(x, y) * y; } int main() { string S; cin >> S; int N = S.size(); int ans1 = 0, ans2 = 0; for (int i = 0; i < N; i++) { if (S[i] == '(') { int cnt1 = 0, cnt2 = 0; bool flag1 = false, flag2 = false; for (int j = i + 1; j < N; j++) { if (cnt1 < 2 && S[j] == '^') cnt1++; else if (cnt1 == 2 && S[j] == '*') flag1 = true; if (cnt2 == 0 && S[j] == '*') flag2 = true; else if (flag2 && cnt2 < 2 && S[j] == '^') cnt2++; if (flag1 && S[j] == ')') ans1++; if (cnt2 == 2 && S[j] == ')') ans2++; } } } cout << ans1 << " " << ans2 << endl; }