def parse_kal_scan(kal_out):
    """Parse kal band scan output."""
    kal_data = []
    scan_band = determine_scan_band(kal_out)
    scan_gain = determine_scan_gain(kal_out)
    scan_device = determine_device(kal_out)
    sample_rate = determine_sample_rate(kal_out)
    chan_detect_threshold = determine_chan_detect_threshold(kal_out)
    for line in kal_out.splitlines():
        if "chan:" in line:
            p_line = line.split(' ')
            chan = str(p_line[1])
            modifier = str(p_line[3])
            power = str(p_line[5])
            mod_raw = str(p_line[4]).replace(')\tpower:', '')
            base_raw = str((p_line[2]).replace('(', ''))
            mod_freq = herz_me(mod_raw)
            base_freq = herz_me(base_raw)
            final_freq = to_eng(determine_final_freq(base_freq, modifier,
                                                     mod_freq))
            kal_run = {"channel": chan,
                       "base_freq": base_freq,
                       "mod_freq": mod_freq,
                       "modifier": modifier,
                       "final_freq": final_freq,
                       "power": power,
                       "band": scan_band,
                       "gain": scan_gain,
                       "device": scan_device,
                       "sample_rate": sample_rate,
                       "channel_detect_threshold": chan_detect_threshold}
            kal_data.append(kal_run.copy())
    return kal_data
Parse kal band scan output.