 	
 	// MARK: - Private -
 	
-	private func removeObserversIfNeeded() {
+	func removeObserversIfNeeded() {
 		if isObserving {
 			for path in keyPathsToObserve {
 				superview?.removeObserver(self, forKeyPath:path)

		}
	}
	
	public override func willMoveToSuperview(newSuperview: UIView?) {
		removeObserversIfNeeded()
		
		for path in keyPathsToObserve {

	
	// MARK: - KBO -
	
	override func observeValueForKeyPath(keyPath: String?, ofObject object: AnyObject?, change: [String : AnyObject]?, context: UnsafeMutablePointer<Void>) {
		
		if  let keyPath = keyPath,
			let superview = superview
			where object === superview && keyPathsToObserve.contains(keyPath) {
				
			delegate.textInputAccessoryView(didChnageToFrame: superview.frame)
		}
	}
