anchor.diff:  	}
   	
   	/**
  -     * {@inheritDoc}
  -     */
  -     
  -    public function getUserByAccountId(required numeric accountId) {
  -        if (arguments.accountId == 0) {
  -            return new cfesapi.org.owasp.esapi.User$ANONYMOUS(instanceESAPI);
  -        }
  -        loadUsersIfNecessary();
  -        if (structKeyExists(instance.userMap, arguments.accountId)) {
  -	        return instance.userMap.get(arguments.accountId);
  -        }
  -        return "";
  -    }
  -
  -    /**
  -     * {@inheritDoc}
  -     */
  -	 
  -    public function getUserByAccountName(required String accountName) {
  -        if (arguments.accountName == "") {
  -            return new cfesapi.org.owasp.esapi.User$ANONYMOUS(instanceESAPI);
  -        }
  -        loadUsersIfNecessary();
  -        for (local.u in instance.userMap) {
  -            if (instance.userMap[local.u].getAccountName().equalsIgnoreCase(arguments.accountName)) {
  -                return instance.userMap[local.u];
  -            }
  -        }
  -        return "";
  -    }
  -    
  -    /**
  -     * {@inheritDoc}
  -     */
  -     
  -    public Array function getUserNames() {
  -        loadUsersIfNecessary();
  -        local.results = [];
  -        for (local.u in instance.userMap) {
  -            local.results.add(instance.userMap[local.u].getAccountName());
  -        }
  -        return local.results;
  -    }
  +	 * {@inheritDoc}
  +	 */
  +	
  +	public function getUserByAccountId(required numeric accountId) {
  +		if(arguments.accountId == 0) {
  +			return new cfesapi.org.owasp.esapi.User$ANONYMOUS(instanceESAPI);
  +		}
  +		loadUsersIfNecessary();
  +		if(structKeyExists(instance.userMap, arguments.accountId)) {
  +			return instance.userMap.get(arguments.accountId);
  +		}
  +		return "";
  +	}
  +	
  +	/**
  +	 * {@inheritDoc}
  +	 */
  +	
  +	public function getUserByAccountName(required String accountName) {
  +		if(arguments.accountName == "") {
  +			return new cfesapi.org.owasp.esapi.User$ANONYMOUS(instanceESAPI);
  +		}
  +		loadUsersIfNecessary();
  +		for(local.u in instance.userMap) {
  +			if(instance.userMap[local.u].getAccountName().equalsIgnoreCase(arguments.accountName)) {
  +				return instance.userMap[local.u];
  +			}
  +		}
  +		return "";
  +	}
  +	
  +	/**
  +	 * {@inheritDoc}
  +	 */
  +	
  +	public Array function getUserNames() {
  +		loadUsersIfNecessary();
  +		local.results = [];
  +		for(local.u in instance.userMap) {
  +			local.results.add(instance.userMap[local.u].getAccountName());
  +		}
  +		return local.results;
  +	}
   	
   	/**
   	 * {@inheritDoc}
  
positive.code: 	
  	public String function getHashedPassword(required cfesapi.org.owasp.esapi.User user) {
  		local.hashes = getAllHashedPasswords(arguments.user, false);
  		if (arrayLen(local.hashes)) {
  			return local.hashes[1];
  		}
  		return "";
  
negative.code: 	 * {@inheritDoc}
  	 */
  	
  	public void function changePassword(required cfesapi.org.owasp.esapi.User user, required String currentPassword, required String newPassword, required String newPassword2) {
  		local.accountName = arguments.user.getAccountName();
  		try {
  			local.currentHash = getHashedPassword(arguments.user);
  			local.verifyHash = hashPassword(arguments.currentPassword, local.accountName);
  			if(!local.currentHash.equals(local.verifyHash)) {
  				local.exception = new cfesapi.org.owasp.esapi.errors.AuthenticationCredentialsException(instance.ESAPI, "Password change failed", "Authentication failed for password change on user: " & local.accountName);
  				throwError(local.exception);
  			}
  			if(arguments.newPassword == "" || arguments.newPassword2 == "" || !arguments.newPassword.equals(arguments.newPassword2)) {
  				local.exception = new cfesapi.org.owasp.esapi.errors.AuthenticationCredentialsException(instance.ESAPI, "Password change failed", "Passwords do not match for password change on user: " & local.accountName);
  				throwError(local.exception);
  			}
  			verifyPasswordStrength(arguments.currentPassword, arguments.newPassword, arguments.user);
  			arguments.user.setLastPasswordChangeTime(newJava("java.util.Date").init());
  			local.newHash = hashPassword(arguments.newPassword, local.accountName);
  			if(arrayFind(getOldPasswordHashes(arguments.user), local.newHash)) {
  				local.exception = new cfesapi.org.owasp.esapi.errors.AuthenticationCredentialsException(instance.ESAPI, "Password change failed", "Password change matches a recent password for user: " & local.accountName);
  				throwError(local.exception);
  			}
  			setHashedPassword(arguments.user, local.newHash);
  			instance.logger.info(newJava("org.owasp.esapi.Logger").SECURITY_SUCCESS, "Password changed for user: " & local.accountName);
  