def METHOD_NAME(data_fp):
    """Obtain the state from a .asreview file.
    Parameters
    ----------
    data_fp: str
        Path to .asreview file.
    Returns
    -------
    BaseState:
        The same type of state file as in the .asreview file, which at the moment
        is JSONState.
    """
    if not Path(data_fp).suffix == ".asreview":
        raise ValueError(f"file {data_fp} does not end with '.asreview'.")
    # Name of the state file in the .asreview file.
    state_fp_in_zip = "result.json"
    with zipfile.ZipFile(data_fp, "r") as zipObj:
        tmpdir = tempfile.TemporaryDirectory()
        zipObj.extract(state_fp_in_zip, tmpdir.name)
        fp = Path(tmpdir.name, state_fp_in_zip)
        state = _get_state_class(fp)(state_fp=fp, read_only=True)
        return state