cluster-procs.tcl

This file defines the following Objects and Classes: ::acs::Cluster[i], ::acs::cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i], ::acs::Cluster[i]

Location:
packages/acs-tcl/tcl/cluster-procs.tcl

Procedures in this file

Detailed information

Class ::acs::Cluster (public)

 ::nx::Class ::acs::Cluster[i]

Class for managing a cluster of OpenACS nodes

Testcases:
No testcase defined.

acs::Cluster method allowed_command (protected)

 <instance of acs::Cluster[i]> allowed_command cmd

Check, which command are allowed to be executed in the cluster. ns_log notice "--cluster allowed [dict keys ${:allowed_command}]?"

Parameters:
cmd (required)

Testcases:
No testcase defined.

acs::Cluster method broadcast (public)

 <instance of acs::Cluster[i]> broadcast args [ args... ]

Send requests to all cluster peers.

Parameters:
args (required)

Testcases:
No testcase defined.

acs::Cluster method check_state (public)

 <instance of acs::Cluster[i]> check_state

Check the livelyness of the dynamic cluster nodes. This method is intended to be run on the canonical server only, since it might update the DynamicClusterPeers via acs::clusterwide.

Testcases:
No testcase defined.

acs::Cluster method current_server_is_canonical_server (public)

 <instance of acs::Cluster[i]> current_server_is_canonical_server

Check, if the current server is the canonical_server.

Testcases:
No testcase defined.

acs::Cluster method current_server_is_dynamic_cluster_peer (public)

 <instance of acs::Cluster[i]> current_server_is_dynamic_cluster_peer

We are a dynamic cluster peer, when we are not the canonical server neither isted in the static server locations.

Testcases:
No testcase defined.

acs::Cluster method current_server_locations (protected)

 <instance of acs::Cluster[i]> current_server_locations \
    [ -network_drivers network_drivers ]

Return a list of valid locations of the current server. Since "ns_driver info" is not yet available at the time, the *-init files are loaded, this method goes a long way to check for properties of all of the loaded modules. Network drivers with empty "port" or port == 0 are ignored.

Switches:
-network_drivers (optional, defaults to "nssock nsssl nsudp")

Testcases:
No testcase defined.

acs::Cluster method disconnect_request (public)

 <instance of acs::Cluster[i]> disconnect_request peerLocation

Server received a request to disconnect $peerLocation from dynamic cluster nodes.

Parameters:
peerLocation (required)

Testcases:
No testcase defined.

acs::Cluster method dynamic_cluster_nodes (public)

 <instance of acs::Cluster[i]> dynamic_cluster_nodes

Convenience function returning the list of dynamic cluster nodes.

Testcases:
No testcase defined.

acs::Cluster method dynamic_cluster_reconfigure (public)

 <instance of acs::Cluster[i]> dynamic_cluster_reconfigure operation \
    qualifiedLocation

Reconfigure the cluster via "join" or "disconnect" operation, when running on the canonical server. The result of the reconfiguration is a changed list of DynamicClusterPeers. The method returns a boolean value indicating success.

Parameters:
operation (required)
qualifiedLocation (required)

Testcases:
No testcase defined.

acs::Cluster method execute (protected)

 <instance of acs::Cluster[i]> execute messageDict

:log execute $messageDict

Parameters:
messageDict (required)

Testcases:
No testcase defined.

acs::Cluster method external_location (protected)

 <instance of acs::Cluster[i]> external_location qualified_location

For addresses communicated to container-external entities, we have to map container-internal IP addresses to external accessible addresses.

Parameters:
qualified_location (required)

Testcases:
No testcase defined.

acs::Cluster method incoming_request (public)

 <instance of acs::Cluster[i]> incoming_request

We received an incoming request from a cluster peer.

Testcases:
No testcase defined.

acs::Cluster method init (protected)

 <instance of acs::Cluster[i]> init

Testcases:
No testcase defined.

acs::Cluster method is_canonical_server (public)

 <instance of acs::Cluster[i]> is_canonical_server location

Check, if provided location belongs to the canonical server specs. The canonical server might listen on multiple protocols, IP addresses and ports.

Parameters:
location (required)

Testcases:
No testcase defined.

acs::Cluster method is_configured_server (protected)

 <instance of acs::Cluster[i]> is_configured_server locations

Check, if one of the provided locations is in the currently configured cluster nodes.

Parameters:
locations (required)

Testcases:
No testcase defined.

acs::Cluster method is_current_server (protected)

 <instance of acs::Cluster[i]> is_current_server location

Check, if the provided location is the current server. We expect the that the method "setup" was already called.

Parameters:
location (required)

Testcases:
No testcase defined.

acs::Cluster method join_request (public)

 <instance of acs::Cluster[i]> join_request peerLocation

Server received a request to join dynamic cluster nodes from $peerLocation. ns_log notice "Server received a join request" ns_log notice "... ns_conn host <[ns_conn host]> peer <[ns_conn peeraddr]>" ns_log notice "... ns_conn port <[ns_conn port]> peerport <[ns_conn peerport]>" ns_log notice "... peerLocation <$peerLocation> qualified [:qualified_location $peerLocation]" set headers [join [lmap {key value} [ns_set array [ns_conn headers]] {set _ "$key: $value\n... "}]] ns_log notice "... headers $headers"

Parameters:
peerLocation (required)

Testcases:
No testcase defined.

acs::Cluster method last_contact (public)

 <instance of acs::Cluster[i]> last_contact location

Return the milliseconds since the last contact with the denoted server. If there is no data available, the return values is empty.

Parameters:
location (required)

Testcases:
No testcase defined.

acs::Cluster method last_request (public)

 <instance of acs::Cluster[i]> last_request location

Return the milliseconds since the last request from the denoted server. If there is no data available, the return values is empty.

Parameters:
location (required)

Testcases:
No testcase defined.

acs::Cluster method log (protected)

 <instance of acs::Cluster[i]> log args [ args... ]
Parameters:
args (required)

Testcases:
No testcase defined.

acs::Cluster method map_inaddr_any (protected)

 <instance of acs::Cluster[i]> map_inaddr_any [ -dict ] location

When the preferred location match returns INADDR_ANY, map it to "localhost" (which is certainly a valid member in this range, valid for IPv4 and IPv6).

Switches:
-dict (optional)
Parameters:
location (required)

Testcases:
No testcase defined.

acs::Cluster method ns_http_send (protected)

 <instance of acs::Cluster[i]> ns_http_send location args \
    [ args... ]

:log "outgoing ns_http request to $location // $args"

Parameters:
location (required)
args (required)

Testcases:
No testcase defined.

acs::Cluster method peer_nodes (protected)

 <instance of acs::Cluster[i]> peer_nodes dynamic_peers

Determine the peer nodes of the server cluster. These are cluster nodes which will receive intra-server commands.

Parameters:
dynamic_peers (required)

Testcases:
No testcase defined.

acs::Cluster method preauth (public)

 <instance of acs::Cluster[i]> preauth args [ args... ]

Process no more pre-authorization filters for this connection (avoid running of expensive filters). ns_log notice "PREAUTH returns filter_break"

Parameters:
args (required)

Testcases:
No testcase defined.

acs::Cluster method preferred_location (protected)

 <instance of acs::Cluster[i]> preferred_location locations

Return the preferred location.

Parameters:
locations (required)

Testcases:
No testcase defined.

acs::Cluster method qualified_location (public)

 <instance of acs::Cluster[i]> qualified_location location

Return a canonical representation of the provided location, where the DNS name is resolved and the protocol and port is always included. When there is no protocol provided, HTTP is assumed. Provide defaults, when no port is included in the passed-in location. Note, that there is no default provided for non-HTTP* locations, so these must contain the port.

Parameters:
location (required)

Testcases:
No testcase defined.

acs::Cluster method reachable (protected)

 <instance of acs::Cluster[i]> reachable location

:log "reachable $location"

Parameters:
location (required)

Testcases:
No testcase defined.

acs::Cluster method register_nodes (public)

 <instance of acs::Cluster[i]> register_nodes [ -startup ]

Register the defined cluster nodes by creating/recreating cluster node objects.

Switches:
-startup (optional, defaults to "false")

Testcases:
No testcase defined.

acs::Cluster method secret (protected)

 <instance of acs::Cluster[i]> secret

Return secret used for signing messages

Testcases:
No testcase defined.

acs::Cluster method secret_configured (public)

 <instance of acs::Cluster[i]> secret_configured

Check, whether the secret for signing messages in the intra-cluster talk is configured. More checks for different secret definition methods might be added.

Testcases:
No testcase defined.

acs::Cluster method send (public)

 <instance of acs::Cluster[i]> send [ -delivery delivery ] location \
    args [ args... ]

Send a command by different means to the cluster node for intra-server talk. Valid delivery methods are - ns_http (for HTTP and HTTPS) - connchan (for HTTP and HTTPS) - udp (plain UDP only)

Switches:
-delivery (optional, defaults to "ns_http")
Parameters:
location (required)
args (required)

Testcases:
No testcase defined.

acs::Cluster method send_disconnect_request_to_canonical_server (public)

 <instance of acs::Cluster[i]> send_disconnect_request_to_canonical_server

Send a disconnect request to the canonical server.

Testcases:
No testcase defined.

acs::Cluster method send_dynamic_cluster_reconfigure_request (protected)

 <instance of acs::Cluster[i]> send_dynamic_cluster_reconfigure_request \
    operation

Send a cluster reconfigure request to the canonical server.

Parameters:
operation (required)

Testcases:
No testcase defined.

acs::Cluster method send_join_request_to_canonical_server (public)

 <instance of acs::Cluster[i]> send_join_request_to_canonical_server

Send a join request to the canonical server.

Testcases:
No testcase defined.

acs::Cluster method setup (public)

 <instance of acs::Cluster[i]> setup

Setup object specific variables. Make sure to call this method, when the called procs are available. Make sure the container support is initialized

Testcases:
No testcase defined.

acs::Cluster method update_node_info (public)

 <instance of acs::Cluster[i]> update_node_info

Update cluster configuration when the when the configuration variables changed, or when nodes become available/unavailable after some time. Typically, this method is called via scheduled procedure every couple of seconds when clustering is enabled.

Testcases:
No testcase defined.

acs::Cluster method message decode (protected)

 <instance of acs::Cluster[i]> message decode

Return a dict of the decoded message TODO: add timestamp?

Testcases:
No testcase defined.

acs::Cluster method message encode (protected)

 <instance of acs::Cluster[i]> message encode cmd
Parameters:
cmd (required)

Testcases:
No testcase defined.

acs::Cluster method message sign (protected)

 <instance of acs::Cluster[i]> message sign message

Return signature for message :log "message sign: $message"

Parameters:
message (required)

Testcases:
No testcase defined.

acs::Cluster method message verify (protected)

 <instance of acs::Cluster[i]> message verify message signature

Verify if the signature of the message is ok and return boolean value. :log "message verify {$message $signature}"

Parameters:
message (required)
signature (required)

Testcases:
No testcase defined.
[ show source ]