#include <iostream>

namespace cplor{
		enum class style : unsigned char {
		Reset     = 0,
		bold      = 1,
		dim       = 2,
		italic    = 3,
		underline = 4,
		blink     = 5,
		reversed  = 6,
		conceal   = 7,
		crossed   = 8
	};
	enum class fg : unsigned char {
		def     = 39,
		black   = 30,
		red     = 31,
		green   = 32,
		yellow  = 33,
		blue    = 34,
		magenta = 35,
		cyan    = 36,
		gray    = 37
	};
	enum class bg : unsigned char {
		def     = 49,
		black   = 40,
		red     = 41,
		green   = 42,
		yellow  = 43,
		blue    = 44,
		magenta = 45,
		cyan    = 46,
		gray    = 47
	};
	std::ostream &operator<<(std::ostream &os, style s)
	{
		return os <<"ESCAPE" << static_cast<int>(s) << "m";
	}

}

int main(){
	std::cout << "Starts here" << std::endl;
	std::cout << cplor::style::bold << "Hello" << cplor::fg::blue;
	return 0;
}