custom_action_order( child_rsc, stop_key(child_rsc), NULL, group_data->self, stopped_key(group_data->self), NULL, pe_ordering_optional, data_set);  order_start_start(group_data->self, child_rsc, pe_ordering_optional); }  last_rsc = child_rsc; );  if(group_data->ordered && last_rsc != NULL) { custom_action_order( last_rsc, start_key(last_rsc), NULL, group_data->self, started_key(group_data->self), NULL, pe_ordering_optional, data_set);  order_stop_stop( group_data->self, last_rsc, pe_ordering_optional); }  }
void group_internal_constraints(resource_t *rsc, pe_working_set_t *data_set){	resource_t *last_rsc = NULL;	group_variant_data_t *group_data = NULL;	get_group_variant_data(group_data, rsc);	custom_action_order(		group_data->self, stopped_key(group_data->self), NULL,		group_data->self, start_key(group_data->self), NULL,		pe_ordering_optional, data_set);	custom_action_order(		group_data->self, stop_key(group_data->self), NULL,		group_data->self, stopped_key(group_data->self), NULL,		pe_ordering_optional, data_set);	custom_action_order(		group_data->self, start_key(group_data->self), NULL,		group_data->self, started_key(group_data->self), NULL,		pe_ordering_optional, data_set);		slist_iter(		child_rsc, resource_t, group_data->child_list, lpc,		order_restart(child_rsc);		if(last_rsc != NULL) {			order_start_start(				last_rsc, child_rsc, pe_ordering_optional);			order_stop_stop(				child_rsc, last_rsc, pe_ordering_optional);			/* recovery */			child_rsc->restart_type = pe_restart_restart;			order_start_start(				last_rsc, child_rsc, pe_ordering_recover);			order_stop_stop(				child_rsc, last_rsc, pe_ordering_recover);		} else {