init & background update
merge