private void UnsuscribeToEventCategory_Internal(string category, SuscribeListenerCallback callback)
        {
            if (listeners.ContainsKey(category))
            {
                listeners[category] -= callback;
            }


            //SuscribeListenerCallback actionListener;
            //listeners.TryGetValue(category, out actionListener);

            //if (actionListener != null)
            //{
            //    actionListener -= callback;
            //}
        }
        private void SuscribeToEventCategory_Internal(string category, SuscribeListenerCallback callback)
        {
            if (listeners.ContainsKey(category))
            {
                listeners[category] += callback;
            }
            else
            {
                listeners.Add(category, callback);
            }

            //SuscribeListenerCallback actionListener;
            //listeners.TryGetValue(category, out actionListener);

            //if (actionListener == null)
            //{
            //    listeners.Add(category, callback);
            //    return;
            //}

            //actionListener += callback;
        }
 static public void UnsuscribeToEventCategory(string category, SuscribeListenerCallback callback)
 {
     Instance.UnsuscribeToEventCategory_Internal(category, callback);
 }