import json, sys
path = "/var/www/html/peta/storage/app/propertylab-catalogue-match/review/r2_batch_02_in.jsonl"
start = int(sys.argv[1]) if len(sys.argv) > 1 else 0
end = int(sys.argv[2]) if len(sys.argv) > 2 else 10**9
with open(path) as f:
    for i, line in enumerate(f):
        if i < start or i >= end:
            continue
        c = json.loads(line)
        r = c["realtycheck"]
        print(f"#{i} {c['case']} R: {r['name']} | {r['category']} | {r['state']} / {r['district']} / {r['mukim']} | prec={r['coord_precision']} | psf={r['psf']} | med={r['median_price_rm']}")
        for cand in c["catalogue_candidates"]:
            extra = ""
            if cand.get("same_listing_also_as"):
                extra = " ALSO=" + "; ".join(cand["same_listing_also_as"])
            print(f"   k{cand['k']}: {cand['name']} | {cand['area']}, {cand['state']} | {cand['type']} | d={cand['dist_m']} | psf={cand['psf_median']} | med={cand['price_median']} | cy={cand['completion_year']} | {cand['sale_status']} | {cand['tenure']}{extra}")
        # other keys
        other = set(c.keys()) - {"case","realtycheck","catalogue_candidates"}
        if other:
            print("   OTHER KEYS:", {k: c[k] for k in other})
