target add and modify, untested