Kyoya Ootori wants to take the train to get to school. There are *n* train stations and *m* one-way train lines going between various stations. Kyoya is currently at train station 1, and the school is at station *n*. To take a train, he must pay for a ticket, and the train also takes a certain amount of time. However, the trains are not perfect and take random amounts of time to arrive at their destination. If Kyoya arrives at school strictly after *t* time units, he will have to pay a fine of *x*.

Each train line is described by a ticket price, and a probability distribution on the time the train takes. More formally, train line *i* has ticket cost *c*<sub class="lower-index">*i*</sub>, and a probability distribution *p*<sub class="lower-index">*i*, *k*</sub> which denotes the probability that this train will take *k* time units for all 1 ≤ *k* ≤ *t*. Amounts of time that each of the trains used by Kyouya takes are mutually independent random values (moreover, if Kyoya travels along the same train more than once, it is possible for the train to take different amounts of time and those amounts are also independent one from another). 

Kyoya wants to get to school by spending the least amount of money in expectation (for the ticket price plus possible fine for being late). Of course, Kyoya has an optimal plan for how to get to school, and every time he arrives at a train station, he may recalculate his plan based on how much time he has remaining. What is the expected cost that Kyoya will pay to get to school if he moves optimally?
The first line of input contains four integers *n*, *m*, *t*, *x* (2  ≤  *n*  ≤ 50, 1 ≤ *m* ≤ 100, 1 ≤ *t* ≤ 20 000, 0 ≤ *x* ≤ 10<sup class="upper-index">6</sup>).

The next 2*m* lines contain the description of the trains. 

The 2*i*-th line will have 3 integers *a*<sub class="lower-index">*i*</sub>, *b*<sub class="lower-index">*i*</sub>, *c*<sub class="lower-index">*i*</sub>, representing a one way train from station *a*<sub class="lower-index">*i*</sub> to *b*<sub class="lower-index">*i*</sub> with ticket cost *c*<sub class="lower-index">*i*</sub> (1 ≤ *a*<sub class="lower-index">*i*</sub>, *b*<sub class="lower-index">*i*</sub> ≤ *n*, *a*<sub class="lower-index">*i*</sub> ≠ *b*<sub class="lower-index">*i*</sub>, 0 ≤ *c*<sub class="lower-index">*i*</sub> ≤ 10<sup class="upper-index">6</sup>). There will always be at least one path from any station to the school. 

The (2*i* + 1)-th line will contain *t* integers, *p*<sub class="lower-index">*i*, 1</sub>, *p*<sub class="lower-index">*i*, 2</sub>, ..., *p*<sub class="lower-index">*i*, *t*</sub> where *p*<sub class="lower-index">*i*, *k*</sub> / 100000 is the probability that this train will take *k* units of time to traverse (0 ≤ *p*<sub class="lower-index">*i*, *k*</sub> ≤ 100 000 for 1 ≤ *k* ≤ *t*, <img align="middle" class="tex-formula" src="https://espresso.codeforces.com/1dd6644a681804a6c6570ab0c07a69e19b83516c.png" style="max-width: 100.0%;max-height: 100.0%;"/>). 

It is guaranteed that there is no more than one train between each pair of platforms in each of the directions.
print("_RANDOM_GUESS_1689601112.301418")# 1689601112.3014367