protected function _generateChildrenOf($node)
 {
     $result = [];
     if (!$this->_nodeIsCompleteSolution($node)) {
         $newPointSequences = $this->_generateNestedPointSequences($node);
         foreach ($newPointSequences as $newPointSequence) {
             if ($this->canLoad($newPointSequence)) {
                 $path = new Path(['points' => $newPointSequence]);
                 $newNode = new Node(['content' => $path]);
                 $newNode->setOptimisticBound($this->getEvaluator()->getBound($path, Evaluator::BOUND_TYPE_OPTIMISTIC));
                 $result[] = $newNode;
             }
         }
     }
     return $result;
 }