finish add variables function