#!/usr/bin/env python3
"""
dump_fr.py
==========
Dumps enumerated fields of FR.dat (Frequency) rows for given call signs,
to check whether it contains antenna references, location numbers, or
other path-relevant data.

Usage:
    python dump_fr.py WQVT999 WQVT998
"""
import io
import sys
import zipfile

targets = set(sys.argv[1:]) or {"WQVT999", "WQVT998"}

with zipfile.ZipFile("l_micro.zip") as z:
    with z.open("FR.dat") as raw:
        shown = 0
        for line in io.TextIOWrapper(raw, encoding="latin-1"):
            fields = line.rstrip("\n").split("|")
            cs = fields[4].strip() if len(fields) > 4 else ""
            if cs in targets:
                print(f"FR row for {cs} ({len(fields)} fields):")
                for idx, val in enumerate(fields, 1):
                    if val.strip():
                        print(f"    [{idx}] {val!r}")
                print()
                shown += 1
                if shown >= 10:
                    break
