s/commentstart//
s/commentend//
s/([ \t]*\([a-zA-Z_0-9][a-zA-Z_0-9]*\)[ \t]*\*[ \t]*)/(\1)/g
s/->/./g
s/=;; /(); /g
s/::/./g
s/_CONST//g
s/ const / /g
s/^      /           /g
s/       /           /g
s/       /           /g
s/^                       /	/g
s/^	 /	/g
s/^	          /	    /g
s/^    	/		/
s/^[A-Z]/    &/
/^  *$/d
/^#/d
s/delete[ \t][ \t]*\([^;]*\)[ \t]*;/\1 = null;/
/<<[ \t]*endl[ \t;]/s/<<[ \t]*endl\([ \t;]\)/+ "\\n"\1/
/cerr.*<<.*;[ \t]*$/s/;[ \t]*$/);/
/cerr.*<</s/<</ + /g
s/cerr[ \t][ \t]*+ /System.err.print(/
/cout.*<<.*;[ \t]*$/s/;[ \t]*$/);/
/cout.*<</s/<</ + /g
s/cout[ \t][ \t]*+ /System.out.print(/
/System.....print("\\n";/s/;/);/
/^[ \t]*class[ \t][ \t]*[a-zA-Z_][a-zA-Z_0-9]*[ \t]*;$/d
