anchor.diff:    @override
     Future<bool> start(String url) async {
       _logEvent('Starting $this browser on: $url');
  +    var port = await _findUnusedPort();
       if (!await startBrowserProcess(
  -        driverExecutable, ['--port', '$_port', ...driverArguments])) {
  +        driverExecutable, ['--port', '$port', ...driverArguments])) {
         return false;
       }
  -    await _createDriver();
  +    await _createDriver(port);
       await _driver.get(url);
       try {
         _logEvent('Got version: ${await version}');
  
positive.code: }
  
  abstract class WebDriverBrowser extends Browser {
    static int _nextPort = 4444;
    final int _port = _nextPort++;
    WebDriver _driver;
  
    String get driverExecutable;
  
negative.code:     return true;
    }
  
    Future<void> _createDriver(int port) async {
      for (var i = 5; i >= 0; i--) {
        // Give the driver process some time to be ready to accept connections.
        await Future.delayed(const Duration(seconds: 1));
        try {
          _driver = await createDriver(
              uri: Uri.parse('http://localhost:$port/'),
              desired: desiredCapabilities);
        } catch (error) {
          if (i > 0) {
  