<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def run(self):
 """Start the game loop"""

        global world
        self.__is_running = True
        while(self.__is_running):
            #Our game loop

            #Catch our events
            self.__handle_events()

	        #Update our clock
            self.__clock.tick(self.preferred_fps)
            elapsed_milliseconds = self.__clock.get_time()
    	    if 2 in self.event_flags:
                self.elapsed_milliseconds = 0

            #Print the fps that the game is running at.
    	    if self.print_frames:
                self.fpsTimer += elapsed_milliseconds
                if self.fpsTimer > self.print_fps_frequency:
                    print "FPS: ", self.__clock.get_fps()
                    self.fpsTimer = 0.0

            #Update all of our objects
    	    if not 0 in self.event_flags:
        	   world.update(elapsed_milliseconds)

            #Draw all of our objects
    	    if not 1 in self.event_flags:
        	   world.draw(elapsed_milliseconds)

            #Make our world visible
            pygame.display.flip()