anchor.diff:  	if(!question)
   		return
   	question = sanitizeSQL(question)
  -	var/datum/DBQuery/query_polladd_question = SSdbcore.NewQuery("INSERT INTO [format_table_name("poll_question")] (polltype, starttime, endtime, question, adminonly, multiplechoiceoptions, createdby_ckey, createdby_ip, dontshow) VALUES ('[polltype]', '[starttime]', '[endtime]', '[question]', '[adminonly]', '[choice_amount]', '[sql_ckey]', INET_ATON('[address]'), '[dontshow]')")
  -	if(!query_polladd_question.warn_execute())
  -		return
  -	if(polltype == POLLTYPE_TEXT)
  -		log_admin("[key_name(usr)] has created a new server poll. Poll type: [polltype] - Admin Only: [adminonly ? "Yes" : "No"] - Question: [question]")
  -		message_admins("[key_name_admin(usr)] has created a new server poll. Poll type: [polltype] - Admin Only: [adminonly ? "Yes" : "No"]<br>Question: [question]")
  -		return
  -	var/pollid = 0
  -	var/datum/DBQuery/query_get_id = SSdbcore.NewQuery("SELECT id FROM [format_table_name("poll_question")] WHERE question = '[question]' AND starttime = '[starttime]' AND endtime = '[endtime]' AND createdby_ckey = '[sql_ckey]' AND createdby_ip = INET_ATON('[address]')")
  -	if(!query_get_id.warn_execute())
  -		return
  -	if(query_get_id.NextRow())
  -		pollid = query_get_id.item[1]
  +	var/list/sql_option_list = list()
   	var/add_option = 1
   	while(add_option)
  -		var/option = input("Write your option","Option") as message|null
  +		var/option = input("Write your option","Option") option as message|null
   		if(!option)
  -			return pollid
  +			return
   		option = sanitizeSQL(option)
  -		var/percentagecalc = 1
  -		if (polltype != POLLTYPE_IRV)
  -			switch(alert("Calculate option results as percentage?",,"Yes","No","Cancel"))
  -				if("Yes")
  -					percentagecalc = 1
  -				if("No")
  -					percentagecalc = 0
  -				else
  -					return pollid
   		var/minval = 0
   		var/maxval = 0
   		var/descmin = ""
  
positive.code: 	if(!endtime)
  		return
  	endtime = sanitizeSQL(endtime)
  	var/datum/DBQuery/query_validate_time = SSdbcore.NewQuery("SELECT STR_TO_DATE('[endtime]','%Y-%c-%d %T')")
  	if(!query_validate_time.warn_execute())
  		return
  	if(query_validate_time.NextRow())
  		endtime = query_validate_time.item[1]
  		if(!endtime)
  			to_chat(src, "Datetime entered is invalid.")
  			return
  	var/datum/DBQuery/query_time_later = SSdbcore.NewQuery("SELECT TIMESTAMP('[endtime]') < NOW()")
  	if(!query_time_later.warn_execute())
  		return
  	if(query_time_later.NextRow())
  		var/checklate = text2num(query_time_later.item[1])
  		if(checklate)
  			to_chat(src, "Datetime entered is not later than current server time.")
  			return
  	var/adminonly
  	switch(alert("Admin only poll?",,"Yes","No","Cancel"))
  		if("Yes")
  
negative.code: 		if("Multiple Choice")
  			polltype = POLLTYPE_MULTI
  			choice_amount = input("How many choices should be allowed?","Select choice amount") as num|null
  			if(choice_amount == 0)
  				to_chat(src, "Multiple choice poll must have at least one choice allowed.")
  			else if (choice_amount == null)
  				return
  		if ("Instant Runoff Voting")
  			polltype = POLLTYPE_IRV
  