restructure to separate voting parser class