       $('html, body').animate scrollTop: vertical*@state.selectedMark.y-window.innerHeight/2+80, 500
 
   render: ->
-    return null if @state.subjects is null
-    console.log 'subjects: ', @state.subjects[0]
+    # don't render if ya ain't got subjects (yet)
+    return null if @state.subjects is null or @state.subjects.length is 0
 
     viewBox = [0, 0, @state.imageWidth, @state.imageHeight]
 


    # prepare new classification
    if @state.subjects.shift() is undefined or @state.subjects.length <= 0
      console.log 'Out of subjects. Fetching some more...'
      @fetchSubjects(@state.subjectEndpoint)
      return
    else
      console.log 'Loading current subject image...'
      @loadImage @state.subjects[0].location

    @state.classification = new Classification @state.subjects[0]


  usingFakeSubject: ->
    if getUrlParamByName('use_fake_subject') is "true"
      console.log 'DEBUG NOTE: USING FAKE SUBJECTS'
      return true
    else
      return false
