

SYSTEMC_KEYWORDS = [
# c++11 keywords 
"alignas",
"alignof",
"and",
"and_eq",
"asm",
"atomic_cancel",
"atomic_commit",
"atomic_noexcept",
"auto",
"bitand",
"bitor",
"bool",
"break",
"case",
"catch",
"char",
"char16_t",
"char32_t",
"class",
"compl",
"concept",
"const",
"constexpr",
"const_cast",
"continue",
"decltype",
"default",
"delete",
"do",
"double",
"dynamic_cast",
"else",
"enum",
"explicit",
"export",
"extern",
"false",
"float",
"for",
"friend",
"goto",
"if",
"import",
"inline",
"int",
"long",
"module",
"mutable",
"namespace",
"new",
"noexcept",
"not",
"not_eq",
"nullptr",
"operator",
"or",
"or_eq",
"private",
"protected",
"public",
"register",
"reinterpret_cast",
"requires",
"return",
"short",
"signed",
"sizeof",
"static",
"static_assert",
"static_cast",
"struct",
"switch",
"synchronized",
"template",
"this",
"thread_local",
"throw",
"true",
"try",
"typedef",
"typeid",
"typename",
"union",
"unsigned",
"using",
"virtual",
"void",
"volatile",
"wchar_t",
"while",
"xor",
"xor_eq",
# SystemC namespace
"SC_MODULE", "SC_METHOD", "SC_THREAD", "SC_CTHREAD", "SC_CTOR", "SC_BIN", "SC_OCT", "SC_HEX", "SC_DEC",
"sensitive",
"sc_signal", "sc_in", "sc_out", "sc_inout", "sc_event", "sc_bit", "sc_fixed", "sc_fixed", "sc_lv", "sc_bv","sc_logic",
"sc_bigint", "sc_biguint",  "sc_int", "sc_out_resolved", "sc_inout_resolve", "sc_out_rv",
"sc_inout_rv", "sc_signal_resolved", "sc_signal_rv",
"notify", "sc_module", "sc_inout_clk", "sc_out_clk",
"sc_create_vcd_trace_file", "sc_trace_file", "sc_trace"]