from collections import defaultdict def solve(vaccinations, movements): # Group vaccinations by pickup location pickup_to_vaccinations = defaultdict(list) for i, p in enumerate(vaccinations): pickup_to_vaccinations[p].append(i) # Initialize state state = {'position': 0, 'vaccines_loaded': set(), 'vaccines_delivered': set()} ans = [] # Process each movement command for x in movements: # Move robot state['position'] += x # Deliver vaccines at current position for i in pickup_to_vaccinations[state['position']]: if i not in state['vaccines_loaded']: state['vaccines_loaded'].add(i) elif i not in state['vaccines_delivered']: state['vaccines_delivered'].add(i) # Update answer ans.append(len(state['vaccines_delivered'])) return ans # Read input t = int(input()) for case in range(1, t + 1): v, m = map(int, input().split()) vaccinations = list(map(int, input().split())) deliveries = list(map(int, input().split())) movements = list(map(int, input().split())) # Solve problem ans = solve(vaccinations, movements) # Print output print(f"Case #{case}: {' '.join(map(str, ans))}")