      - parameter presentingView: The view that the HUD will be located in.
      - parameter completion: Will be trigger when the HUD is removed.
      */
-    public static func showOrUpdateHUD(icon: IconType, message: String, duration: Double, particleEffectFileName: String, presentingView: UIView, completion: (() -> Void)?) {
+    public static func showOrUpdateHUD(icon: IconType, message: String, duration: Double, particleEffectFileName: String? = nil, presentingView: UIView, completion: (() -> Void)?) {
         let defaultIcon = iconImage(imageName: icon.rawValue)
         showHud(text: Array(arrayLiteral: message), icon: defaultIcon, duration: duration, sksFileName: particleEffectFileName , presentingView: presentingView, completion: completion)
     }

     - parameter icon: The icon image in the HUD.
     - parameter message: The text in the HUD.
     - parameter duration: Set how long the HUD will be displayed in seconds (override the default value).
     - parameter presentingView: The view that the HUD will be located in.
     - parameter completion: Will be trigger when the HUD is removed.
     */
    public static func showOrUpdateHUD(icon: UIImage, message: String, duration: Double, presentingView: UIView, completion: (() -> Void)?) {
        showHud(text: Array(arrayLiteral: message), icon: icon, duration: duration, presentingView: presentingView, completion: completion)
    }
    
    
    /**
     Show or update the HUD.
     
     - parameter icon: The icon image in the HUD.
     - parameter message: The text in the HUD.
     - parameter particleEffectFileName: The name of the Sprite Kit particle file in your project that you want to show in the HUD background.
     - parameter presentingView: The view that the HUD will be located in.
     - parameter completion: Will be trigger when the HUD is removed.
     */
    public static func showOrUpdateHUD(icon: UIImage, message: String, particleEffectFileName: String, presentingView: UIView, completion: (() -> Void)?) {
        showHud(text: Array(arrayLiteral: message), icon: icon, duration: appearance.defaultDurationTime, sksFileName: particleEffectFileName, presentingView: presentingView, completion: completion)
    }
    
    
    /**
     Show or update the HUD.
     
     - parameter icon: The icon image in the HUD.
     - parameter message: The text in the HUD.
     - parameter duration: Set how long the HUD will be displayed in seconds (override the default value).
     - parameter particleEffectFileName: The name of the Sprite Kit particle file in your project that you want to show in the HUD background.
     - parameter presentingView: The view that the HUD will be located in.
     - parameter completion: Will be trigger when the HUD is removed.
     */
    public static func showOrUpdateHUD(icon: UIImage, message: String, duration: Double, particleEffectFileName: String, presentingView: UIView, completion: (() -> Void)?) {
        showHud(text: Array(arrayLiteral: message), icon: icon, duration: duration, sksFileName: particleEffectFileName, presentingView: presentingView, completion: completion)
    }
    


        if isFunnyMessages {
            hudView.showFunnyMessages(languageType: funnyMessagesLanguage!)
        
        } else if isMessages {
            hudView.showMessages(messages: text)
        
        } else if icon != nil {
            hudView.showMessage(title: nil, message: text.first, icon: icon, completion: nil)
        
        } else if title != "" {
            hudView.showMessage(title: title, message: text.first, icon: nil, completion: nil)
        
        } else {
            hudView.showLoadingActivityIndicator(text: text.first, completion: nil)
        }

