Implement the method insert_times in the ArrayList class which takes parameters idx, n, x, and inserts n copies of x into the list at index idx. You may assume that 0 ≤ idx ≤ the length of the list, and n > 0.E.g., calling insert_times(3, 5, 'a') on an ArrayList with contents [0,1,2,3,4,5,6,7] should result in the updated ArrayList [0,1,2,a,a,a,a,a,3,4,5,6,7]Your implementation may only use the following methods on the built-in list:self.data[i] for getting and setting values at an existing, positive index ilen(self.data) to obtain the number of slotsself.data.append(None) to grow the list by one slot at a timedel self.data[len(self.data)-1] to delete the last slot in a list