LINK (fork this): EDITOR For a simple game, there is a Video…

LINK (fork this): EDITOR For a simple game, there is a VideoBox that displays information about the player’s score, current level, and state of the game (playing or paused). You are tasked with designing the VideoBox class which will have the following specifications: def __init__(self, score: int, level: int, is_paused: bool) – Constructor to initialize the VideoBox with an initial score, level, and whether or not the game is paused.  def display(self) – RETURNS a string in the format “Score: {score} | Level: {level} | Status: {Paused or Playing}”. For example, the output for a player with a score of 150, on level 3, playing the game would be “Score: 150 | Level: 3 | Status: Playing”. def update_score(self, new_score: int) – SETS, does not add or subtract, the player’s score to the new value passed in. def next_level(self) – INCREMENTS the player’s current level by 1. def pause_game(self) – Sets the game status to PAUSED. def resume_game(self) – Sets the game status to PLAYING. # Example usagevideo_box = VideoBox(150, 3, False)  # Starting with score 150, level 3, and game playingprint(video_box.display())  # Output: Score: 150 | Level: 3 | Status: Playingvideo_box.update_score(200)print(video_box.display())  # Output: Score: 200 | Level: 3 | Status: Playingvideo_box.next_level()print(video_box.display())  # Output: Score: 200 | Level: 4 | Status: Playingvideo_box.pause_game()print(video_box.display())  # Output: Score: 200 | Level: 4 | Status: Pausedvideo_box.resume_game()print(video_box.display())  # Output: Score: 200 | Level: 4 | Status: Playing

LINK (fork this): EDITOR A teacher wants to keep track of st…

LINK (fork this): EDITOR A teacher wants to keep track of students’ grades in a class as well as have the ability to compute some statistics. Write the class GradeReport to help the teacher with this task. The GradeReport class should have the following specifications: def __init__(self, maxSize: int) – Initializes a GradeReport object with TWO instance attributes: maxSize (the maximum number of grades the GradeReport can hold) and grades (a list to hold students’ grades). The grades attribute should be an empty list upon object creation. def add_grade(self, grade: float) – Adds a new grade to the list of student grades. If adding this grade causes len(grades) > maxSize to be true, the OLDEST grade should be removed. def printGradeReport(self) – PRINTS all the current grades according to the following format. If there are no grades in the list, it should follow the same format. “Number of grades in GradeReport: {}” “Maximum number of grades in GradeReport: {}” “Current grades:” {grade1} {grade2} {    …    } def average_grade(self) – RETURNS the average of all the grades in the list. If there are no grades in the list, it should return -1. def lowest_grade(self) – RETURNS the LOWEST grade in the list. If there are no grades in the list, it should return -1. def highest_grade(self) – RETURNS the HIGHEST grade in the list. If there are no grades in the list, it should return -1. def count_above_average(self) – RETURNS the number of grades that are GREATER THAN the average grade. You should test your code based on the expected behavior. We will not provide any explicit tests.