# File lib/kwala/lib/cycle_detector.rb, line 354
    def print_sub_clusters_and_members(clusters, idx = "0", indent = 1)
      padding = "  " * (indent + 1)
      opadding = "  " * indent

      clusters.sort.each do |cluster_name, members|
        next if cluster_name == DEFAULTCLUSTER
        puts "", opadding + "subgraph cluster#{ idx } { "
        puts padding + "label = \"#{cluster_name}\";"

        subs, mems = members.partition{ |m| m.is_a?(Hash) }

        print_cluster_members(mems, padding)

        tidx = idx + "_a"
        subs.each do |member|
          puts ""
          print_sub_clusters_and_members(member, tidx , indent + 1)
          tidx = tidx.succ
        end


        puts "", opadding + "}", ""
        idx = idx.succ
      end

      idx
    end