refacroting comms