Overload add function
Add sub function