/**
  * @return LinkedFlowScope
  */
 public function createChildFlowScope()
 {
     $this->frozen = true;
     if ($this->depth > self::MAX_DEPTH) {
         if (null === $this->flattened) {
             $this->flattened = FlatFlowScopeCache::createFromLinkedScope($this);
         }
         return new LinkedFlowScope($this->flattened);
     }
     return LinkedFlowScope::createFromLinkedFlowScope($this);
 }