improving adding operations