T=int(input())
j=1
while(j<=T):N = int(input())
a=input()
s = [0]*(N+1)
# 求前戳和
for i in range(1, N + 1):
s[i] = int(a[i-1]) + s[i - 1]# 枚举
# 区间
max_ = float('-inf')
k = (N + 2 - 1) // 2
for i in range(k, N + 1):
tmp_ = s[i] - s[i - k]
max_ = max(tmp_, max_)print(f'Case #{j}: {max_}')
j += 1
N=int(input())
V_min=float("-inf")
V_max=float("inf")
for _ in range(N):
A,B=map(int,input().split())V_min=max(V_min,(A//(B+1))+1)
V_max=min(V_max,(A//B))
print(V_min,V_max)
N=int(input())
V_min=float("-inf")
V_max=float("inf")
def check(A,B):
l=1
r=10**9+1
while(l<r):
mid=l+r>>1
if (A//mid<=B):
r=mid
else:
l=mid+1
return r
for _ in range(N):
A,B=map(int,input().split())V_min=max(V_min,check(A,B))
V_max=min(V_max,check(A,B-1)-1)
print(V_min,V_max)