diff --git a/aosstower/l00/parser.py b/aosstower/l00/parser.py
index 7464a914c69d17ad34b1a118ff67aaf6165fd603..4d0f951a66875c5e4a188aaa0bbc97397358ddae 100644
--- a/aosstower/l00/parser.py
+++ b/aosstower/l00/parser.py
@@ -57,16 +57,17 @@ class LineParseError(Exception):
 def _make_frame(data):
     """Construct a frame from a list of tuples.
     """
+    frame = {}
     for key, value in data:
         if key == 'stamp':
             continue
         if key in database:
             try:
-                data[key] = database[key].type(data[key])
+                frame[key] = database[key].type(value)
             except (ValueError, TypeError):
                 raise LineParseError("error converting '%s' using %s",
-                                     data[key], database[key].type)
-    return data
+                                     value, database[key].type)
+    return frame 
 
 
 class ParserV0(object):
@@ -169,7 +170,7 @@ def read_frames(source, error_handler=lambda *a: None):
         for parser in [ParserV1V2(), ParserV0()]:
             if parser.maybe_mine(line):
                 try:
-                    yield parser.parse(line)
+                    yield parser.make_frame(line)
                 except LineParseError as err:
                     error_handler(idx + 1, line, err)
                 break