#include #include #include #include using namespace std; int main() { int n, q; cin >> n >> q; vector used(q + 5); used[0] = used[1] = 1; int now = 1; map mp; mp[0] = 1; used[1] = 1; int cnt = 0; vector t, p, x; for (int i = 0; i < n; ++i) { int v; cin >> v; if (mp.find(v) != mp.end()) { t.push_back(2); p.push_back(mp[v]); x.push_back(0); ++cnt; } else { t.push_back(1); while (used[now]) ++now; p.push_back(now); used[now] = 1; ++cnt; mp[v] = now; x.push_back(v); t.push_back(2); p.push_back(now); x.push_back(v); ++cnt; } } if (cnt > q) { cout << "No" << endl; return 0; } cout << "Yes" << endl; while (cnt++ < q) { t.push_back(1); p.push_back(1); x.push_back(1); } for (int i = 0; i < q; ++i) { cout << t[i] << ' '; cout << p[i]; if (t[i] == 1) cout << ' ' << x[i] << endl; else cout << endl; } }