시간 여행 상인 Tim이 미래에 첫발을 내딛는다. 도착한 Tim은 손가락 개수가 저마다 다른 여러 지적 외계인을 만나고, 온갖 이상한 화폐가 오가는 것을 본다. 미래에서는 위조가 매우 심각한 문제여서, 은하 정부가 지나칠 정도로 다양한 새 화폐를 발행해 왔다. 정부 구성원들의 손가락 개수가 제각각인 데다가 모두 수학에 뛰어나서, 새 화폐들은 매우 헷갈리는 단위 체계를 쓴다. 1 Melka가 10 Zedar, 1 Zedar가 10 Milbac인 것이 아니라, 1 Melka는 13 Zedar, 1 Zedar는 41 Milbac이다 (Stalsgeap이라는 외계 종족은 손가락이 41개인 것으로 유명하다).
이 모든 화폐를 헷갈리지 않고 다루기는 어렵겠지만, Tim이 확실히 아는 원칙 하나는 싸게 사서 비싸게 팔라는 것이다. 화폐 단위 체계와, 한 물건에 대한 여러 상인의 가격(각 가격은 단위별 지폐 장수로 표시된다)이 주어질 때, Tim이 그 물건을 살 수 있는 가장 싼 가격과 팔 수 있는 가장 비싼 가격의 차이를 구하라.
첫째 줄에 데이터 집합의 개수 $K$가 주어지고, 이어서 $K$개의 데이터 집합이 주어진다. 각 데이터 집합의 형식은 다음과 같다.
데이터 집합의 첫째 줄에는 화폐 단위의 개수 $2 \le D \le 7$과 가격의 개수 $2 \le N \le 10$이 주어진다. 화폐 단위는 가장 큰 것을 $1$, 가장 작은 것을 $D$로 번호를 매긴다. 다음 줄에는 $D - 1$개의 양의 정수가 주어지며, $i$번째 정수는 단위 $i$의 지폐 한 장이 단위 $i + 1$의 지폐 몇 장에 해당하는지를 나타낸다.
그다음 $N$개의 줄에는 각각 하나의 가격이 주어진다. 각 줄에는 $D$개의 음이 아닌 정수가 주어지며, $i$번째 정수는 그 가격에 포함된 단위 $i$ 지폐의 장수이다. 각 가격을 가장 작은 단위로 환산한 값은 32비트 정수 범위에 들어감이 보장된다.
각 데이터 집합에 대해, 한 줄에 "Data Set x:"를 출력한다. 여기서 $x$는 데이터 집합의 번호이다. 다음 줄에는 가장 비싼 가격과 가장 싼 가격의 차이를 가장 작은 단위로 환산해 출력한다. 연속한 데이터 집합 사이는 빈 줄로 구분한다.