added automatic updating