cleanup and modified GA
modified GA