Filling optional slots in form

def validate(self, dispatcher, tracker, domain):
	slot_values = self.extract_other_slots(dispatcher, tracker, domain)

	slot_to_fill = tracker.get_slot(REQUESTED_SLOT)

	if slot_to_fill:
		slot_values.update(self.extract_requested_slot(dispatcher, tracker, domain))
	for slot, value in slot_values.items():
		if slot == 'full_name':
			if value.replace(" ","").isalpha() == False:
				dispatcher.utter_template('utter_wrong_full_name', tracker)
				slot_values[slot] = None
			elif (' ' in value) == False:
				slot_values['first_name'] = value
			else :
				val = value.split()
                slot_values['first_name'] = val[0]
                slot_values['last_name'] = val[1]

While using the above code in FormAction I am getting, RuntimeError: dictionary changed size during iteration. Is this correct way to filling the optional slots in form action