anchor.diff:  		driverNames=ComponentListPackageAsStruct("dbdriver",driverNames);
   
   		var driver=createObject("component", drivernames[ arguments.type ]);
  -		var custom=structNew();
  -		loop collection="#arguments#" item="key"{
  -			if(findNoCase("custom",key) EQ 1){
  -				l=len(key);
  -				custom[mid(key,8,l-8+1)]=arguments[key];
  +		// var custom=structNew();
  +		loop collection="#arguments#" item="local.key"{
  +			if( key != "custom" && findNoCase("custom",key) EQ 1){
  +				local.l=len(key);
  +				arguments.custom[mid(key,8,l-8+1)]=arguments[key];
   			}
   		}
   
   		if( arguments.type == "MSSQL" ){
  -			custom["databaseName"] = arguments.database;
  +			arguments.custom["databaseName"] = arguments.database;
   		}
  -
   		admin
   			action="updateDatasource"
   			type="#variables.type#"
  
positive.code: 	 * helper function for substring from-to, as opposed to mid's from-count
  	 */
  	private string function substring(input, from, to) localMode=true {
  		return mid(arguments.input, from, arguments.to + 1 - arguments.from);
  	}
  
  
  	private struct function ComponentListPackageAsStruct(string package, cfcNames=structnew("linked")){
  		try{
  			local._cfcNames=ComponentListPackage(package);
  			loop array="#_cfcNames#" index="i" item="el" {
  				cfcNames[el]=package&"."&el;
  			}
  		}
  		catch(e){}
  		return cfcNames;
  	}
  
  	private function getArguments(args, Key, default) {
  		if(not structKeyExists(args, Key)) return default;
  		return arguments.args[Key];
  	}
  
  	private function downloadFull(required string provider,required string id , string version){
  		return _download("full",provider,id,version);
  	}
  
  	private function _download(String type,required string provider,required string id, string version){
  
negative.code: 		var driver=drivers[trim(arguments.type)];
  		var meta=getMetaData(driver);
  		var debugEntry = getDebugEntry();
  		query name="local.existing" dbtype="query"{
  			echo("SELECT * FROM debugEntry WHERE label = '#arguments.label#' ");
  		}
  		admin
  