v2.0 add delete & list