One amenity being added to buses and trains to attract or retain riders is a wireless network. Commuters can get work done while traveling, or browse the Internet just like at home. Of course, the more riders use the service, the less bandwidth is left for any one person, making it a little less attractive. Wouldn't it be nice if, before downloading a big file, you knew who boards and leaves the bus and when, so you could compute exactly how much bandwidth you will get during your ride?
Write a program to compute this. You are given the following data.
The first line contains the number of data sets $K$. Then $K$ data sets follow, each in the form below.
The first line contains four integers $n, m, p, y$. Here $n$ is the number of bus stops ($2 \le n \le 100$), $m$ is the number of seats ($1 \le m \le 100$), $p$ is the number of passengers, and $y$ ($1 \le y \le p$) is your passenger number.
The next line contains $n-1$ integers giving the travel time in seconds from stop $i$ to stop $i+1$. The following line contains $m$ non-negative integers giving the proportion $a_i$ commanded by seat $i$.
Then $p$ lines follow, one per passenger $j$, each with two integers: the stop $s_j$ where the passenger boards and the stop $t_j > s_j$ where the passenger gets off. Passengers are sorted by non-decreasing boarding stop $s_j$.
For each data set, first print Data Set x: on its own line, where $x$ is the data set number. On the next line, print the total bandwidth in megabytes that you obtained, rounded to two decimals. Separate consecutive data sets with a single blank line.