give the program from the previous exercise(sa graphical interface you should have entrys for the input and output file names and button for each sorting order bonusallow the user to do multiple sorts and add button for quitting most languages do not have the flexible built-in list (arrayoperations that python has write an algorithm for each of the following python operations and test your algorithm by writing it up in suitable function for exampleas functionreverse(mylistshould do the same as mylist reverse(obviouslyyou are not allowed to use the corresponding python method to implement your function (acount(mylistx(like mylist count( )(bisin(mylistx(like in mylist)(cindex(mylistx(like mylist index( )(dreverse(mylist(like mylist reverse()(esort(mylist(like mylist sort() write and test function shuffle(mylistthat scrambles list into random orderlike shuffling deck of cards write and test function innerprod( , )that computes the inner product of two (same lengthlists the inner product of and is computed asn- xi yi = write and test function removeduplicates(somelistthat removes duplicate values from list one disadvantage of passing function to the list sort method is that it makes the sorting slowersince this function is called repeatedly as python needs to compare various items an alternative to creating special key function is to create "decoratedlist that will sort in the desired order using the standard python ordering for exampleto sort student objects by gpawe could first create list of tuples [(gpa student )(gpa ,student )and then sort this list without passing key function these tuples will get sorted into gpa order the resulting list can then be traversed to rebuild list of student objects in gpa order redo the gpasort program using this approach the sieve of eratosthenes is an elegant algorithm for finding all of the prime numbers up to some limit the basic idea is to first create list of numbers from to the first number is removed from the listand announced as prime numberand all multiples of this number up to are removed from the list this process continues until the list is empty for exampleif we wished to find all the primes up to the list would originally contain the is removed and announced to be prime then and