Modified addition function