programming problems complete the sudoku program as described in chap and augment it with the depth first search described in sect to complete sudoku program that is capable of solving any sudoku puzzle it should solve these puzzles almost instantly if it is taking long time to solve puzzle it is likely because your reduce function is not reducing the puzzle as described in chap to complete this exercise you will need two functionsthe solutionok function and the solutionviable function the solutionviable function is given in the and returns true if none of the sets in the matrix are empty the solutionok function returns true if the solution is valid solution this can be checked very easily if any of the sets in the matrix do not contain contain exactly element then the solution is not okay and false should be returned if the union of any group within sudoku puzzle does not contain elements then the solution is not okay and false should be returned otherwisethe solution is okay and true should be returned after completing this program you should be able to solve sudoku problems like sudoku txt or sudoku txt which are available for download on the text' website design an orderedtreeset class which can be used to insert itemsdelete itemsand lookup items in an average case of (log ntime implement the in operator on this class for set containment also implement an iterator that returns the items of the set in ascending order the design of this set should allow items of any type to be added to the set as long as they implement the __lt__ operator this orderedtreeset class should be written in file called orderedtreeset py the main function of this module should consist of test program for your orderedtreeset class that thoroughly tests your code the main function should be called using the standard if statement that distinguishes between the module being imported or run itself design an orderedtreemap class which uses an orderedtreeset class in its implementation to organize this correctly you should create two modulesan orderedtreeset py module and an orderedtreemap py module have the ordered treemap class use the orderedtreeset class in its implementation the way hashset and hashmap were implemented in chap design test cases to thoroughly test your orderedtreemap class this copy belongs to 'acha