streamlined logic for autoupdating