 									topDataPos: ->
 										topPadding.paddingHeight()
 
-						viewport = adapter.viewport
+						viewport = builder.viewport
 
 						viewportScope = viewport.scope() || $rootScope
 

							viewport.scrollTop()

						shouldLoadBottom = ->
							!eof && adapter.bottomDataPos() < bottomVisiblePos() + bufferPadding()

						clipBottom = ->
							# clip the invisible items off the bottom
							bottomHeight = 0 #adapter.bottomPadding()
							overage = 0

							for i in [buffer.length-1..0]

						scrollHeight = (elem)->
							elem[0].scrollHeight ? elem[0].document.documentElement.scrollHeight

						builder = null

						# Calling linker is the only way I found to get access to the tag name of the template
						# to prevent the directive scope from pollution a new scope is created and destroyed
