         }
         
     }
-    var attributedPlaceholder: NSAttributedString? {
+    public var attributedPlaceholder: NSAttributedString? {
         
         get {
             return _attributedPlaceholder

import UIKit


func HAS_TEXT_CONTAINER(x: AnyObject) -> Bool {
    return x.responds(to: #selector(getter: UITextView.textContainer))
}
func HAS_TEXT_CONTAINER_INSETS(x: AnyObject) -> Bool {
    return x.responds(to: #selector(getter: UITextView.textContainerInset))
}
class JMTextView: UITextView {
    
    var _placeHolder: String?
    var _attributedPlaceholder: NSAttributedString?
    
    @IBInspectable var placeholder: String? {
        
        get {
            return _placeHolder

                    addSubview(placeholderTextView)
                    sendSubview(toBack: placeholderTextView)
                }
                UIView.animate(withDuration: fadeTime!, animations: {
                    placeholderTextView.alpha = 1
                })
            } else {
