         button.tintColor = .lightGray
         return button
     }()
-    private var emojis: [[String]] = {
-        if let filePath = ISEmojiView.pathOfResourceInBundle(filename: "ISEmojiList", filetype: "plist") {
-            if let sections = NSDictionary(contentsOfFile: filePath) as? [String:[String]] {
-                var emojiList: [[String]] = []
-                for sectionName in ["People","Nature","Objects","Places","Symbols"] {
-                    emojiList.append(sections[sectionName]!)
-                }
-                return emojiList
-            }
-        }
-        return []
-    }()
+    
+    public var emojis: [[String]]!
+    
     fileprivate let emojiPopView = ISEmojiPopView()
+    
+    public init(emojis: [[String]]) {
+        self.init()
+        
+        self.emojis = emojis
+    }
     
     override init(frame: CGRect) {
         super.init(frame: frame)


    private func setupUI() {
        frame = defaultFrame
        
        // ScrollView
        collectionView.frame = self.bounds

        }
        return nil
    }
    
    static private func defaultEmojis() -> [[String]] {
        if let filePath = ISEmojiView.pathOfResourceInBundle(filename: "ISEmojiList", filetype: "plist") {
            if let sections = NSDictionary(contentsOfFile: filePath) as? [String:[String]] {
                var emojiList: [[String]] = []
                for sectionName in ["People","Nature","Objects","Places","Symbols"] {
                    emojiList.append(sections[sectionName]!)
                }
                return emojiList
            }
        }
        return []
    }
}

/// the emoji cell in the grid
