add Add() function