diff --git a/parse_led.py b/parse_led.py
index 7f212ea..ea58876 100755
--- a/parse_led.py
+++ b/parse_led.py
@@ -12,8 +12,8 @@
         ofile.write('Please do NOT Edit !!! */\n\n')
 
         ofile.write('const std::map<std::string,')
-        ofile.write(' std::set<phosphor::led::Group::LedAction>>')
-        ofile.write(' phosphor::led::Group::ledMap = {\n\n')
+        ofile.write(' std::set<phosphor::led::Manager::LedAction>>')
+        ofile.write(' phosphor::led::Manager::ledMap = {\n\n')
         for group in ifile.iterkeys():
             # Value of this group is a std::set<string, led structure>
             ledset = ifile[group]
@@ -23,7 +23,7 @@
                 for name, value in list_dict.iteritems():
                     if group and led_dict and name and value:
                         ofile.write('        {\"' + led_dict + '\",')
-                        ofile.write(value.upper() + '},\n')
+                        ofile.write(value + '},\n')
             ofile.write('   }},\n')
         ofile.write('};\n')
 
