Basic Update implementation