function submitTaskTo(string $workerID, \CharlotteDunois\Phoebe\AsyncTask $task) {
        if(!$task->id) {
            throw new \InvalidArgumentException('Async Task has no ID - did you call parent::__construct() in your constructor?');
        }
        
        $worker = $this->submitTo($workerID, $task);
        
        $itask = new \CharlotteDunois\Phoebe\InternalTask($worker, $task);
        $this->tasks->set($task->id, $itask);
        
        return $itask->getDeferred()->promise();
    }