implement update & delete methods