Problem: Design a program that solves an accessibility or usability problem. Your program can be designed to be beneficial to all users, or may target users with a specific disability. Use tsapp library. Requirements: Use at least two directories to organize project files Create at least one module that is imported by the main program Use at least one advanced import (from import, import as, or import with commas) Use at least one try-except block Use at least one list comprehension Make a program that lets the user increase the size of the text shown on screen by letting them click on two icons shown on screen. Use tsapp library. I am using tech smart.
Below is an example of a program that meets the requirements. This program uses the Tkinter library (which is part of the Python standard library) to create a GUI application that allows users to increase the size of the text shown on screen by clicking on two icons. **Directory Structure:** ```bash project/ main.py utils/ __init__.py text_size.py requirements.txt ``` **main.py:** ```python import tkinter as tk from tkinter import messagebox from utils.text_size import TextSize from utils import text_size class Application(tk.Frame): def __init__(self, master=None): super().__init__(master) self.master = master self.pack() self.create_widgets() self.text_size = TextSize() def create_widgets(self): self.increase_button = tk.Button(self) self.increase_button["text"] = "Increase Text Size" self.increase_button["command"] = self.increase_text_size self.increase_button.pack(side="top") self.decrease_button = tk.Button(self) self.decrease_button["text"] = "Decrease Text Size" self.decrease_button["command"] = self.decrease_text_size self.decrease_button.pack(side="top") self.quit = tk.Button(self, text="QUIT", fg="red", command=self.master.destroy) self.quit.pack(side="bottom") self.text_label = tk.Label(self, text="Default Text Size") self.text_label.pack(side="top") def increase_text_size(self): try: self.text_size.increase_size() self.text_label.config(font=("Arial", self.text_size.get_size())) except Exception as e: messagebox.showerror("Error", str(e)) def decrease_text_size(self): try: self.text_size.decrease_size() self.text_label.config(font=("Arial", self.text_size.get_size())) except Exception as e: messagebox.showerror("Error", str(e)) root = tk.Tk() app = Application(master=root) app.mainloop() ``` **utils/text_size.py:** ```python class TextSize: def __init__(self): self.size = 12 def increase_size(self): self.size += 2 def decrease_size(self): self.size -= 2 def get_size(self): return self.size ``` **requirements.txt:** ```bash tkinter ``` To run the program, navigate to the project directory and run the following command: ```bash python main.py ``` This will launch the GUI application, which allows users to increase and decrease the text size by clicking on the corresponding buttons. The text size is updated in real-time, and any errors that occur during the process are displayed in a message box.