     public var checked = false {
       didSet { checkedImage.hidden = !checked }
     }
+
+    public enum Style {
+      case Default
+      case Custom
+    }
+    public var style: Style = .Default
+    public var checkedIcon: UIImage!
 
     public var data: Photo! {
       didSet {

  override public func layoutUI() {
    super.layoutUI()
    collectionView = registerClass(ImageCell.self)
//    collectionView = collectionView(collectionViewLayout, registeredClass: ImageCell.self, identifier: CellIdentifier, sectionInset: sectionInset)
    layout([collectionView])
  }


    override public func styleUI() {
      super.styleUI()
      photo.styledAsFill()
//      checkedImage.backgroundColored(UIColor.whiteColor())
      checkedImage.hidden = true
      bringSubviewToFront(checkedImage)
    }

    override public func layoutSubviews() {
      super.layoutSubviews()
      photo.fillSuperview()
      layoutCheckedImage()
    }

    public func layoutCheckedImage() {
      switch style {
      case .Custom:
        checkedImage.image = checkedIcon
        checkedImage.backgroundColored(UIColor.clearColor())
        checkedImage.fillSuperview()
      default:
        let p = width * 0.1
        let s = width * 0.3
        checkedImage.backgroundColored(UIColor.whiteColor())
        checkedImage.image = checkedIcon
        checkedImage.anchorInCorner(.BottomRight, xPad: p, yPad: p, width: s, height: s)
        checkedImage.radiused(s / 2).bordered(1, color: K.Color.buttonBg.colorWithAlphaComponent(0.2).CGColor)

      }
    }
  }
}
