+ p_float + c \
    + p_float \
    + r).streamline()
p_CentreMessage.setParseAction(lambda x: messaging.CentreMessage(*x[0]))
p_ControllerStateMessage = pp.Group(l \
    + p_Controller + c \
    + p_float + c \
    + p_float + c \
    + p_float + c \
    + p_float + c \
    + p_float + c \
    + p_float + c \
    + p_float + c \
    + p_MotorDemand \
    + r).streamline()
p_ControllerStateMessage.setParseAction(lambda x: messaging.ControllerStateMessage(*x[0]))
p_MotorStateMessage = pp.Group(l \
    + p_MotorID + c \
    + p_int \
    + r).streamline()
p_MotorStateMessage.setParseAction(lambda x: messaging.MotorStateMessage(*x[0]))
p_ScriptResponseMessage = pp.Group(l \
    + p_ScriptResponse \
    + r).streamline()
p_ScriptResponseMessage.setParseAction(lambda x: messaging.ScriptResponseMessage(*x[0]))
p_GraphableMessage = pp.Group(l \
    + p_str + c \
    + p_float \
    + r).streamline()
p_GraphableMessage.setParseAction(lambda x: messaging.GraphableMessage(*x[0]))
p_NodeAddedMessage = pp.Group(l \
    + p_float \
    + r).streamline()
p_CentreMessage.setParseAction(lambda x: messaging.CentreMessage(*x[0]))
p_ControllerStateMessage = pp.Group(l \
    + p_Controller + c \
    + p_float + c \
    + p_float + c \
    + p_float + c \
    + p_float + c \
    + p_float + c \
    + p_float + c \
    + p_float + c \
    + p_MotorDemand \
    + r).streamline()
p_ControllerStateMessage.setParseAction(
    lambda x: messaging.ControllerStateMessage(*x[0]))
p_MotorStateMessage = pp.Group(l \
    + p_MotorID + c \
    + p_int \
    + r).streamline()
p_MotorStateMessage.setParseAction(
    lambda x: messaging.MotorStateMessage(*x[0]))
p_ScriptResponseMessage = pp.Group(l \
    + p_ScriptResponse \
    + r).streamline()
p_ScriptResponseMessage.setParseAction(
    lambda x: messaging.ScriptResponseMessage(*x[0]))
p_GraphableMessage = pp.Group(l \
    + p_str + c \
    + p_float \
    + r).streamline()