code: def build_k5_graph():
      
      graph = UndirectedGraph()
  
      # K5 has 5 nodes
      for _ in range(5):
          graph.new_node()
  
      # K5 has 10 edges
      # --Edge: a
      graph.new_edge(1, 2)
      # --Edge: b
      graph.new_edge(2, 3)
      # --Edge: c
      graph.new_edge(3, 4)
      # --Edge: d
      graph.new_edge(4, 5)
      # --Edge: e
      graph.new_edge(5, 1)
      # --Edge: f
      graph.new_edge(1, 3)
      # --Edge: g
      graph.new_edge(1, 4)
      # --Edge: h
      graph.new_edge(2, 4)
      # --Edge: i
      graph.new_edge(2, 5)
      # --Edge: j
      graph.new_edge(3, 5)
  
      return graph
docs: Makes a new K5 graph.
         Ref: http://mathworld.wolfram.com/Pentatope.html