[Chat] Totally refactored