{"trustable":true,"prependHtml":"\u003cscript\u003e window.katexOptions \u003d { disable: true }; \u003c/script\u003e\n\u003cscript type\u003d\"text/x-mathjax-config\"\u003e\n MathJax.Hub.Config({\n tex2jax: {\n inlineMath: [[\u0027$$$\u0027,\u0027$$$\u0027], [\u0027$\u0027,\u0027$\u0027]],\n displayMath: [[\u0027$$$$$$\u0027,\u0027$$$$$$\u0027], [\u0027$$\u0027,\u0027$$\u0027]]\n }\n });\n\u003c/script\u003e\n\u003cscript async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\" type\u003d\"text/javascript\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"HTML","content":"\u003cdiv class\u003d\"panel_content\"\u003eTrong lĩnh vực toán học của lý thuyết đồ thị, một \"matching\" trong một đồ thị là một tập hợp các cạnh không có đỉnh chung.\u003cbr\u003eBạn được cho một đồ thị vô hướng với $n$ đỉnh, được gán nhãn bởi $1,2,...,n$. Ban đầu, đồ thị không có cạnh nào.\u003cbr\u003eCó $2$ loại thao tác :\u003cbr\u003e + u v, thêm một cạnh $(u,v)$ vào đồ thị, có thể có nhiều cạnh giữa cùng một cặp đỉnh.\u003cbr\u003e - u v, xóa một cạnh $(u,v)$, đảm bảo rằng có ít nhất một cạnh như vậy trong đồ thị.\u003cbr\u003eNhiệm vụ của bạn là tính số \"matchings\" với chính xác $k$ cạnh sau mỗi thao tác cho $k\u003d1,2,3,...,\\frac{n}{2}$. Lưu ý rằng nhiều cạnh giữa cùng một cặp đỉnh được xem xét là khác nhau.\u003cbr\u003e\u003c/div\u003e"}},{"title":"Nhập","value":{"format":"HTML","content":"Dòng đầu tiên của đầu vào chứa một số nguyên $T(1\\leq T\\leq10)$, đại diện cho số lượng bài kiểm tra.\u003cbr\u003eTrong mỗi bài kiểm tra, có $2$ số nguyên $n,m(2\\leq n\\leq 10,n \\bmod 2\u003d0,1\\leq m\\leq 30000)$, đại diện cho số lượng đỉnh và thao tác.\u003cbr\u003eCho $m$ dòng tiếp theo, mỗi dòng mô tả một thao tác, và đảm bảo rằng $1\\leq u\u0026lt;v\\leq n$.\u003cbr\u003e"}},{"title":"Xuất","value":{"format":"HTML","content":"Đối với mỗi thao tác, in ra một dòng chứa $\\frac{n}{2}$ số nguyên, đại diện cho câu trả lời cho $k\u003d1,2,3,...,\\frac{n}{2}$. Vì câu trả lời có thể rất lớn, vui lòng in ra câu trả lời theo modulo $10^9+7$.\u003cbr\u003e"}},{"title":"Ví dụ","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e1\t\t\r\n4 8\t\r\n+ 1 2\r\n+ 3 4\r\n+ 1 3\r\n+ 2 4\r\n- 1 2\r\n- 3 4\r\n+ 1 2\r\n+ 3 4\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e1 0\r\n2 1\r\n3 1\r\n4 2\r\n3 1\r\n2 1\r\n3 1\r\n4 2\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}