Timeswap V2 - l'évolution du marché des prêts et emprunts DEFI (🇫🇷)
December 11th, 2022

Vous trouvez ici le thread de cet article

Un protocole DEFI qui est le premier à être permissionless, sans oracle, non liquidable, où vous pouvez faire des prêts & emprunts avec des dates de maturité fixes ? C’est ce que propose TIMESWAP

On part sur une analyse complète du protocole, accrochez-vous 🔥

L’analyse suivra ce fil, divisée en 4 grandes parties :

  1. Analyse fondamentale rapide

  2. Étude technique et utilisation du protocole V1

  3. Les cas d’usages

  4. L’arrivée de la V2 et au-delà


1. Analyse fondamentale rapide

Je ne vais pas m’attarder longtemps sur cette partie. En clair ce qu’il faut retenir :

L’équipe est solide ; 17 personnes travaillent sur le projet depuis plus de 2 ans Vous pouvez accéder aux profil LinkedIn en un clic, et ça c’est assez rare de trouver tant de transparence et si facilement sur le background des membres

Timeswap website
Timeswap website

Du côté advisors et VC / investisseurs, la côte est haute ;

Timeswap website
Timeswap website

Des noms bien connu dans le milieu 👀

Timeswap website
Timeswap website
Timeswap website
Timeswap website

En revanche, on a aucune info sur le montant de levé de fond – rien sur https://www.dovemetrics.com/

Niveau sécurité, 4 audits ont été réalisés et de nouveaux sont prévus avant le déploiement de la V2

Timeswap website
Timeswap website

2. Étude technique et utilisation du protocole V1

Timeswap s’apparente à un protocole de lending DEFI 2.0, mais d’abord qu’est-ce qu’on peut appeler la DEFI 1.0 ?

Ça rassemble la plupart des protocoles DEFI qui ont pour beaucoup d’entre eux, émergés pendant ou après la DEFI summer 2020 avec les amorçages de liquidités via les incitations symboliques (ok, Maker reste une exception pour ça)

D’apparence oui c’est décentralisé car tout le monde peut à tout moment emprunter ou prêter de l’argent sans intermédiaire, peu importe la provenance, sans KYC et avoir la main mise sur ses fonds.

Les limites de la DEFI 1.0 : Sur COMPOUND, AAVE ou encore MAKER ;

  • Le protocole a besoin de liquidateur et d’un oracle pour fonctionner ; ils dépendent donc d’un tiers

  • Les prêts et emprunts sont sur-collatéralisés créant une inefficacité du capital

  • Vous ne pouvez pas gérer les taux en fonction de votre appétence au risque

  • La création de nouvelles pools est soumises aux votes de la DAO – processus parfois fastidieux

L’évolution de la DEFI avec TIMESWAP : Tout comme le produit AMM a révolutionné les DEX, Timeswap vise à révolutionner les prêts et emprunts décentralisés. Pour cela, Timeswap est un AMM à 3 variables, où l’utilisateur peut fixer lui-même les taux d'intérêt et les garanties pour chaque transaction de prêt ou d'emprunt. Allons comprendre cela en 2 parties :

  • les caractéristiques qui rend le protocole autonome et sûr

  • le fonctionnement d’un AMM à 3 variables

Ces 5 caractéristiques en question sont :

Timeswap Gitbook
Timeswap Gitbook
  • Sans oracle : les oracles sont exposés aux hacks (https://decrypt.co/49657/oracle-exploit-sees-100-million-liquidated-on-compound). Timeswap fonctionne sans oracle grâce à sa composante à 3 variables qui lui permet d’être sur un marché libre des taux d’intérêts et des taux de collatéralisation.

  • Permissionless : tout le monde peut créer ses propres pools de liquidités sans vote de gouvernance requis

  • Non liquidable : fini les galères et le stress où vous devez constamment surveiller le health factor. Ici vous devez payer avant la date de maturité

  • Taux d’intérêt et collatéral défini par le marché : les taux sont dynamiques et dépendent de l’activité des prêteurs et emprunteurs

  • Vecteurs d'attaques minimes : risques liés aux oracles supprimés, ainsi que le risque lié aux liquidateurs.

On a parlé d’AMM à 3 variables, voici de quoi il s’agit :

Timeswap Gitbook
Timeswap Gitbook

X = montant des actifs du pool pouvant être emprunté (soit somme des actifs déposés par les lenders) Y = montant des intérêts (APR) Z = taux de collatéralisation (appelé CDP = garantie verrouillée) K = constante

Pour mieux comprendre : Timeswap s’apparente à un protocole de lending & borrowing du style AAVE / COMPOUND mais de façon UNISWAP / BALANCER Car : Sur AAVE le taux de collatéralisation et taux d’intérêt sont fixés par des oracles. Sur UNISWAP le protocole est entièrement autonome vis-à-vis des oracles grâce à son système de détermination de prix X*Y=K créant un mécanisme de découverte de prix libre

Comme dans une pool sur Uniswap, sur Timeswap l’activité des lenders / borrowers impactent directement sur l’APR (Y) et le taux de collatéralisation (Z)

Timeswap Gitbook
Timeswap Gitbook

De cette façon, le montant bloqué en collatéral par les borrowers va servir à protéger les actifs prêtés par les lenders, les borrowers empruntent ce qui a été mis à disposition par les lenders.

Vous voyez le truc venir ? Et oui, ce sont ces 2 composantes variables Y et Z qui vont créer en quelque sorte des incitations à utiliser Timeswap

Alors, comment ça fonctionne ? Allons voir directement sur le terrain

Sur la pool USDC – MATIC, vous pouvez faire 3 choses :

  • Prêter de l’USDC

  • Emprunter de l’USDC en collatéralisant du MATIC

  • Apporter de la liquidité sur la paire USDC – MATIC

Prêt : En sélectionnant l’asset, le collatéral et la date de maturité, le protocole vous propose des taux recommandés

100$ USDC de prêt seront protégés par 122,82 $MATIC
100$ USDC de prêt seront protégés par 122,82 $MATIC

En utilisant les features advanced, vous pouvez booster l’APR au détriment du CDP

Timeswap Gitbook
Timeswap Gitbook
  • En diminuant l’APR, on protège davantage d’actifs : l’assurance augmente

  • En augmentant l’APR, le collatéral qui couvre ma position du lending est plus faible

Les prêteurs gagnent les paiements des intérêts

Emprunt : En sélectionnant le montant d’emprunt souhaité, vous obtenez le montant de garantie nécessaire

 CDP=111,88 % signifie que pour emprunter 100 $, l'utilisateur devra bloquer une garantie de 111,88 $
CDP=111,88 % signifie que pour emprunter 100 $, l'utilisateur devra bloquer une garantie de 111,88 $

Les advanced feature fonctionnement de la même manière que pour lending

Timeswap Gitbook
Timeswap Gitbook
  • En diminuant l’APR, la dette à repayer baisse donc le montant de la garantie à fournir augmente

  • En augmentant l’APR (donc le coût de l’emprunt), moins de collatéral est nécessaire donc le CDP baisse

Si vous emprunter, assurez-vous de rembourser AVANT la date de maturité sur la valeur de votre collatéral > montant emprunté Autrement votre position fera défaut et ira dans les poches des LPs

Apport de liquidités : Les apporteurs de liquidité sont les market markeur de la pool : ils apportent et empruntent à la fois ce qui permet de faciliter les transactions de lending et borrowing

Bien sûr, la LP est soumis à l’IL et gagne les frais de transactions des lenders / borrowers

Attention, vous êtes les LPs de la pool ce qui veut dire qu’en cas de défaut des borrowers, vos positions serviront à ajuster les remboursement manquants aux lenders.

Exemple ici, pour LP vous devez apporter du MAI + MATIC suivant le CDP en vigueur à l’instant où vous le faites

CDP=146,04 %, l’utilisateur doit bloquer l’équivalent de 1,46x la quantité de $MAI allouée ($MATIC = 0,775$)
CDP=146,04 %, l’utilisateur doit bloquer l’équivalent de 1,46x la quantité de $MAI allouée ($MATIC = 0,775$)

Dans le cas ci-dessous, je dois :

  • Flash Repay avant la date de maturité (remboursement)

  • Récupérer la part en lending + fees à date de maturité (le bouton « burn » devient cliquable)

Timeswap V1
Timeswap V1

Donc maintenant, la question est de savoir quand rembourser par flash repays ? C'est simple, si la valeur de votre garantie (exemple : 70 $MATIC) est supérieure à l'actif que vous devez rembourser (exemple : 55 $MAI), alors vous pouvez rembourser rapidement pour récupérer votre $MATIC Si la valeur du $MATIC est inférieure au $MAI, alors vous n'avez pas à rembourser et le collatéral ira aux LPs

Sur ce fonctionnement, un excès de prêt va faire diminuer l’APR et le CDP car la pool va se retrouver « sur-garantie » et donc créer des conditions d’emprunts très attractives Inversement, beaucoup d’emprunts vont faire monter l’APR et le CDP permettant aux nouveaux lenders de prêter avec un bon rendement et une bonne assurance, comme c’est arrivé le 05 Septembre :

Timeswap V1
Timeswap V1

D’autres astuces pour utiliser TIMESWAP :

  • Si je veux faire du lending : augmenter l’APR si le CDP est haut

  • Garder un APR “recommended” si le CDP est bas

  • Faire du borrowing quand le CDP est bas

Quelques features importantes à savoir :

  • Lorsque que vous prêtez / empruntez, votre taux sélectionné est fixe jusqu’à la fin de la maturité

  • Les lenders doivent attendre la fin de la maturité de la pool pour retirer leur position

  • Les emprunteurs peuvent à tout moment ajouter du collatéral sur l’emprunt en cours pour réduire le taux

  • Si le CDP est < 100%, cela signifie que la pool n’a pas assez pour compenser la perte en cas de défaillance de l’emprunteur = éviter de déposer en lending tant que les emprunteurs n’ont pas arbitrés aux valeurs des garanties attendues

Et si … Le marché des crypto-actif est très volatile, donc que se passe-t-il en cas de baisse soudaine de l’actif collatéralisé ? Il se peut que le borrower soit en position gagnante s’il ne rembourse pas et que les lenders et LPs anticipent cela et retirent leur dépôt créant ensuite des retraits en cascade : comment le protocole gère cela ? Une baisse soudaine des actifs servant à l’emprunt va drastiquement faire chuter l’APR et le CDP Imaginez, vous pouvez emprunter avec un taux à 0,30% et un collatréral à 102% sur de l’ETH ? Qui ne le ferait pas honnêtement … ?


3. Les cas d’usage

  • Financement par la dette : En créant une pool de liquidité avec son propre token natif, les investisseurs vont être en mesure de prêter l’actif demandé en étant garantie par ce token là Ce cas d’usage sera très utile pour les DAO ou projet qui n'ont pas d'investisseurs et dont le produit est adapté au marché Autrement dit : financement par la communauté Comme les pools sont séparées, le défaut de remboursement de celle-ci n’affectera en aucun cas les autres pools

Timeswap a déjà un premier partenariat avec QiDAO      Explication de QiDAO ici :

  • Financement par l’emprunt : Par exemple, Microstrategy peut déposer ses importants avoirs en Bitcoin dans des pools Timeswap pour débloquer des liquidités qui peuvent être utilisées pour leurs opérations de fonds de roulement ou pour d'autres achats de Bitcoin comme celui-ci

  • Avoir du rendement sur ses NFT :

    La NFTFi a le vent en poupe, mais c’est bien stressant d’avoir son NFT en collatéral

    Sauf si vous utilisez Timeswap Je détaille une technique à utiliser pour y parvenir dans ce thread https://twitter.com/caZUBelli/status/1562924297315880960?s=20&t=aaH2MMkr8CYlWmvLYfzffw


4. L’arrivée de la V2 et au-delà

https://twitter.com/TimeswapLabs/status/1597568568614191104?s=20&t=6iyumwP2Gy3MSI-WCvoE0A
https://twitter.com/TimeswapLabs/status/1597568568614191104?s=20&t=6iyumwP2Gy3MSI-WCvoE0A

Mais pourquoi est-elle tant attendu ? D’abord voyons quels sont les limites de la V1 :

  • les lenders doivent attendre la fin de maturité pour retirer leur mise (a)

  • quand un borrower repaie avant la date de maturité, le capital pris au lending est mis de côté sans être utilisé = crée une perte d’efficacité du capital (b)

  • les grosses transactions ont tendance à rapidement faire varier le CDP et l’APR : ceci crée des opportunités d’arbitrage pour les borrowers au détriment des lenders (c)

Voilà comment la V2 répond à ces problématiques :

a) flexibilité accrue : Les lenders et LPs pourront sortir de la pool avant la maturité. Tout sera géré en backend par le protocole : lorsque les lenders clôturent leurs positions, le contrat ouvre des positions d'emprunt équivalente pour le contrebalancer automatiquement.

En clair ; Si vous fermez vos positions de prêt avant l'échéance, vous renoncez à certains rendements potentiels Si vous fermez vos positions d'emprunt avant l'échéance, vous bénéficiez d'un rabais

Schématisation du lending - fait par @caZUBelli
Schématisation du lending - fait par @caZUBelli

b) Efficacité du capital accrue : Le capital remboursé est réinjecté dans la pool, ce qui permet d'emprunter le capital de manière cyclique : la pool devient sur-collatéralisé et le taux d’emprunt devient plus attractif de nouveau suite à un remboursement d’un borrower

Schématisation du borrowing - fait par @caZUBelli
Schématisation du borrowing - fait par @caZUBelli

c) Réduction de la volatilité de l’APR et du CDP : bidirectionnalité des pools

Cette partie est la plus importante et aussi la plus intéressante !

               👀 ⏳⌛️ Timeswap est dans les temps  ⌛️⏳👀

Leur nouveau d’AMM prévu dans la V2 ressemble de près à ce que Curve prévoit dans son nouveau LLAMMA, un AMM innovant pour le lending & borrowing

Il y a des différences subtiles à cerner !

Concernant CURVE, beaucoup de contenus ont été publiés suite au nouveau WP de Curve concernant le LLAMMA ; je ne vais pas faire de doublon, allez jeter un coup d’œil à ce qu’a fait @RoadSaiyan https://twitter.com/RoadSaiyan/status/1595245333956771840?s=20&t=CfM98POg-pcJgDTHR60lzA

Vous voyez que le fonctionnement de bidirectionnalité des pools est le même dans les deux protocoles Curve est différent sur ces points :

  • Les liquidations sont toujours présentes mais vous avez la main dessus en personnalisant vos bandes de liquidation

  • Le price discovery est externalisé grâce à l’utilisation d’oracle (vous avez déjà la réponse pour Timeswap)

Comment Timeswap est innovant ?

Timeswap devient un protocole d’option à somme nulle (backend) tout en étant et avant tout un marché d’emprunt et de prêt à liquidation nulle (frontend)

  • En frontend vous verrez peu de changement, si ce n’est que la disparition du curseur pour choisir son APR et CDP.

  • C’est en backend que ça se passe L’AMM change fondamentalement ; la formule qui fait l’équilibre du protocole passe de x*y*z= k à (x+y)*z = k avec :

    x = nombre d’options Long ETH dans la pool

    y = nombre d’options Long LUSD dans la pool

    z = nombre d’options Short (ETH ou LUSD) par seconde dans la pool

    k = constance

Un rappel sur les options (source : AMA Timeswap) :

Une option est comme un instrument financier qui vous donne le droit/propriété d'un actif sous-jacent ; vous ne détenez pas réellement l'actif, mais une exposition à celui-ci.Dit simplement, l’option vous donne le droit mais pas l’obligation d’acheter ou vendre un actif à prix donné et à une date de maturité fixe

Si vous négociez une option, il y a 2 détails importants : Prix d'exercice (strike) & l’échéance. Si l'option vous donne le droit d'acheter à un prix particulier à l'échéance, il s'agit d'une option d'achat. De même, si l'option vous donne le droit de vendre à un prix particulier à l'échéance, il s'agit d'une option de vente. Pour construire une option, il y a un coût/prime. Par exemple, si un acheteur achète le droit de vendre de l'ETH à un prix particulier à l'échéance, il doit y avoir un coût lié à ce droit que l'on appelle prime

Les acheteurs de l’option paient cette prime et les vendeurs reçoivent cette prime

Exemple : Alice achète une option de vente ETH au prix d'exercice 1800, échéance 1 mois, prime = 15$ Cela signifie qu'elle a le droit mais pas l'obligation de vendre l'ETH à 1800$ : c'est ce que l'option de vente garantit. Maintenant, si l'ETH est à 2200$ après l'échéance, Alice ne le vendra pas à 1800$ et l'option de vente expire sans valeur, ce qui signifie qu'Alice ne l'a pas exercée et a perdu la prime de 15$ Mais disons que si l'ETH chute à 1500$, Alice peut exercer l'option et le vendeur fera ce qu'Alice veut et Alice peut vendre l'ETH à 1800$, réalisant ainsi un bénéfice puisque le prix spot est de 1500$, Alice l'a vendu à 1800$ mais a payé 15$ pour la prime, d'où un bénéfice net de 285$

En clair, le coût de la prime pour l'acheteur est un revenu pour le vendeur. Les vendeurs gagnent lorsque l’acheteur d’option perd = crée une spéculation perdant / gagnant

On voit bien que fondamentalement, tout protocole de prêt ou emprunt à terme fixe sans liquidation est une mise en œuvre d'option en backend où :

  • La prime = intérêts (APR)

  • L’échéance = maturité de la pool

  • Le prix strike = prix d’équilibre où la pool se retrouve en sous ou sur-garantie

  • Le prix spot est bien entendu le prix du marché également

Désormais, quand vous voulez créer un pool vous devez définir la date de maturité, l’APR initial ainsi que le strike price. Ensuite, l’activité des lenders et borrowers vont légèrement impacter l’APR et le CDP. En backend, c’est le strike price qui joue un rôle majeur car s’il est franchi, la bidirectionnalité entre en jeu.

Explications V2 (1/4)
Explications V2 (1/4)

Pour qu’une pool de prêt et d’emprunt fonctionne, vous devez systématiquement avoir le montant emprunté < montant collatéralisé

Ici, il n’y a pas de liquidation Ce qui signifie que la pool peut se retrouver sous-collatéralisée Le problème ? Les emprunteurs qui voient le montant de leur collatéral descendre en dessous du montant emprunté n’ont aucun intérêt à aller rembourser … ce cas de figure profite aux emprunteurs mais clairement pas aux prêteurs qui se retrouvent à récupérer l’actif garantie, qui vaut moins que la part prêtée.

La fluctuation du spot price par rapport au strike va rendre la pool sur-collatéralisé ou sous-collatéralisé

Le strike price peut être défini comme le seuil à partir duquel le montant emprunté > montant collatéralisé

Explications V2 (2/4)
Explications V2 (2/4)

Lorsque le strike < spot, tout le fonctionnement reste le même

Lorsque le strike > spot, c’est là que la bidirectionnalité entre en jeu

Comprenons d’abord les notions de out-the-money (OTM) et in-the-money (ITM) : Par exemple, le strike price du ETH sur Timeswap est de 1900$ et le spot price est de 1750$

Vous obtenez ETH sur Timeswap plus cher que sur le marché. En d'autres termes, le prix spot < prix d'exercice : une option est OTM parce qu'il n'y a aucun intérêt à exercer une option à ce moment-là

Pourquoi ? Parce que vous obtenez quelque chose pour 1900$ mais tout le monde obtient la même chose pour 1750$ sur le marché, donc l'option est OTM = elle donne une perte lorsque vous l'exercez.

D'un autre côté, l’option est ITM lorsque spot > strike. En clair, vous obtenez quelque chose pour 1750$ (strike) et vous le vendez sur le marché pour 1990$ (spot), ce qui vous permet de réaliser un bénéfice de 250$

Quand:

  • spot > strike = ETH devient ITM ; ETH devient le yield asset

  • strike < spot = ETH devient OTM ; ETH devient l’actif de collatéral

💡 Avoir un prix strike supérieur au prix spot dans cette pool revient à avoir une position Long ETH < montant $LUSD

Le terme « Long » est utilisé pour refléter une option. Quand vous mettez un actif en collatéral avec une échéance, vous exercez une option Long sur cet actif Vous pouvez très bien considérer que Long ETH = la valeur en $ des ETH et de même pour longue LUSD ; ça pourra vous faciliter la compréhension du mécanisme

Remarque : sur le schéma pour des questions de simplicité, toutes les positions ont été appelées « Long » Pour être précis ; seulement l’actif bloqué comme garantie est appelé « Long »

Bien, Donc lorsque le strike > spot, en backend ça va se dérouler de cette façon :

  1. Le montant en LUSD a désormais plus de valeur que Long ETH (yield asset > collateral asset)

  2. L’option exercée sur ETH devient OTM

  3. Pour garantir la sur-collatéralisation, Timeswap va vendre la position Long ETH

  4. Puis racheter des LUSD et les mettre en collatéral : la position devient Long LUSD

  5. L’option exercée sur LUSD devient ITM

  6. La pool est de nouveau sur-collatéralisée

Souvenez-vous que :

  • L’actif de dépôt (lending) doit être l’actif OTM, car il coûte moins cher sur le marché que sur Timeswap

  • L’actif de collatéral doit être l’actif ITM, car il est plus cher sur le marché que sur Timeswap

Si on reprend la formule de l’AMM : (X+Y)*Z=k Il ne peut y avoir qu’un seul actif en collatéral : c’est l’actif qui est ITM qui sert de garantie

  • Si LUSD est en collatéral = Long LUSD (Y) est ITM donc Long ETH = 0 ; la formule devient Y*Z=k

  • Si ETH est en collatéral = Long ETH (X) est ITM donc Long LUSD = 0 ; la formule devient X*Z=k

Grâce à ce mécanisme de bidirectionnalité des pools, Timeswap gère les opportunités d’arbitrage pour garantir la sur-collatéralisation de la pool

 Explications V2 (3/4)
Explications V2 (3/4)

Les prêteurs peuvent déposer n'importe quel actif puisque la pool est bidirectionnelle, mais le SC ne prendra/acceptera que celui qui est OTM afin de renforcer l'efficacité du capital (ces transactions se font en backend)

Explications V2 (4/4)
Explications V2 (4/4)

Pour synthétiser, voici l’aperçu du schéma explicatif que vous avez visionné en plusieurs parties :

Ces nouvelles intégrations en backend permettent au protocole d’être en permanence en sur-garantie tout en aillant une efficacité du capital accrue

La bidirectionnalité de la pool libère le protocole de sa fragilité ; l’APR let CDP ne sont plus les paramètres déterminants pour ramener une pool à l’équilibre

Les utilisateurs peuvent alors prêter des jetons dans le pool pour gagner un revenu fixe et peuvent également emprunter des jetons ou les utiliser comme levier contre d'autres jetons, sans risque de liquidation Timeswap crée un marché libre et ouvert où chacun peut créer une pool, y ajouter de la liquidité et gagner des intérêts dessus

Il devient alors le protocole adapté pour construire des produits DEFI exotiques nécessitant une préférence temporelle fixe.

A noter que la V1 restera disponible lorsque la V2 sera live – certains cas d’usage peuvent être plus adapté à la V1 et inversement

La décentralisation du protocole est prévue puisque le token $TIME a été mentionné plusieurs fois par l’équipe. Airdrop, liquidity mining ou autre ? On se sait pas encore. Les manières qui peuvent vous donner des avantages à la sortie du token sont de :

  • Participer activement au sein de la communauté et être promu Time Traveler puis Time Guardian

  • Essayer les stratégies sur le testnet de la V2, des récompenses sont attribués aux meilleurs degens

  • Faire les quêtes Crew3 pour accumuler de l’xp qui sera converti en $TIME :

    https://crew3.xyz/c/timeswap/invite/LMq6vA2WssH_yH9qaqiyo

Si vous avez tenu bon jusqu’ici, c’est que vous aussi vous avez cerné les limites de la DEFI que l’on connait, et compris que Timeswap apporte une réelle innovation

Tout ce contenu a été rédigé grâce à l’aide de l’équipe Timeswap pour la compréhension du WP de la V2 qui est technique. Je ne fais en aucun cas partie de l’équipe du projet, et ai rédigé cet article à des fins personnelles uniquement. La totalité (incluant les schémas) ont été fait à partir des documentations disponibles.

Avertissement : Cet article est à but informatif uniquement et ne constitue pas un conseil juridique, commercial ou d'investissement. Ne basez pas vos décisions d'investissement sur celui-ci, ni ne le considérez comme un conseil comptable, juridique ou fiscal. La mention d'actifs ou de valeurs mobilières spécifiques est donnée à titre d'exemple et ne représente pas une recommandation. Les opinions de l'auteur peuvent ne pas refléter celles de ses affiliations et sont susceptibles de changer sans mise à jour.

A plus Travelooors 🚀⏳

La publication de cette article a convaincu la team de Timeswap d’ouvrir un channel français 🇫🇷 dans leur discord malgré le fait qu’on soit encore très peu 😁 J’espère t’y retrouver là bas !

Subscribe to Cazu
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.
More from Cazu

Skeleton

Skeleton

Skeleton