Przedział $[l, r]$ oznacza zbiór wszystkich liczb rzeczywistych większych lub równych $l$ oraz mniejszych lub równych $r$.
Danych jest $N$ przedziałów. Napisz program, który odpowie na $Q$ zapytań następującej treści:
- Dla danych $l$ oraz $r$, czy można wybrać co najmniej jeden przedział tak, aby ich część wspólna była dokładnie równa $[l, r]$? Jeśli tak, jaka jest minimalna liczba przedziałów, które należy wybrać?
Wejście
W pierwszej linii podana jest liczba przedziałów $N$ ($1 \le N \le 300\,000$). W kolejnych $N$ liniach podane są liczby całkowite $l_i$ oraz $r_i$ oddzielone spacją, reprezentujące przedziały $[l_i, r_i]$ ($0 \le l_i < r_i \le 10^6$). W następnej linii podana jest liczba zapytań $Q$ ($1 \le Q \le 300\,000$). W kolejnych $Q$ liniach podane są dwie liczby całkowite $l$ oraz $r$ oddzielone spacją, reprezentujące zapytanie ($0 \le l < r \le 10^6$).
Wyjście
Dla każdego zapytania wypisz w osobnej linii wynik: jeśli nie da się uzyskać części wspólnej równej dokładnie $[l, r]$, wypisz $-1$. W przeciwnym razie wypisz minimalną liczbę przedziałów, które należy wybrać.
Przykład
Wejście 1
3 0 10 2 6 4 8 3 4 6 2 8 1 9
Wyjście 1
2 -1 -1