public void UnregisterRawInputEventHandler(IRawInputEventHandler handler)
    {
        ERawInputMetaType metaType = InputUtil.GetMetaTypeOfRawEventHandler(handler);

        if (metaType != ERawInputMetaType.Unknown)
        {
            if ((metaType & ERawInputMetaType.Touch) != 0)
            {
                CollectionUtil.RemoveFromTable(ERawInputMetaType.Touch, handler, handlerTable);
            }
            if ((metaType & ERawInputMetaType.Axis) != 0)
            {
                CollectionUtil.RemoveFromTable(ERawInputMetaType.Axis, handler, handlerTable);
            }
            if ((metaType & ERawInputMetaType.Keyboard) != 0)
            {
                CollectionUtil.RemoveFromTable(ERawInputMetaType.Keyboard, handler, handlerTable);
            }
            if ((metaType & ERawInputMetaType.Mouse) != 0)
            {
                CollectionUtil.RemoveFromTable(ERawInputMetaType.Mouse, handler, handlerTable);
            }
        }
    }