diff --git a/maca_trans_parser/src/feat_fct.c b/maca_trans_parser/src/feat_fct.c
index f8277fb468cc2e11408c6baf0e5ac5a4139372dc..80c7836bc10859d0a0c15d37d23743e9262413f0 100644
--- a/maca_trans_parser/src/feat_fct.c
+++ b/maca_trans_parser/src/feat_fct.c
@@ -14,6 +14,7 @@
 int s0g(void *c) {return (word_get_gov(stack_s0(config_get_stack((config *) c))) == WORD_INVALID_GOV) ? 0 : 1;}
 int s0sf(void *c) {return word_get_label(stack_s0(config_get_stack((config *) c)));}
 
+int s0seg(void *c) {return word_get_sent_seg(stack_s0(config_get_stack((config *) c)));}
 int s0f(void *c) {return word_get_form(stack_s0(config_get_stack((config *) c)));}
 int s0l(void *c) {return word_get_lemma(stack_s0(config_get_stack((config *) c)));}
 int s0c(void *c) {return word_get_cpos(stack_s0(config_get_stack((config *) c)));}
@@ -856,6 +857,7 @@ feat_lib *feat_lib_build(void)
   feat_lib_add(fl, FEAT_TYPE_LABEL,  (char *)"s0sf", s0sf);
   feat_lib_add(fl, FEAT_TYPE_INT,    (char *)"s0g", s0g);
 
+  feat_lib_add(fl, FEAT_TYPE_INT,  (char *)"s0seg", s0seg);
   feat_lib_add(fl, FEAT_TYPE_FORM,  (char *)"s0f", s0f);
   feat_lib_add(fl, FEAT_TYPE_LEMMA, (char *)"s0l", s0l);
   feat_lib_add(fl, FEAT_TYPE_CPOS,  (char *)"s0c", s0c);
diff --git a/maca_trans_parser/src/maca_tm_decoder.c b/maca_trans_parser/src/maca_tm_decoder.c
index 4ed0c12e79a75d8636df0bc95249436da8a70adf..4c9458ea1575d731e95ebdeba650ab0847a9192e 100644
--- a/maca_trans_parser/src/maca_tm_decoder.c
+++ b/maca_trans_parser/src/maca_tm_decoder.c
@@ -253,9 +253,9 @@ void maca_tm_decoder(context *ctx)
     }
     
     /* horrible trick : when at the end of buffer, skip tagger mode stay in parser mode */
-    if((c->current_state_nb == tagger_state_nb) && word_buffer_end(config_get_buffer(c)))
+    if((c->current_state_nb == tagger_state_nb) && word_buffer_end(config_get_buffer(c))){
       c->current_state_nb = parser_state_nb;
-
+    }
     current_state = ctx->machine->state_array[c->current_state_nb]; 
     classif = current_state->classif;
     mvt_code = classifier_argmax(classif, c);
diff --git a/maca_trans_parser/src/movements.c b/maca_trans_parser/src/movements.c
index 9a37cdcd267a45ef12956ae9eca1d33e49f8546d..585818cc7c5d354ffbc26c405db103a9b7e65225 100644
--- a/maca_trans_parser/src/movements.c
+++ b/maca_trans_parser/src/movements.c
@@ -205,7 +205,7 @@ int movement_root(config *c, int root_code)
   s0->is_root = 1;
 
   /*---- ajout 19/12/17 ----------*/
-  word_set_sent_seg(word_buffer_get_word_n(config_get_buffer(c), s0->rspan), 1); 
+  //  word_set_sent_seg(word_buffer_get_word_n(config_get_buffer(c), s0->rspan), 1); 
   /*-----------------------------*/
   stack_pop(config_get_stack(c));
 
diff --git a/maca_trans_parser/src/simple_decoder_tagparser_arc_eager.c b/maca_trans_parser/src/simple_decoder_tagparser_arc_eager.c
index 611173c8e5dda1c5764e9a7cb431ccf826ca6998..63ed94188b78537b9d76e6865bbd8908840ad988 100644
--- a/maca_trans_parser/src/simple_decoder_tagparser_arc_eager.c
+++ b/maca_trans_parser/src/simple_decoder_tagparser_arc_eager.c
@@ -121,9 +121,9 @@ void simple_decoder_tagparser_arc_eager(context *ctx)
       add_signature_to_words_in_word_buffer(c->bf, ctx->f2p); 
 
     /* horrible trick : when at the end of buffer, skip tagger mode stay in parser mode */
-    if((c->current_state_nb == 0) && word_buffer_end(config_get_buffer(c)))
+    if((c->current_state_nb == 0) && word_buffer_end(config_get_buffer(c))){
       c->current_state_nb = 1;
-    
+    }
     classif = ctx->machine->state_array[c->current_state_nb]->classif;
     mvt_code = classifier_argmax(classif, c);
     if(ctx->debug_mode){