 
 $ = (id) -> document.getElementById id
 bgExclusions = chrome.extension.getBackgroundPage().Exclusions
+restoreSettingsVersion = null
 
 # We have to use Settings from the background page here (not Settings, directly) to avoid a race condition for
 # the page popup.  Specifically, we must ensure that the settings have been updated on the background page

          alert "Failed to parse Vimium backup."
          return

        for option in Option.all
          if option.field of backup
            option.populateElement backup[option.field]

  # Static method.
  @saveOptions: ->
    Option.all.map (option) -> option.save()
    # If we're restoring a backup, then restore the backed up settingsVersion.
    if restoreSettingsVersion?
      bgSettings.set "settingsVersion", restoreSettingsVersion
      restoreSettingsVersion = null
    # We need to apply migrations in case we are restoring an old backup.
    bgSettings.applyMigrations()

