anchor.diff:    print('Done.');
   }
   
  +final timeLimit = Duration(seconds: 15);
   final urls = <String>[
     // package info
     'https://pub.dev/api/packages/http',
  
positive.code:     for (final type in [InternetAddressType.IPv4, InternetAddressType.IPv6]) {
        final typeStr = type == InternetAddressType.IPv4 ? 'IPv4' : 'IPv6';
        try {
          final addresses = await InternetAddress.lookup(host, type: type);
          final failed = <InternetAddress>[];
          for (final address in addresses) {
            try {
              final s = await Socket.connect(address, 443);
              await s.close();
            } catch (_) {
              failed.add(address);
            }
  
negative.code: Future<void> _checkUrlGetContent(Uri uri, {HttpClient? client}) async {
    final closeClient = client == null;
    client ??= HttpClient();
    final rq = await client.getUrl(uri).timeout(timeLimit);
    final rs = await rq.close().timeout(timeLimit);
    final bodyList = await rs.toList().timeout(timeLimit);
    final bodyLength = bodyList.map((e) => e.length).reduce((a, b) => a + b);
    if (bodyLength <= 0) throw Exception('No body for $uri');
    if (rs.statusCode != 200) throw Exception('Failed to fetch $uri');
  