You have H hours to study before the exams, and you want the highest possible GPA. Splitting those hours across your courses is the whole job. If an A in one course costs a huge number of hours while every other course gives an A for very little, taking a C in that one course and collecting A's everywhere else pays off.
For each course you are given the study time every letter grade requires. If you spend at least the hours a grade requires in a course, you get that grade. If you do not even reach the hours required for a D, you get an F. The grade points are 4.0 for A, 3.7 for A-, 3.3 for B+, 3.0 for B, 2.7 for B-, 2.3 for C+, 2.0 for C, 1.7 for C-, 1.3 for D+, 1.0 for D, and 0.0 for F. The GPA is the average of the grade points over your n courses.
Find the largest GPA you can reach by dividing the H hours among the courses. Hours given to one course cannot be used for another, and you may leave hours unused.
The first line contains the number of data sets K (1≤K≤100).
The first line of each data set contains two integers n and H separated by a space, the number of courses you are taking and the number of hours available for studying (1≤n≤10, 0≤H≤100).
Each of the next n lines contains 10 integers. The integers on line i give, in this order, the hours you must study to get A, A-, B+, B, B-, C+, C, C-, D+, D in course i. The 10 integers on a line are non-increasing, and each of them is between 0 and 100.
For each data set, print Data Set x: on a line of its own, where x is the number of the data set counting from 1. On the next line print the largest GPA you can reach, with exactly two digits after the decimal point.
Round the GPA at the third digit after the decimal point. When the discarded part is exactly 0.005, round up. Pad with zeros so that two digits always follow the decimal point.
Print one blank line after each data set.