checks existance before removing. then tries to remove exisint paths

def remove_existing_fpaths(fpath_list, verbose=VERBOSE, quiet=QUIET,
                           strict=False, print_caller=PRINT_CALLER,
                           lbl='files'):
    """ checks existance before removing. then tries to remove exisint paths """
    import utool as ut
    if print_caller:
        print(util_dbg.get_caller_name(range(1, 4)) + ' called remove_existing_fpaths')
    fpath_list_ = ut.filter_Nones(fpath_list)
    exists_list = list(map(exists, fpath_list_))
    if verbose:
        n_total = len(fpath_list)
        n_valid = len(fpath_list_)
        n_exist = sum(exists_list)
        print('[util_path.remove_existing_fpaths] request delete of %d %s' % (
            n_total, lbl))
        if n_valid != n_total:
            print(('[util_path.remove_existing_fpaths] '
                   'trying to delete %d/%d non None %s ') %
                  (n_valid, n_total, lbl))
        print(('[util_path.remove_existing_fpaths] '
               ' %d/%d exist and need to be deleted')
              % (n_exist, n_valid))
    existing_fpath_list = ut.compress(fpath_list_, exists_list)
    return remove_fpaths(existing_fpath_list, verbose=verbose, quiet=quiet,
                            strict=strict, print_caller=False, lbl=lbl)