code: func WebPageImageResolver(doc *goquery.Document) ([]candidate, int) {
  	imgs := doc.Find("img")
  
  	var candidates []candidate
  	significantSurface := 320 * 200
  	significantSurfaceCount := 0
  	src := ""
  	imgs.Each(func(i int, tag *goquery.Selection) {
  		var surface int
  		src = getImageSrc(tag)
  		if src == "" {
  			return
  		}
  
  		width, _ := tag.Attr("width")
  		height, _ := tag.Attr("height")
  		if width != "" {
  			w, _ := strconv.Atoi(width)
  			if height != "" {
  				h, _ := strconv.Atoi(height)
  				surface = w * h
  			} else {
  				surface = w
  			}
  		} else {
  			if height != "" {
  				surface, _ = strconv.Atoi(height)
  			} else {
  				surface = 0
  			}
  		}
  
  		if surface > significantSurface {
  			significantSurfaceCount++
  		}
  
  		tagscore := score(tag)
  		if tagscore >= 0 {
  			c := candidate{
  				url:     src,
  				surface: surface,
  				score:   score(tag),
  			}
  			candidates = append(candidates, c)
  		}
  	})
  
  	if len(candidates) == 0 {
  		return nil, 0
  	}
  
  	return candidates, significantSurfaceCount
  
  }
docs: // WebPageResolver fetches all candidate images from the HTML page