added ga, and less compilation