Gli Smart Contract sono accordi automatizzati basati sulla blockchain. Ecco definizione, funzionamento e opportunità dei “contratti intelligenti”.
Gli Smart Contract rappresentano una delle applicazioni più significative della tecnologia blockchain. Si tratta di programmi informatici che eseguono automaticamente istruzioni prestabilite quando si verificano determinate condizioni, consentendo di automatizzare processi, ridurre l’intervento degli intermediari e aumentare trasparenza, sicurezza ed efficienza in numerosi ambiti.
Nonostante il nome possa trarre in inganno, gli Smart Contract non sono «contratti intelligenti» in senso giuridico né sostituiscono automaticamente un contratto tradizionale. Sono piuttosto software che implementano regole del tipo if/then («se/allora»), capaci di eseguire operazioni in modo deterministico su una blockchain. Nella pratica, rappresentano spesso soltanto la componente esecutiva di un accordo più ampio, mentre gli aspetti giuridici continuano a essere disciplinati dal diritto civile e commerciale.
Grazie alla diffusione di piattaforme come Ethereum, gli Smart Contract trovano oggi applicazione in numerosi settori: dalla finanza decentralizzata (DeFi) alle assicurazioni, dalla logistica alla tracciabilità delle merci, fino alla gestione dell’identità digitale, degli asset digitali e dei servizi pubblici. Allo stesso tempo, la crescente attenzione del legislatore italiano ed europeo ha contribuito a delineare un quadro normativo sempre più definito per l’utilizzo delle tecnologie basate su registri distribuiti.
Cosa sono gli Smart Contract
Il significato letterale di Smart Contract è «contratto intelligente», ma questa definizione può risultare fuorviante. Più correttamente, gli Smart Contract sono software basati sulla tecnologia blockchain che eseguono automaticamente istruzioni codificate quando vengono soddisfatte specifiche condizioni.
Dal punto di vista tecnico, uno Smart Contract è un programma distribuito sulla blockchain in grado di:
- ricevere transazioni e dati;
- applicare regole predefinite;
- aggiornare automaticamente uno stato digitale (ad esempio un saldo, un diritto di accesso o una proprietà);
- trasferire asset digitali oppure attivare altre funzioni previste dal codice.
La loro caratteristica principale è quella di garantire un’esecuzione automatica e verificabile delle condizioni previste, senza la necessità di un controllo continuo da parte di intermediari. Una volta distribuito sulla blockchain, infatti, il codice viene eseguito da tutti i nodi della rete secondo regole condivise: a parità di dati in ingresso, il risultato sarà sempre identico.
Occorre però chiarire un aspetto fondamentale: il termine «contratto» non coincide necessariamente con quello giuridico. Nella maggior parte dei casi, infatti, lo Smart Contract costituisce soltanto la parte tecnologica di un accordo più ampio. Il codice automatizza alcune obbligazioni, mentre gli aspetti relativi al consenso delle parti, all’interpretazione delle clausole, alle responsabilità e alle eventuali controversie continuano a essere disciplinati dalla normativa vigente.
leggi anche
Come guadagnare con Ethereum
Origine degli Smart Contract
L’idea degli Smart Contract nasce ben prima della blockchain. A teorizzarla fu nel 1994 il crittografo e informatico Nick Szabo, che li definì come «protocolli di transazione computerizzati che eseguono i termini di un contratto». Per spiegare il concetto utilizzò l’esempio del distributore automatico: una macchina che, al verificarsi di una determinata condizione (l’inserimento del denaro), esegue automaticamente l’azione prevista, ossia l’erogazione del prodotto.
Per diversi anni questa idea rimase prevalentemente teorica, poiché mancava un’infrastruttura capace di garantire un’esecuzione decentralizzata e affidabile del codice. La svolta arrivò nel 2015 con il lancio di Ethereum, la blockchain progettata da Vitalik Buterin proprio per consentire lo sviluppo e l’esecuzione di Smart Contract programmabili.
Da allora sono nate numerose altre blockchain compatibili con gli Smart Contract, contribuendo alla diffusione della tecnologia in ambiti sempre più ampi.
Anche il legislatore ha progressivamente iniziato a regolamentare queste tecnologie. In Italia il principale riferimento normativo è rappresentato dall’articolo 8-ter del Decreto-Legge n. 135/2018, convertito nella Legge n. 12/2019, che introduce una definizione giuridica delle tecnologie basate su registri distribuiti (Distributed Ledger Technology - DLT) e degli Smart Contract, riconoscendone l’efficacia giuridica al ricorrere dei requisiti previsti dalla normativa.
Sul piano europeo, invece, il quadro regolatorio si è notevolmente rafforzato con l’entrata in vigore del Regolamento MiCA (Markets in Crypto-Assets), che disciplina il mercato dei crypto-asset e dei relativi fornitori di servizi nell’Unione europea. Pur non regolando direttamente gli Smart Contract, il MiCA incide in maniera significativa sui progetti che li utilizzano nell’ambito dell’emissione di crypto-asset o della prestazione di servizi collegati, contribuendo ad aumentare certezza giuridica e tutela degli utenti.
Smart Contract ed Ethereum
Ethereum è oggi la blockchain di riferimento per lo sviluppo degli Smart Contract e ha avuto un ruolo determinante nella loro diffusione. Sebbene non sia l’unica rete a supportarli, è stata la prima a consentire la creazione di applicazioni decentralizzate (decentralized applications o dApp) attraverso un linguaggio di programmazione dedicato e una macchina virtuale in grado di eseguire codice in modo distribuito.
Lanciata nel 2015 da Vitalik Buterin insieme a un gruppo di sviluppatori, Ethereum nasce con un obiettivo diverso rispetto a Bitcoin. Se quest’ultimo è stato progettato principalmente come sistema di pagamento decentralizzato e oggi viene considerato soprattutto una riserva di valore digitale, Ethereum è stato concepito come una piattaforma programmabile sulla quale sviluppare servizi e applicazioni basati sulla blockchain.
Gli Smart Contract vengono eseguiti dalla rete Ethereum grazie all’utilizzo di Ether (ETH), la criptovaluta nativa della piattaforma, necessaria per pagare i costi di elaborazione delle operazioni. Ogni istruzione eseguita sulla blockchain richiede infatti una commissione, nota come gas fee, che remunera i validatori della rete e contribuisce a prevenire utilizzi impropri delle risorse disponibili.
Proprio grazie alla sua flessibilità, Ethereum è diventata l’infrastruttura di riferimento per gran parte dell’ecosistema della finanza decentralizzata (DeFi), degli NFT, della tokenizzazione di asset e di numerose applicazioni Web3. Negli anni, tuttavia, sono nate anche altre blockchain compatibili con gli Smart Contract, come BNB Chain, Solana, Avalanche, Polygon, Tron e Cardano, ciascuna con caratteristiche tecniche, costi di utilizzo e livelli di scalabilità differenti.
Smart Contract e notai
Uno degli aspetti più dibattuti riguarda il rapporto tra Smart Contract e professionisti come notai, avvocati o altri intermediari. Spesso si sostiene che questi strumenti possano sostituire completamente le figure tradizionali, ma la realtà è più articolata.
Gli Smart Contract consentono certamente di automatizzare l’esecuzione di determinate clausole contrattuali, riducendo tempi, costi operativi e interventi manuali. Tuttavia, questo non significa che possano sostituire integralmente un contratto giuridico o eliminare la necessità di assistenza legale.
Dal punto di vista del diritto, infatti, il codice informatico non è sempre sufficiente a rappresentare la volontà delle parti, a documentare la causa del contratto o a disciplinare situazioni che richiedono interpretazioni soggettive. Restano inoltre aperte questioni relative alla responsabilità in caso di errori nel codice, all’eventuale malfunzionamento degli oracle che forniscono dati esterni alla blockchain e alla gestione delle controversie.
Per questo motivo, nella maggior parte delle applicazioni concrete gli Smart Contract vengono utilizzati come strumenti di esecuzione automatica di accordi disciplinati anche da documentazione tradizionale. Il contratto in linguaggio naturale continua a regolare diritti, obblighi, responsabilità e modalità di risoluzione delle controversie, mentre il codice automatizza le operazioni che possono essere tradotte in regole oggettive.
L’approccio oggi ritenuto più efficace consiste quindi nell’integrare le due componenti: da una parte il contratto giuridico, dall’altra lo Smart Contract incaricato di eseguire automaticamente alcune clausole, soprattutto quando le condizioni sono facilmente verificabili e non richiedono valutazioni discrezionali.
Come funzionano gli Smart Contract?
Gli Smart Contract funzionano attraverso un codice informatico composto da istruzioni del tipo if/when...then... («se/quando... allora...»), registrate all’interno di una blockchain. Quando le condizioni previste risultano soddisfatte, il programma esegue automaticamente l’azione stabilita senza necessità di ulteriori interventi.
Il processo può essere riassunto in alcune fasi principali:
- definizione dell’accordo e delle regole che dovranno essere automatizzate;
- sviluppo del codice dello Smart Contract e sua registrazione sulla blockchain;
- verifica della validità della transazione da parte dei nodi della rete;
- esecuzione automatica delle operazioni quando si verificano le condizioni previste.
Le azioni possono essere molto diverse tra loro: trasferire fondi, registrare una proprietà digitale, modificare diritti di accesso, emettere un token, inviare notifiche oppure attivare altre funzioni previste dal codice.
Uno degli elementi distintivi degli Smart Contract è l’esecuzione deterministica. Tutti i nodi della blockchain elaborano infatti lo stesso codice utilizzando gli stessi dati: se l’input è identico, anche il risultato sarà necessariamente identico. In questo modo viene eliminato il rischio che due partecipanti ottengano esiti differenti dalla stessa operazione.
Nelle blockchain pubbliche, inoltre, ogni esecuzione comporta il pagamento di una commissione, nota come gas, che remunera i validatori della rete e incentiva un utilizzo efficiente delle risorse disponibili. Dopo il passaggio di Ethereum al meccanismo di consenso Proof of Stake (PoS), la validazione dei blocchi è affidata ai validatori che mettono in staking Ether e ricevono ricompense per il loro contributo alla sicurezza della rete.
Il ruolo degli oracle e dell’immutabilità
Uno Smart Contract può eseguire automaticamente solo le informazioni presenti sulla blockchain. Se invece deve reagire a eventi del mondo reale - come il prezzo di un’azione, una consegna, un dato meteorologico o l’esito di un pagamento - è necessario ricorrere ai cosiddetti oracle.
Gli oracle sono sistemi che trasferiscono dati verificati dall’esterno verso la blockchain, consentendo agli Smart Contract di prendere decisioni sulla base di informazioni reali. Ad esempio, una polizza assicurativa parametrica può liquidare automaticamente un indennizzo quando un oracle certifica il verificarsi di un determinato evento meteorologico oppure quando una compagnia aerea comunica il ritardo di un volo.
La qualità degli oracle rappresenta uno degli aspetti più delicati dell’intero sistema. Se i dati trasmessi risultano errati o manipolati, anche lo Smart Contract eseguirà automaticamente un’azione non corretta. Per questo motivo la sicurezza dell’infrastruttura dipende non soltanto dal codice, ma anche dall’affidabilità delle fonti esterne utilizzate.
Un’altra caratteristica fondamentale è l’immutabilità. Una volta pubblicato sulla blockchain, infatti, uno Smart Contract non può essere modificato con la stessa semplicità di un normale software. Esistono tecniche che consentono aggiornamenti controllati, come proxy e sistemi di governance, ma devono essere previste già in fase di progettazione. Se il codice contiene errori o vulnerabilità, intervenire successivamente può risultare molto complesso.
Proprio per questo motivo lo sviluppo di Smart Contract richiede test approfonditi, revisioni del codice e audit indipendenti, soprattutto quando vengono gestiti fondi o diritti economici di valore elevato.
Esempi di Smart Contract
Comprendere il funzionamento degli Smart Contract è più semplice attraverso alcuni esempi pratici. In tutti i casi il principio è sempre lo stesso: al verificarsi di una determinata condizione, il software esegue automaticamente l’azione prevista, senza bisogno di autorizzazioni ulteriori o interventi manuali.
L’esempio più classico è quello del distributore automatico di bevande, utilizzato già da Nick Szabo per spiegare il concetto di Smart Contract. Inserendo una determinata somma di denaro, il distributore verifica automaticamente l’importo ricevuto e consegna il prodotto corrispondente, restituendo l’eventuale resto. Nessuno decide di volta in volta se erogare il caffè: tutto avviene secondo regole già stabilite.
Gli Smart Contract funzionano allo stesso modo: quando le condizioni previste dal codice risultano soddisfatte, la blockchain esegue automaticamente l’operazione corrispondente, garantendo trasparenza, prevedibilità e tracciabilità dell’intero processo.
Lo stesso principio può essere applicato a contesti molto più complessi, come i pagamenti automatici, la gestione di diritti digitali, la logistica internazionale, la finanza decentralizzata o le assicurazioni parametriche. In tutti questi casi il vantaggio consiste nella possibilità di ridurre tempi di esecuzione, errori operativi e necessità di verifiche manuali, purché le condizioni possano essere tradotte in regole oggettive verificabili.
Ma praticamente cosa significa?
Le applicazioni degli Smart Contract sono sempre più numerose e spaziano ben oltre il settore delle criptovalute. Alcuni esempi consentono di comprenderne concretamente le potenzialità.
- Acquisto di uno smartphone a rate. Un rivenditore potrebbe inserire nello Smart Contract una clausola che abilita o limita alcune funzionalità del dispositivo in base al regolare pagamento delle rate. Se una rata non viene saldata entro i termini stabiliti, il contratto potrebbe applicare automaticamente le conseguenze previste, senza necessità di ulteriori interventi.
- Spedizione in contrassegno. In una compravendita online il pagamento può rimanere «bloccato» nello Smart Contract fino alla conferma della consegna. Quando il sistema certifica che la spedizione è stata completata, la blockchain trasferisce automaticamente il denaro al venditore, riducendo il rischio di contestazioni o inadempimenti.
- Compromesso per l’acquisto di una casa. Uno Smart Contract può gestire automaticamente una clausola sospensiva legata alla concessione del mutuo. Se la banca approva il finanziamento entro una determinata data, il sistema trasferisce la caparra al venditore; in caso contrario, annulla automaticamente gli effetti dell’accordo secondo quanto previsto dalle parti.
Questi esempi dimostrano come gli Smart Contract siano particolarmente efficaci quando le condizioni possono essere verificate in modo oggettivo. Nei casi in cui entrano in gioco valutazioni discrezionali o interpretazioni giuridiche, invece, continuano a essere indispensabili il contratto tradizionale e gli strumenti previsti dall’ordinamento.
Dove vengono utilizzati oggi gli Smart Contract
Oltre ai casi più semplici, gli Smart Contract trovano oggi applicazione in numerosi settori dell’economia digitale. L’ambito più conosciuto è quello della finanza decentralizzata (DeFi), dove gestiscono prestiti garantiti, exchange decentralizzati, servizi di staking, stablecoin e numerosi protocolli finanziari senza ricorrere agli intermediari tradizionali.
Anche la supply chain rappresenta uno dei principali campi di utilizzo. Produttori, trasportatori, distributori e clienti possono condividere lo stesso registro digitale per certificare spedizioni, consegne e passaggi di proprietà, automatizzando i pagamenti al verificarsi delle condizioni previste e riducendo le contestazioni.
Nel settore assicurativo stanno invece trovando spazio le cosiddette polizze parametriche. In questo modello il rimborso viene liquidato automaticamente quando un parametro oggettivo supera una determinata soglia, ad esempio il ritardo certificato di un volo o un evento meteorologico rilevato da fonti ufficiali. L’efficacia del sistema dipende però dall’affidabilità degli oracle che trasmettono questi dati alla blockchain.
Gli Smart Contract sono inoltre utilizzati per la gestione di NFT, asset digitali, programmi di membership, identità digitali e sistemi di autorizzazione aziendale. In questi casi consentono di definire in modo trasparente chi può accedere a un servizio, trasferire un diritto o utilizzare una determinata risorsa, mantenendo sempre una traccia verificabile delle operazioni effettuate.
Quanto costa creare uno Smart Contract?
Sebbene il principio di funzionamento degli Smart Contract sia relativamente semplice, la loro progettazione può risultare particolarmente complessa. Non basta infatti scrivere un programma che esegua alcune istruzioni: il codice deve essere sicuro, efficiente e in grado di gestire correttamente tutte le possibili situazioni che potrebbero verificarsi durante il suo utilizzo.
Una parte rilevante dei costi è rappresentata proprio dalle attività di progettazione, test e audit di sicurezza. A differenza di un normale software, infatti, uno Smart Contract che gestisce fondi o diritti economici può causare perdite ingenti in caso di errori logici o vulnerabilità. Per questo motivo è prassi sottoporlo a revisioni indipendenti del codice prima della pubblicazione sulla blockchain.
In termini economici non esiste un prezzo standard. Lo sviluppo può costare da circa 7.000 dollari fino a oltre 100.000 dollari, a seconda della complessità del progetto, delle funzionalità richieste, della blockchain utilizzata e del livello di sicurezza necessario. A questi importi possono aggiungersi i costi di manutenzione, monitoraggio, aggiornamento dell’infrastruttura e delle commissioni di esecuzione (gas) richieste dalla rete blockchain scelta.
Esistono anche piattaforme no-code o low-code che consentono di realizzare Smart Contract con strumenti semplificati, ma sono generalmente adatte a casi d’uso limitati e non eliminano la necessità di verificare attentamente il codice prima della messa in produzione.
Vantaggi e opportunità degli Smart Contract
L’interesse crescente verso gli Smart Contract deriva soprattutto dalla loro capacità di automatizzare processi che, tradizionalmente, richiedono controlli manuali, documentazione cartacea e l’intervento di più soggetti. Quando vengono utilizzati negli scenari appropriati, consentono di velocizzare l’esecuzione degli accordi, ridurre gli errori operativi e aumentare la trasparenza delle transazioni.
Il principale vantaggio consiste nella possibilità di trasformare una parte della fiducia tra le parti in una fiducia «meccanica». Se le condizioni previste dal codice risultano soddisfatte, infatti, lo Smart Contract esegue automaticamente l’azione prevista senza possibilità di modifiche arbitrarie o interpretazioni discrezionali.
Questo non significa però che il rischio scompaia. Piuttosto, cambia natura. Diminuisce il rischio legato all’esecuzione dell’accordo, mentre aumenta l’importanza della progettazione iniziale, della qualità del codice e della sicurezza dell’infrastruttura. Uno Smart Contract esegue infatti esattamente ciò che è stato programmato: se la logica è errata, anche il risultato sarà errato.
Per questo motivo gli Smart Contract rappresentano uno strumento particolarmente efficace quando le regole sono chiare, le condizioni possono essere verificate in modo oggettivo e i benefici dell’automazione superano i costi di implementazione.
Autonomia
Uno dei principali punti di forza degli Smart Contract è l’autonomia. Una volta distribuito sulla blockchain, il codice viene eseguito automaticamente quando si verificano le condizioni previste, senza che sia necessario l’intervento di un soggetto incaricato di controllare o autorizzare ogni singola operazione.
In molti casi questo permette di ridurre il ricorso a intermediari come banche, società di gestione o altri soggetti che normalmente svolgono funzioni di verifica ed esecuzione. Le parti definiscono preventivamente le regole dell’accordo e la blockchain provvede ad applicarle secondo quanto stabilito.
L’autonomia, tuttavia, non elimina completamente il ruolo dell’uomo. La fase di progettazione, la definizione delle clausole, la verifica della conformità normativa e la gestione di eventuali eccezioni continuano a richiedere competenze tecniche e giuridiche. L’automazione riguarda soprattutto l’esecuzione delle regole già concordate, non la loro definizione.
Risparmio
L’automazione dei processi può tradursi anche in un significativo risparmio di tempo e costi. Eliminando numerosi passaggi manuali e riducendo il numero di verifiche amministrative, gli Smart Contract consentono infatti di velocizzare l’esecuzione degli accordi e di diminuire le attività ripetitive.
In molti contesti ciò significa ridurre le spese legate all’intervento di intermediari, alla gestione documentale e ai tempi necessari per riconciliare informazioni provenienti da sistemi differenti. Inoltre, grazie alla registrazione condivisa delle operazioni sulla blockchain, diminuiscono anche le contestazioni dovute a dati incoerenti o versioni differenti dello stesso documento.
Naturalmente il risparmio non è automatico in qualsiasi scenario. Lo sviluppo di uno Smart Contract richiede investimenti iniziali, competenze specialistiche e verifiche di sicurezza. I benefici economici diventano realmente significativi quando i processi sono ripetitivi, coinvolgono numerosi soggetti oppure prevedono elevati costi di gestione con le modalità tradizionali.
Sicurezza
La sicurezza rappresenta uno degli aspetti più importanti degli Smart Contract. La blockchain garantisce infatti un elevato livello di integrità dei dati grazie alla crittografia, alla distribuzione delle informazioni tra i nodi della rete e ai meccanismi di consenso che impediscono modifiche arbitrarie alle transazioni già validate.
Questo non significa però che uno Smart Contract sia automaticamente sicuro. Se il codice contiene errori logici o vulnerabilità, il rischio non riguarda soltanto il funzionamento del software, ma può tradursi in perdite economiche anche molto rilevanti. Per questo motivo il settore considera oggi gli audit indipendenti, le revisioni del codice e i test approfonditi come passaggi fondamentali prima della pubblicazione.
Le vulnerabilità più comuni riguardano errori nella logica del programma, controlli di accesso incompleti, interazioni non sicure tra più Smart Contract, gestione impropria degli aggiornamenti oppure dipendenze da oracle che potrebbero fornire dati errati o manipolati.
In altre parole, la blockchain offre un’infrastruttura estremamente sicura, ma la protezione dell’intero sistema dipende anche dalla qualità del codice e dalle procedure adottate durante lo sviluppo. Come ricordano gli esperti del settore, uno Smart Contract vulnerabile non rappresenta semplicemente un bug informatico, ma un potenziale rischio economico.
Accuratezza
Rispetto ai contratti gestiti manualmente, gli Smart Contract offrono un elevato livello di accuratezza nell’esecuzione delle operazioni. Una volta definite le regole e pubblicato il codice sulla blockchain, ogni istruzione viene eseguita sempre nello stesso modo, eliminando il rischio di errori dovuti a interpretazioni differenti o a procedure svolte manualmente.
L’utilizzo di un registro condiviso consente inoltre a tutti i partecipanti di verificare lo stato delle operazioni e le condizioni previste dallo Smart Contract, aumentando la trasparenza e riducendo le possibilità di contestazione. Ogni transazione viene infatti registrata in maniera cronologica e verificabile, rendendo più semplice ricostruire le attività svolte.
Naturalmente questa precisione richiede che le regole siano state progettate correttamente fin dall’inizio. Se il codice traduce in modo errato la volontà delle parti, lo Smart Contract continuerà comunque a eseguire automaticamente istruzioni non corrette. Per questo motivo progettazione, verifica e collaudo rappresentano fasi essenziali dell’intero processo di sviluppo.
Se, invece, desiderate conoscere le altre potenzialità della tecnologia blockchain, vi invitiamo alla lettura di un nostro approfondimento dedicato alla tokenizzazione della società.
leggi anche
Blockchain: a cosa serve e dove viene usata
Quali blockchain supportano gli Smart Contract?
Sebbene Ethereum continui a rappresentare la piattaforma di riferimento per lo sviluppo degli Smart Contract, oggi esistono numerose blockchain in grado di supportarne l’esecuzione. Negli ultimi anni l’ecosistema si è ampliato sensibilmente e gli sviluppatori possono scegliere tra reti con caratteristiche differenti in termini di costi, velocità, sicurezza e scalabilità.
Ethereum mantiene una posizione dominante soprattutto grazie all’ampiezza del proprio ecosistema di sviluppatori, applicazioni decentralizzate e protocolli di finanza decentralizzata (DeFi). Un indicatore spesso utilizzato per misurarne la diffusione è il Total Value Locked (TVL), cioè il valore complessivo degli asset depositati nei protocolli DeFi presenti su una determinata blockchain. Anche se questi dati sono in continua evoluzione, Ethereum continua a occupare stabilmente il primo posto nelle principali rilevazioni di settore.
Accanto a Ethereum si sono affermate anche altre reti come BNB Chain, Solana, Avalanche, Polygon, Tron e Cardano, ciascuna progettata per rispondere a esigenze differenti. Alcune privilegiano costi di transazione più contenuti, altre puntano su una maggiore velocità di elaborazione oppure su specifiche funzionalità dedicate alle applicazioni decentralizzate.
La scelta della blockchain dipende quindi dagli obiettivi del progetto, dal livello di sicurezza richiesto, dai costi operativi sostenibili e dal tipo di applicazione che si intende realizzare. Non esiste una soluzione migliore in assoluto: ogni piattaforma presenta vantaggi e compromessi che devono essere valutati caso per caso.