TODO: implement delete functionality