on off, clear, invert work and update