change bytecode version from 1.2 to 1.6
add generic type