/**
  * Reduce all fractions in this collection with a same denominator
  *
  * @return FractionCollection
  */
 public function simplify()
 {
     $simple_fractions = [];
     $denominators = [];
     // Simplify each fraction before
     foreach ($this->fractions as $fraction) {
         $new_fraction = $fraction->simplify();
         $simple_fractions[] = $new_fraction;
         $denominators[] = $new_fraction->denominator;
     }
     // Find lcm denominator
     $denominator = Utils::lcmArray($denominators);
     $buffer = new self();
     foreach ($simple_fractions as $fraction) {
         // Set the fraction with found $denominator
         $new_fraction = new Fraction($fraction->numerator * $denominator / $fraction->denominator, $denominator);
         $buffer->addFraction($new_fraction);
     }
     return $buffer;
 }