#include using namespace std; typedef pair pii; typedef pair piii; typedef long long ll; const int N = 2000086, MOD = 1e9 + 7, INF = 0x3f3f3f3f; ll res; int n, m, cnt, w[N]; int main() { cin >> n >> m; int idx = 1; map ma; vector ans; for (int i = 1; i < n + 1; i++) { scanf("%d", w + i); if (ma.count(w[i])) ans.push_back({2, {ma[w[i]], 0}}); else ans.push_back({1, {idx, w[i]}}), ma[w[i]] = idx, ans.push_back({2, {ma[w[i]], 0}}), idx++; } while (ans.size() < m) ans.push_back({1, {1, 1}}); if (ans.size() == m) { puts("Yes"); for (auto u : ans) { if (u.first == 1) printf("%d %d %d\n", 1, u.second.first, u.second.second); else printf("%d %d\n", 2, u.second.first); } } else puts("No"); return 0; }