unregister and register both take comm as argument