add generic add method.