contorller update