         // NOOP if they don't exist
         let nthWaypoint = "" // TODO, add correct waypoint counting
         let destination = (step.destinations ?? "").components(separatedBy: ",")[0]
-        let exit = step.maneuver.exit ?? 1 // TODO: ordinalize
+        let exit = step.maneuverExit ?? 1 // TODO: ordinalize
         let modifierConstant =
             ((self.instructions.object(forKey: "constants") as! NSDictionary)
             .object(forKey: "modifier") as! NSDictionary)

            // TODO: Handle
            break
        case let x where x == "rotary" || x == "roundabout":
            if((step.rotary_name != nil) && ((step.maneuver.exit != nil)) && (instructionObject.object(forKey: "name_exit") != nil)) {
                instructionObject = instructionObject.object(forKey: "name_exit") as! NSDictionary
            } else if ((step.rotary_name != nil) && (instructionObject.object(forKey: "name") != nil)) {
                instructionObject = instructionObject.object(forKey: "name") as! NSDictionary
            } else if ((step.maneuver.exit != nil) && (instructionObject.object(forKey: "exit") != nil)) {
                instructionObject = instructionObject.object(forKey: "exit") as! NSDictionary
            } else {
                instructionObject = instructionObject.object(forKey: "default") as! NSDictionary

            .replacingOccurrences(of: "{way_name}", with: wayName)
            .replacingOccurrences(of: "{destination}", with: destination)
            .replacingOccurrences(of: "{exit_number}", with: String(exit))
            .replacingOccurrences(of: "{rotary_name}", with: step.rotaryName ?? "")
            .replacingOccurrences(of: "{lane_instruction}", with: "") // TODO: implement correct lane instructions
            .replacingOccurrences(of: "{modifier}", with: modifierConstant)
            .replacingOccurrences(of: "{direction}", with: "") // TODO: integrate actual direction
