   getReference = (slick, index) ->
     references = slick.$slides
 
+    $ references[index]
+
+  getPreviousReference = (slick, index) ->
+    references = slick.$slides
+    slideCount = slick.slideCount
+
+    i = slideCount - 1
+
+    if index == 0
+      index = i
+    else
+      index = index - 1
+
+    $ references[index]
+
+  getNextReference = (slick, index) ->
+    references = slick.$slides
+    slideCount = slick.slideCount
+
+    i = slideCount - 1
+
+    if index >= i
+      index = 0
+    else
+      index = index + 1
+
     $ references[index]
  onBeforeChange: (slick, index, next) =>
    deactivateBrowse.call @

    currentReference = getReference.call @, slick, index

    deactivateReference.call @, currentReference

      currentReference = getReference.call @, slick, index

      activateReference.call @, currentReference

      previousReference = getPreviousReference.call @, slick, index

      previousReference.velocity {
        translateX: '600px'
      }

      nextReference = getNextReference.call @, slick, index

      nextReference.velocity {
        translateX: '-600px'
      }

      activateBrowse.call @

