pwitab / iec62056-21 Goto Github PK
View Code? Open in Web Editor NEWA Python library for IEC62056-21, Local Data Readout of Energy Meters. Former IEC1107
License: BSD 3-Clause "New" or "Revised" License
A Python library for IEC62056-21, Local Data Readout of Energy Meters. Former IEC1107
License: BSD 3-Clause "New" or "Revised" License
Hi
I can't connect to Landis ZMD meter. In my opinion it responds not starting with "" so i cant get read_identification() def work. If i send init_request it responds:
b'\xaf' b'\xcc' b'G' b'Z' b'5' b'\\' b'\xb2' b'Z' b'M' b'D' b'\xb4' b'0' b'5' b'\xb4' b'\xb4' b'5' b'9' b'.' b'B' b'\xb4' b'0' b'\x8d' b'\n' b'\x82' b'\xc6' b'.' b'\xc6' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'9' b'.' b'\xb1' b'(' b'\xb2' b'3' b':' b'\xb1' b'6' b':' b'\xb4' b'3' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'9' b'.' b'\xb2' b'(' b'\xb2' b'\xb1' b'-' b'0' b'\xb1' b'-' b'0' b'\xb4' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'0' b'.' b'0' b'(' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb1' b'.' b'0' b'(' b'5' b'\xb4' b'\xb8' b'0' b'0' b'\xb1' b'0' b'\xb2' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'9' b'0' b'.' b'\xb1' b'(' b'5' b'\xb4' b'\xb8' b'0' b'0' b'\xb1' b'0' b'\xb2' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'9' b'0' b'.' b'\xb2' b'(' b'0' b'\xb1' b'\xb1' b'0' b'\xb2' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'\xb2' b'.' b'\xb2' b'(' b'B' b'\xb2' b'\xb1' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'\xb1' b'.' b'0' b'(' b'0' b'\xb4' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'\xb1' b'.' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'\xb2' b'\xb1' b'-' b'0' b'\xb1' b'-' b'0' b'\xb1' b'\xa0' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'\xb1' b'.' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'\xb2' b'0' b'-' b'\xb1' b'\xb2' b'-' b'3' b'0' b'\xa0' b'\xb1' b'6' b':' b'0' b'\xb2' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'\xb1' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'-' b'0' b'0' b'-' b'0' b'0' b'\xa0' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'\xb1' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'-' b'0' b'0' b'-' b'0' b'0' b'\xa0' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'\xb1' b'.' b'\xb2' b'(' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'\xb1' b'.' b'3' b'(' b'\xb2' b'\xb1' b'-' b'0' b'\xb1' b'-' b'0' b'\xb1' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'\xb1' b'(' b'0' b'3' b'0' b'\xb2' b'.' b'\xb8' b'\xb2' b'6' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'\xb7' b'5' b'.' b'5' b'3' b'\xb4' b'\xb1' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'\xb1' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'\xb2' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'3' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'3' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'3' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'0' b'(' b'0' b'3' b'0' b'\xb2' b'.' b'\xb8' b'\xb2' b'6' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'\xb7' b'5' b'.' b'5' b'3' b'\xb4' b'\xb1' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'\xb1' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'\xb1' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'\xb2' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'3' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'3' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'3' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'\xb1' b'(' b'0' b'0' b'6' b'\xb4' b'.' b'3' b'\xb7' b'\xb1' b'\xb4' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'\xb1' b'6' b'.' b'0' b'5' b'9' b'9' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'\xb1' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'\xb2' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'3' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'3' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'3' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'0' b'(' b'0' b'0' b'6' b'\xb4' b'.' b'3' b'\xb7' b'\xb1' b'\xb4' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'\xb1' b'6' b'.' b'0' b'5' b'9' b'9' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'5' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'\xb1' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'\xb4' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'\xb4' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'\xb1' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'\xb2' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'3' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'3' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'3' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'\xb4' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'\xb4' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'6' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'\xb1' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'\xb1' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'\xb2' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'3' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'3' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'3' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb7' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'\xb1' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'\xb1' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'\xb2' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'3' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'3' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'3' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xf6' b'\xe1' b'r' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'6' b'.' b'0' b'(' b'\xb2' b'.' b'3' b'9' b'6' b'6' b'\xaa' b'\xeb' b'\xd7' b'\xa9' b'(' b'\xb2' b'\xb1' b'-' b'0' b'\xb1' b'-' b'0' b'3' b'\xa0' b'\xb1' b'\xb1' b':' b'\xb4' b'5' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'6' b'.' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'\xb2' b'.' b'3' b'9' b'3' b'9' b'\xaa' b'\xeb' b'\xd7' b'\xa9' b'(' b'\xb2' b'0' b'-' b'\xb1' b'\xb2' b'-' b'3' b'\xb1' b'\xa0' b'\xb2' b'0' b':' b'\xb1' b'5' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'6' b'.' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xa9' b'(' b'0' b'0' b'-' b'0' b'0' b'-' b'0' b'0' b'\xa0' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'6' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xa9' b'(' b'0' b'0' b'-' b'0' b'0' b'-' b'0' b'0' b'\xa0' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'6' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xa9' b'(' b'0' b'0' b'-' b'0' b'0' b'-' b'0' b'0' b'\xa0' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'6' b'.' b'0' b'(' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xa9' b'(' b'0' b'0' b'-' b'0' b'0' b'-' b'0' b'0' b'\xa0' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'6' b'.' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'.' b'0' b'0' b'0' b'\xb1' b'\xaa' b'\xeb' b'\xd7' b'\xa9' b'(' b'\xb2' b'0' b'-' b'\xb1' b'\xb2' b'-' b'3' b'0' b'\xa0' b'\xb1' b'6' b':' b'\xb1' b'3' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'6' b'.' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xa9' b'(' b'0' b'0' b'-' b'0' b'0' b'-' b'0' b'0' b'\xa0' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'6' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xa9' b'(' b'0' b'0' b'-' b'0' b'0' b'-' b'0' b'0' b'\xa0' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'6' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xa9' b'(' b'0' b'0' b'-' b'0' b'0' b'-' b'0' b'0' b'\xa0' b'0' b'0' b':' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb1' b'(' b'0' b'0' b'0' b'0' b'.' b'\xb4' b'\xb4' b'5' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'\xb1' b'\xb1' b'0' b'\xb8' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb1' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb4' b'(' b'0' b'0' b'0' b'0' b'.' b'\xb2' b'\xb1' b'6' b'3' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb4' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'5' b'\xb4' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb4' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb4' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb4' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb2' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'5' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'5' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'5' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'5' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'5' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb2' b'0' b'(' b'0' b'0' b'0' b'\xb4' b'.' b'\xb4' b'5' b'0' b'\xb4' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb2' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'\xb1' b'.' b'\xb1' b'0' b'\xb8' b'9' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb2' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb2' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb2' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb1' b'9' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'\xb2' b'\xb1' b'6' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb1' b'9' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'5' b'\xb4' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb1' b'9' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb1' b'9' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb8' b'3' b'.' b'\xb8' b'.' b'\xb1' b'9' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'\xb8' b'.' b'\xb1' b'\xb2' b'\xb8' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'\xb2' b'\xb8' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'\xb8' b'.' b'\xb1' b'\xb2' b'\xb8' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'\xb2' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'\xb8' b'.' b'\xb1' b'\xb2' b'\xb8' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'\xb8' b'.' b'\xb1' b'\xb2' b'\xb8' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'\xb8' b'.' b'\xb1' b'\xb2' b'\xb8' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'\xb8' b'.' b'\xb1' b'\xb2' b'\xb8' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'\xb1' b'0' b'\xb1' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'\xb8' b'.' b'\xb1' b'\xb2' b'\xb8' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'\xb1' b'6' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'\xb8' b'.' b'\xb1' b'\xb2' b'\xb8' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'\xb8' b'.' b'\xb1' b'\xb2' b'\xb8' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'\xb8' b'.' b'\xb1' b'\xb2' b'\xb8' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'\xb2' b'.' b'\xb7' b'.' b'\xb1' b'\xb2' b'\xb8' b'(' b'0' b'0' b'.' b'0' b'0' b'9' b'\xa9' b'\x8d' b'\n' b'\xb1' b'\xb1' b'.' b'\xb7' b'.' b'\xb1' b'\xb2' b'\xb8' b'(' b'0' b'0' b'.' b'0' b'\xb1' b'3' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb2' b'.' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xb4' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb2' b'.' b'\xb1' b'(' b'\xb2' b'0' b'-' b'\xb1' b'\xb2' b'-' b'3' b'0' b'\xa0' b'\xb1' b'6' b':' b'\xb1' b'\xb4' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb2' b'.' b'\xb2' b'(' b'\xb2' b'0' b'-' b'\xb1' b'\xb2' b'-' b'\xb2' b'9' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'6' b'.' b'0' b'(' b'0' b'0' b'0' b'\xb1' b'5' b'5' b'\xaa' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'6' b'.' b'3' b'(' b'6' b'.' b'5' b'\xaa' b'V' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb7' b'.' b'\xb1' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xb1' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb7' b'.' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb7' b'.' b'3' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb7' b'.' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'9' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'0' b'(' b'0' b'0' b'0' b'0' b'\xb8' b'\xb1' b'5' b'\xb1' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'0' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'\xb2' b'\xb4' b'3' b'5' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'0' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'0' b'5' b'\xb1' b'\xb7' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'0' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'\xb1' b'(' b'0' b'0' b'0' b'0' b'\xb7' b'9' b'3' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'\xb2' b'\xb2' b'\xb1' b'\xb4' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'\xb1' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'0' b'\xb2' b'9' b'6' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'\xb1' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'\xb2' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'\xb2' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'3' b'(' b'0' b'0' b'0' b'0' b'0' b'\xb2' b'\xb2' b'\xb1' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'3' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'0' b'\xb2' b'\xb2' b'\xb1' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'3' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'0' b'\xb2' b'\xb2' b'\xb1' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'3' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'3' b'\xb2' b'.' b'\xb7' b'.' b'0' b'(' b'\xb2' b'3' b'6' b'.' b'9' b'\xaa' b'V' b'\xa9' b'\x8d' b'\n' b'5' b'\xb2' b'.' b'\xb7' b'.' b'0' b'(' b'\xb2' b'3' b'\xb8' b'.' b'\xb1' b'\xaa' b'V' b'\xa9' b'\x8d' b'\n' b'\xb7' b'\xb2' b'.' b'\xb7' b'.' b'0' b'(' b'\xb2' b'3' b'\xb7' b'.' b'\xb4' b'\xaa' b'V' b'\xa9' b'\x8d' b'\n' b'3' b'\xb1' b'.' b'\xb7' b'.' b'0' b'(' b'0' b'3' b'.' b'\xb4' b'\xb7' b'\xaa' b'A' b'\xa9' b'\x8d' b'\n' b'5' b'\xb1' b'.' b'\xb7' b'.' b'0' b'(' b'0' b'3' b'.' b'3' b'\xb1' b'\xaa' b'A' b'\xa9' b'\x8d' b'\n' b'\xb7' b'\xb1' b'.' b'\xb7' b'.' b'0' b'(' b'0' b'3' b'.' b'\xb4' b'3' b'\xaa' b'A' b'\xa9' b'\x8d' b'\n' b'9' b'\xb1' b'.' b'\xb7' b'.' b'0' b'(' b'0' b'0' b'.' b'3' b'3' b'\xaa' b'A' b'\xa9' b'\x8d' b'\n' b'\xb1' b'\xb4' b'.' b'\xb7' b'(' b'\xb4' b'9' b'.' b'9' b'\xb7' b'\xaa' b'H' b'\xfa' b'\xa9' b'\x8d' b'\n' b'3' b'\xb2' b'.' b'3' b'\xb2' b'.' b'0' b'(' b'0' b'0' b'0' b'\xb1' b'\xa9' b'(' b'0' b'0' b'-' b'0' b'\xb1' b'-' b'0' b'\xb1' b'\xa0' b'0' b'0' b':' b'0' b'9' b'\xa9' b'\x8d' b'\n' b'5' b'\xb2' b'.' b'3' b'\xb2' b'.' b'0' b'(' b'0' b'0' b'0' b'\xb1' b'\xa9' b'(' b'0' b'0' b'-' b'0' b'\xb1' b'-' b'0' b'\xb1' b'\xa0' b'0' b'0' b':' b'0' b'9' b'\xa9' b'\x8d' b'\n' b'\xb7' b'\xb2' b'.' b'3' b'\xb2' b'.' b'0' b'(' b'0' b'0' b'0' b'\xb1' b'\xa9' b'(' b'0' b'0' b'-' b'0' b'\xb1' b'-' b'0' b'\xb1' b'\xa0' b'0' b'0' b':' b'0' b'9' b'\xa9' b'\x8d' b'\n' b'3' b'\xb2' b'.' b'3' b'6' b'.' b'0' b'(' b'0' b'0' b'0' b'\xb1' b'\xa9' b'(' b'\xb2' b'0' b'-' b'\xb1' b'\xb2' b'-' b'3' b'0' b'\xa0' b'\xb1' b'6' b':' b'\xb2' b'\xb4' b'\xa9' b'\x8d' b'\n' b'5' b'\xb2' b'.' b'3' b'6' b'.' b'0' b'(' b'0' b'0' b'0' b'\xb1' b'\xa9' b'(' b'\xb2' b'0' b'-' b'\xb1' b'\xb2' b'-' b'3' b'0' b'\xa0' b'\xb1' b'6' b':' b'\xb2' b'\xb4' b'\xa9' b'\x8d' b'\n' b'\xb7' b'\xb2' b'.' b'3' b'6' b'.' b'0' b'(' b'0' b'0' b'0' b'\xb1' b'\xa9' b'(' b'\xb2' b'0' b'-' b'\xb1' b'\xb2' b'-' b'3' b'0' b'\xa0' b'\xb1' b'6' b':' b'\xb2' b'\xb4' b'\xa9' b'\x8d' b'\n' b'\xb8' b'\xb1' b'.' b'\xb7' b'.' b'0' b'(' b'\xa0' b'\xa0' b'\xa0' b'0' b'\xaa' b'D' b'e' b'\xe7' b'\xa9' b'\x8d' b'\n' b'\xb8' b'\xb1' b'.' b'\xb7' b'.' b'\xb1' b'(' b'\xa0' b'\xb1' b'\xb2' b'0' b'\xaa' b'D' b'e' b'\xe7' b'\xa9' b'\x8d' b'\n' b'\xb8' b'\xb1' b'.' b'\xb7' b'.' b'\xb2' b'(' b'\xa0' b'\xb2' b'\xb4' b'0' b'\xaa' b'D' b'e' b'\xe7' b'\xa9' b'\x8d' b'\n' b'\xb8' b'\xb1' b'.' b'\xb7' b'.' b'\xb4' b'(' b'\xa0' b'\xa0' b'\xb1' b'\xb4' b'\xaa' b'D' b'e' b'\xe7' b'\xa9' b'\x8d' b'\n' b'\xb8' b'\xb1' b'.' b'\xb7' b'.' b'5' b'(' b'\xa0' b'\xb1' b'\xb2' b'9' b'\xaa' b'D' b'e' b'\xe7' b'\xa9' b'\x8d' b'\n' b'\xb8' b'\xb1' b'.' b'\xb7' b'.' b'6' b'(' b'\xa0' b'\xb2' b'5' b'\xb4' b'\xaa' b'D' b'e' b'\xe7' b'\xa9' b'\x8d' b'\n' b'0' b'.' b'\xb2' b'.' b'\xb7' b'(' b'B' b'\xb2' b'\xb1' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb2' b'.' b'\xb7' b'(' b'0' b'0' b'-' b'0' b'0' b'-' b'0' b'0' b'\xa9' b'\x8d' b'\n' b'\xb1' b'3' b'.' b'\xb7' b'.' b'0' b'(' b'\xa0' b'0' b'.' b'9' b'\xb7' b'6' b'\xa9' b'\x8d' b'\n' b'\xb1' b'3' b'.' b'0' b'.' b'0' b'(' b'0' b'.' b'9' b'\xb7' b'6' b'\xa9' b'\x8d' b'\n' b'\xb1' b'3' b'.' b'3' b'.' b'\xb1' b'(' b'0' b'.' b'9' b'\xb7' b'5' b'\xa9' b'(' b'\xb2' b'\xb1' b'-' b'0' b'\xb1' b'-' b'0' b'\xb1' b'\xa0' b'0' b'\xb2' b':' b'\xb4' b'5' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'5' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'5' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'5' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'5' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xc3' b'.' b'\xb8' b'.' b'5' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'0' b'\xaa' b'\xed' b'i' b'\xee' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'5' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'5' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'5' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'5' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb1' b'.' b'\xb8' b'.' b'5' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'5' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'5' b'\xaa' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'5' b'\xa6' b'\xb1' b'\xb2' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'5' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'\xb2' b'.' b'\xb8' b'.' b'5' b'\xaa' b'0' b'0' b'(' b'0' b'0' b'0' b'0' b'.' b'0' b'0' b'0' b'0' b'\xaa' b'\xeb' b'\xd7' b'\xe8' b'\xa9' b'\x8d' b'\n' b'!' b'\x8d' b'\n' b'\x03' b':' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b'' b''
.......
TimeoutError: Read in TcpTransport timed out
I am using the default example to conect to the EMH - LZQJ-XC, as it is connectat over a D0 Serial USB port.
when using default example:
from iec62056_21.client import Iec6205621Client client = Iec6205621Client.with_serial_transport(port='COM8') client.connect() print(client.standard_readout())
where i changed the Port, it does not seem to connect at all.
do i have to set some parameters in the Client definition?
Thanks for any advices
I would like to read the data from the MT174 smart meter via the optical interface using the Weidmann 'IR Schreib/Lesekopf USB (Optokopf)', but I get an error message
#!/usr/bin/python3
from iec62056_21.client import Iec6205621Client
import logging
# set up logging so you get a bit nicer printout of what is happening.
logging.basicConfig(
level=logging.DEBUG,
format="%(asctime)s,%(msecs)d %(levelname)s: %(message)s",
datefmt="%H:%M:%S",
)
client = Iec6205621Client.with_serial_transport(port='/dev/ttyUSB0')
client.connect()
print(client.standard_readout())
Errormessage
09:53:52,112 INFO: Staring init sequence
09:53:52,112 INFO: Sending request message: RequestMessage(device_address='')
09:53:52,218 DEBUG: Sent b'/?!\r\n' over transport: SerialTransport
09:53:52,218 DEBUG: Resting for 0.25 seconds
09:53:52,893 DEBUG: Received b'/ISk5MT174-0001\r\n' over transport: SerialTransport
09:53:52,893 INFO: Received identification message: IdentificationMessage(identification='T174-0001', manufacturer='ISk', switchover_baudrate_char='5')
09:53:52,893 INFO: Sending AckOptionsSelect message: AckOptionSelectMessage(baud_char='5', mode_char='0')
09:53:52,998 DEBUG: Sent b'\x06050\r\n' over transport: SerialTransport
09:53:52,998 DEBUG: Resting for 0.025 seconds
09:53:53,524 INFO: Reading standard readout from device.
Traceback (most recent call last):
File "test2.py", line 17, in <module>
print(client.standard_readout())
File "/usr/local/lib/python3.8/dist-packages/iec62056_21/client.py", line 183, in standard_readout
response = self.read_response()
File "/usr/local/lib/python3.8/dist-packages/iec62056_21/client.py", line 296, in read_response
data = self.transport.read()
File "/usr/local/lib/python3.8/dist-packages/iec62056_21/transports.py", line 58, in read
raise TimeoutError(f"Read in {self.__class__.__name__} timed out")
TimeoutError: Read in SerialTransport timed out
When I query the interface with the following script, I get data.
#!/usr/bin/env python3
import serial
import time
SERIALPORT = "/dev/ttyUSB0"
BAUDRATE = 300
ser = serial.Serial(SERIALPORT, BAUDRATE, serial.SEVENBITS, serial.PARITY_EVEN)
ser.write(b"\x2F\x3F\x21\x0D\x0A")
time.sleep(0.5)
numberOfLine = 0
while True:
response = ser.readline()
print(response)
numberOfLine = numberOfLine + 1
if (numberOfLine >= 11):
break
ser.close()
Results:
b'ISk5MT174-0001\r\n'
b'\x020.9.1(150802)\r\n'
b'0.9.2(1200702)\r\n'
b'0.0.0(00339188)\r\n'
b'0.2.0(1.03)\r\n'
b'C.1.6(FDF5)\r\n'
b'1.8.1(0011400.587*kWh)\r\n'
b'1.8.2(0023806.592*kWh)\r\n'
b'2.8.1(0015608.024*kWh)\r\n'
b'2.8.2(0000900.569*kWh)\r\n'
b'F.F.0(0000000)\r\n'
What can I do so that I can get all the data?
The example given in the README is not correct. It is a mix of LIS-200 and standard IEC6256-21 code.
the code should reflect the simplest use-case : the standard readout.
Use attrs for all messages classes to make simpler to handle.
Hi,
I changed:
def to_representation(self): return f"{constants.ACK}2{self.baud_char}{self.mode_char}{constants.LINE_END}"
and the meter responds with standard readout.
16:14:30,929 DEBUG: Connecting to ('192.168.200.222', 2222) 16:14:30,931 INFO: Staring init sequence 16:14:30,931 INFO: Sending request message: RequestMessage(device_address='') 16:14:30,931 DEBUG: Sent b'/?!\r\n' over transport: TcpTransport 16:14:30,931 DEBUG: Resting for 0.25 seconds 16:14:31,182 DEBUG: Received b'/APA5\\2NORAX30\r\n' over transport: TcpTransport 16:14:31,182 INFO: Received identification message: IdentificationMessage(identification='2NORAX30', manufacturer='APA', switchover_baudrate_char='5') 16:14:31,182 INFO: Sending AckOptionsSelect message: AckOptionSelectMessage(baud_char='5', mode_char='6') 16:14:31,182 DEBUG: Sent b'\x06256\r\n' over transport: TcpTransport 16:14:31,182 DEBUG: Resting for 0.25 seconds 16:14:31,433 INFO: Reading standard readout from device. 16:14:33,220 DEBUG: Received b'\x020-0:C.1.0(72432595)\r
party is set to 7E1. The converter is set manually. If i switch to 8N1 the meter stops responding.
Using manufacturers software I can read via IEC mode C additional registers. Registers hold energy consumption every 15 and 60 minutes but they are protected with the password. I dont know how to read them with Your library.
UPDATE
I think that support for LOAD_PROFILE is missing
Hi,
im trying to connect to meter but i get timeout error. Here is my code:
`from iec62056_21.client import Iec6205621Client
import logging
logging.basicConfig(
level=logging.DEBUG,
format="%(asctime)s,%(msecs)d %(levelname)s: %(message)s",
datefmt="%H:%M:%S",
)
client = Iec6205621Client.with_tcp_transport(address=('xx.xx.xx.xx', 2222), device_address='523.1028490',password='00000000')
client.connect()
data = client.standard_readout()
`
22:00:43,454 INFO: Staring init sequence
22:00:43,454 INFO: Sending request message: RequestMessage(device_address='523.1028490')
22:00:43,455 DEBUG: Sent b'/?523.1028490!\r\n' over transport: TcpTransport
22:00:43,455 DEBUG: Resting for 0.25 seconds
Traceback (most recent call last):
File "/home/pi/.local/lib/python3.7/site-packages/iec62056_21/transports.py", line 339, in _recv
b = self.socket.recv(chars)
socket.timeout: timed out
In my opinion there is a problem in timeout or something. I'm able to connect to the meter with native manufacturer app. So connection options are correct but it takes few seconds to estabilish connection. Connection to the meter is realized via transparent gsm to rs485 gateway.
Greeting dawid
Hello,
I am trying to connect with my energy meter using your library. When I use standard_redout() I get all the information on one line and they are correct.
Can you tell me how can I read only one address for example '1.8.0' , which function to use and how to write the address in it.
I can't find any information in documentation about that and "Example usage:"
from iec62056_21.client import Iec6205621Client
client = Iec6205621Client.with_tcp_transport(address=('192.168.0.1', 8000), device_address='12345678', password='00000000')
password_challange = client.access_programming_mode()
client.send_password('00000000') # Common standard password
data_answer = client.read_value('1.8.0')
is incorrect because I can't import data_answer =client.read_value('1.8.0').
I can use only read_single_value, read_response, read_identification.
Hi
i cant read single value from meter.
Function read_standard_readout works but i get huge amount of data.
i would like to get only one value eq. (1.8.0)
my code:
`#!/usr/bin/python3
from iec62056_21.client import Iec6205621Client
import logging
logging.basicConfig(
level=logging.DEBUG,
format="%(asctime)s,%(msecs)d %(levelname)s: %(message)s",
datefmt="%H:%M:%S",
)
client = Iec6205621Client.with_tcp_transport(address=('192.168.200.123', 2222), device_address='035 0000101', password='00000000')
client.connect()
password_challange = client.access_programming_mode()
client.send_password('00000000') # Common standard password
data_answer = client.read_value('1.8.0')
print(data_answer)`
output:
20:30:10,157 DEBUG: Connecting to ('192.168.200.123', 2222) 20:30:10,157 INFO: Staring init sequence 20:30:10,157 INFO: Sending request message: RequestMessage(device_address='035 0000101') 20:30:10,158 DEBUG: Sent b'/?035 0000101!\r\n' over transport: TcpTransport 20:30:10,158 DEBUG: Resting for 0.25 seconds 20:30:11,294 DEBUG: Received b'/POZ4LP1-VP02.04*\r\n' over transport: TcpTransport 20:30:11,294 INFO: Received identification message: IdentificationMessage(identification='P1-VP02.04*', manufacturer='POZ', switchover_baudrate_char='4') 20:30:11,295 INFO: Sending AckOptionsSelect message: AckOptionSelectMessage(baud_char='4', mode_char='1') 20:30:11,295 DEBUG: Sent b'\x06041\r\n' over transport: TcpTransport 20:30:11,295 DEBUG: Resting for 0.25 seconds 20:30:11,546 DEBUG: Received b'\x01P0\x02(0000)\x03
' over transport: TcpTransport
Traceback (most recent call last):
File "./iec_net.py", line 26, in
client.send_password('00000000') # Common standard password
File "/home/pi/.local/lib/python3.7/site-packages/iec62056_21/client.py", line 193, in send_password
data_set = messages.DataSet(value=_pw)
TypeError: init() missing 1 required positional argument: 'address'
`
Pyserial is not listed in requirments and gives module not found error on using after install.
Attr is not listed
After checking some errors reported by users, #4 I found that it is not possible to enter programming mode on an EMH meter.
A quick look suggests it is a combined error of the ASCII representation of a command and that we are not preforming a baudrate switch that the meter proposes. (Or telling the meter that we want to stay at our current baudrate.)
The baudrate issue is only contained to the serial transport as it doesn't have effect on the TCP transport. But the client still needs to call the switch for both of the transport to work.
Hello,
I am trying to implement this code but every time I try I am having 'Socket Timeout' warning.
The meter is Kohler AEL.TF.19 which is using IEC62056-21 protocol to communicate. I am sure that the both the meter and the modem are running perfectly since when I tried it with HW-Group's Hercules Software it connects and gets the data.
If you can help me about the process I'll be glad.
from iec62056_21.client import Iec6205621Client client = Iec6205621Client.with_tcp_transport(address=('5.26.220.136', 502), dev$ password_challange = client.access_programming_mode() client.send_password('00000000') # Common standard password data_answer = client.read_value('1.8.0')
Requesting support for Kamstrup Omnipower HAN-module and Aidon AMI system smart meters with "HAN-NVE" RJ45 interface.
"HAN-NVE" has a physical RJ45 port which in Sweden and Scandinavia is referred to as the "Norwegian RJ45 HAN-port standard".
https://hanporten.se/norska/porten/
https://hanporten.se/norska/protokollet/
https://hanporten.se/norska/kretsschema/
Google search says that they at least sell an Kamstrup HAN-module with "HAN-NVE" RJ45 HAN interface with part number 6840004 which according to its specifications listed in the data sheet it looks like the reader needs to comply with MBUS EN-13757-2 standard as per recommendation from NVE (Norwegian Water Resources and Energy Directorate) for Norway, a.k.a. AMS+HAN version 2.0 or IEC 62056-7-5, annex D ”MBUS” slave, e.g. an IEC 62056-21 protocol mode B client.
https://www.nek.no/wp-content/uploads/2018/10/Kamstrup-HAN-NVE-interface-description_rev_3_1.pdf
https://www.nek.no/wp-content/uploads/2017/10/AMS-HAN-personvernnotat-h%C3%B8ringsversjon.pdf
https://byggebolig.no/imageoriginals/88b3d1774ecb41e6a3fe067ae9e6a893.pdf
Google also says that Aidon AMI system smart meters use the same type of HAN-NVE HAN with RJ45 port with M-Bus interface:
There looks to be some guides for parsing the protocol and getting the data through some kind of M-Bus converter here:
https://www.kode24.no/guider/smart-meter-part-1-getting-the-meter-data/71287300
https://xipher.dk/posts/2020-05-17-using-esp8266-to-monitor-kamstrup-omnipower/
https://github.com/Claustn/esp8266-kamstrup-mqtt
https://github.com/roarfred/AmsToMqttBridge/blob/master/Samples/Kaifa/readme.md
https://github.com/roarfred/AmsToMqttBridge/blob/master/Samples/Kamstrup/obisdata.md
https://hanporten.se/norska/protokollet/
"The meter acts as Mbus master pushing data. To read the information, a circuit for Mbus' slave is needed."
"They are following the DLMS (Device Language Message Specification) protocol and are sent inside HDLC frames and contains OBIS (Object Identification System) codes that describe the electricity usage. Everything is part of IEC 62056 which is a set of standards for electricity metering data exchange."
How we can reopen serial port? may be need only setbaudrate?
Hi how can i read 1.8.0 adress? i cant see on examples
Hello!
I installed the library with pip
, but this source code is different.
For example the method connect
of SerialTransport
class in the lib no has baudrate param.
It posible that not is update?.
Thank you.
Hi,
I am trying to read my Smart Meter using this libraray.
I am using a USB to IR adapter and I am trying to read it via the d0 interface.
I made a fresh install on a raspberry pi 4 with raspian buster lite and I continue to get the above failure message. Do you have any ideas on how to resolve the issue ?
It would be great, if anyone coulde help.
Thank you
Marc
Actual code:
from iec62056_21.client import Iec6205621Client
client = Iec6205621Client.with_serial_transport(port='/dev/ttyUSB0')
password_challange = client.access_programming_mode()
client.send_password('00000000') # Common standard password
data_answer = client.read_value('1.8.0')
print("Result:")
print(data_answer)
Full Error message:
Traceback (most recent call last):
File "reader.py", line 5, in
password_challange = client.access_programming_mode()
File "/home/pi/.local/lib/python3.7/site-packages/iec62056_21/client.py", line 164, in access_programming_mode
self.startup()
File "/home/pi/.local/lib/python3.7/site-packages/iec62056_21/client.py", line 143, in startup
self.send_init_request()
File "/home/pi/.local/lib/python3.7/site-packages/iec62056_21/client.py", line 239, in send_init_request
self.transport.send(request.to_bytes())
File "/home/pi/.local/lib/python3.7/site-packages/iec62056_21/transports.py", line 174, in send
self._send(data)
File "/home/pi/.local/lib/python3.7/site-packages/iec62056_21/transports.py", line 256, in _send
self.port.write(data)
AttributeError: 'NoneType' object has no attribute 'write'
PS: During the install I was only able to install the libraray using pip3 instead of pip.
Usually there is no need for an address when initiating communication over the Optical port of a meter, since it is the only meter available.
But the serial transport can also be used för RS485 which allows for multiple meters to be connected to the loop.
So we need support for sending the address over serial transport too. Some manufactures might also enforce and address on the optical port.
Issue raised from discussion in #4
When trying to solve some user issues: #4 I found (after some other fixes #7 ) that my test EMH meter is responding with only an ACK on a read command (R1). As I read the standard read commands should be answered directly with the data.
If I wait i get a BREAK message from the meter so it seems that the meter expects me to send more data in the read-command. But it is not a partial blocks command (R3/R4) so it seems wrong.
I have check with the manufacturers documentation.
I tried to read the landis + gyr ZM120 and had some issues (on osx)
With the code in the repository, no readout is possible. The read timouts.
But if i remove the code to switch the baud rate, by commenting out self.transport.switch_baudrate(self.switchover_baudrate)
, everything works as expected.
should i prepare a pr with a flag for the client or transport to disable the baud rate switch ?
attached transcript without the actual data of my readings
INFO:iec62056_21.client:Staring init sequence
INFO:iec62056_21.client:Sending request message: RequestMessage(device_address='')
DEBUG:iec62056_21.transports:Sent b'/?!\r\n' over transport: SerialTransport
DEBUG:iec62056_21.client:Resting for 0.25 seconds
DEBUG:iec62056_21.transports:Received b'/LGZ4\\2ZMD120APt.G03\r\n' over transport: SerialTransport
INFO:iec62056_21.client:Received identification message: IdentificationMessage(identification='2ZMD120APt.G03', manufacturer='LGZ', switchover_baudrate_char='4')
INFO:iec62056_21.client:Sending AckOptionsSelect message: AckOptionSelectMessage(baud_char='4', mode_char='0')
DEBUG:iec62056_21.transports:Sent b'\x06040\r\n' over transport: SerialTransport
DEBUG:iec62056_21.client:Resting for 0.25 seconds
INFO:iec62056_21.client:Reading standard readout from device.
def rest(self, duration=None):
"""
The protocol needs some timeouts between reads and writes to enable the device
to properly parse a message and return the result.
"""
_duration = duration or (self.reaction_time * 1.25)
logger.debug(f"Resting for {_duration} seconds")
time.sleep(_duration)
For self.use_short_reaction_time = True dont work. At first need decide time of writing message:
def time_write(self, msg):
"""
return need time of write
"""
return (1 / self.port.get_settings()['baudrate'] * len(msg))
#or return (1 / self._current_baudrate * len(msg)*10)
where msg is the ack_message.to_bytes() or 6
After self.rest(self.reaction_time +self.transport.time_write(ack_message.to_bytes()))
or
I have atask to implement the client server model using the protocol for IoT. my server and client file were good when i check in the teriminal of my virtual machine. The packet traffic acks and syns are good too. But after creating docker images for my client and server and running them in a mininet topology with two switches and a controller, My client side connection establishment leaves an error 111.
But when i run in m teriminal the data packets were being transferred good.
Here is how it shows up:
Traceback (most recent call last):
client-container_1 | File "/tmp/./Client.py", line 83, in
client-container_1 | Run_client()
client-container_1 | File "/tmp/./Client.py", line 44, in Run_client
client-container_1 | client.connect()
client-container_1 | File "/env/lib/python3.9/site-packages/iec62056_21/client.py", line 126, in connect
client-container_1 | self.transport.connect()
client-container_1 | File "/env/lib/python3.9/site-packages/iec62056_21/transports.py", line 315, in connect
client-container_1 | self.socket.connect(self.address)
client-container_1 | ConnectionRefusedError: [Errno 111] Connection refused
Any lead will be very help full. Thanks in advance
Hi
I want to read a single value from my smart meter,
I did the code for basic server.py and client,py, I need to use this iec62056-21 for local data exchange.
from iec62056_21.client import Iec6205621Client
client = Iec6205621Client.with_tcp_transport(address=('192.168.0.1', 8000), device_address='12345678', password='00000000')
password_challange = client.access_programming_mode()
client.send_password('00000000') # Common standard password
data_answer = client.read_value('1.8.0')
I'm not getting any lead to assign this protocol to my client.py file.
*
*
*
MY SERVER.PY FILE
import socket
SMGW = socket.socket(socket.AF_INET, socket.SOCK_STREAM) #socket created
""" socket.AF_INET corresponds to the internet address family for IPv4
and socket.SOCK_STREAM is the socket type for TCP i.e connection oriented. """
print("socket created")
host = 'localhost'
port = 9999
address = (host, port)
SMGW.bind(address)
SMGW.listen(5) #waiting for connections
print("waiting for connections")
while True:
SM, addr = SMGW.accept()
name = SM.recv(1024)
name.decode('utf-8')
print("connected with", addr, name)
SM.send(bytes("welcome to smart meter gateway"))
data_exchange = SM.recv(1024)
print(data_exchange.decode('utf-8'))
SM.close
print("SM disconnected")
MY CLIENT.PY FILE
import socket
SM = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
""" socket.AF_INET corresponds to the internet address family for IPv4
and socket.SOCK_STREAM is the socket type for TCP i.e connection oriented. """
print("socket created")
host = 'localhost'
port = 9999
SM.connect((host, port))
SM.send(bytes('smart meter'))
data = SM.recv(1024)
print(data.decode('utf-8'))
SM.send(bytes("This is smart meter"))
Any lead's will be helpful !!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.