fix bugs and add new feature : select useing