 import Vapor
 
 public protocol PasswordResetInfoType:
-    NodeRepresentable,
+    FieldsetRepresentable,
     ValidationModeValidatable
 {
     var email: String? { get }

        let passwordResetInfo = try U.extractPasswordResetInfo(from: request)

        // prepare common response
        let fieldset = try passwordResetInfo.makeNode(in: ValidationContext(mode: .all))
        let redirectToForm = Response(redirect: formPath).setFieldset(fieldset)

        // ensure form values are valid

        viewRenderer: ViewRenderer
    ) throws -> ResponseRepresentable {
        let fieldset = try request.fieldset ??
            U.extractPasswordResetInfo(from: request).makeFieldset(inValidationMode: .none)

        return try viewRenderer.make(
            pathToFormView,
