     /**
      Lays out the password field.
      */
-    public func layoutPasswordField() {
+    open func layoutPasswordField() {
         passwordField.constrainEqual(.leadingMargin, to: view)
         passwordField.constrainEqual(.trailingMargin, to: view)
         passwordField.constrainEqual(.bottomMargin, to: usernameField, .bottomMargin, multiplier: 1.0, constant: 55)

    /**
     Remove anonymous subviews.
     */
    public func hideAnonymousSubviews() {
        usernameField.isHidden = true
        passwordField.isHidden = true
        cancelButton.isHidden = true

    /**
     Layout the Anonymous Subviews.
     */
    open func layoutSubviews() {
        self.layoutLoginField()
        self.layoutPasswordField()
        self.layoutSubmitButton()
