Напиши максимально оптимизированный модуль для чит-клиента под Minecraft Fabric 1.21.4 (Java/Mixins). Назови модуль "PureAttributeSwap". Его единственная задача — непрерывный АТРИБУТ-СВАП (Attribute Swapping) меча на булаву при каждом ударе, без каких-либо проверок высоты, прыжков или кастомных режимов.
Модуль должен работать постоянно, пока включен, соединяя скорость атаки меча с атрибутами булавы.
### Техническая логика обхода GrimAC (Пакетный Спуфинг):
Так как GrimAC строго отслеживает инвентарь на стороне сервера, классический моментальный свап в 0 миллисекунд будет аннулирован. Чтобы обойти это, модуль должен использовать рассинхронизацию слотов в пределах одного-двух сетевых пакетов:
1. Модуль активен, если игрок держит Меч, а Булава находится в хотбаре.
2. В момент совершения удара (через левый клик или Килауру) модуль перехватывает оригинальный пакет атаки. При этом кулдаун (Attack Cooldown) берется от МЕЧА, то есть атака заряжена на 100%.
3. Модуль отправляет серверу пакет `UpdateSelectedSlotC2SPacket` с индексом Булавы.
4. Сразу же (с микро-задержкой в 15–30 миллисекунд, чтобы пакеты не склеились в один сетевой чанк, что триггерит Grim, но уложились в рамки одного игрового тика) отправляются пакеты удара: `ServerboundInteractPacket` и пакет анимации `ServerboundAnimatePacket`. Сервер считывает урон и чары БУЛАВЫ.
5. Немедленно в фазе завершения текущего тика (`ClientTickEvents.END_CLIENT_TICK`) отправляется обратный пакет `UpdateSelectedSlotC2SPacket`, возвращающий активный слот на Меч. Это возвращает игроку скорость атаки 1.6 для следующего удара.
### Оптимизация (0 FPS Drop):
В коде не должно быть тяжелых циклов обновлений в `onRender` или `onUpdate`. Вся логика выполняется исключительно асинхронно в сетевом потоке (`Network Thread`) в момент отправки пакетов атаки. Нагрузка на процессор и FPS должна быть нулевой.
### Переменные в коде:
- boolean enabled (включение модуля)
- int spoofDelayMs = 25 (микро-задержка между пакетом слота и пакетом удара для обхода Grim)
Напиши готовый класс модуля и Mixin-хук в `ClientPlayNetworkHandler` для реализации этой пакетной последовательности под Fabric 1.21.4.