{
	"0: data": {
		"srcIndexStart": "0", 
		"file": "docssrc/docs.APIRef.Symbol.tmpl", 
		"parseTreeMode": "true", 
		"srcLength": "3586", 
		"source": "[$name|Symbol$]
[$title|struct Symbol$]
[$frame|HTMLPage.tmpl$]

<ul>
<li>[$typeLink|SymbolType| enum SymbolType $]</li>
<li>[$typeLink|Symbol| struct Symbol $]</li>
<li>[$pageLink|#Module| Module-Level Members $]</li>
</ul>

<p>
See also the [$pageLink|APIOver#TokenSymbol| explanation of Tokens vs Symbols $].
</p>

[$apiSectionType| SymbolType | goldie.base | enum SymbolType $]
<div class=\"api-def\">
	[$apiHead|[:
	NonTerminal
	Terminal
	Whitespace
	EOF
	CommentStart
	CommentEnd
	CommentLine
	Error
	:]$]
	<div class=\"api-def\">
	<p>
		[$ident|EOF$] and [$ident|Error$] symbols (there is exactly
		one of each in every language) are automatically created
		when a grammar is compiled.
		A [$ident|Whitespace$] symbol is automatically
		defined if the grammar doesn't already define one.
	</p>
	<p>
		Symbols of the other [$typeName|SymbolType$] values are defined
		by a grammar.
	</p>
	<p>
		All [$typeName|SymbolType$] values except for [$ident|NonTerminal$]
		are technically considered to be terminals (and tokens of these
		symbols are created by the [$typeName|Lexer$] instead of the
		[$typeName|Parser$]), although the actual [$ident|SymbolType.Terminal$]
		value is only used for \"normal\" terminals (ie., ones that don't match
		any of the other [$typeName|SymbolType$] values).
	</p>
	</div>
</div>

[$apiSectionType| Symbol | goldie.base | struct Symbol $]
<div class=\"api-def\">
	[$apiHead| string name $]
	<div class=\"api-def\">
	<p>
		The name of the symbol, as defined in a language's grammar.
		For nonterminals, this includes the surrounding
		[$code|inline|<$] and [$code|inline|>$].
	</p>
	<p>
		For example, in a grammar,
		[$code|inline|<If Statement> ::= 'if'$] would define a
		nonterminal symbol with a [$ident|name$] of
		[$code|inline|<If Statement>$].
	</p>
	</div>
	
	[$apiHead| SymbolType type $]
	<div class=\"api-def\">
		The type of symbol.
	</div>
	
	[$apiHead| int id $]
	<div class=\"api-def\">
		The ID of the symbol. This is an index into
		[$typeName|Language$][$ident|.symbolTable$].
	</div>
	
	[$apiHead| string toString() $]
	<div class=\"api-def\">
		The result of this is valid D code representing a struct literal.
		For example:
[$code|highlight|
[:auto sym = Symbol(\"foo\", SymbolType.Terminal, 7);
assert(sym.toString() == `Symbol(\"foo\",SymbolType.Terminal,7)`);
:]$]
	</div>
</div>

[$apiSection| Module | goldie.base | Module-Level Members $]
<div class=\"api-def\">

	[$apiHead|[: string symbolTypeToString(SymbolType type) :]$]
	<div class=\"api-def\">
		Example:
[$code|highlight|
[:string str = symbolTypeToString(SymbolType.NonTerminal);
assert(str == \"NonTerminal\");
:]$]
	</div>
	
	[$apiHead|[: string fullSymbolTypeToString(SymbolType type) :]$]
	<div class=\"api-def\">
		Example:
[$code|highlight|
[:string str = fullSymbolTypeToString(SymbolType.NonTerminal);
assert(str == \"SymbolType.NonTerminal\");
:]$]
	</div>

	[$apiHead|[: string symbolTypesToString(SymbolType[] types) :]$]
	<div class=\"api-def\">
		Example:
[$code|highlight|
[:auto symTypes = [SymbolType.Terminal, SymbolType.NonTerminal, SymbolType.Terminal];
string str = symbolTypesToString(symTypes);

assert(str == \"Terminal, NonTerminal, Terminal\");
:]$]
	</div>

	[$apiHead|[: string[] symbolTypesToStrings(SymbolType[] types) :]$]
	<div class=\"api-def\">
		Example:
[$code|highlight|
[:auto symTypes = [SymbolType.Terminal, SymbolType.NonTerminal, SymbolType.Terminal];
auto strings = symbolTypesToStrings(symTypes);

assert(strings.length == 3);
assert(strings[0] == \"Terminal\");
assert(strings[1] == \"NonTerminal\");
assert(strings[2] == \"Terminal\");
:]$]
	</div>
</div>
", 
		"0: name": {
			"srcIndexStart": "0", 
			"data": "Symbol", 
			"srcLength": "15", 
			"0: data": {
				"srcIndexStart": "7", 
				"data": "Symbol", 
				"srcLength": "6"
			}
		}, 
		"1: data": {
			"srcIndexStart": "15", 
			"data": "
", 
			"srcLength": "1"
		}, 
		"2: title": {
			"srcIndexStart": "16", 
			"data": "struct Symbol", 
			"srcLength": "23", 
			"0: data": {
				"srcIndexStart": "24", 
				"data": "struct Symbol", 
				"srcLength": "13"
			}
		}, 
		"3: data": {
			"srcIndexStart": "39", 
			"data": "
", 
			"srcLength": "1"
		}, 
		"4: frame": {
			"srcIndexStart": "40", 
			"data": "HTMLPage.tmpl", 
			"srcLength": "23", 
			"0: data": {
				"srcIndexStart": "48", 
				"data": "HTMLPage.tmpl", 
				"srcLength": "13"
			}
		}, 
		"5: data": {
			"srcIndexStart": "63", 
			"data": "

<ul>
<li>", 
			"srcLength": "11"
		}, 
		"6: typeLink": {
			"srcIndexStart": "74", 
			"param 0": "SymbolType", 
			"data": "enum SymbolType", 
			"srcLength": "41", 
			"0: data": {
				"srcIndexStart": "96", 
				"data": "enum SymbolType", 
				"srcLength": "17"
			}
		}, 
		"7: data": {
			"srcIndexStart": "115", 
			"data": "</li>
<li>", 
			"srcLength": "10"
		}, 
		"8: typeLink": {
			"srcIndexStart": "125", 
			"param 0": "Symbol", 
			"data": "struct Symbol", 
			"srcLength": "35", 
			"0: data": {
				"srcIndexStart": "143", 
				"data": "struct Symbol", 
				"srcLength": "15"
			}
		}, 
		"9: data": {
			"srcIndexStart": "160", 
			"data": "</li>
<li>", 
			"srcLength": "10"
		}, 
		"10: pageLink": {
			"srcIndexStart": "170", 
			"param 0": "#Module", 
			"data": "Module-Level Members", 
			"srcLength": "43", 
			"0: data": {
				"srcIndexStart": "189", 
				"data": "Module-Level Members", 
				"srcLength": "22"
			}
		}, 
		"11: data": {
			"srcIndexStart": "213", 
			"data": "</li>
</ul>

<p>
See also the ", 
			"srcLength": "30"
		}, 
		"12: pageLink": {
			"srcIndexStart": "243", 
			"param 0": "APIOver#TokenSymbol", 
			"data": "explanation of Tokens vs Symbols", 
			"srcLength": "67", 
			"0: data": {
				"srcIndexStart": "274", 
				"data": "explanation of Tokens vs Symbols", 
				"srcLength": "34"
			}
		}, 
		"13: data": {
			"srcIndexStart": "310", 
			"data": ".
</p>

", 
			"srcLength": "8"
		}, 
		"14: apiSectionType": {
			"srcIndexStart": "318", 
			"param 0": "SymbolType", 
			"param 1": "goldie.base", 
			"data": "enum SymbolType", 
			"srcLength": "63", 
			"0: data": {
				"srcIndexStart": "362", 
				"data": "enum SymbolType", 
				"srcLength": "17"
			}
		}, 
		"15: data": {
			"srcIndexStart": "381", 
			"data": "
<div class=\"api-def\">
	", 
			"srcLength": "24"
		}, 
		"16: apiHead": {
			"srcIndexStart": "405", 
			"data": "
	NonTerminal
	Terminal
	Whitespace
	EOF
	CommentStart
	CommentEnd
	CommentLine
	Error
	", 
			"srcLength": "104", 
			"0: data": {
				"srcIndexStart": "415", 
				"data": "
	NonTerminal
	Terminal
	Whitespace
	EOF
	CommentStart
	CommentEnd
	CommentLine
	Error
	", 
				"srcLength": "92"
			}
		}, 
		"17: data": {
			"srcIndexStart": "509", 
			"data": "
	<div class=\"api-def\">
	<p>
		", 
			"srcLength": "31"
		}, 
		"18: ident": {
			"srcIndexStart": "540", 
			"data": "EOF", 
			"srcLength": "13", 
			"0: data": {
				"srcIndexStart": "548", 
				"data": "EOF", 
				"srcLength": "3"
			}
		}, 
		"19: data": {
			"srcIndexStart": "553", 
			"data": " and ", 
			"srcLength": "5"
		}, 
		"20: ident": {
			"srcIndexStart": "558", 
			"data": "Error", 
			"srcLength": "15", 
			"0: data": {
				"srcIndexStart": "566", 
				"data": "Error", 
				"srcLength": "5"
			}
		}, 
		"21: data": {
			"srcIndexStart": "573", 
			"data": " symbols (there is exactly
		one of each in every language) are automatically created
		when a grammar is compiled.
		A ", 
			"srcLength": "120"
		}, 
		"22: ident": {
			"srcIndexStart": "693", 
			"data": "Whitespace", 
			"srcLength": "20", 
			"0: data": {
				"srcIndexStart": "701", 
				"data": "Whitespace", 
				"srcLength": "10"
			}
		}, 
		"23: data": {
			"srcIndexStart": "713", 
			"data": " symbol is automatically
		defined if the grammar doesn't already define one.
	</p>
	<p>
		Symbols of the other ", 
			"srcLength": "112"
		}, 
		"24: typeName": {
			"srcIndexStart": "825", 
			"data": "SymbolType", 
			"srcLength": "23", 
			"0: data": {
				"srcIndexStart": "836", 
				"data": "SymbolType", 
				"srcLength": "10"
			}
		}, 
		"25: data": {
			"srcIndexStart": "848", 
			"data": " values are defined
		by a grammar.
	</p>
	<p>
		All ", 
			"srcLength": "53"
		}, 
		"26: typeName": {
			"srcIndexStart": "901", 
			"data": "SymbolType", 
			"srcLength": "23", 
			"0: data": {
				"srcIndexStart": "912", 
				"data": "SymbolType", 
				"srcLength": "10"
			}
		}, 
		"27: data": {
			"srcIndexStart": "924", 
			"data": " values except for ", 
			"srcLength": "19"
		}, 
		"28: ident": {
			"srcIndexStart": "943", 
			"data": "NonTerminal", 
			"srcLength": "21", 
			"0: data": {
				"srcIndexStart": "951", 
				"data": "NonTerminal", 
				"srcLength": "11"
			}
		}, 
		"29: data": {
			"srcIndexStart": "964", 
			"data": "
		are technically considered to be terminals (and tokens of these
		symbols are created by the ", 
			"srcLength": "96"
		}, 
		"30: typeName": {
			"srcIndexStart": "1060", 
			"data": "Lexer", 
			"srcLength": "18", 
			"0: data": {
				"srcIndexStart": "1071", 
				"data": "Lexer", 
				"srcLength": "5"
			}
		}, 
		"31: data": {
			"srcIndexStart": "1078", 
			"data": " instead of the
		", 
			"srcLength": "18"
		}, 
		"32: typeName": {
			"srcIndexStart": "1096", 
			"data": "Parser", 
			"srcLength": "19", 
			"0: data": {
				"srcIndexStart": "1107", 
				"data": "Parser", 
				"srcLength": "6"
			}
		}, 
		"33: data": {
			"srcIndexStart": "1115", 
			"data": "), although the actual ", 
			"srcLength": "23"
		}, 
		"34: ident": {
			"srcIndexStart": "1138", 
			"data": "SymbolType.Terminal", 
			"srcLength": "29", 
			"0: data": {
				"srcIndexStart": "1146", 
				"data": "SymbolType.Terminal", 
				"srcLength": "19"
			}
		}, 
		"35: data": {
			"srcIndexStart": "1167", 
			"data": "
		value is only used for \"normal\" terminals (ie., ones that don't match
		any of the other ", 
			"srcLength": "92"
		}, 
		"36: typeName": {
			"srcIndexStart": "1259", 
			"data": "SymbolType", 
			"srcLength": "23", 
			"0: data": {
				"srcIndexStart": "1270", 
				"data": "SymbolType", 
				"srcLength": "10"
			}
		}, 
		"37: data": {
			"srcIndexStart": "1282", 
			"data": " values).
	</p>
	</div>
</div>

", 
			"srcLength": "32"
		}, 
		"38: apiSectionType": {
			"srcIndexStart": "1314", 
			"param 0": "Symbol", 
			"param 1": "goldie.base", 
			"data": "struct Symbol", 
			"srcLength": "57", 
			"0: data": {
				"srcIndexStart": "1354", 
				"data": "struct Symbol", 
				"srcLength": "15"
			}
		}, 
		"39: data": {
			"srcIndexStart": "1371", 
			"data": "
<div class=\"api-def\">
	", 
			"srcLength": "24"
		}, 
		"40: apiHead": {
			"srcIndexStart": "1395", 
			"data": "string name", 
			"srcLength": "25", 
			"0: data": {
				"srcIndexStart": "1405", 
				"data": "string name", 
				"srcLength": "13"
			}
		}, 
		"41: data": {
			"srcIndexStart": "1420", 
			"data": "
	<div class=\"api-def\">
	<p>
		The name of the symbol, as defined in a language's grammar.
		For nonterminals, this includes the surrounding
		", 
			"srcLength": "143"
		}, 
		"42: code": {
			"srcIndexStart": "1563", 
			"param 0": "inline", 
			"data": "&lt;", 
			"srcLength": "17", 
			"0: data": {
				"srcIndexStart": "1577", 
				"data": "<", 
				"srcLength": "1"
			}
		}, 
		"43: data": {
			"srcIndexStart": "1580", 
			"data": " and ", 
			"srcLength": "5"
		}, 
		"44: code": {
			"srcIndexStart": "1585", 
			"param 0": "inline", 
			"data": "&gt;", 
			"srcLength": "17", 
			"0: data": {
				"srcIndexStart": "1599", 
				"data": ">", 
				"srcLength": "1"
			}
		}, 
		"45: data": {
			"srcIndexStart": "1602", 
			"data": ".
	</p>
	<p>
		For example, in a grammar,
		", 
			"srcLength": "44"
		}, 
		"46: code": {
			"srcIndexStart": "1646", 
			"param 0": "inline", 
			"data": "&lt;If Statement&gt; ::= 'if'", 
			"srcLength": "39", 
			"0: data": {
				"srcIndexStart": "1660", 
				"data": "<If Statement> ::= 'if'", 
				"srcLength": "23"
			}
		}, 
		"47: data": {
			"srcIndexStart": "1685", 
			"data": " would define a
		nonterminal symbol with a ", 
			"srcLength": "44"
		}, 
		"48: ident": {
			"srcIndexStart": "1729", 
			"data": "name", 
			"srcLength": "14", 
			"0: data": {
				"srcIndexStart": "1737", 
				"data": "name", 
				"srcLength": "4"
			}
		}, 
		"49: data": {
			"srcIndexStart": "1743", 
			"data": " of
		", 
			"srcLength": "6"
		}, 
		"50: code": {
			"srcIndexStart": "1749", 
			"param 0": "inline", 
			"data": "&lt;If Statement&gt;", 
			"srcLength": "30", 
			"0: data": {
				"srcIndexStart": "1763", 
				"data": "<If Statement>", 
				"srcLength": "14"
			}
		}, 
		"51: data": {
			"srcIndexStart": "1779", 
			"data": ".
	</p>
	</div>
	
	", 
			"srcLength": "19"
		}, 
		"52: apiHead": {
			"srcIndexStart": "1798", 
			"data": "SymbolType type", 
			"srcLength": "29", 
			"0: data": {
				"srcIndexStart": "1808", 
				"data": "SymbolType type", 
				"srcLength": "17"
			}
		}, 
		"53: data": {
			"srcIndexStart": "1827", 
			"data": "
	<div class=\"api-def\">
		The type of symbol.
	</div>
	
	", 
			"srcLength": "57"
		}, 
		"54: apiHead": {
			"srcIndexStart": "1884", 
			"data": "int id", 
			"srcLength": "20", 
			"0: data": {
				"srcIndexStart": "1894", 
				"data": "int id", 
				"srcLength": "8"
			}
		}, 
		"55: data": {
			"srcIndexStart": "1904", 
			"data": "
	<div class=\"api-def\">
		The ID of the symbol. This is an index into
		", 
			"srcLength": "72"
		}, 
		"56: typeName": {
			"srcIndexStart": "1976", 
			"data": "Language", 
			"srcLength": "21", 
			"0: data": {
				"srcIndexStart": "1987", 
				"data": "Language", 
				"srcLength": "8"
			}
		}, 
		"57: ident": {
			"srcIndexStart": "1997", 
			"data": ".symbolTable", 
			"srcLength": "22", 
			"0: data": {
				"srcIndexStart": "2005", 
				"data": ".symbolTable", 
				"srcLength": "12"
			}
		}, 
		"58: data": {
			"srcIndexStart": "2019", 
			"data": ".
	</div>
	
	", 
			"srcLength": "13"
		}, 
		"59: apiHead": {
			"srcIndexStart": "2032", 
			"data": "string toString()", 
			"srcLength": "31", 
			"0: data": {
				"srcIndexStart": "2042", 
				"data": "string toString()", 
				"srcLength": "19"
			}
		}, 
		"60: data": {
			"srcIndexStart": "2063", 
			"data": "
	<div class=\"api-def\">
		The result of this is valid D code representing a struct literal.
		For example:
", 
			"srcLength": "107"
		}, 
		"61: code": {
			"srcIndexStart": "2170", 
			"param 0": "highlight", 
			"data": "auto sym = Symbol(\"foo\", SymbolType.Terminal, 7);
assert(sym.toString() == `Symbol(\"foo\",SymbolType.Terminal,7)`);
", 
			"srcLength": "139", 
			"0: data": {
				"srcIndexStart": "2187", 
				"data": "", 
				"srcLength": "1"
			}, 
			"1: data": {
				"srcIndexStart": "2188", 
				"data": "auto sym = Symbol(\"foo\", SymbolType.Terminal, 7);
assert(sym.toString() == `Symbol(\"foo\",SymbolType.Terminal,7)`);
", 
				"srcLength": "119"
			}
		}, 
		"62: data": {
			"srcIndexStart": "2309", 
			"data": "
	</div>
</div>

", 
			"srcLength": "17"
		}, 
		"63: apiSection": {
			"srcIndexStart": "2326", 
			"param 0": "Module", 
			"param 1": "goldie.base", 
			"data": "Module-Level Members", 
			"srcLength": "60", 
			"0: data": {
				"srcIndexStart": "2362", 
				"data": "Module-Level Members", 
				"srcLength": "22"
			}
		}, 
		"64: data": {
			"srcIndexStart": "2386", 
			"data": "
<div class=\"api-def\">

	", 
			"srcLength": "25"
		}, 
		"65: apiHead": {
			"srcIndexStart": "2411", 
			"data": " string symbolTypeToString(SymbolType type) ", 
			"srcLength": "60", 
			"0: data": {
				"srcIndexStart": "2421", 
				"data": " string symbolTypeToString(SymbolType type) ", 
				"srcLength": "48"
			}
		}, 
		"66: data": {
			"srcIndexStart": "2471", 
			"data": "
	<div class=\"api-def\">
		Example:
", 
			"srcLength": "35"
		}, 
		"67: code": {
			"srcIndexStart": "2506", 
			"param 0": "highlight", 
			"data": "string str = symbolTypeToString(SymbolType.NonTerminal);
assert(str == \"NonTerminal\");
", 
			"srcLength": "111", 
			"0: data": {
				"srcIndexStart": "2523", 
				"data": "", 
				"srcLength": "1"
			}, 
			"1: data": {
				"srcIndexStart": "2524", 
				"data": "string str = symbolTypeToString(SymbolType.NonTerminal);
assert(str == \"NonTerminal\");
", 
				"srcLength": "91"
			}
		}, 
		"68: data": {
			"srcIndexStart": "2617", 
			"data": "
	</div>
	
	", 
			"srcLength": "12"
		}, 
		"69: apiHead": {
			"srcIndexStart": "2629", 
			"data": " string fullSymbolTypeToString(SymbolType type) ", 
			"srcLength": "64", 
			"0: data": {
				"srcIndexStart": "2639", 
				"data": " string fullSymbolTypeToString(SymbolType type) ", 
				"srcLength": "52"
			}
		}, 
		"70: data": {
			"srcIndexStart": "2693", 
			"data": "
	<div class=\"api-def\">
		Example:
", 
			"srcLength": "35"
		}, 
		"71: code": {
			"srcIndexStart": "2728", 
			"param 0": "highlight", 
			"data": "string str = fullSymbolTypeToString(SymbolType.NonTerminal);
assert(str == \"SymbolType.NonTerminal\");
", 
			"srcLength": "126", 
			"0: data": {
				"srcIndexStart": "2745", 
				"data": "", 
				"srcLength": "1"
			}, 
			"1: data": {
				"srcIndexStart": "2746", 
				"data": "string str = fullSymbolTypeToString(SymbolType.NonTerminal);
assert(str == \"SymbolType.NonTerminal\");
", 
				"srcLength": "106"
			}
		}, 
		"72: data": {
			"srcIndexStart": "2854", 
			"data": "
	</div>

	", 
			"srcLength": "11"
		}, 
		"73: apiHead": {
			"srcIndexStart": "2865", 
			"data": " string symbolTypesToString(SymbolType[] types) ", 
			"srcLength": "64", 
			"0: data": {
				"srcIndexStart": "2875", 
				"data": " string symbolTypesToString(SymbolType[] types) ", 
				"srcLength": "52"
			}
		}, 
		"74: data": {
			"srcIndexStart": "2929", 
			"data": "
	<div class=\"api-def\">
		Example:
", 
			"srcLength": "35"
		}, 
		"75: code": {
			"srcIndexStart": "2964", 
			"param 0": "highlight", 
			"data": "auto symTypes = [SymbolType.Terminal, SymbolType.NonTerminal, SymbolType.Terminal];
string str = symbolTypesToString(symTypes);

assert(str == \"Terminal, NonTerminal, Terminal\");
", 
			"srcLength": "203", 
			"0: data": {
				"srcIndexStart": "2981", 
				"data": "", 
				"srcLength": "1"
			}, 
			"1: data": {
				"srcIndexStart": "2982", 
				"data": "auto symTypes = [SymbolType.Terminal, SymbolType.NonTerminal, SymbolType.Terminal];
string str = symbolTypesToString(symTypes);

assert(str == \"Terminal, NonTerminal, Terminal\");
", 
				"srcLength": "183"
			}
		}, 
		"76: data": {
			"srcIndexStart": "3167", 
			"data": "
	</div>

	", 
			"srcLength": "11"
		}, 
		"77: apiHead": {
			"srcIndexStart": "3178", 
			"data": " string[] symbolTypesToStrings(SymbolType[] types) ", 
			"srcLength": "67", 
			"0: data": {
				"srcIndexStart": "3188", 
				"data": " string[] symbolTypesToStrings(SymbolType[] types) ", 
				"srcLength": "55"
			}
		}, 
		"78: data": {
			"srcIndexStart": "3245", 
			"data": "
	<div class=\"api-def\">
		Example:
", 
			"srcLength": "35"
		}, 
		"79: code": {
			"srcIndexStart": "3280", 
			"param 0": "highlight", 
			"data": "auto symTypes = [SymbolType.Terminal, SymbolType.NonTerminal, SymbolType.Terminal];
auto strings = symbolTypesToStrings(symTypes);

assert(strings.length == 3);
assert(strings[0] == \"Terminal\");
assert(strings[1] == \"NonTerminal\");
assert(strings[2] == \"Terminal\");
", 
			"srcLength": "290", 
			"0: data": {
				"srcIndexStart": "3297", 
				"data": "", 
				"srcLength": "1"
			}, 
			"1: data": {
				"srcIndexStart": "3298", 
				"data": "auto symTypes = [SymbolType.Terminal, SymbolType.NonTerminal, SymbolType.Terminal];
auto strings = symbolTypesToStrings(symTypes);

assert(strings.length == 3);
assert(strings[0] == \"Terminal\");
assert(strings[1] == \"NonTerminal\");
assert(strings[2] == \"Terminal\");
", 
				"srcLength": "270"
			}
		}, 
		"80: data": {
			"srcIndexStart": "3570", 
			"data": "
	</div>
</div>", 
			"srcLength": "16"
		}
	}
}