diff --git a/rover.py b/rover.py
index f3142320fba1bd0a36114bdfe0227ef51e447059..2d9adc91f02aa764efe6e3fa8f3980d58a3d497c 100644
--- a/rover.py
+++ b/rover.py
@@ -88,6 +88,18 @@ class Rover:
             self.x += 1
         elif self.direction == 'W':
             self.x -= 1
+        elif self.direction == 'NE':
+            self.x += 1
+            self.y += 1
+        elif self.direction == 'NW':
+            self.x -= 1
+            self.y += 1
+        elif self.direction == 'SE':
+            self.x += 1
+            self.y -= 1
+        elif self.direction == 'SW':
+            self.x -= 1
+            self.y -= 1
 
     def move_backward(self):
         if self.direction == 'N':
@@ -98,6 +110,18 @@ class Rover:
             self.x -= 1
         elif self.direction == 'W':
             self.x += 1
+        elif self.direction == 'NE':
+            self.x -= 1
+            self.y -= 1
+        elif self.direction == 'NW':
+            self.x += 1
+            self.y -= 1
+        elif self.direction == 'SE':
+            self.x -= 1
+            self.y += 1
+        elif self.direction == 'SW':
+            self.x += 1
+            self.y += 1
 
     def turn_left(self):
         current_index = self.directions.index(self.direction)
@@ -265,5 +289,31 @@ class TestRover(unittest.TestCase):
         control.execute_command('R')
         self.assertEqual(rover.direction, 'NW')
 
+    # Test Sequence Processing
+    def test_sequence_processing(self):
+        rover = Rover(3, 5, 'N')
+        control = MissionControl(rover)
+
+        control.execute_command('F')
+        self.assertEqual((rover.x, rover.y), (3,6))
+        self.assertEqual(rover.direction, 'N')
+
+        control.execute_command('RF')
+        self.assertEqual((rover.x, rover.y), (4,7))
+        self.assertEqual(rover.direction, 'NE')
+
+        control.execute_command('RFF')
+        self.assertEqual((rover.x, rover.y), (6,7))
+        self.assertEqual(rover.direction, 'E')
+
+        control.execute_command('BBBBBLL')
+        self.assertEqual((rover.x, rover.y), (1,7))
+        self.assertEqual(rover.direction, 'N')
+        
+        control.execute_command('BRRRFLF')
+        self.assertEqual((rover.x, rover.y), (3,5))
+        self.assertEqual(rover.direction, 'E')
+
+
 if __name__ == '__main__':
     unittest.main()
\ No newline at end of file