def format_cl_args(in_csv, out_csv, verbose=False, **kwargs):
    """
    Format a set of arguments for a CL call to *gs_dp_diff*
    or *gs_dp_diff_defoc*.

    args
    ----
        in_csv      :   str, path to a CSV with the summed
                        squared jumps and the number of jumps
                        for each trajectory
        out_csv     :   str, path to the output CSV with 
                        the posterior model
        verbose     :   str, tell the Gibbs samplers to 
                        be verbose
        kwargs      :   keyword arguments passed to the Gibbs
                        samplers

    returns
    -------
        str, a CL call to *gs_dp_diff* or *gs_dp_diff_defoc*

    """
    keymap = {
        "alpha": "a",
        "frame_interval": "t",
        "m": "m",
        "metropolis_sigma": "s",
        "B": "z",
        "n_iter": "n",
        "burnin": "b",
        "min_log_D": "c",
        "max_log_D": "d",
        "seed": "e",
        "max_occ_weight": "x",
        "loc_error": "l",
        "bias_csv": "i"
    }
    executable = "gsdpdiffdefoc" if kwargs.get( \
        "use_defoc_likelihoods", False) else "gsdpdiff"
    optstr = " ".join(["-{} {}".format(str(keymap.get(k)), str(kwargs.get(k))) \
        for k in kwargs.keys() if k in keymap.keys()])
    if verbose:
        return "{} {} -v {} {}".format(executable, optstr, in_csv, out_csv)
    else:
        return "{} {} {} {}".format(executable, optstr, in_csv, out_csv)