java 1.5 compatibility fixes