Immagine
 Dopo Prato Piazza è la volta di buttarsi verso Carbonin (Dolomiti Superbike 2012)... di Marco Tenuti
 
"
Tempo e paja maura anca le nespole

Proverbio veronese
"
 



Miei sponsor
Gli sponsor che pago io

Social Network



Se vuoi contattarmi via e-mail:

t e n u t i @ l i b e r o . i t
Wikio - Top dei blog
Di seguito tutti gli interventi pubblicati sul sito, in ordine cronologico.
 
 
Di Marco Tenuti (del 22/12/2012 @ 09:39:34, in MTB, linkato 653 volte)

Fondo abbastanza compattoLa neve caduta nelle prime ore di ieri - venerdì 21 dicembre - non è stata molto abbondante, ma più che sufficiente per bagnare un po' il percorso della Granfondo del Pandoro edizione 2012. In più il lieve innalzamento della temperatura ha fatto si che essa si sia subito sciolta e che il tracciato risulti qua e là infangato. Ci saranno di tanto in tanto alcune pozzanghere, che si potranno anche evitare o "utilizzare" per scrostare eventualmente qualche zolla di terra di troppo che si è depositata sul telaio.

Rimane il fatto che tutto il tipo di fondo della quinta edizione è sempre praticabile e non sussistono particolari problemi di aderenza, nè si rischia di impiastricciare troppo la bici, i pneumatici e tutto il gruppo della trasmissione. Certo è che non si arriverà a fine giro puliti come alla partenza. Non ci dovrebbero essere nemmeno punti con troppo ghiaccio - come invece è stato nelle prime edizioni dal 2008 al 2010, quando ne abbiamo trovato in abbondanza.

Vi ricordo infine di presentarsi OBBLIGATORIAMENTE col casco, pena l'invito a non prender parte nel gruppo, e ad addobbare la bici e indossare qualcosa di tipicamente natalizio.

Articolo (p)Link Commenti Commenti (0)  Storico Storico  Stampa Stampa
 
Di Marco Tenuti (del 21/12/2012 @ 15:32:14, in .NET Framework, linkato 2725 volte)

Sono incappato in questa eccezione con .NET Framework 4.0 e Winforms, usando un meccanismo di callback asincrona e thread pooling per la gestione del timeout:

System.InvalidOperationException was unhandled
Message=L'operazione di annullamento ha rilevato un contesto differente da quello applicato nell'operazione Set corrispondente. Probabilmente un contesto è stato Set nel thread e non è stato ripristinato (annullato).

   in System.Threading.SynchronizationContextSwitcher.Undo()
   in System.Threading.ExecutionContextSwitcher.Undo()
   in System.Threading.ExecutionContext.runFinallyCode(Object userData, 
			Boolean exceptionThrown)
   in System.Runtime.CompilerServices.RuntimeHelpers.ExecuteBackoutCodeHelper
			(Object backoutCode, Object userData, Boolean exceptionThrown)
   in System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup
			(TryCode code, CleanupCode backoutCode, Object userData)
   in System.Threading.ExecutionContext.RunInternal(ExecutionContext 
			executionContext, ContextCallback callback, Object state)
   in System.Threading.ExecutionContext.Run(ExecutionContext executionContext, 
			ContextCallback callback, Object state, Boolean ignoreSyncCtx)
   in System.Threading.ExecutionContext.Run(ExecutionContext executionContext, 
			ContextCallback callback, Object state)
   in System.Net.ContextAwareResult.Complete(IntPtr userToken)
   in System.Net.LazyAsyncResult.ProtectedInvokeCallback(Object result, IntPtr userToken)
   in System.Net.HttpWebRequest.SetResponse(Exception E)
   in System.Net.HttpWebRequest.SetAndOrProcessResponse(Object responseOrException)
   in System.Net.ConnectionReturnResult.SetResponses(ConnectionReturnResult returnResult)
   in System.Net.Connection.CompleteConnectionWrapper(Object request, Object state)
   in System.Net.PooledStream.ConnectionCallback(Object owningObject, 
			Exception e, Socket socket, IPAddress address)
   in System.Net.ServicePoint.ConnectSocketCallback(System.IAsyncResult)
   in System.Net.LazyAsyncResult.Complete(IntPtr)
   in System.Net.ContextAwareResult.Complete(IntPtr)
   in System.Net.LazyAsyncResult.ProtectedInvokeCallback(System.Object, IntPtr)
   in System.Net.Sockets.Socket.ConnectCallback()
   in System.Net.Sockets.Socket.RegisteredWaitCallback(System.Object, Boolean)
   in System.Threading._ThreadPoolWaitOrTimerCallback.
			PerformWaitOrTimerCallback(System.Object, Boolean)

Pare che in Microsoft non ne siano venuti a capo, ma al momento la soluzione pare essere la seguente:

  1. non invocare Application.DoEvents al di fuori del main thread del processo
  2. usare il l'invocazione tramite Invoke/BeginInvoke nel caso in cui l'evento scatenante risponda vero all'interrogazione myControl.InvokeRequired

In realtà il tamponamento maggiore al problema pare essere dato dall'instanziazione della callback assicurandosi di resettare il contesto di sincronizzazione:

  Dim oldSyncContext As System.Threading.SynchronizationContext

  oldSyncContext = System.Threading.SynchronizationContext.Current
    System.Threading.SynchronizationContext.SetSynchronizationContext(Nothing)
    myAsyncResult = myRequest.BeginGetResponse(AddressOf ReadResponseAsync, myRequest)
    If (Not _doSynchronous) Then
      System.Threading.ThreadPool.RegisterWaitForSingleObject(myAsyncResult.AsyncWaitHandle,
        New System.Threading.WaitOrTimerCallback(AddressOf TimeoutAsync),
         myRequest, timeoutMs, True)
    End If
    System.Threading.SynchronizationContext.SetSynchronizationContext(oldSyncContext)

Su stackoverflow.com ho trovato questo ottimo articolo e discussione.

Articolo (p)Link Commenti Commenti (1)  Storico Storico  Stampa Stampa
 
Di Marco Tenuti (del 21/12/2012 @ 10:39:15, in MTB, linkato 2002 volte)

Questa notte mi sono sottratto tre ore di sonno per questo video. Ormai comincio ad usare decentemente il 30% delle funzioni di iMovie. Prometto di impararlo tutto al prossimo giro, però c'è sempre Final Cut Pro che mi aspetta...

Sul mio Mac mini con processore Intel Core i5, 8 GB di RAM e OS X 10.7.5 gira benone e si riesce sostanzialmente a fare un montaggio video quasi realtime, che è un grosso vantaggio per vedere i risultati che ne vengono fuori, senza aspettare un granché.

Se ci fosse però un bel Mac Pro con processoroni Intel Xeon per un totale di 12 core come le macchine di qualche mio cliente, sarebbe un altro paio di maniche. Che voi sappiate iMovie li usa tutti i processori?

Articolo (p)Link Commenti Commenti (0)  Storico Storico  Stampa Stampa
 
Di Marco Tenuti (del 21/12/2012 @ 09:47:39, in Grezzana, linkato 2327 volte)

Ho davvero l'impressione che le imprese municipalizzate ci prendano per i fondelli e ce la mandino a raccontare, tanto poi l'AMIA e le società di raccolta fanno "quello che vogliono loro", visto che c'è una contratto di fornitura tra l'AMIA e la società di gestione dell'inceneritore fino al 2015.

Nella comunicazione del Comune di Grezzana 2013 l'amministrazione comunale preme a farci sapere che a partire dall'anno prossimo il Tetrapak non si dovrà più mettere col multimateriale - come dovrebbe essere stato fino ad adesso a giudicare dalla grafica del volantino - ma, dopo averlo risciacquato, schiacciato ed eventualmente purificato dall'eventuale tappo in PVC, andrà messo nella carta/cartone.

Solo che se uno prende in mano il calendario della raccolta rifiuti 2012, come fanno notare i miei genitori, si evince un'altra cosa, ossia che il Tetrapak andava già messo nella carta/cartone, come potete vedere nella foto qui sotto.

Io dico: ma non era già così, come era nelle comunicazioni che ricevevo nel comune di Verona?

Possibile che la "stessa" società di raccolta, l'AMIA, abbia regole per i cittadini che continuano a cambiare di anno in anno e di comune in comune?

Vorremmo insomma una comunicazione più chiara e congruente e soprattutto vorremmo vedere dove vanno a finire le nostre immondizie - non si sa mai se sia un luogo comune, quello della gente che mormora, ossia che poi mettono tutto assieme e bruciano tutto - visto quello che paghiamo per farcele venire prendere a casa, per inciso io, a casa mia, pago quasi 1 € al giorno per tirare su un sacchetto!

Doodle di Google dedicato ai Maya

Articolo (p)Link Commenti Commenti (0)  Storico Storico  Stampa Stampa
 
Di Marco Tenuti (del 21/12/2012 @ 09:23:03, in humour, linkato 9628 volte)

Temendo la riformattazione degli hard disk di tutti i loro server, a Mountain View pensano di cavarsela col doodle dedicato ai Maya...

Doodle di Google dedicato ai Maya

Se volete vedere un po' di storia dei Doodle, cliccate qui: Google li ha tenuti tutti per voi...

Articolo (p)Link Commenti Commenti (59)  Storico Storico  Stampa Stampa
 
Di Marco Tenuti (del 21/12/2012 @ 09:14:08, in MTB, linkato 2099 volte)

Grazie alla neve caduta nella notte anche sull'arco prealpino della Lessinia e soprattutto dopo aver visto l'ultima mia produzione video, anche gli autoarticolati per la movimentazione terra non hanno resistito e si sono buttati a capofitto nella fanghiglia di Alcenago e fare traversi (con qualche risultato inaspettato).

Autoarticolato di traverso sulla frana delle Senge

Ringrazio Stefano Zantedeschi per lo scoop.

Articolo (p)Link Commenti Commenti (0)  Storico Storico  Stampa Stampa
 
Di Marco Tenuti (del 18/12/2012 @ 09:03:15, in informatica, linkato 2353 volte)

Safari browserOltre ad usare Safari su OS X e iOS, io uso da tempo immemore Safari anche su Windows. Attualmente sto utilizzando Safari 5.1.7 (7534.57.2), che è da un bel po' che non viene aggiornata. C'è un bug abbastanza fastidioso che non capisco cosa aspettino a fissarlo e vi spiego come fare a riprodurlo.

Basta aprire un pannello nuovo e andare nella casella di ricerca in alto a destra (cosa che c'è ancora nella versione 5.x di Safari, rimosso invece nella versione 6, disponibile al momento solo su OS X). Fate una ricerca col vostro motore di ricerca preferito, probabilmente Google.

La ricerca vi compare nel pannello. Scegliete un qualsiasi risultato di ricerca e cliccatelo. A volte non si riesce proprio a ritornare alla pagina iniziale dove è stata effettuata la ricerca, come se tale pagina, la prima, non fosse proprio archiviata nella cronologie delle pagine visualizzate dal browser. A volte invece funziona.

Sono sostanzialmente costretto ad effettuare nuovamente la ricerca partendo dalla casella di ricerca, anziché tornare indietro di una pagina (Alt+Sinistra su Windows).

C'è qualcosa che mi sfugge?

Articolo (p)Link Commenti Commenti (0)  Storico Storico  Stampa Stampa
 
Di Marco Tenuti (del 16/12/2012 @ 15:31:15, in informatica, linkato 1991 volte)

Finalmente, positivamente impresso, dalle novità di Microsoft. In un colpo solo ho provato queste funzionalità:

  1. predisporre un'unità USB (una memoria "ciofeca" USB da 4 GB) da cui fare boot e su cui collocare l'ISO di Windows 8 Enterprise grazie a Rufus
  2. il tempo necessario per inizializzare un disco nuovo (320 GB formattati di un disco Samsung, classico disco da 4200 rpm)
  3. il tempo totale per installare Windows 8 Enterprise (neanche un quarto d'ora, occhio e croce)
  4. il buon funzionamento generale di tutti i driver principali, anche se Hardware Manager non ha ancora deglutito un paio di componenti hardware
  5. il buon funzionamento della scheda grafica del mio laptop, una ATI Radeon HD 3470 grazie ai driver base (ATI/AMD si rifiutano di supportarla nativamente)
  6. la performance di Windows 8 ed Internet Explorer 10

Passiamo al benchmark più semplice, ossia quello che potete far partire da:

SunSpider 0.9.1 JavaScript Benchmark

Il risultato dato dal mio Mac Mini (mid 2011, Intel i5 2,3 GHz, OS X 10.7.4, Safari 6.0):

SunSpider 0.9.1 JS performance = 186,1 ms

Continuo con la mia rapida analisi per capire se posso definitivamente passare a Windows 8...

Articolo (p)Link Commenti Commenti (4)  Storico Storico  Stampa Stampa
 
Di Marco Tenuti (del 13/12/2012 @ 12:14:03, in iPhone, linkato 2043 volte)

Dopo il mea culpa recitato da Tim Cook al riguardo della qualità delle mappe di Apple Maps e che è costato la testa di Scott Forstall, di fatto il padre della nuova app di casa Apple, all'incirca un mese fa Google aveva fatto girare alcuni rumours riguardo alla sua app, Google Maps appunto, facendo vedere qualche screenshot e di fatto aprendo le porte alla sua imminente disponibilità sull'App Store.

Solo che più di qualcuno aveva nutrito qualche dubbio sul fatto che Google Maps non sarebbe mai approdato su App Store, cioè sarebbe stato bloccato da Apple in fase di approvazione, perché viola una delle clausole contrattuali, ossia che l'app replica funzionalità già presenti nel sistema operativo e le sue app preinstallate.

In realtà Tim Cook e lo staff Apple hanno ritenuto più saggio per la vasta utenza Apple non opporre resistenza ed acconsentire di potersi installare ancora l'applicazione basata sulle mappe della casa di Mountain View.

L'app, rispetto a quella disponibile fino ad iOS 5.1, è completamente diversa: contiene una nuova modalità di visualizzazione tridimensionale che ha un punto di vista abbastanza simile ad Apple Maps ed inoltre consente di recuperare i propri POI (Point of Interest) dalla propria account Google.

A mio modo di vedere non è intuitivo però, come era sul vecchio Maps di Apple basato sulla cartografia di Google e com'è l'attuale, cioè il disporre altri punti di interesse, così come andare nella modalità StreetView. Da questo punto di vista Apple Maps per iOS 6 rimane senza dubbio molto più intuitivo ed immediato. Peccato per la sua cartografia che dà letteralmente i numeri.

Pare si sia scomodato anche David Pogue con un articolo sul New York Times al riguardo del nuovo Google Maps per iOS.

Nonostante questo Google pare sostenere che l'implementazione per iOS è addirittura meglio di quella per Android, per cui ne ha ancora di strada da fare Google.

Trovate l'introduzione di Macity a questo articolo.

Articolo (p)Link Commenti Commenti (0)  Storico Storico  Stampa Stampa
 
Di Marco Tenuti (del 12/12/2012 @ 11:26:25, in informatica, linkato 2442 volte)

Stamattina sono impazzito una buona mezz'ora per capire perché non andasse questa query:

sqlQuery = "SELECT IDFile,IDTicket,FileName FROM files WHERE (IDTicket=" & idTicket & ");"

Per dovere di cronaca l'accesso ai dati è fatto con questo poco di codice .NET:

    Dim sourceAdapter As System.Data.OleDb.OleDbDataAdapter
    Dim conn As System.Data.OleDb.OleDbConnection
    Dim dsResult As New System.Data.DataSet("Result")
    Dim rows As DataRowCollection
    conn = New System.Data.OleDb.OleDbConnection(connString)
    conn.Open()
    sourceAdapter = New System.Data.OleDb.OleDbDataAdapter(sqlQuery, conn)
    If (Not sourceAdapter Is Nothing) Then
      sourceAdapter.Fill(dsResult)
      sourceAdapter.Dispose()
    End If
    conn.Close()
    conn.Dispose()
    If (Not dsResult Is Nothing) AndAlso (dsResult.Tables.Count > 0) Then
      rows = dsResult.Tables(0).Rows
    Else
      rows = Nothing
    End If

Solo che non arriva un record che sia uno, nonostante l'unica table presente nel DataSet riempito sia popolata correttamente con le tre colonne che mi aspetterei. Se fate più o meno la stessa identica query da Access funziona tutto magicamente: mi ritrovo proprio le righe che vado cercando. Dopo un po' l'arcano salta fuori qui. Se faccio questa interrogazione:

sqlQuery = "SELECT IDFile,IDTicket,FileName FROM [files] WHERE (IDTicket=" & idTicket & ");"

Allora la DataRowCollection è popolata perfettamente coi record. A quanto pare l'OleDbDataAdapter non gradisce files, mentre gradisce [files], quindi ne desumo che files sia parola riservata, più o meno come lo è anche GUID. Ma tirare un'eccezione che sto usando una parola riservata è una cattiva idea? O forse se files lo scrivo senza parentesi quadre, vuol dire in SQL qualcos'altro?

Articolo (p)Link Commenti Commenti (0)  Storico Storico  Stampa Stampa
 


Ci sono  persone collegate

Tagcloud

Gare 2017
GARE 2017?
26/03: GF Tre Valli
30/04: GF del Durello
21/05: Passo Buole Extreme
28/05: Soave Bike
25/06: Lessinia Legend
Gare 2016
GARE 2016
26/06: 6H Valpolicella Fatta
27/08: GF d'Autunno Fatta
08/11: XCRunning Grezzana Fatta
Tickerkm
KM STORICI

Km fatti

Palmares
BREVETTI E CIRCUITI

2014: Salzkammergut Survivor
2012: Prestigio MTB
2011: Prestigio MTB
2010: Prestigio MTB, Fizik Veneto
2008: Garda Challenge

< marzo 2024 >
L
M
M
G
V
S
D
    
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
             

Cerca per parola chiave
 

Titolo
famiglia (4)
fotografia (1)
gastronomia (1)
MTB (14)
rally (2)
viaggi (12)

Le fotografie pił cliccate

Titolo
Quale circuito suggerisci al Marcante per il 2013?

 Lessinia Tour
 Prestigio MTB
 Nobili MTB
 Challenge Giordana
 Gare all'estero
 Stare a casa

Titolo

View Marco Tenuti's profile on LinkedIn

Listening
Kid Rock - Rock n Roll Jesus

Ghosts - The world is outside

Hellogoodbye - Zombies! Aliens! Vampires! Dinosaurs!

Reading
Fabio Volo - E' una vita che ti aspetto
Michael Guillen - Le 5 equazioni che hanno cambiato il mondo
Sophie Kinsella - I love shopping a New York

Watching
Mia moglie consiglia Le sorelle McLeod



Titolo
.NET Framework (4)
Abarth (13)
Alcenago (4)
auto (15)
computational (2)
consumatore (56)
cucina (18)
cultura (16)
dizionario (2)
famiglia (40)
finanza (4)
Grezzana (6)
hitech (17)
humour (8)
idee (1)
informatica (62)
iPhone (46)
mobile computing (10)
MTB (1199)
musica (4)
natura (23)
OS X (3)
PS3 (7)
rally (63)
salute (4)
social (4)
telefonia (3)
Verona (12)
viaggi (26)
video (7)
Visual Basic 6 (5)
web (49)
Windows (33)

Catalogati per mese:
Marzo 2024
Febbraio 2024
Gennaio 2024
Dicembre 2023
Novembre 2023
Ottobre 2023
Settembre 2023
Agosto 2023
Luglio 2023
Giugno 2023
Maggio 2023
Aprile 2023
Marzo 2023
Febbraio 2023
Gennaio 2023
Dicembre 2022
Novembre 2022
Ottobre 2022
Settembre 2022
Agosto 2022
Luglio 2022
Giugno 2022
Maggio 2022
Aprile 2022
Marzo 2022
Febbraio 2022
Gennaio 2022
Dicembre 2021
Novembre 2021
Ottobre 2021
Settembre 2021
Agosto 2021
Luglio 2021
Giugno 2021
Maggio 2021
Aprile 2021
Marzo 2021
Febbraio 2021
Gennaio 2021
Dicembre 2020
Novembre 2020
Ottobre 2020
Settembre 2020
Agosto 2020
Luglio 2020
Giugno 2020
Maggio 2020
Aprile 2020
Marzo 2020
Febbraio 2020
Gennaio 2020
Dicembre 2019
Novembre 2019
Ottobre 2019
Settembre 2019
Agosto 2019
Luglio 2019
Giugno 2019
Maggio 2019
Aprile 2019
Marzo 2019
Febbraio 2019
Gennaio 2019
Dicembre 2018
Novembre 2018
Ottobre 2018
Settembre 2018
Agosto 2018
Luglio 2018
Giugno 2018
Maggio 2018
Aprile 2018
Marzo 2018
Febbraio 2018
Gennaio 2018
Dicembre 2017
Novembre 2017
Ottobre 2017
Settembre 2017
Agosto 2017
Luglio 2017
Giugno 2017
Maggio 2017
Aprile 2017
Marzo 2017
Febbraio 2017
Gennaio 2017
Dicembre 2016
Novembre 2016
Ottobre 2016
Settembre 2016
Agosto 2016
Luglio 2016
Giugno 2016
Maggio 2016
Aprile 2016
Marzo 2016
Febbraio 2016
Gennaio 2016
Dicembre 2015
Novembre 2015
Ottobre 2015
Settembre 2015
Agosto 2015
Luglio 2015
Giugno 2015
Maggio 2015
Aprile 2015
Marzo 2015
Febbraio 2015
Gennaio 2015
Dicembre 2014
Novembre 2014
Ottobre 2014
Settembre 2014
Agosto 2014
Luglio 2014
Giugno 2014
Maggio 2014
Aprile 2014
Marzo 2014
Febbraio 2014
Gennaio 2014
Dicembre 2013
Novembre 2013
Ottobre 2013
Settembre 2013
Agosto 2013
Luglio 2013
Giugno 2013
Maggio 2013
Aprile 2013
Marzo 2013
Febbraio 2013
Gennaio 2013
Dicembre 2012
Novembre 2012
Ottobre 2012
Settembre 2012
Agosto 2012
Luglio 2012
Giugno 2012
Maggio 2012
Aprile 2012
Marzo 2012
Febbraio 2012
Gennaio 2012
Dicembre 2011
Novembre 2011
Ottobre 2011
Settembre 2011
Agosto 2011
Luglio 2011
Giugno 2011
Maggio 2011
Aprile 2011
Marzo 2011
Febbraio 2011
Gennaio 2011
Dicembre 2010
Novembre 2010
Ottobre 2010
Settembre 2010
Agosto 2010
Luglio 2010
Giugno 2010
Maggio 2010
Aprile 2010
Marzo 2010
Febbraio 2010
Gennaio 2010
Dicembre 2009
Novembre 2009
Ottobre 2009
Settembre 2009
Agosto 2009
Luglio 2009
Giugno 2009
Maggio 2009
Aprile 2009
Marzo 2009
Febbraio 2009
Gennaio 2009
Dicembre 2008
Novembre 2008
Ottobre 2008
Settembre 2008
Agosto 2008
Luglio 2008
Giugno 2008
Maggio 2008
Aprile 2008
Marzo 2008
Febbraio 2008
Gennaio 2008
Dicembre 2007
Novembre 2007
Ottobre 2007
Settembre 2007
Agosto 2007
Luglio 2007
Giugno 2007
Maggio 2007
Aprile 2007
Marzo 2007
Febbraio 2007
Gennaio 2007
Dicembre 2006
Novembre 2006
Ottobre 2006
Settembre 2006
Agosto 2006
Luglio 2006
Giugno 2006
Maggio 2006
Aprile 2006
Marzo 2006
Febbraio 2006
Gennaio 2006
Dicembre 2005
Novembre 2005
Ottobre 2005
Settembre 2005
Agosto 2005
Luglio 2005
Giugno 2005
Maggio 2005
Aprile 2005
Marzo 2005
Febbraio 2005
Gennaio 2005
Dicembre 2004

Gli interventi pił cliccati

Ultimi commenti:
https://zetcasino.on...
09/03/2024 @ 06:53:31
Di Cory
telegra.ph
22/02/2024 @ 17:27:35
Di Lida
Casinoonlinevavada.O...
19/02/2024 @ 18:29:38
Di Jackie
개자1...
12/02/2024 @ 17:32:22
Di Roseann
адв...
12/02/2024 @ 16:26:23
Di Dalene
Reduslim-Familienpak...
27/01/2024 @ 15:20:34
Di Alannah
pipeline pro
22/01/2024 @ 20:20:15
Di Mervin
hotels 18+
19/01/2024 @ 05:05:00
Di Ruby


19/03/2024 @ 04:33:43
script eseguito in 203 ms