update from interface