better code structure in `prober.py`