original_string: private function step1()
      {
          // heden
          //      replace with heid if in R1
          if ( ($position = $this->search(array('heden'))) !== false) {
              if ($this->inR1($position)) {
                  $this->word = preg_replace('#(heden)$#u', 'heid', $this->word);
              }
              return true;
          }
  
          // en   ene
          //      delete if in R1 and preceded by a valid en-ending, and then undouble the ending
          if ( ($position = $this->search(array('ene', 'en'))) !== false) {
              if ($this->inR1($position)) {
                  $word = Utf8::substr($this->word, 0, $position);
                  if ($this->hasValidEnEnding($word)) {
                      $this->word = $word;
                      $this->unDoubling();
                  }
              }
              return true;
          }
  
          // s   se
          //      delete if in R1 and preceded by a valid s-ending
          if ( ($position = $this->search(array('se', 's'))) !== false) {
              if ($this->inR1($position)) {
                  $word = Utf8::substr($this->word, 0, $position);
                  if ($this->hasValidSEnding($word)) {
                      $this->word = $word;
                  }
              }
              return true;
          }
  
          return false;
      }
code: private function step1()
      {
          // heden
          //      replace with heid if in R1
          if ( ($position = $this->search(array('heden'))) !== false) {
              if ($this->inR1($position)) {
                  $this->word = preg_replace('#(heden)$#u', 'heid', $this->word);
              }
              return true;
          }
  
          // en   ene
          //      delete if in R1 and preceded by a valid en-ending, and then undouble the ending
          if ( ($position = $this->search(array('ene', 'en'))) !== false) {
              if ($this->inR1($position)) {
                  $word = Utf8::substr($this->word, 0, $position);
                  if ($this->hasValidEnEnding($word)) {
                      $this->word = $word;
                      $this->unDoubling();
                  }
              }
              return true;
          }
  
          // s   se
          //      delete if in R1 and preceded by a valid s-ending
          if ( ($position = $this->search(array('se', 's'))) !== false) {
              if ($this->inR1($position)) {
                  $word = Utf8::substr($this->word, 0, $position);
                  if ($this->hasValidSEnding($word)) {
                      $this->word = $word;
                  }
              }
              return true;
          }
  
          return false;
      }
code_tokens: private function step1 ( ) { // heden //      replace with heid if in R1 if ( ( $ position = $ this -> search ( array ( 'heden' ) ) ) !== false ) { if ( $ this -> inR1 ( $ position ) ) { $ this -> word = preg_replace ( '#(heden)$#u' , 'heid' , $ this -> word ) ; } return true ; } // en   ene //      delete if in R1 and preceded by a valid en-ending, and then undouble the ending if ( ( $ position = $ this -> search ( array ( 'ene' , 'en' ) ) ) !== false ) { if ( $ this -> inR1 ( $ position ) ) { $ word = Utf8 :: substr ( $ this -> word , 0 , $ position ) ; if ( $ this -> hasValidEnEnding ( $ word ) ) { $ this -> word = $ word ; $ this -> unDoubling ( ) ; } } return true ; } // s   se //      delete if in R1 and preceded by a valid s-ending if ( ( $ position = $ this -> search ( array ( 'se' , 's' ) ) ) !== false ) { if ( $ this -> inR1 ( $ position ) ) { $ word = Utf8 :: substr ( $ this -> word , 0 , $ position ) ; if ( $ this -> hasValidSEnding ( $ word ) ) { $ this -> word = $ word ; } } return true ; } return false ; }
docstring: Step 1
  Search for the longest among the following suffixes, and perform the action indicated
docstring_tokens: Step 1 Search for the longest among the following suffixes and perform the action indicated