최소 비용 유량의 역습

아직 제출이 없습니다시간 제한3초메모리 제한256 MB

문제

플로라는 프리랜서 전서구다. 실력이 뛰어나서 감당할 수 없을 만큼 배달 의뢰가 몰린다. 혼자 다 처리할 수는 없으므로 일부를 전서구 운송 회사에 맡기기로 했다.

도시는 00번부터 N1N-1번까지 NN개 있다. 플로라가 맡기려는 일은 화물 ff단위를 도시 ss에서 도시 tt로 옮기는 것이다. 회사에는 전서구가 MM마리 있다. ii번 전서구는 도시 sis_i에서 도시 tit_i로 화물을 옮기고, 반대 방향인 tit_i에서 sis_i로는 옮기지 못한다. ii번 전서구가 화물 uu단위를 옮기는 비용은 udiu \le d_i이면 uaiu a_i이고, 그렇지 않으면 diai+(udi)bid_i a_i + (u - d_i) b_i다. 전서구 한 마리가 옮기는 양에는 제한이 없다. 한 전서구가 여러 번에 나누어 옮겨도 비용은 그 전서구가 옮긴 총량으로 계산한다.

플로라는 전체 비용을 최소로 하려고 한다. 최소 비용을 구하라.

입력

첫째 줄에 정수 NN (2N1002 \le N \le 100), MM (1M10001 \le M \le 1000), ss (0sN10 \le s \le N-1), tt (0tN10 \le t \le N-1), ff (1f2001 \le f \le 200)가 공백으로 구분되어 주어진다. sts \ne t다.

다음 MM개 줄에는 ii번 전서구의 정보인 정수 sis_i (0siN10 \le s_i \le N-1), tit_i (0tiN10 \le t_i \le N-1), aia_i (0ai10000 \le a_i \le 1000), bib_i (0bi10000 \le b_i \le 1000), did_i (1di2001 \le d_i \le 200)가 주어진다. ai<bia_i < b_i인 전서구는 많아야 한 마리이고, 나머지 전서구는 모두 ai>bia_i > b_i를 만족한다.

출력

화물 ff단위를 도시 ss에서 도시 tt로 옮기는 최소 비용을 한 줄에 출력한다. 옮길 수 없으면 Impossible을 출력한다.