         context:            context
         tracked:            {@cacheByteSize, @unusedCacheByteSize}
         actual:             {cacheByteSize, unusedCacheByteSize}
-        cachedBitmaps:      cachedBitmaps.length
+        cacheBitmaps:      cacheBitmaps.length
         unusedCacheBitmaps: @_unusedCacheBitmaps.length
 
       throw new Error "bad _cacheByteSize"

  _recycleInUseCacheBitmap: (element, size) ->
    # @_validateCacheByteSize "_recycleInUseCacheBitmap start"
    if recyclableCacheBitmap = @_findRecycleableCacheBitmap size
      @_cachedBitmaps.set element, mapRemove @_cachedBitmaps, recyclableCacheBitmap.element

      # log "found recyclableCacheBitmap for #{size}, recyclableCacheBitmap.lastFrameUsed = #{recyclableCacheBitmap.lastFrameUsed}, _currentFrameNumber = #{@_currentFrameNumber}"
      getGlobalEpochCycle().logEvent "recycleUsedCacheBitmap", "recycleUsedCacheBitmap"

  # called by Element#_clearDrawCache
  doneWithCacheBitmap: (element) ->
    # @_validateCacheByteSize "doneWithCacheBitmap start"
    if cachedBitmap = mapRemove @_cacheBitmaps, element
      cachedBitmap.elementDoneWithCacheBitmap()
      byteSize = cachedBitmap.getByteSize()
      # console.error "doneWithCacheBitmap recycling for #{cachedBitmap.element?.inspectedName} bitmap = #{cachedBitmap.bitmap.size}"
