added modify, not tested properly