function [OUTput, OUTclear,f3] = PosouzeniRR(INdata, maxC, RR)
% Funkce pro hledání PAC
% Vstupní proměné: 
% maxC...číslo nadpoolovičního cyklu, vyskytuje se nejvíc a v tom budeme hledat PAC
% OUTput...upravený výsledek, co se liší v RR to je ve skupině 1 s vysokou pst PAC
% OUTclear...cykly které již nebudeme zppracovávat
% Výsledkem jsou čísla cyklů, které jsou považovány za PAC

pom = INdata; 
prumerRR = mean(RR);  

tep = 60/prumerRR; 
RR = [prumerRR;RR;prumerRR];
N = numel(pom);
for i=1:N
    f3(i) = RR(i+1)/RR(i);
end

vysoceKOR = [];
for l = 1:numel(maxC)
    vysoceKOR = [vysoceKOR find(pom==maxC(l))'];
end
vysoceKOR = sort(vysoceKOR);
OUTput = pom;

prah_moznosti = [0.13;0.08;0.05]; %3 řádky : brady norm tachy
%zvoleno po provedené optimalizaci
if tep<60
    prah = prah_moznosti(1,:);
elseif tep>100 
    prah = prah_moznosti(3,:);
else
    prah = prah_moznosti(2,:);
end

c = vysoceKOR;
NUMBmaxITER = numel(vysoceKOR);

for i = vysoceKOR
    kontrola = 1;
    iter = 0;
    pocetABSV = 0;
    while kontrola 
           iter = iter+1;
           RR_pred = RR(i); 
           RR_za = RR(i+1);
          if RR_pred<(prumerRR-prah) && RR_za>(prumerRR+prah) 
               OUTput((i-pocetABSV):i) = 1;
               pozice = find(c==i);
               c(1,(pozice-pocetABSV):pozice) = 0; %Odstranuji detekované rozdíly, nebudou patřit do vysoce korelovanych
               kontrola = 0;
          elseif RR_pred<(prumerRR-prah) && RR_za<(prumerRR-prah)
               pocetABSV = pocetABSV+1;
               if iter>=NUMBmaxITER, kontrola = 0; end % POkud se nenašla kompenzační pauza,nejde o PAC
          else
              kontrola = 0; 
          end
           
    end
end
c(c==0)=[]; 
OUTclear = OUTput;  OUTclear(c)=0; % Zde dám nulu na ty pozice, které už nepujdou do dalšího zpracování.
end

