case Some(JobOK) => throw new NoSuchElementException;
case Some(JobFail(msg)) => throw new CommandFailed(msg);
case Some(JobLostConnection) => throw new ConnectionLostException;
case Some(JobOK) => throw new NoSuchElementException;
case Some(JobFail(msg)) => throw new CommandFailed(msg);
case Some(JobLostConnection) => throw new ConnectionLostException;