def METHOD_NAME(self, examples, features, mock_logits_expected_predictions):
    all_start_logits = []
    all_end_logits = []
    all_target_type_logits = []
    adjusted_start_end_index = {}
    features_itr = groupby(features, key=itemgetter('example_idx'))
    for example in examples:
        example_id = example['example_id']
        expected = mock_logits_expected_predictions['expected_predictions'][example_id]
        example_idx, example_features = next(features_itr)
        example_features = list(example_features)
        for feat_idx, feature in enumerate(example_features):
            offset_mapping = feature["offset_mapping"]
            if feat_idx == expected['passage_index']:
                for i, offset in enumerate(offset_mapping):
                    if offset != None:
                        adjusted_start_end_index[example_id] = (expected['start_index']+i,
                                                expected['end_index'] + i)
                        break
            start_logits = []
            end_logits = []
            start_scores_iter = iter(mock_logits_expected_predictions['start_scores'][example_idx][feat_idx])
            end_scores_iter = iter(mock_logits_expected_predictions['end_scores'][example_idx][feat_idx])
            for i, offset in enumerate(offset_mapping):
                if i == 0:
                    start_logits.append(mock_logits_expected_predictions['start_score_of_cls_token'])
                    end_logits.append(mock_logits_expected_predictions['end_score_of_cls_token'])
                elif offset == None:
                    start_logits.append(mock_logits_expected_predictions['score_none_token'])
                    end_logits.append(mock_logits_expected_predictions['score_none_token'])
                else:
                    start_logits.append(next(start_scores_iter))
                    end_logits.append(next(end_scores_iter))
            start_logits +=  [sys.float_info.min]*(128-len(start_logits))
            all_start_logits.append(np.array( start_logits))
            end_logits += [sys.float_info.min]*(128-len(end_logits))
            all_end_logits.append(np.array( end_logits))
            all_target_type_logits.append(mock_logits_expected_predictions['target_type_scores'][example_idx])
    return adjusted_start_end_index, ( np.array(all_start_logits), np.array(all_end_logits), np.array(all_target_type_logits) )