 	'
 	categories="model-class,miscellaneous" chapters="object-relational-mapping" functions="columnNames,dataSource,property,table,tableName">
 	<cfscript>
-		var loc = {};
-		loc.returnValue = variables.wheels.class.propertyList;
+		var returnValue = variables.wheels.class.propertyList;
 		if (ListLen(variables.wheels.class.calculatedPropertyList))
-			loc.returnValue = ListAppend(loc.returnValue, variables.wheels.class.calculatedPropertyList);
+			returnValue = ListAppend(returnValue, variables.wheels.class.calculatedPropertyList);
 		</cfscript>
-	<cfreturn loc.returnValue>
+	<cfreturn returnValue>
 </cffunction>
 
 <!--- PUBLIC MODEL OBJECT METHODS --->

			if (!IsCustomFunction(this[loc.key]))
			{
				// try to get the property name from the list set on the object, this is just to avoid returning everything in ugly upper case which Adobe ColdFusion does by default
				if (ListFindNoCase(propertyNames(), loc.key))
					loc.key = ListGetAt(propertyNames(), ListFindNoCase(propertyNames(), loc.key));

				// set property from the this scope in the struct that we will return
				loc.returnValue[loc.key] = this[loc.key];
			}
		}
	</cfscript>
	<cfreturn loc.returnValue> 
</cffunction>

<cffunction name="setProperties" returntype="void" access="public" output="false" hint="Allows you to set all the properties of an object at once by passing in a structure with keys matching the property names."

		<!--- Get a structure of all the properties for an object --->
		<cfset user = model("user").findByKey(1)>
		<cfset props = user.properties()>
	'
	categories="model-object,miscellaneous" chapters="" functions="setProperties">
	<cfscript>
		var loc = {};
		loc.returnValue = {};
		loc.propertyNames = propertyNames();

		// loop through all properties and functions in the this scope
		for (loc.key in this)
		{
