 
     var oneColumnHeight: CGFloat {
         switch self {
+        case .announcement:
+            return 200
         case .artistInviteHeader:
             return ArtistInviteHeaderCell.Size.headerImageHeight + ArtistInviteHeaderCell.Size.totalTextHeight
         case .artistInviteSubmissionsButton:
             return ArtistInviteSubmissionsButtonCell.Size.height
         case .badge:
             return 64
-        case .categoryPromotionalHeader, .pagePromotionalHeader:
-            return 150
         case .categoryCard, .selectableCategoryCard:
             let width = UIWindow.windowWidth()
             let aspect = CategoryCardCell.Size.aspect
             return ceil(width / aspect)
+        case .categoryPromotionalHeader, .pagePromotionalHeader:
+            return 150
         case .categoryList:
             return CategoryListCell.Size.height
         case .commentHeader,
              .inviteFriends,
              .onboardingInviteFriends,
              .seeMoreComments:
-            return 60
+                return 60
         case .createComment:
             return 75
+        case .editorial:
+            let width = UIWindow.windowWidth()
+            let aspect = EditorialCell.Size.aspect
+            let maxHeight: CGFloat = UIWindow.windowHeight() - 256
+            let height = min(ceil(width / aspect), maxHeight)
+            return height + 1
         case let .emptyStream(height):
             return height
-        case .streamFooter:
-            return 44
-        case .streamHeader:
-            return 70
+        case let .fullWidthSpacer(height):
+            return height
+        case .header:
+            return 30
         case .loadMoreComments:
             return StreamLoadMoreCommentsCell.Size.height
         case .noPosts:
             return 215
         case .notification:
             return 117
-        case .editorial:
-            let width = UIWindow.windowWidth()
-            let aspect = EditorialCell.Size.aspect
-            let maxHeight: CGFloat = UIWindow.windowHeight() - 256
-            let height = min(ceil(width / aspect), maxHeight)
-            return height + 1
-        case .announcement:
-            return 200
+        case .search:
+            return 68
         case let .spacer(height):
             return height
-        case let .fullWidthSpacer(height):
-            return height
-        case .search:
-            return 68
         case .streamLoading,
              .userAvatars:
-            return 50
-        case .header:
-            return 30
+                return 50
+        case .streamFooter:
+            return 44
+        case .streamHeader:
+            return 70
         case .tallHeader:
             return 75
         case .toggle:


    var configure: CellConfigClosure {
        switch self {
        case .badge: return BadgeCellPresenter.configure
        case .categoryCard: return CategoryCardCellPresenter.configure
        case .categoryPromotionalHeader: return CategoryHeaderCellPresenter.configure
        case .selectableCategoryCard: return CategoryCardCellPresenter.configure
        case .categoryList: return CategoryListCellPresenter.configure
        case .commentHeader, .streamHeader: return StreamHeaderCellPresenter.configure
        case .createComment: return StreamCreateCommentCellPresenter.configure
        case .emptyStream: return EmptyStreamCellPresenter.configure
        case .embed: return StreamEmbedCellPresenter.configure
        case .streamFooter: return StreamFooterCellPresenter.configure
        case .image: return StreamImageCellPresenter.configure
        case .inviteFriends, .onboardingInviteFriends: return StreamInviteFriendsCellPresenter.configure
        case .noPosts: return NoPostsCellPresenter.configure
        case .notification: return NotificationCellPresenter.configure
        case .pagePromotionalHeader: return PagePromotionalHeaderCellPresenter.configure
        case .announcement: return AnnouncementCellPresenter.configure
        case .artistInviteBubble: return ArtistInviteCellPresenter.configure
        case .artistInviteHeader: return ArtistInviteCellPresenter.configure
        case .artistInviteControls: return ArtistInviteCellPresenter.configure
        case .artistInviteGuide: return ArtistInviteCellPresenter.configureGuide
        case .editorial: return EditorialCellPresenter.configure
        case .profileHeader: return ProfileHeaderCellPresenter.configure
        case .search: return SearchStreamCellPresenter.configure
        case .spacer: return { (cell, _, _, _, _) in cell.backgroundColor = .white }
        case .fullWidthSpacer: return { (cell, _, _, _, _) in cell.backgroundColor = .white }
        case .streamLoading: return StreamLoadingCellPresenter.configure
        case .text: return StreamTextCellPresenter.configure
        case .header: return TextHeaderCellPresenter.configure
        case .tallHeader: return TextHeaderCellPresenter.configure
        case .toggle: return StreamToggleCellPresenter.configure
        case .userAvatars: return UserAvatarsCellPresenter.configure
        case .userListItem: return UserListItemCellPresenter.configure

        case artistInvites
        case artistInviteSubmissionsButton
        case artistInviteDetails
        case artistInviteAdmin
        case artistInviteSubmissionsHeader
        case artistInvitePosts

