                 let tableViewWidth = CGRectGetWidth(editProfileTableView.bounds)
                 let introLabelMaxWidth = tableViewWidth - YepConfig.EditProfile.introInset
 
-                let rect = intro.boundingRectWithSize(CGSize(width: introLabelMaxWidth, height: CGFloat(FLT_MAX)), options: .UsesLineFragmentOrigin | .UsesFontLeading, attributes: introAttributes, context: nil)
+                let rect = introduction.boundingRectWithSize(CGSize(width: introLabelMaxWidth, height: CGFloat(FLT_MAX)), options: .UsesLineFragmentOrigin | .UsesFontLeading, attributes: introAttributes, context: nil)
 
                 let height = 20 + 22 + 20 + ceil(rect.height) + 20
                 

    let editProfileMoreInfoCellIdentifier = "EditProfileMoreInfoCell"
    let editProfileColoredTitleCellIdentifier = "EditProfileColoredTitleCell"

    let intro = "I'm good at iOS Development and Singing. Come here, let me teach you." // TODO: User Intro
    let introAttributes = [NSFontAttributeName: YepConfig.EditProfile.introFont]

    override func viewDidLoad() {

                    }, completion: { success in
                        dispatch_async(dispatch_get_main_queue()) {
                            YepUserDefaults.nickname.value = newNickname
                        }

                        YepHUD.hideActivityIndicator()
                    })
                })

            case InfoRow.Intro.rawValue:
                YepAlert.textInput(title: NSLocalizedString("New introduction", comment: ""), placeholder: YepUserDefaults.introduction.value, dismissTitle: NSLocalizedString("OK", comment: ""), inViewController: self, withFinishedAction: { (newIntroduction) -> Void in

                    if let oldIntroduction = YepUserDefaults.introduction.value {
                        if oldIntroduction == newIntroduction {
                            return
                        }
                    }

                    YepHUD.showActivityIndicator()

                    updateMyselfWithInfo(["introduction": newIntroduction], failureHandler: { (reason, errorMessage) in
                        defaultFailureHandler(reason, errorMessage)

                        YepHUD.hideActivityIndicator()

                    }, completion: { success in
                        dispatch_async(dispatch_get_main_queue()) {
                            YepUserDefaults.introduction.value = newIntroduction
                        }

                        YepHUD.hideActivityIndicator()
