         return proposedContentOffset
     }
     
-    override public func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]? {
-        
+    public override func items(in rect: CGRect) -> [ItemKey] {
+        var _allAttributes: [ItemKey] = []
         var allAttributes: [PuzzleCollectionViewLayoutAttributes] = []
         var lastY: CGFloat = 0
         

                                header.zIndex = PuzzleCollectionHeaderFooterZIndex
                                allAttributes.append(header)
                                sectionHeader = header
                            }
                        }
                        

                                    separatorLine.info = [PuzzleCollectionColoredViewColorKey : color]
                                }
                                allAttributes.append(separatorLine)
                                _allAttributes.append(ItemKey(indexPath: separatorLine.indexPath, kind: PuzzleCollectionElementKindSeparatorLine, category: .decorationView))
                            }
                        }
                    }
