self update