virtual void TearDown()
	{
		ae->shutdown();
		ae2->shutdown();
		delete cace;
		delete ae->getCommunicator();
		delete cace2;
		delete ae2->getCommunicator();
		delete ae->getIAlicaClock();
		delete ae2->getIAlicaClock();
		sc->shutdown();
		delete cc;
		delete bc;
		delete uc;
		delete crc;
	}
	virtual void TearDown()
	{
		ae->shutdown();
		sc->shutdown();
		delete bc;
		delete cc;
		delete uc;
		delete crc;
		delete ae->getIAlicaClock();
	}
 virtual void TearDown()
 {
     ae->shutdown();
     ae2->shutdown();
     sc->shutdown();
     delete cc;
     delete bc;
     delete uc;
     delete crc;
     delete ae->getCommunicator();
     delete ae2->getCommunicator();
     delete ae;
     delete ae2;
 }
 virtual void TearDown()
 {
     // stop time measurement and report
     std::chrono::_V2::system_clock::time_point end = std::chrono::high_resolution_clock::now();
     cout << "Measured Time: " << std::chrono::duration_cast<chrono::milliseconds>(end - start).count() << " ms"
          << endl;
     ae->shutdown();
     sc->shutdown();
     delete ae->getIAlicaClock();
     delete ae->getCommunicator();
     delete cc;
     delete bc;
     delete uc;
     delete crc;
 }