let main () =
      match User_interface.Text.cp_topology_meta#get with
        None -> let module Go = Load_Experiment (Topoin Go.main ()
      | Some "sphere_radius_2" ->
          let module Go =
            Load_Experiment
              (Topology.Meta.Sphere_radius_2 (Topo)
                 (User_interface.Text.Meta_topo_parameters))
          in
          Go.main ()
      | Some "shuffle_neighbours" ->
          let module Go =
            Load_Experiment
              (Topology.Meta.Shuffle_neighbours (Topo)
                 (User_interface.Text.Meta_topo_parameters))
          in
          Go.main ()
      | Some "cut_links" ->
          let module Go =
            Load_Experiment
              (Topology.Meta.Cut_links (Topo)
                 (User_interface.Text.Meta_topo_parameters))
          in
          Go.main ()
      | Some s ->
          failwith
            ("The meta topology " ^ s ^
               " is unknown. Available meta topologies are " ^
               User_interface.Text.available_topologies_meta ^ ".")