 
 	return local.cookieAttrs.authenticityToken;
 }
-
+/**
+ * Internal function.
+ */
 public struct function $csrfCookieAttributeCollection(required string value) {
 	local.cookieStruct = {
 		value = arguments.value,

		return $generateCookieAuthenticityToken();
	}
}

public boolean function $isCookieAuthenticityTokenValid() {
	local.authenticityToken = $generateCookieAuthenticityToken();
	return Len(local.authenticityToken) && local.authenticityToken == params.authenticityToken;
}

public string function $generateCookieAuthenticityToken() {
	local.authenticityToken = $readAuthenticityTokenFromCookie();


		}
	}
}
/**
 * Internal function.
 */
public boolean function $isVerifiedRequest() {
	return isGet() || isHead() || isOptions() || $isAnyAuthenticityTokenValid();
}
/**
 * Internal function.
 */
public boolean function $isRequestProtectedFromForgery() {
	return StructKeyExists(request.$wheels, "protectedFromForgery") && IsBoolean(request.$wheels.protectedFromForgery) && request.$wheels.protectedFromForgery;
}
/**
 * Internal function.
 */
public function $setAuthenticityToken() {
	if (!$isVerifiedRequest() && isAjax()) {
		if (StructKeyExists(request.$wheelsHeaders, "X-CSRF-Token")) {
