         for _ in 0..<index {
             player.advanceToNextItem()
         }
+
+        currentSongIndex = index
     }
 
     private func jumpToPreviousSong() {
-        print("")
-        print("Cool Guys Don't Look Back At 💥 Explosions💥 ")    
-        print("Jump to previous song has not been implemented yet.")
+        guard currentSongIndex - 1 >= 0 else {
+            return
+        }
+
+        let previous = currentSongIndex - 1
+        jumpToSongAtIndex(previous)
     }
 
     private func logStart() {

    }

    private func logInputTips() {
        print("\nType \"(n)ext\" or \"(p)revious\" to change song.")
        print("Type index number to play that song.")
    }

}

import Foundation
import AVFoundation

class RyCooder {

    private let runLoop = NSRunLoop.currentRunLoop()
    private let stdinHandle = NSFileHandle.fileHandleWithStandardInput()
    private let songs: [AVPlayerItem]
    private let player: AVQueuePlayer

    private var currentSongIndex = 0

    init(pathToStage: String) {
        let musicFiles = RyCooder.musicFilesInDirectory(pathToStage)
