Մնացորդի խաղ

Եկեք խաղ խաղանք. Պատկերացրեք, որ ունեք նախնական թիվ s0s_0 և երկու շարքեր a1,a2,...,ana_1, a_2, ..., a_n, b1,b2,...,bnb_1, b_2, ..., b_n։ Ձեր նպատակը s0s_0-ից όσο հնարավոր է շուտ հասնել 0-ի։ Յուրաքանչյուր քայլին թույլատրվում է ընտրել ինդեքս i և կիրառել հետևյալ գործողությունը ընթացիկ թվի վրա.

sj+1=(sj⋅ai+bi)mod  ms_{j+1} = (s_j \cdot a_i + b_i) \mod m

Այս կերպ կարելի է ստանալ հաջորդ թիվը։ Պետք է որոշել, թե նվազագույն քանի քայլով հնարավոր է s0s_0-ից հասնել 0-ի։

Մուտք

Մուտքի առաջին տողում տրված են 3 ամբողջ թիվ՝ n, m և s0s_0 (0 ≤ n ≤ 10, 0 ≤ m ≤ 100000, և 0 < s0s_0 < m)։

Հաջորդ n տողերում տրված է երկուական թվերի զույգ ai,bia_i, b_i (0 ≤ aia_i, bib_i ≤ 10910^9)։

Ելք

Ծրագիրը պետք է տպի նվազագույն քայլերի քանակը, որով կարելի է s0s_0-ից հասնել 0-ի։ Եթե 0-ի ստացումը անհնար է, ծրագիրը պետք է տպի Impossible։

Օրինակներ

Մուտք

Ելք

2 5 1
3 1
2 1

2

Constraints

Time limit: 1.6 seconds

Memory limit: 512 MB

Output limit: 1 MB