Answer:
c. All of these
Step-by-step explanation:
Generic code by replacing generic types with Object, or with with upper bounds.
The compiler has to insert type casts into code that results from translating generic types do not exist at the byte code level.