extracted voteable module to gem