init foo called 1 time idle foo called 2 times