#include <bits/stdc++.h>
using namespace std;
int main()
{
int n, m, u, v;
cin >> n >> m;
vector <vector <int> > e(n);
for (int i = 0; i < m; i++)
{
cin >> u >> v;
e[u-1].push_back(v);
}
cout << n << endl;
for (int i = 0; i < n; i++)
{
cout << e[i].size() << " ";
sort(e[i].begin(), e[i].end());
for (int j = 0; j < e[i].size(); j++)
cout << e[i][j] << " ";
cout << endl;
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKQp7CglpbnQgbiwgbSwgdSwgdjsKCWNpbiA+PiBuID4+IG07Cgl2ZWN0b3IgPHZlY3RvciA8aW50PiA+IGUobik7CgkKCWZvciAoaW50IGkgPSAwOyBpIDwgbTsgaSsrKQoJewoJCWNpbiA+PiB1ID4+IHY7CgkJZVt1LTFdLnB1c2hfYmFjayh2KTsKCX0KCQoJY291dCA8PCBuIDw8IGVuZGw7CgkKCWZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKQoJewoJCWNvdXQgPDwgZVtpXS5zaXplKCkgPDwgIiAiOwoJCXNvcnQoZVtpXS5iZWdpbigpLCBlW2ldLmVuZCgpKTsKCQkKCQlmb3IgKGludCBqID0gMDsgaiA8IGVbaV0uc2l6ZSgpOyBqKyspCgkJCWNvdXQgPDwgZVtpXVtqXSA8PCAiICI7CgkJCQoJCWNvdXQgPDwgZW5kbDsKCX0KfQ==