use selfslave for self-updating