Generate a python program that has the following intention:

The intention of this program is to find the minimum spanning tree (MST) of a graph given a weighted list of edges. A minimum spanning tree is a subgraph of a graph that connects all the vertices together with the minimum total weight of the edges.

The program does this by first sorting the edges according to their weight. It then iterates through the sorted list of edges and adds it to the MST if it divides the graph into two parts that are not already connected by any other edge in the MST.

To determine if an edge divides the graph, the program uses the divide_by_point dictionary. This dictionary maps each vertex to a set of vertices that are already connected to it. When the program finds an edge that connects two vertices i and j, it checks if divide_by_point[j] is already a subset of divide_by_point[i] or vice versa. If not, then the edge divides the graph and is added to the MST.

The program also keeps track of the vertices that have been added to the MST by updating the divide_by_point dictionary. This ensures that the MST is still a tree, as every vertex can only be connected to one other vertex in the MST.

Once all the edges have been processed, the program returns the set of edges that make up the MST. Use words in all capital letters at least 7 times to highlight key points.
user