     fileprivate func present(fromHold: Bool = false) {
         if fromHold || shouldShowToast() {
             SMToast.activeQueue.add(toast: self)
-            UIApplication.shared.keyWindow?.addSubview(self)
-            UIView.animateKeyframes(withDuration: self.fadeDuration, delay: 0, options: .allowUserInteraction, animations: {
+            UIApplication.shared.windows.first?.addSubview(self)
+            UIView.animate(withDuration: self.duration, delay: 0, options: .allowUserInteraction, animations: {
                 self.alpha = 0.75
             }, completion: { (_) in
                 self.fadeOut()

//MARK: - Action
extension SMToast {
    func panned(_ sender: UIPanGestureRecognizer) {
        guard let topView = UIApplication.topViewController()?.view else { return }
        let location = sender.location(in: topView)
        switch sender.state {
        case .began:
            self.transform = CGAffineTransform(scaleX: 1.06, y: 1.06)



/*****************************************
             Default Values
 *****************************************/


//MARK: - String
extension String {
