   # Asynchronous fetch from synced storage, called only at startup.
   pull: ->
     @storage.get null, (items) =>
+      # Chrome sets chrome.runtime.lastError if there is an error.
       if chrome.runtime.lastError is undefined
         for own key, value of items
           @log "pull: #{key} <- #{value}"
           @storeAndPropagate key, value
       else
-        @log "chrome sync callback for Sync.pull() indicates error"
-        @log chrome.runtime.lastError
+        console.log "chrome sync callback for Sync.pull() indicates error"
+        console.log chrome.runtime.lastError
 
   # Asynchronous message from synced storage.
   listener: (changes, area) ->

root = exports ? window
root.Sync = Sync =

  debug: false
  storage: chrome.storage.sync
  doNotSync: [ "settingsVersion", "previousVersion" ]

#
# * Sync.set() and Sync.clear() propagate local changes to chrome.storage.sync.
# * Sync.listener() listens for changes to chrome.storage.sync and propagates those
