from .opf_utils import * class OPFParametersParser: @staticmethod def parse(opf_id: int, *args) -> list: if opf_id in [1]: return parse_link_training(args[3]) if opf_id in [2]: return parse_video_mode_2(args[3]) if opf_id in [3, 4, 5, 7, 8, 11, 12, 13, 14, 15, 16, 17, 101, 102, 104, 105, 106, 121, 122, 123, 145, 150, 152, 161]: return parse_message(args[1]) if opf_id in [6]: return parse_video_mode_6(args[1], args[3]) if opf_id in [9]: return parse_video_mode_9(args[3], args[1]) if opf_id in [10]: return parse_opf_10(args[3]) if opf_id in [18]: return parse_video_mode_18(args[3]) if opf_id in [19]: return parse_video_mode_19(args[3]) if opf_id in [20]: return parse_video_mode_20(args[3], args[1]) if opf_id in [21]: return parse_opf_21(args[3]) if opf_id in [103]: return parse_video_mode_103(args[3]) if opf_id in [120]: return parse_video_mode_120(args[3]) if opf_id in [140]: return parse_video_mode_140(args[3]) if opf_id in [141]: return parse_video_mode_141(args[3]) if opf_id in [142]: return [args[1]] if opf_id in [143]: return parse_video_mode_143(args[3]) if opf_id in [144]: return parse_video_mode_144(args[3]) if opf_id in [151]: return parse_video_mode_103(args[3]) else: raise ValueError(f"Received OPF request with unknown code: {opf_id}")