             guard let articlePlace = self.annotation as? ArticlePlace else {
                 return
             }
-            self.updateDotAndImageHiddenState(withArticlePlace: articlePlace)
+            self.updateDotAndImageHiddenState(with: articlePlace.articles.count)
         }
         if animated {
             if alwaysShowImage {

        }
    }
    
    func update(withArticlePlace articlePlace: ArticlePlace) {
        if articlePlace.articles.count == 1 {
            zPosition = 1
            isImageLoaded = false
            if isSelected || alwaysShowImage {
                loadImage()
            }
            accessibilityLabel = articlePlace.articles.first?.displayTitle
        } else if articlePlace.articles.count == 0 {
            zPosition = 1
            isPlaceholderHidden = false
            imageImagePlaceholderView.image = #imageLiteral(resourceName: "places-show-more")
            accessibilityLabel = WMFLocalizedString("places-accessibility-show-more", value:"Show more articles", comment:"Accessibility label for a button that shows more articles")
        } else {
            zPosition = 2
            let countString = "\(articlePlace.articles.count)"
            countLabel.text = countString
            accessibilityLabel = String.localizedStringWithFormat(WMFLocalizedString("places-accessibility-group", value:"%1$@ articles", comment:"Accessibility label for a map icon - %1$@ is replaced with the number of articles in the group\n{{Identical|Article}}"), countString)
        }
        updateDotAndImageHiddenState(withArticlePlace: articlePlace)
    }
    
    func updateDotAndImageHiddenState(withArticlePlace articlePlace: ArticlePlace) {
        switch articlePlace.articles.count {
        case 0:
            fallthrough
        case 1:

        super.setup()
        
        updateLayout()
        update(withArticlePlace: annotation as? ArticlePlace)
    }
    
    func set(alwaysShowImage: Bool, animated: Bool) {
