     // MARK: CollectionSupplementaryViewFactoryType
 
     /// :nodoc:
-    public func supplementaryViewForItem(item: DataItem, kind: SupplementaryViewKind,
+    public func supplementaryViewForItem(item: Item, kind: SupplementaryViewKind,
         inCollectionView collectionView: UICollectionView, atIndexPath indexPath: NSIndexPath) -> TitledCollectionReusableView {
             let view = collectionView.dequeueReusableSupplementaryViewOfKind(kind, withReuseIdentifier: TitledCollectionReusableView.identifier, forIndexPath: indexPath) as! TitledCollectionReusableView
             styleConfigurator(view)

    }

    /// :nodoc:
    public func configureSupplementaryView(view: TitledCollectionReusableView, forItem item: DataItem, kind: SupplementaryViewKind,
        inCollectionView collectionView: UICollectionView, atIndexPath indexPath: NSIndexPath) -> TitledCollectionReusableView {
            return dataConfigurator(view, item, kind, collectionView, indexPath)
    }

- Note: The factory has the following type parameters:

```swift
TitledCollectionReusableViewFactory<Item>
```
*/
public struct TitledCollectionReusableViewFactory <Item>: CollectionSupplementaryViewFactoryType {

    // MARK: Typealiases

