 <cffunction name="URLFor" returntype="string" access="public" output="false" hint="Creates an internal URL based on supplied arguments."
 	examples=
 	'
-		<!--- Create the URL for the `logOut` action on the `account` controller, typically resulting in `/account/logout` --->
+		<!--- Create the URL for the `logOut` action on the `account` controller, typically resulting in `/account/log-out` --->
 		##URLFor(controller="account", action="logOut")##
 
 		<!--- Create a URL with an anchor set on it --->
 		##URLFor(action="comments", anchor="comment10")##
+		
+		<!--- Create a URL based on a route called `products`, which expects params for `categorySlug` and `productSlug` --->
+		##URLFor(route="product", categorySlug="accessories", productSlug="battery-charger")##
 	'
 	categories="global,miscellaneous" chapters="request-handling,linking-pages" functions="redirectTo,linkTo,startFormTag">
 	<cfargument name="route" type="string" required="false" default="" hint="Name of a route that you have configured in `config/routes.cfm`.">

	<cfreturn loc.returnValue>
</cffunction>

<cffunction name="pluralize" returntype="string" access="public" output="false" hint="Returns the plural form of the passed in word."
	examples=
	'
		<!--- Pluralize a word, will result in "people" --->
		##pluralize("person")##

		<!--- Pluralize based on the count passed in --->
		Your search returned ##pluralize(word="person", count=users.recordCount)##
	'
	categories="global,string" chapters="miscellaneous-helpers" functions="capitalize,humanize,singularize">
	<cfargument name="word" type="string" required="true" hint="The word to pluralize.">

<cffunction name="addRoute" returntype="void" access="public" output="false" hint="Adds a new route to your application."
	examples=
	'
		<!--- Example 1: Adds a route which will invoke the `profile` action on the `user` controller with `params.userName` set when the URL matches the `pattern` argument --->
		<cfset addRoute(name="userProfile", pattern="user/[username]", controller="user", action="profile")>
		
		<!--- Example 2: Category/product URLs. Note the order of precedence is such that the more specific route should be defined first so Wheels will fall back to the less-specific version if it''s not found --->
		<cfset addRoute(name="product", pattern="products/[categorySlug]/[productSlug]", controller="products", action="product")>
		<cfset addRoute(name="productCategory", pattern="products/[categorySlug]", controller="products", action="category")>
		<cfset addRoute(name="products", pattern="products", controller="products", action="index")>
		
		<!--- Example 3: Change the `home` route. This should be listed last because it is least specific --->
		<cfset addRoute(name="home", pattern="", controller="main", action="index")>
	'
	categories="configuration" chapters="using-routes" functions="">
	<cfargument name="name" type="string" required="false" default="" hint="Name for the route. This is referenced as the `name` argument in functions based on @URLFor like @linkTo, @startFormTag, etc.">
	<cfargument name="pattern" type="string" required="true" hint="The URL pattern that the route will match.">
	<cfargument name="controller" type="string" required="false" default="" hint="Controller to call when route matches (unless the controller name exists in the pattern).">
	<cfargument name="action" type="string" required="false" default="" hint="Action to call when route matches (unless the action name exists in the pattern).">
	<cfscript>
