
asdfsadf
	[$foo$] asdf  [$bar$]
	
	asdf
	
	
	[$if 5 > 4$]asdf[$else$]
	
	asdfsafd
	[$endif$]
	
	asdfasdf
	[$baz$]
	
	[$if 1$]\asdf[$comment fooasdfasf$]
	[$endif$]\[$[$boo$]\$]
	
	[$date$]foo
	[$date "%Y / %m / %d "$]bar
	sdf
	
	[$foreach blah arr$]object at [$blahIndex$]: [$blah$][$if blahIndex > 0$] am > 0 !![$endif$]
	[$endforeach$]
	
	[$if 0$]aaaa
	[$elseif 1$]bbbb
	[$elseif 0$]cccc
	[$else$]dddd
	[$endif$][$if 0$]aaaa
	[$elseif 0$]bbbb
	[$elseif 1$]cccc
	[$endif$][$$]

	Today is: [$date$].

	[$comment foo is a local var here -- the index -- which obscures the value in the
	main object. bar should still be resolved to the main object's value.$]
	[$loop foo 10 1 -1$]
	Yabba [$foo$] [$bar$][$endloop listfoo$]
		sadf

	[$comment test the array keyValue stuff$]
	[$arr$]
	[$arr.@index.2$][$comment @index is not a standard key -- implemented in MiscMerge only$]
	[$arr.@avg.length$]
	[$arr.count$][$comment should be array's count$]
	[$arr.length$][$comment should be array with string's lengths$]
	
	[$comment delayed parse stuff$]
	[$[$if foo == FOO$]bar[$else$]foo[$endif$]$]
	
	[$include foo$]
	
	[$Comment test procedure stuff -- can be called recursively
	$][$procedure fooproc$]Yay!!!![$endprocedure$]
	[$procedure fooproc2 num$]Yay!!!!2 [$if num > 1$]4[$else$]6[$endif$][$endprocedure$]
	[$procedure recursiveproc array$] [ [$array.@index.0$][$if array.count > 1$][$call recursiveproc array.@fromIndex.1$][$endif$] ] [$endprocedure$]
	
	[$call fooproc$]
	[$call fooproc2 0$]
	[$call recursiveproc arr$]
	
	