worked much on the output part and further finalized eventManager