Місто під струмом
Мер міста Бітберг вирішив провести струм між деякими будинками у своєму місті. Під’єднання двох будинків відбувається через прокладення кабелю деякого опору R між цими двома будинками. Кабель двосторонній – це означає що струм може іти як від першого будинку до другого, так і навпаки. Гарантується, що система кабелів утворює зв’язний граф, тобто існує один або декілька шляхів між будь-якими двома парами будинків. Після прокладки усіх кабелів до Містера 01101 (він же мер міста Бітберг) наглянула пожежна служба, щоб переконатися, що опір провідників між деякими двома будинками не перевищує норми опору між цими будинками. Ваша задача допомогти пожежникам швидко для декількох пар будинків визначити, чи опір між цими будинками знаходиться в межах норми.
Вхідні дані
Будинки нумеруються від 1 до N (N ≤ 100), кабелі задаються парами (u, v), усього M штук (M ≤ 10000), також задається матриця A розміром N×N де задається максимальний опір між довільними двома будинками, також матриця B – мінімальний опір між довільними двома будинками. Елементи A_ii та B_ii_{ }завжди рівні -1 і це означає, що немає обмежень на опір між будинком і самим собою. Матриці A та B симетричні, тобто A_ij = A_ji та B_ij = B_ji. 0 ≤ A_ij, B_ij ≤ 10^6.
Також задаються запити від пожежників у вигляді (u, v) де запитується опір між двома будинками. Усього запитівQ (Q ≤ 10).
На вхід подається три цілих числа N M Q. У наступних M рядках задається по два числа u, v – опір дроту між будинками (u, v) (1 ≤ u, v ≤ N). У наступних N рядках задано N чисел, де j-ий елемент у i-му рядку відповідає елементу A_ij. У наступних N рядках задано N чисел, де j-ий елемент у i-му рядку відповідає елементу B_ij. У наступних Q рядках задається два числа (u, v) (1 ≤ u, v ≤ N) - запити пожежників над будинками u та v.
Вихідні дані
Q рядків, у кожному з яких або "Yes" (без лапок), якщо опір між будинками задовольняє дозволеним межам пожежників, а також сам цей опір з точністю до 10^{-7}, або слово "No" (без лапок), якщо опір не задовольняє умовам пожежників.