def METHOD_NAME(parfile):
    if parfile not in _cached_toas:
        model = get_model_cached(parfile)
        if hasattr(model, "T0") and model.T0.value is not None:
            start = model.T0.value
        elif hasattr(model, "TASC") and model.TASC.value is not None:
            start = model.TASC.value
        elif hasattr(model, "PEPOCH") and model.PEPOCH.value is not None:
            start = model.PEPOCH.value
        else:
            start = 57000
        with quiet():
            toas1 = pint.simulation.make_fake_toas_uniform(
                model=model,
                startMJD=start,
                endMJD=start + 100,
                ntoas=5,
                freq=1400 * u.MHz,
                obs="gbt",
            )
            toas2 = pint.simulation.make_fake_toas_uniform(
                model=model,
                startMJD=start + 1,
                endMJD=start + 102,
                ntoas=5,
                freq=2000 * u.MHz,
                obs="ao",
            )
            toas = pint.toa.merge_TOAs([toas1, toas2])
            phase = model.phase(toas, abs_phase=False)
        _cached_toas[parfile] = model, toas, phase
    return copy.deepcopy(_cached_toas[parfile])