FINCH: A SYSTEM FOR EVOLVING JAVA (BYTECODE)
ASM: A code manipulation tool to implement adaptable systems