//HyperGraph hg_original_1best = hg_full.get_1best_tree_hg();//debug #### find 1-best based on original model (no corrective)
//####feature extraction using the current model, get g_tbl_feats_model
if(usingCRF){
DefaultInsideOutside insideOutsider = new FeatureBasedInsideOutside(optimizer.getSumModel(), featTemplates, restrictedFeatureSet);//do inference using current model
insideOutsider.runInsideOutside(fullHG, 0, 1,1);
//inside_outside.sanity_check_hg(hg_full);
FeatureExtractionHG.featureExtractionOnHG(fullHG, insideOutsider, modelFeatsTbl, restrictedFeatureSet, featTemplates);
insideOutsider.clearState();
//sent_rerank_1best_debug = RescorerHG.rerank_hg_and_get_1best_string(hg_full, p_optimizer.get_sum_model(), g_baseline_scale, g_restricted_feature_set, l_feat_templates_nobaseline, false);
}else{//perceptron
HyperGraph rerankedOnebest = reranker.rerankHGAndGet1best(fullHG, optimizer.getSumModel(), restrictedFeatureSet, featTemplatesNobaseline, false);
FeatureExtractionHG.featureExtractionOnHG(rerankedOnebest, modelFeatsTbl, restrictedFeatureSet, featTemplates);
//sent_rerank_1best_debug = HyperGraph.extract_best_string(hg_reranked_1best.goal_item);