= {
"M155": lambda nid_engine, fields, t_train: ertms.encode_msg_155(nid_engine, t_train),
"M156": lambda nid_engine, fields, t_train: ertms.encode_msg_156(nid_engine, t_train),
"M159": lambda nid_engine, fields, t_train: ertms.encode_msg_159(
nid_engine, fields.get("m_version", 0), t_train),
"M146": lambda nid_engine, fields, t_train: ertms.encode_msg_146(
nid_engine, fields.get("t_train_ack", 0), t_train),
"M136": lambda nid_engine, fields, t_train: ertms.encode_msg_136(
nid_engine, _position_report_from_fields(fields), t_train),
"M136_P1": lambda nid_engine, fields, t_train: ertms.encode_msg_136_packet1(
nid_engine, _position_report_packet1_from_fields(fields), t_train),
"M132": lambda nid_engine, fields, t_train: ertms.encode_msg_132(
nid_engine, fields.get("q_marqstreason", 0), _position_report_from_fields(fields), t_train),
"M129": lambda nid_engine, fields, t_train: ertms.encode_msg_129(
nid_engine, _position_report_from_fields(fields), fields.get("l_train", 0),
fields.get("v_maxtrain", 0), fields.get("m_loadinggauge", 0), fields.get("m_axleload", 0),
bool(fields.get("m_airtight", 0)), t_train),
"M130": lambda nid_engine, fields, t_train: ertms.encode_msg_130(
nid_engine, _position_report_from_fields(fields), t_train),
"M147": lambda nid_engine, fields, t_train: ertms.encode_msg_147(
nid_engine, fields.get("nid_em", 0), fields.get("q_emergency_stop", 0),
_position_report_from_fields(fields), t_train),
"M150": lambda nid_engine, fields, t_train: ertms.encode_msg_150(
nid_engine, _position_report_from_fields(fields), t_train),
"M154": lambda nid_engine, fields, t_train: ertms.encode_msg_154(nid_engine, t_train),
"M157": lambda nid_engine, fields, t_train: ertms.encode_msg_157(
nid_engine, fields.get("q_status", 0), _position_report_from_fields(fields), t_train),
"M158": lambda nid_engine, fields, t_train: ertms.encode_msg_158(
nid_engine, fields.get("nid_textmessage", 0), _position_report_from_fields(fields), t_train),
}