               (start-line start-column end-line end-column num count)
               (mapcar 'string-to-number rest)
 
+            (if (> count max-count)
+                (setq max-count count))
+
             (if (and (string= (file-name-nondirectory file) file-name))
                 (push
                  (make-go--covered

                  :start-column start-column
                  :end-line end-line
                  :end-column end-column
                  :covered (/= count 0))
                 ranges)))

          (forward-line))))

    (with-current-buffer (or
                          (get-buffer gocov-buffer-name)

         'face 'go-coverage-untracked)

        (dolist (range ranges)
          (let* ((count (go--covered-count range))
                 (norm (cond
                        ((= count 0)
                         -0.1)
                        ((= max-count 1)
                         0.8)
                        (t
                         (/ (log count) divisor))))
                 (n (1+ (floor (* norm 9))))
                 (face (concat "go-coverage-" (number-to-string n))))

            (overlay-put
             (make-overlay
              (go--line-column-to-point
               (go--covered-start-line range)
               (go--covered-start-column range))
              (go--line-column-to-point
               (go--covered-end-line range)
               (go--covered-end-column range)))
             'face face))))

      (display-buffer (current-buffer) 'display-buffer-reuse-window))))

