added dynamic button and generator