def crf_preprocess_candidates(candidates):
    """Receive annotated candidates and return features and labels list"""
    features = []
    labels = []
    for candidate in candidates:
        candidate_features = []
        candidate_labels = []
        for token_features, label in candidate:
            candidate_features.append(token_features)
            candidate_labels.append(label)
        features.append(candidate_features)
        labels.append(candidate_labels)
    return features, labels