voting backend complete