abstract add.