attach same event only once