Cho đồ thị vô hướng không có khuyên,
được gọi là tập đỉnh và
,
được gọi là họ các cạnh của
và
, ví dụ như hình vẽ sau:

Để có hình như trên Bi vẽ ngẫu nhiên đỉnh và sau đó vẽ lần lượt
cạnh
của đồ thị
theo thứ tự như ví dụ trên sẽ là:
1 2
5 4
2 3
3 1
3 6
Trong quá trình vẽ Bi nảy ra các câu hỏi nếu mỗi lần vẽ một cạnh của thì
có mấy
thành phần liên thông. Để câu hỏi có nghĩa Bi đặt ra bài toán như sau:
Với đồ thị đã cho như hình vẽ thực hiện các thao tác sau:
Xóa các cạnh của
từ thứ tự
đến
trong dãy
câu lệnh vẽ cạnh trên.
Đếm số thành phần liên thông và in kết quả.
Phục hồi lại các cạnh đã xóa để thực hiện thao tác hỏi khác.
Hãy lập trình giải quyết nội dung trên giúp Bi.
Input
Dòng thứ nhất chứa hai số nguyên thỏa
.
dòng kế tiếp biểu diễn cạnh nối giữa hai đỉnh
của đồ thị, dữ liệu thỏa
.
Dòng tiếp theo chứa số nguyên thỏa
là số câu hỏi của Bi.
dòng kế tiếp chứa các số nguyên
và
thỏa
là các cạnh trong khoảng thứ tự cần xóa để hỏi (sau khi hỏi xong sẽ phục hồi lại).
Output
In ra kết quả tương ứng với
câu hỏi.
Samples
Sample Input 1
6 5
1 2
5 4
2 3
3 1
3 6
6
1 3
2 5
1 5
5 5
2 4
3 3
Sample Output 1
4
5
6
3
4
2
Comments