/**
  * {@inheritdoc}
  */
 public function render(Formula $formula, TokenCollectorInterface $tokenCollector)
 {
     foreach ($formula->getSubFormulas() as $key => $subformula) {
         $tokenCollector->set($key, $this->render($subformula, $tokenCollector));
     }
     $formulaString = $this->prepare($formula->formula);
     $formulaString = $this->replace($formulaString, $this->buildReplacements($tokenCollector->getGlobals()));
     if ($formula->isCalculable()) {
         $formulaString = (string) Evaluer::evaluate($formulaString);
     }
     return $formulaString;
 }