#include <iostream>
#include <string>
#include <map>
using namespace std;

#define ADD_ENUM_TO_MAP(m,x) m[#x]=x

enum MyEnumType {
	quick, brown, fox, jumps, over, the, lazy, dog
};

int main() {
	map<string,MyEnumType> nameToEnum;
	ADD_ENUM_TO_MAP(nameToEnum, quick);
	ADD_ENUM_TO_MAP(nameToEnum, brown);
	ADD_ENUM_TO_MAP(nameToEnum, fox);
	ADD_ENUM_TO_MAP(nameToEnum, jumps);
	ADD_ENUM_TO_MAP(nameToEnum, over);
	ADD_ENUM_TO_MAP(nameToEnum, the);
	ADD_ENUM_TO_MAP(nameToEnum, lazy);
	ADD_ENUM_TO_MAP(nameToEnum, dog);
	cout << nameToEnum["fox"] << endl;
	return 0;
}