#include <iostream>
#include <unordered_map>
using namespace std;

struct Item
{
	int val;
};

int main() {
	unordered_map<int, Item> itemMap;
	itemMap[0] = {0};
	itemMap[1] = {1};
	itemMap[2] = {2};
	itemMap[3] = {3};
	const Item* bestItem = nullptr;
	int bestVal = -1;
	for (const pair<int, Item>& item : itemMap)
	{
		if (item.second.val > bestVal)
		{
			bestVal = item.second.val;
			bestItem = &item.second;
		}
	}
	cout << "best val: " << bestVal << " best item: " << bestItem->val;
	return 0;
}