Hi i am facing problem in completing this q5 in assignment 2.can some one pls help me?

class ProbingHashTable:
def init(self, max_size=MAX_HASH_TABLE_SIZE):
# 1. Create a list of size max_size with all values None
self.data_list = [None]*max_size

def insert(self, key, value):
    # 1. Find the index for the key using get_valid_index
    idx = get_valid_index(self.data_list,key)
    print("insert",idx)
    self.data_list[idx]=key,value
    print(self.data_list[idx],idx)
    # 2. Store the key-value pair at the right index
    #if(self.data_list[idx]!=None):
    #self.data_list[idx]=key,value
    #else:
    #    self.data_list[idx+1] =key,value
    #print("inserted",key,value)


def find(self, key):
    # 1. Find the index for the key using get_valid_index
    idx = get_valid_index(self.data_list,key)
    #print("find",idx)
    # 2. Retrieve the data stored at the index
    kv = self.data_list[idx-1]
    
    # 3. Return the value if found, else return None
    return None if kv is None else kv[1]


def update(self, key, value):
    # 1. Find the index for the key using get_valid_index
    idx = get_valid_index(self.data_list,key)
    print("update",idx)
    # 2. Store the new key-value pair at the right index
    self.data_list[idx-1] = key,value
    print("updateed",key,value)


def list_all(self):
    # 1. Extract the key from each key-value pair 
    return [kv[0] for kv in self.data_list if kv is not None]

Please state the error which you’ve encountered.