use ienumerable
remove duplication
updates exe