generated vote model
voting functionality