fixed add()