anchor.diff:  ﻿<cfscript>
   component {
   
  -	NEWLINE="
  +	variables.NEWLINE="
   ";
  -	TAB = chr(9);
  -	default={};
  -	default.browser="html";
  -	default.console="text";
  -	supportedFormats=["simple","text","html","classic"];
  -
  +	variables.TAB = chr(9);
  +	variables.default={};
  +	variables.default.browser="html";
  +	variables.default.console="text";
  +	variables.supportedFormats=["simple","text","html","classic"];
  +	
   	// Meta data
   	this.metadata.hint="Outputs the elements, variables and values of most kinds of CFML objects. Useful for debugging. You can display the contents of simple and complex variables, objects, components, user-defined functions, and other elements.";
   	this.metadata.attributetype="fixed";
  
positive.code: 		var columnCount = structKeyExists(arguments.meta,'data') ? listLen(arguments.meta.data.columnlist) : 0;
  		var width = structKeyExists(arguments.meta,'width') ? ' width="' & arguments.meta.width & '"' : '';
  		var height = structKeyExists(arguments.meta,'height') ? ' height="' & arguments.meta.height & '"' : '';
  		var indent = repeatString(TAB, arguments.level);
  
  
  			rtn&=( '<table cellpadding="1" cellspacing="0" border="1" title="#arguments.context#"#width##height#>');
  
negative.code: 
  			if(arguments.level EQ 0){
  				// javascript
  				rtn&=('<script language="JavaScript" type="text/javascript">' & variables.NEWLINE);
  				rtn&=("function dumpOC(name){");
  				rtn&=("var tds=document.all?document.getElementsByTagName('tr'):document.getElementsByName(name);" );
  				rtn&=("var s=null;");
  				rtn&=("name=name;");
  				rtn&=("for(var i=0;i<tds.length;i++) {" );
  				rtn&=("if(document.all && tds[i].name!=name)continue;");
  				rtn&=("s=tds[i].style;" & variables.NEWLINE);
  				rtn&=("if(s.display=='none') s.display='';");
  				rtn&=("else s.display='none';");
  				rtn&=("}" );
  				rtn&=("}" & variables.NEWLINE);
  				rtn&=("</script>" & variables.NEWLINE);
  
  				// styles
  				rtn&=('<style type="text/css">' & variables.NEWLINE);
  				rtn&=( 'div###arguments.dumpID# table {font-family:Verdana, Geneva, Arial, Helvetica, sans-serif; font-size:11px; empty-cells:show; color:#arguments.meta.fontColor#; border: 1px solid black; border-collapse:collapse;}' & variables.NEWLINE);
  				rtn&=( 'div###arguments.dumpID# td {border:1px solid #arguments.meta.borderColor#; vertical-align:top; padding:2px; empty-cells:show;}' & variables.NEWLINE);
  				rtn&=('div###arguments.dumpID# td span {font-weight:bold;}' & variables.NEWLINE);
  				rtn&=('</style>' & variables.NEWLINE);
  			}
  
  			rtn&=('<table cellspacing="0"#width##height##title# style="color:#arguments.meta.fontColor#; border-color:#borderColor#;">');
  