public function createNestedExecution(ProcessModel $model, Node $startNode, $isScope = true, $isScopeRoot = false)
    {
        $execution = new static(UUID::createRandom(), $this->engine, $model, $this);
        $execution->setNode($startNode);
        $execution->setState(self::STATE_SCOPE, $isScope);
        $execution->setState(self::STATE_SCOPE_ROOT, $isScopeRoot);
        
        $this->engine->registerExecution($execution);
        
        $this->engine->debug('Created nested {execution} from {parent}', [
            'execution' => (string) $execution,
            'parent' => (string) $this
        ]);
        
        return $execution;
    }