implemented upvote (after fucking 5 hours of tedious work)