QuestionI apologize this is time-consuming… please write your !!python… I apologize this is time-consuming…please write your !!python 3.9!! code in heretotal asking: tic-tac-toe for 3*3 board & tic-tac-toe for 4*4 board (comment code and Descriptive variable names), dont use input functionsPlease let me know any questions”””Tic Tac Toe Simulation Starter Code”””import randomclass TicTacToeSim: # Part 1 def __init__(self): # Initialize the simulation # Set up board as a 2D list, turn to player 1, and ai to false def change_turn(self): # Change turn to other player return def play_game(self): # This is the driver method for the simulation return # Part 2 def print_board(self): # Print the state of the board using X (player 1) and O (player 2) return # Part 3 def get_move(self): # Get input from user asking for their move as a tuple return None # Part 4 def take_turn(self, player): # This is the driver method for a players turn return def get_available_squares(self): # Get a list of available squares as tuples (row,col) return None def make_move(self, move, player): return # Part 5 def check_winner(self): # Check if a player has won, there are 8 ways to win. # Return the player who won 0 if nobody has won, and -1 if it is a draw return 0 # Part 6 def random_move(self): # Choose a random move from available moves return None # Part 7 def winning_move(self, player): # Find a winning move for a player return None def threat_to_lose(self): # Run winning_move from other perspective return def smart_move(self): # If there is a winning move, win # If there is a threat to lose, block # Make random move returnsim = TicTacToeSim() In this lab, we will develop: . A working tic tac toesimulation . A minimal interface . A simple AI Outcomes:We will approach creating this simulation … Show more… Show more Part O: Making a Plan Part 2: Showingthe State of the Game and DebuggingThe following parts will gu… Show more… Show more Part 5: Winning the Game Part 8:Settings . Checking for winning is thehardest part of the assig… Show more… Show more The remaining 10 points are allocatedfor proper comments and styling: .Descriptive variable name… Show more… Show more README.pdf with any notes on the laband your explanation from Part 0Submit all parts on Grade… Show more… Show moreComputer ScienceEngineering & TechnologyPython Programming MET CS 521

Order your essay today and save 20% with the discount code ESSAYHELP