fixed the addition function