added necessary interaction for reverse engineering