Type_E _Get_Enum_Type(string sType)//convert string to enum
{
transform(sType.begin(), sType.end(), sType.begin(), tolower);
if(sType == "input") {return INPUT;}
else if(sType == "not") {return NOT;}
else if(sType == "and") {return AND;}
else if(sType == "nand") {return NAND;}
else if(sType == "or") {return OR;}
else if(sType == "nor") {return NOR;}
else if(sType == "xor") {return XOR;}
else if(sType == "xnor") {return XNOR;}
else if(sType == "1'b0") {return LOW;}
else if(sType == "1'b1") {return HIGH;}
else {return NONE;}
}
VHlwZV9FIF9HZXRfRW51bV9UeXBlKHN0cmluZyBzVHlwZSkvL2NvbnZlcnQgc3RyaW5nIHRvIGVudW0KewogICAgdHJhbnNmb3JtKHNUeXBlLmJlZ2luKCksIHNUeXBlLmVuZCgpLCBzVHlwZS5iZWdpbigpLCB0b2xvd2VyKTsKICAgIGlmKHNUeXBlID09ICJpbnB1dCIpICAgICAgICAge3JldHVybiBJTlBVVDt9ICAgICAgIAogICAgZWxzZSBpZihzVHlwZSA9PSAibm90IikgICAgICB7cmV0dXJuIE5PVDt9ICAgICAgICAKICAgIGVsc2UgaWYoc1R5cGUgPT0gImFuZCIpICAgICB7cmV0dXJuIEFORDt9CiAgICBlbHNlIGlmKHNUeXBlID09ICJuYW5kIikgICB7cmV0dXJuIE5BTkQ7fQogICAgZWxzZSBpZihzVHlwZSA9PSAib3IiKSAgICAgICB7cmV0dXJuIE9SO30KICAgIGVsc2UgaWYoc1R5cGUgPT0gIm5vciIpICAgICB7cmV0dXJuIE5PUjt9CiAgICBlbHNlIGlmKHNUeXBlID09ICJ4b3IiKSAgICAge3JldHVybiBYT1I7fQogICAgZWxzZSBpZihzVHlwZSA9PSAieG5vciIpICAge3JldHVybiBYTk9SO30KICAgIGVsc2UgaWYoc1R5cGUgPT0gIjEnYjAiKSAgIHtyZXR1cm4gTE9XO30KICAgIGVsc2UgaWYoc1R5cGUgPT0gIjEnYjEiKSAgIHtyZXR1cm4gSElHSDt9CiAgICBlbHNlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyZXR1cm4gTk9ORTt9Cn0=