#include <iostream>
#include <unordered_map>
#include <vector>

using namespace std;

static unordered_map<int, int> polja;

int main()
{
	ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
    	int n, k;
        	cin >> n >> k;
            	while (n--)
                	{
                    		int koord;
                            		cin >> koord;
                                    		polja[koord]++;
                                            	}
                                                	vector<int> momenti;
                                                    	for (auto polje : polja)
                                                        		if (polje.second >= k)
                                                                			momenti.push_back(polje.first);
                                                                            	cout << momenti.size() << '\n';
                                                                                	for (auto polje : momenti)
                                                                                    		cout << polje << ' ';
                                                                                            }