Fix compile issue with some versions (e.g. 1.6.0_24-b07) that throw an error: type parameters of <T>T cannot be determined; no unique maximal instance exists for type variable T with upper bounds T,java.lang.Object