     }
     fileprivate func _layoutImageIcon() {
         
+        let imgIcon = UIImageView(frame: CGRect(origin: CGPoint.zero, size: self.appearance._iconSize))
+        imgIcon.layer.cornerRadius = self.appearance._iconRoundCornerRadius
+        imgIcon.clipsToBounds = true
+        self._imgIcon = imgIcon
+            
+        self._viewBorderedContainer.addSubview(imgIcon)
+        imgIcon.snp.makeConstraints { (maker) in
+            maker.top.equalTo(self.appearance._iconMarginTop)
+            maker.left.equalTo(self.appearance._iconMarginLeft)
+            maker.size.equalTo(self.appearance._iconSize)
+        }
     }
     fileprivate func _layoutLabelTitle() {
         
+        let lblTitle = UILabel()
+        lblTitle.textColor = self.appearance.titleTextColor
+        lblTitle.font = self.appearance.titleTextFont
+        self._lblTitle = lblTitle
+        
+        self._viewBorderedContainer.addSubview(lblTitle)
+        lblTitle.snp.makeConstraints { (maker) in
+            maker.centerY.equalTo(self._imgIcon.snp.centerY)
+            maker.leading.equalTo(self._imgIcon.snp.trailing).offset(self.appearance._titleMarginLeftToIcon)
+        }
     }
     fileprivate func _layoutLabelMessage() {
         
+        let lblMessage = UILabel()
+        lblMessage.textColor = self.appearance.messageTextColor
+        lblMessage.font = self.appearance.messageTextFont
+        lblMessage.numberOfLines = self.appearance.messageTextLineNum
+        self._lblMessage = lblMessage
+        
+        self._viewBorderedContainer.addSubview(lblMessage)
+        lblMessage.snp.makeConstraints { (maker) in
+            maker.leading.equalTo(self.appearance._messageMarginLeft)
+            maker.trailing.equalTo(-self.appearance._messageMarginRight)
+            maker.top.equalTo(self._imgIcon.snp.bottom).offset(self.appearance._messageMarginTopToIcon)
+        }
     }
     fileprivate func _layoutLabelTime() {
         

            maker.trailing.equalTo(-self.appearance.marginRight)
            maker.height.equalTo(self.appearance.sizeHeigth())
        }
    }
    
    //  MARK: - DISMISS

        
    }
    
    //  MARK: - LOADING CONTENT
    /// ----------------------------------------------------------------------------------
    fileprivate func _loadingNotificationData(iconImage: UIImage?, title: String?, message: String?, fireTime: Date?) {
        
        /// Icon
        self._imgIcon.image = iconImage
        
        /// Title
        self._lblTitle.text = title
        
        /// Message
        if let _message = message {
            let paragraphStyle              = NSMutableParagraphStyle()
            paragraphStyle.lineSpacing      = 0.75
            
            let attributedMessage = NSAttributedString(
                string: _message,
                attributes: [
                    .paragraphStyle: paragraphStyle
                ])
            _lblMessage.attributedText = attributedMessage
        }
        else {
            self._lblMessage.text = ""
        }
    }
    
    //  MARK: - TAP GESTURE
    /// ----------------------------------------------------------------------------------
    fileprivate func _setUpTapGesture() {
        let tapGesture = UITapGestureRecognizer(target: self, action: #selector(_handleTapGesture(gesture:)))
