updates for java 8 compatibility