Sub Main
   Dim ini,fin,ini1,es,ciclo,colpi,i,y,ii
   Dim bEsito
   Dim kCG,kAbb,kGiocate,kCasi,kCasiPos,kAmbi,ktutto 'contatori capigioco, abbinamenti, giocate,casi tot, casi pos, ambirealizz
   Dim aRuota(1),aPosta(2),aNum(1),aAmbo(2),tutto(1)
   Dim RetEsito,RetColpi,RetEstratti,retId
   ReDim aCapoG(0),aAbbin(0),Atutto(0) 'array per i CG (freq>2), gli abbin(freq=2)
   aRuota(1) = CInt(InputBox(" Scegli la ruota di ricerca ",,"1"))
   ini = CInt(InputBox(" Scegli l'estrazione di inizio ricerca ",,8000))
   sfc = CInt(InputBox("Quanti superfrequenti capogioco",,3))
   sfa = CInt(InputBox("Quanti superfrequenti Abbinamenti",,2))
   clc = CInt(InputBox("Quanti cicli di gioco ",,12))
   clp = CInt(InputBox("Quanti colpi di gioco ",,12))
   fin = EstrazioneFin
   ciclo = clc : ciclo = ciclo - 1 ' durata del ciclo di ricerca ripetuti. Non togliere il -1!
   colpi = clp 'colpi di gioco
   aPosta(2) = 1
   For es = ini To fin Step colpi ' analizzo l'archivo a blocchi di 9 estrazioni
      Messaggio es
      Call AvanzamentoElab(ini,fin,es)
      ini1 = es - ciclo ' calcolo l'inizio di ogni nuovo ciclo rispetto ad ogni es analizzata
      kCG = 0 : kAbb = 0 : ktutto = 0' ad ogni nuovo ciclo azzero i contatori
      ReDim aCapoG(0),aAbbin(0),Atutto(0) ' e riazzero gli array prima di ogni ciclo
      For i = 1 To 90 ' verifico la frequenza dei 90 numeri su ogni ciclo
         aNum(1) = i
         If SerieFreqTurbo(ini1,es,aNum,aRuota,1) = sfa Then
            kAbb = kAbb + 1
            ReDim Preserve aAbbin(kAbb)
            aAbbin(kAbb) = i
         Else If SerieFreqTurbo(ini1,es,aNum,aRuota,1) >= sfc Then
            kCG = kCG + 1
            ReDim Preserve aCapoG(kCG)
            aCapoG(kCG) = i
         End If
      End If
   Next
   For ii = 1 To 90
      tutto(1) = ii
      If SerieFreqTurbo(ini1,es,tutto,aRuota,1) >= sfa Then
         ktutto = ktutto + 1
         ReDim Preserve Atutto(ktutto)
         Atutto(ktutto) = ii
      End If
   Next
   If kCG > 0 Then ' se trova almeno un capogioco ovvero un numero con freq>2
      kCasi = kCasi + 1
      Call ColoreTesto(1)
      Call Scrivi
      Call Scrivi(String(80,"-"))
      Call Scrivi("Ricerca su " & SiglaRuota(aRuota(1)) & " ciclo di " & ciclo + 1 & " estrazioni (" & ini1 & "-" & es & ")" & " gioco fino..." & GetInfoEstrazione(es + colpi),1)
      Call Scrivi("Capigioco: " & StringaNumeri(aCapoG) & "    [ " & kCG & " ]",1)
      Call Scrivi("Abbinamenti: " & StringaNumeri(aAbbin) & "   [ " & kAbb & " ] ",1)
      Call Scrivi("Tutti i Numeri: " & StringaNumeri(Atutto) & "   [ " & ktutto & " ] ",1)
      Call Scrivi
      Call ColoreTesto(0)
      kGiocate = 0 ' ad ogni nuova estrazione azzero il contatore delle giocate
      bEsito = False
      For i = 1 To kCG 'imposto le giocate
         aAmbo(1) = aCapoG(i)
         For y = 1 To kAbb
            aAmbo(2) = aAbbin(y)
            'kGiocate = kGiocate + 1
            'Call ImpostaGiocata(kGiocate,aAmbo,aRuota,aPosta,colpi,2)
            Call VerificaEsitoTurbo(aAmbo,aRuota,es + 1,2,colpi,,RetEsito,RetColpi,RetEstratti,retId)
            If RetEsito <> "" Then
               kAmbi = kAmbi + 1
               bEsito = True
               Call Scrivi(Format2(RetColpi) & "°   - " & RetEstratti & " - " & RetEsito & " - " & GetInfoEstrazione(retId),1)
            End If
         Next
      Next
      If bEsito = False Then
         Call Scrivi("Esito negativo")
      Else
         kCasiPos = kCasiPos + 1
      End If
      Scrivi String(80,"-")
      kk = 0
      estra = 0
      ambo = 0
      terno = 0
      For idestr = es + 1 To es + colpi
         kk = kk + 1
         Call VerificaEsitoTurbo(Atutto,aRuota,idestr,1,1,,RetEsito,RetColpi,RetEstratti,retId)
         If RetEsito <> "" Then
            ColoreTesto 0
            If RetEsito = "Estratto" Then estra = estra + 1
            If RetEsito = "Ambo" Then ColoreTesto 2
            If RetEsito = "Ambo" Then ambo = ambo + 1
            If RetEsito = "Terno" Then ColoreTesto 1
            If RetEsito = "Terno" Then terno = terno + 1
            'kk = kk + 1
            Call Scrivi(idestr & " - " & Format2(kk) & "°  - " & RetEstratti & " - " & RetEsito & " - " & GetInfoEstrazione(retId),1)
            'Call Scrivi(idestr & " - " & kk &  "°" & RetEstratti & " - " & RetEsito & " - " & GetInfoEstrazione(retId),1)
            ColoreTesto 0
            'kk = 0
         End If
         'End If
         'kk = 0
      Next
      Scrivi
      Scrivi" Totali Estratto..." & estra & "  ",True,False,0,5,2
      Scrivi" Totali Ambi......." & ambo & "  ",True,False,2,4,2
      Scrivi" Totali Terni......" & terno & "  ",True,True,4,2,2
      'For i = 1 To kGiocate
      '   For y = i + 1 To kGiocate
      '      Call ImpostaInterruzioni(i,y,2)
      '      Call ImpostaInterruzioni(y,i,2)
      '   Next
      'Next
      'Call Gioca(es,True)
   Else
      Call ColoreTesto(2)
      Call Scrivi
      Call Scrivi(String(60,"-"))
      Call Scrivi("Ricerca su " & SiglaRuota(aRuota(1)) & " ciclo di " & ciclo + 1 & " estrazioni (" & ini1 & "-" & es & ")",1)
      Call Scrivi("Nessun superfrequente come CG - Caso non giocabile")
      Call ColoreTesto(0)
   End If
   If ScriptInterrotto Then Exit For
Next
Call Scrivi
Call Scrivi(String(60,"="))
Call Scrivi("Casi giocabili " & kCasi & " di cui positivi " & kCasiPos & " (ambi:" & kAmbi & ")",1)
'Call ScriviResoconto
End Sub