Understanding Penumbra with Henry de Valence

28 Oct 2022 · 1:33:30

The Interop host Sebastien Couture speaks with Henry de Valence about Penumbra, a privacy-preserving chain built for the Cosmos ecosystem. They cover the zero-knowledge research behind the project, its shielded automated market maker and sealed-bid batch trading, private staking and staking rewards, its use of IBC for interchain connectivity, and the regulatory questions that come with building private financial infrastructure.

Speakers

Topics

Transcript

we are live I'm such 3.0 and I'm here today with Henry de Vanos which founder of penumbra Labs we're gonna be diving deep into penumbra which is one of the most interesting privacy projects I think in the interchain and one that is immensely technically complex so hopefully uh he'll go easy on me uh today we're going to learn how penumbra enables private transactions staking swapping and Market making uh in a shielded system and it works with IBC which is kind of mind-blowing so we're gonna learn about that and we'll also find out why Henry thinks ZK avms are overrated my guest Henry devinos is coming up next right here on the interrupt

[Music] hey Henry hey great to be here thanks for joining me I think I just made the same mistake that I did last time uh was I muted during the interview I could hear you okay great hopefully other people could too but at least I could yeah no uh so okay no that worked out pretty good I just thought of you after I was like oh shoot no I didn't do that again um yeah how you doing great awesome um thanks for coming on and yeah this is gonna be interesting I'll be like you know I've been following penumbra I think like since nebular Summit uh this summer and you were there you gave a really interesting interesting talk and

then you also give a talk at um at the nebular anoma event that we did in Midian um but both times I I wasn't able to like properly sit and listen to your talk because I was so busy doing other stuff and so I had to watch them afterwards and um I've been really dying to have like a deep conversation with you here and like understand um how primer Works perspective but also like the challenges because it feels like there are so many challenges not only technical but also just challenging um all of the assumptions that one makes um when thinking about a blockchain right that transactions are um are open and permissionless and like that introduces all sorts of interesting game theory Dynamics and stuff like that especially in the sense like in from

security perspective like validation Etc so um yeah what's your background and like how did you become involved like in penumbra yeah so I started off I got into cryptography originally um as a way to combine both like um very high level uh theoretical math on the one hand and also like very low level computer programming on the other it's like a very fun kind of like two diff very different kinds of of thinking that you can get to interact with each other um that led me into doing uh cryptography engineering

um blockchains were actually a pretty great place to do that because it's like this like big wide open sort of new thing and so people are willing to like just go and build crazy things um and so I spent four or five years um doing that working on sort of like successively larger projects along the way built a bunch of um cryptography ZK infrastructure in Rust um then I went to work at the zcash foundation um on the project to build a second zcash full node for decentralization and

Network Independence client no like like even like like a full node to replace the because with zcash you've got this like you know like beautiful cryptography and it's like bolted onto the side of like Bitcoin D from like 2016. [Applause] um because that was you know when when the project was started that was kind of how the ecosystem was um and then around the end of 2020 uh 2021 that project kind of got got to a good place and uh I decided to to move on and initially just like took a vacation but then while I was on vacation I kept

thinking about um just you know the stuff the kinds of things that I've been working on um and the the broader context of like what was happening in blockchains and where they were going and right at the time that would have been um like right after the uh the defy summer in 2020 um and so you know that was obviously like a pretty exciting time for a lot of people in crypto because all of a sudden you have like people are using all this stuff it's like um you know even if it's like like yam coins or something which is kind of stupid like there's

clearly some kind of real activity going on there but for me it's sort of like this like sort of like what am I doing moment because you can see like okay here's like the circle of like all the uh projects that are getting into option people really care about and then there's like all the like privacy projects that I've spent all these years like trying to build and those that Venn diagram is just like two circles right and so it's not like not a good feeling I'm spending my life like working on all of this stuff that I think is important and valuable but isn't actually getting um adoption and that led to thinking about um

you know what would it mean to try to build something that had privacy uh as a core part of that thing but it wasn't just like oh we're building this thing so that it can be private it's the way I would put it is in the past we've had this this uh urge to be like oh we can build these systems that are private right here's like a list of all these applications of ZK proofs or something but like that's not enough to actually um Drive adoption you also need to actually have like a theory of change of

why is this private thing going to out-compete the transparent Alternatives so what's a use case where um privacy can out-compete transparency and number two what's a use case where people can actually just kind of start um adopting and start using the the product on their own without having to go and like sort of set up all of this other social infrastructure with other people just to get started and that's I think a kind of underrated thing people always talk about like cryptocurrency is like oh payments right because that was the original

motivation for for doing Bitcoin and it's been held up as this kind of gold standard of like can you do a payment right but I think payments actually are really hard as a as a thing to start with because in order for somebody to do a payment right they have to already have found off chain the person that they're trying to coordinate with and so it's like at this like metal level it's like oh we're building this coordination toolite but in order to use the coordination tooling you first have to coordinate to use the coordination tool and it's like hard to to kind of adopt whereas with with a lot of the D5 protocols people can make transactions they can do things like oh I'm doing a trade

um and that's useful to them and they don't have to go off and like find somebody else in advance so that the intersection of that all of this sort of like thinking led to okay number one what's a use case where um we can actually build a better product by having privacy built in and number two what's a use case where people can just like start using it without having to find somebody else to interact with before they can even get started yeah the intersection of those two things is I think private trading yeah no that's that's a really interesting observation about private

systems and you know I I feel similarly about privacy preserving Technologies like the simple example is something like signal signal is extremely easy for anyone to on board you know if basically if you've used any sort of messaging system you know how to use signal it's the exact same UI exact same expectations about how it works but you need to it's like you need to already know who you're going to like kind of transact right like yeah who who is the other person that's going to use that and um well not very many people except for us like crypto networks are on Signal so yeah that makes it harder that's changed it has changed definitely that's like

been like the fundamental struggle with signal right and like the stuff like the messages of like oh like so and so on your contact is on Signal that like sometimes people get really mad about online um actually uh like the reason that that exists is to like let you know that there is a network effect there yeah yeah but you're you're you're blockchain payment system doesn't have like a hey you're like yeah Bakery is now accepting they aren't yeah because they aren't but also because it doesn't exist um right but yeah I like it and I do

sympathize with this I with this uh characterization you gave earlier like this thing you care about and this thing that people are doing that just don't overlap and I feel like I I'm also very passionate about privacy preserving systems and and Technologies but the usability and the fact that nobody uses them is like a major barrier even for you know people who are willing to make that leap um you know there was a summer a couple of years ago where like I closed all my Google accounts and bought a Synology Nas and started running my own mail server in my house and quickly realized after a couple of months of like moving around and stuff that you know having these things in my friend's living room

plugged into my friend's living room wasn't going to cut it so you know there's there's all these um there's all these uh I think hurdles and obstacles that come with wanting to uh use more private systems and you're protecting your your opsec but certainly you know creating a use case that can demonstrate uh actual utility and value in in using private privacy preserving systems is like massively important yeah um what um yo what what ZK research or prior work

does penumbra build on so you were at the ZK foundation and like what parts of say like see cash that people might be familiar with are or other Primitives that people might be familiar with are in penumbra um so yeah so the basic cryptography design of penumbra is is derived from the the data model in ccash but then on top of that we've added a bunch of extensions uh or or changes that I you know have to kind of get into the the fundamental like high level idea and the way that I would explain it is let's imagine that you

start off with um a just like a normal like transparent blockchain like ethereum or Cosmos SDK chain or whatever right the fundamental data model for that chain is uh Global mutable state so that chain has some chain state right in in a cosmos tenement chain and salt very nicely represented by the app hash in the block header um and when people do transactions their transaction has like a bunch of stuff in it the transaction is agreed on by all the nodes and then they execute whatever the stuff there is

um and in that execution they're modifying the the global State and everybody has come to consensus on that so everybody has a consistent View and that's all like fine and good right um but there's like no privacy there so in order to do uh privacy what we want to do is have uh to use uh ZK proofs and the way that we're going to do that is instead of supplying the chain and the whole rest of the world with here's the state transition that I want to do uh instead I'm going to do the state transition that I want on my own and then send to the chain and to the

world this ZK proof that says I have you know I know about this state transition and I'm proving that the state transition followed all the rules of the chain but I'm keeping it to myself in order to make that work though you have to change the state model from one that's based on global immutable state or sorry Global mutable state to one that is based on immutable composable State fragments so this is more like a utxo model like in Bitcoin where instead of having this like one big Global State we fragment the state into all these little pieces and we have this big tree

of all the state fragments that exist and now when I'm doing my uh transaction I can say I'm consuming you know these three state fragments and producing two new state fragments I'm proving that the you know composing this state these like pieces of state that I had before and producing these new ones is all valid according to the rules and the reason that it has to be fragmented like that is that what's really happening when you get privacy is that you're moving the execution off chain but now the execution is actually happening like on the client device and so you have to have some way for People's State transitions not to like

collide with each other when you describe this you want to know what comes to mind is secure scuttlebutt and orbit and I don't know how similar the designs are uh or or like what kind of different underlying assumptions those systems have but like can can you be uh interacting with penumbra but effectively remain offline for some time and then come off come back online or um it's a little I maybe in theory you could you probably don't want to because like when you're when you're making these proofs the part of the the Privacy part is that

um you're proving you're not going to reveal exactly which of these sort of State fragments you're using so to just maybe it'll it's clear if we kind of make this like very concrete um let's say that we're just trying to do like recording value right so our state fragments like in Bitcoin are going to be like these like shielded utxos and zcash those are called notes um and each note is basically like a value an amount of value and an address that controls it right so when I consume that state fragment what I'm doing is like spending that utxo and when I produce a new state fragment I'm producing some some new outputs and so when I'm actually doing that proof

that's like oh I have this like valid set of input States I don't want to reveal exactly which ones I'm doing so I'm going to be making a proof that like these were all contained in some uh state route so I only have to reveal that the top of this tree of uh hash tree of Merkel tree of all the um no commitments um and if I do that offline then there's some kind of privacy risk because if I'm always using like an old sort of State anchor when I'm making my proofs someone might be able to see uh uh to to notice like oh this set of

transactions is always like operating with like a uh two hour delay and so I can like de-anonymize those but yeah there is some kind of conceptual um link there in that like once you the way that I would put it is like it's it's more like sort of like Edge compute but okay blockchains and that you're pushing as much of the computation as possible out to the client but that means that you have to have kind of like segmented about the the states that you could have that kind of asynchronous execution sorry Edge compute you mean like like Cloud functions is that yeah like like like part of the idea there is like um and this is I think that sort of web we

have two context it's like yeah instead of having like all of your all of your computation running on like you know one AWS node you kind of atomize things into into functions like yeah like all the way out onto the like local servers that your CDN has near to where your users are yeah that's kind of the rough rough analogy okay that's interesting okay so it kind of borrows from some of the more like traditional Computing Paradigm at least conceptually in terms of where our computations happen so the system where something like ethereum or Bitcoin all computations effectively are happening on chain um or the the validators are building

blocks as you can transactions and and there's like one degree of separation between the chain and and the entity that's Computing in and updating the state whereas here you're pushing that further out into uh well effectively the user the the whoever's running a client or a wallet and we'll talk about like the different um uh the the the different like sort of steps that the transactions make but it effectively pushes those further out uh from you know the the chain itself interesting and what kind of where so you know a lot of times when we think about uh well you know we talked about earlier

I mentioned ZK VMS in the intro um you know ZK VMS I think sometimes get confused as being private privacy preserving systems in fact that they're used for scaling is is there a scaling angle here to penumbra so does the architecture allow it to scale and what are the at what point does its architecture and its privacy preserving uh characteristics uh create bottlenecks to that scaling yeah so like one of the one of the beliefs that we have um penumbra is that actually uh you know privacy and scaling should and do go

hand in hand because the way that you get and the the high level reason for that is the way you get real privacy on blockchains is by moving the execution off chain and onto the end user's device and the process of like doing that movement now means that you know you're not doing anything on chain yeah and and so there's a but the but this also gets to like the big uh barrier and it's sort of at a technical level so like big breakthrough of penumbra um is if you want to do that now you have to have a better model for like how do people interact with shared State and

I think in in my opinion this is the thing that kind of gets lost in like um ckvm or other kinds of ZK VM approaches is if you take the state model of that transparent chain and you just like do this like Apollo program of ZK engineering to run it all inside of a snark then like you haven't actually changed the kind of the the fundamental nature of like where that computation is happening so in all of these like ZK VM for scaling roll-up type things someone has to actually be the prover

who's like running all these State transitions and that prover has to see everybody's State transitions so like it doesn't really work for privacy and you basically put all of the proving work onto like one entity I see so instead of pushing it out to this Edge compute analogy you're pushing it out to some kind of Provider like right some of the other party that okay yeah and they get less atomized it's more it's more concentrated on these right on these uh provers rather than with penumbra where you know uh transactions are basically pushed out to all the individual users that are interacting with the system it's basically like building a second chain but then rolling up the entirety of that

second chain onto the main shape which is like to be clear like that's you know that's a useful thing to do it's just I I think it is a little bit uh overrated as a scaling solution because it's like you've just moved the problem to somewhere else yeah and you've also added more work because like now instead of just executing you also have to do all this proofing but maybe to back up a little bit um to kind of get into sort of what's the fundamental problem that that we are kind of concretely solving with with penumbra because I think I was going to get there but there's just like there's a lot of overhead I feel like to understand like where you guys are positioned to First go yeah but I think it's because because we didn't actually

come up with it and to to be clear I think it's maybe a little confusing because we didn't actually sort of start off with like oh here's our like big Galaxy brain idea of like this is the future architecture of blockchains and this is how it should work and like you know we're right everybody else is like can't see our genius and you know whatever right that wasn't at all how we got onto this the way that we started was with this idea of like how do we build one useful application right let's pick one thing and try and do that and the thing we picked to try to do was Private Trading but as soon as you start to

uh sort of think about that problem you start running into all of these like fundamental kind of issues about the state model it's a little bit easier to solve hopefully because you're only trying to solve like one specific use case but what's actually happened is that by solving that use case we now have like okay this is our game plan of how we're going to solve this problem in general so the specific problem that we're trying to solve was uh people being able to do uh trading uh without having to leave the shielded pool and what's the basic problem here it's about

um sort of how do you have private interaction with public shared state so when you um when you're doing these like you know private shielded transactions the reason that that works and you can do it is that you're making these like ZK proofs of your own State transitions about your own State you're doing your like little universe but the the reason that anybody cares about any blockchain is because it has shared state right that's like why every every blockchain that anybody cares about is valuable it's because

they can go and like access some shared State they can interact with other people and have those interactions be mediated by the chain so like how do you bridge those two things nobody wants to have like a market where the entire Market is secret and like there's no record of any prices there's no way to see what liquidity there is like that's just like not a useful thing for people to have what people want is a way to have their their specific actions be private but have transparency for the aggregate of everybody's actions uh so that they can like see okay what's

the state of the world that I'm interacting with and other people are going to be able to see what everybody's sort of actions on net are um but they won't be able to like look at like okay this was you know this was seb's trade right they just see like okay this was the total amount of trade um in this block over this time interval or whatever um and the the problem there is that when somebody makes a trade they're they're not going to be like if you submit a a trade to uniswell on ethereum for instance when you sign your transaction you don't sign over like here's like the exact state of unislaw

and here's the exact amount of output that I'm going to use because you know that state could change while you're submitting the transaction and you don't know like you can't say like okay everybody else in the world stop while I do my thing um and that's what's difficult to do with this sort of private ZK proof approach because when somebody is submitting a shielded transaction they're submitting this sort of sealed up little bundle of like you know here my um uh here's my uh State transition I've like done the whole thing and I'm like posting a proof

of it for you to look at but I'm not uh there's there's no sort of room for something to get plugged in later um right you don't know what the price that you're eventually going to execute it is so to solve that um we moved to this kind of asynchronous execution model where when somebody submits a swap on penumbra um they are gonna um privately sort of that in their their swap action they've privately burn all of their input funds that they're committing to this swap they encrypt

those input amounts to the the validators to be processed as part of a batch and they meant to themselves because they can't admit their outputs yet they have to Mint uh nft that kind of like binds to the whole um uh sort of intermediate yeah no it's not that I'm just in the chat it's actually the reason that I'm pausing is I'm realizing that I'm just like doing a very bad job of explaining this and I feel like I've just kind of gone down this whole Rabbit Hole um ah yeah let's start so let's start again I mean I I want to maybe just uh pause here and um I think it's helpful to start from

the um from the wallet and understanding what's happening at this at the edge here and then we can maybe move into from there we can move to what's happening on chain and you know you gave this talk at nebular where you explain the where you explain the the complexities of building a uh wallet in a shielded uh shielded system because with a transparent system as you described earlier like you you have this wallet you have this client you interact with a mutable public State and that and that allows you to create a transaction that you know will happen at a specific point

in that state you don't know exactly so you can't you can't effectively stop the state and just put your transaction here and that's like the whole issue with Mev I guess um but with a with a shielded uh system you need to have this composable state so maybe let's try to understand how that works because I think that's the thing that you even even if I'm even when I try to conceptualize how Urban Works which you know immediately is not the same uh uh not the same architecture but has similar I think properties of how do you interact with a Changing State um when you don't know what the other

parts of that state are I think maybe I don't know having the problem well there but it's like basically other things are happening other people are interacting with the state and you have to be able to synchronously um interact with that state yeah all the while not knowing what those other things are yeah so I okay why don't we take this serve from the top first of all like okay what what I think one of the things that I was realizing we kind of skipped over it's like what exactly is penumbra right um and uh to to just have a kind of like basic scope of of what we're doing in the initial version of penumbra we have a uh fully private shielded L1

it's built on top of tender mint but instead of using the cosmos SDK we have our own application and what that application records is a multi-asset shielded pool that can record any IBC asset and some other custom assets or whatever we want and we use that shielded pool as the kind of Base recording surface of the chain um and on top of that shielded pool right you can do you know basic transfers of value so you can do

shielded transactions you can do uh shielded staking uh within the shielded pool right because we don't want to have to have people leave the Privacy set in order to participate in like securing the network or doing governance or whatever um and then there's kind of the headline feature of uh the chain which is being able to do private swaps or private Market baking and all of that activity is happening from the shielded pool so we have this like private base layer for everything else that we're building and the reason that that's important is you can't uh you can't ever like add

privacy at a higher layer if you're already disclosing things at a lower level right like if there's some like private contract or whatever but in order to interact with it I have to be always using you know my account that's paying all the gas fees just like completely sort of done an end run around the Privacy that I was trying to achieve yeah so the what I would say is like that's sort of the basic framing of like what we're building is this like interchain shielded pool and we use the shielded pool to implement um shielded swaps and shielded Market making

uh and the theory of of sort of why that's a good idea to build is it's not enough to just sort of have like oh here's this like tool that like somebody could use but we want to give people a concrete reason for like why why are your funds in the penumbra Shield pool it's because you can do something useful while you're there which is doing uh swaps or doing Market making particularly for Market making I think there's a really interesting angle there because if you're um if you're like if you have a good trading strategy right uh but somebody else can just like open up a block Explorer and say here are the like top 10 performing active LPS and I'm like

automatically measuring all the returns and now I'll just like build an index out of their strategies and like steal all their Alpha then like you know there's not really any incentive to do uh active Trading right yeah like this this question that was asked here is like is is there a way to prove that a dark Pool isn't a Ponzi yeah um so I think that's actually a really good question right it gets back to this this point that I was making earlier about like it's not just about making everything private it's about how do you have private interaction with public uh shared State how do you have the Privacy

for individuals but transparency for our periods one of the really really really really really cool things about Defy is the level of like real time transparency and like automatic um sort of like algorithmic Risk Management that's possible to do right like or this year we've seen these like Giant drawdowns and all of the actual like D5 protocols were like mostly fine it's and the the giant blow-ups were in these like you know centralized D5 things that we're doing all of their accounting off

chain but the part about like oh you can build a financial system that has real-time transparency like evidently that works like all the liquidations just like happen it you know that part has been proven and so like how do you keep that benefit of like uh real-time transparency for the kind of aggregate state of the world but still allow people to interact with it privately you don't actually want to have like a market where all of the market data is is Secret you want that to be transparent you just want some kind of um barrier between like I can see the

total of like everybody's liquidity positions or everybody's offers or whatever from I'm like looking at this one specific person's activity and I can you know spy on them or or steal their trading strategy or figure out when they're going to make a mistake and then roll them over um so uh yeah how does the um I guess one of the questions that I was thinking about when doing research for this is how does having a shielded amm change our assumptions about how markets work yeah and maybe you know specifically uh decentralizing exchanges and amms

yeah um I mean so so one thing about penumbra is um the actual amm itself is on this like transparent side right so on penumbra um so people may be familiar with zcash or there's like shielded pool transparent pool and remember we don't have that right we only have a shielded pool but we do have transparent aggregates of sort of all of the um yeah so the the state of like what all the liquidity is for instance is public um and the reason for that is it's kind of impossible to uh hide the state of the reserves and also be revealing the

prices um and in general like you know again you don't really want to have like secret Reserves um so I think a lot of the the design for amms carries over onto penumbra what's different is that now people can interact with that in a private way so I can see like oh like this concentrated liquidity position was created but I don't know you know who created it and what was their purpose in creating it like one of the really cool and beautiful results in theory of amms is that you can approximate like any

trading function you want out of you know a bunch of different small concentrated liquidity positions um and so maybe somebody's creating a liquidity position that's part of a bigger strategy but you know because they're doing that over several transactions and all of those transactions are just coming out of this shielded base layer shielded pool um you can't really see how those are linked together as opposed to unisoft E3 or or any other decks where you would see uh you would see like a certain activity coming out of one account and one might like mitigate that by basically but it

carries all their here's all their liquidity positions that they've ever created and I can see their whole timeline of every trade they've ever done right um so copy trading doesn't work with uh yeah exactly it doesn't work with phone number okay so but so penumbra does support like concentrated liquidity like even stop fee three style concentrated liquidity but also this this uh sealed [ __ ] sealed that bid batch um uh trade yeah what's that so there's sort of two sides right um we have uh on the one hand we have um the kind of Market maker side where people are creating positions on the

other we have the market taker side where people are submitting swaps and there's kind of a fundamental trade-off between like how much privacy do you have which is like the inverse of like how much information are you disclosing uh so that's like one axis the other axis is like how much control over your execution do you have and there's not a way to like make that trade-off once and for all so we have two trade-off points um for the market makers we aim for maximum control over execution and for the market takers we have maximum privacy um on the market maker side we have all concentrated liquidity

so we don't actually use uni V3 we use a new um concentrated liquidity design that's very cool and it can get into um a little bit uh but the theory behind only supporting concentrated liquidity is like who are the market makers who have the most benefit from penumbra it's market makers whose strategies actually have like information content in them right um if you're just like doing like a sort of a passive LP like you don't actually gain that much of privacy because you don't really have any information in your strategy to start with um so we're kind of all in on

concentrated liquidity um on the uh Market maker side and all of those liquidity positions are public they're just anonymously created so you can't see who's like like what part of whose strategy it is but you can see the overall shape of like here's exactly how much liquidity is going to be available in this block and then so you can see all the market activity just like the way I'm visualizing this is like there's a market it's like a room with all these kind of like all the door like doors around it it's like a circular room with doors and like people open the doors they like throw their trades in so you can see all the trades and then like

they open the door and they just like grab whatever they were but you can't see who's behind the doors sort of yeah so that's that's only for the um the uh liquidity providers though if you're on the market maker side that's where we optimize for privacy uh and that's where we have this kind of sealed bid batch swap mechanism so if you submit a swap on the market ticker side your transaction says you know I want to swap like you know 200 GM tokens for GN tokens right

um just like making up some some fake assets um in that swap rather than like revealing that information in the clear and now you know your trade intent has been broadcast before it's executed this is where you get all this like Mev front running blah blah um your swap transaction is going to encrypt your input trade amount to a threshold key that's controlled by the validators and that encryption is actually an additively homomorphic encryption so the validators can look at all of the swaps

that they've included in the the block sum up all of the encrypted inputs to get an encryption of the batch total and then only do a decryption of like here's the total amount of like uh inputs for each side of each trading pair so that means that as long as there's multiple people who are trading in the same block the actual uh the specific amount of each individual uh transactions input is not ever revealed like even in the long term right because the only thing that's revealed is the total amount of uh inputs over all of

the transactions in the batch and then once you have all of that uh once you've got this kind of batched uh trade that's representing okay we've pulled back the covers and we've revealed the trading intent for this block that trade gets like dropped into that room that you mentioned and all of the market makers execute against it so on to the market taker side you have uh privacy through batching on the market maker side uh the Privacy is only coming from the fact that it's sort of in and out of this uh shielded pool and so a market maker would have to

be a little bit more careful because for instance if you have like a liquidity position and you close it and then in the next block you like open another liquidity position that has like you know almost the same amount but you just like shifted the price over slightly somebody might be able to guess that that was really you know the same uh the same person um but the the thinking there is that like if you're the type of person who's going to be able to do like statar and like you know have enough statistics to do a competitive trading strategy probably you can also think about information disclosure whereas for like a normal person it's just like oh I want

to do a trade right they should get the stronger privacy from from batching hey uh one of one of the folks here in the live stream is asking a question about impermanent loss and I'm trying to understand this question so how does it become an LP how does it not become an LP within permanent loss that works until Black Swan has a 70 haircut when it hits large redemptions and I guess this made me think of like how does him what what is the impact of private shielded pools on a permanent loss um I mean I guess like impermanent loss is kind of badly named right because like

the laws is kind of permanent unless the you know the price goes back so like that that's kind of the risk that a market maker is is taking on I think maybe the kind of undercurrent here is like we think that um that the trend of like active liquidity uh out competing passive liquidity is probably going to continue um but in in penumbra there it is possible to do um the equivalent of of like uh sort of passive uh liquidity provision

what you do is uh if you want to have like say I want the returns of like a uni V2 like xyk pool for some trading pair you can on the client side construct here's my sequence of concentrated liquidity positions that approximates the univ to payoff curve but those uh liquidity positions just like go into this like one big pool um along with everybody else's and so um that might just be like out competed by um a more Capital efficient um actively managed LP uh

uh but you know the effect of that for users is that they get better prices for Less TBL so that that seems like kind of a win I want to address the the other interesting thing here which is private staking and governance and then I also want to talk about IBC and what are the benefits of using um well how does how does this work with non-profit systems how does it interact yeah or IBC with non-profit systems and yeah the private staking thing I think is really interesting because a lot of uh a lot of the ways that we think I think about governance is that in you know generally in Cosmos change

is that people take position and and they take public positions about what their uh how they're voting on things and you can see all that activity on chain and um yeah it's very different from how we normally do voting in say democracies where voting is in fact they're uh in in fact private or at least the votes are detached from the voters how does how does Private staking change our assumptions and mental models around how proof-of-stake security and proof of State governance works yeah um so as a kind of like Baseline uh context um similarly to the perspective that we

have in other parts of uh the system the perspective is that we want to have privacy for individuals but transparency for organizations for Aggregates Etc um so the private staking is does not have privacy for the validators right we only have delegator privacy so the distribution of stake between all the different validators is completely public the validators votes in governance are also completely public um it's the delegator activity of like you know who's delegated to what

validator and uh what was each individual users um governance vote uh that part is private and the analogy that I would have is like in the same way that you have um like in a conventional democracy you have secret ballots for all of the individuals but when there's a political party that's kind of advancing positions on behalf of other people or acting as this kind of organized um front that party right like is a public organization they like list their positions Etc um and so I think

in practice there's probably not going to be that much of a difference uh on on you know governance on penumbra versus other Cosmos SDK chains the dynamic of like you know validator will list their position publicly people can argue about it or Twitter or various forums whatever that's all um kind of completely the same so the only thing that's that's that we have is we have Detachment between uh delegators and who they've staked with like who their validators are so delegators effectively have privacy uh a validator will will make posi will take positions and vote on behalf on behalf of delegators as they do now right

yeah yeah but but so do we do we know I presume we know also what is the amount of delegations of validator has and do we also know uh in What proportion so do do we know the uh can we uh atomize the address the sort of delegations do we know the uh you have privacy for the delegations and to come back to the the point you mentioned but we don't know so we don't know the identities or the addresses of those who've delegated but we also don't know the delegation so we couldn't tell that there's like 100 delegations and this

one's a hundred tokens this one's 150 this one's whatever it's just like the validator has this many delegations that's it yeah okay you can probably get a little bit of a perspective there because you know when somebody delegates to a value transaction there's a transaction that says I delegate to this but also you know somebody could spoof that by like doing you know a thousand little tiny delegations but that gets to the point of like why I think this doesn't actually change the fundamentals it just makes what's already there more explicit right like right now when you look at the sort of stake weight of all these different validators you can go and look at like hey this address is delegated across you know these four validators or

something but you don't actually have any way to know is that address like one person or is that somebody trying to like civil a bunch of airdrops or is that somebody trying to like secretly get a bunch of like stake in a bunch of different validators like you know you don't actually you've seen this before now anyway um yeah so so adding in you know the ability to to kind of uh surveill that doesn't doesn't really seem useful and and on the voting thing there's a lot of risks that I think the the cosmos ecosystem has been relatively

spared of us yet but I think is going to be a big thing in the future which is like bribery vote buying Etc if you have a public record of how everybody has voted you can like do all kinds of things that are not good for a government's process um so you mentioned in the in the docs I saw that there are no staking rewards did I hear this right yeah um so this is uh there's kind of a problem if you have if you want to have privacy for delegations right you can't like pay out staking rewards because in order for the chain to do that they would have to like know

uh who their State uh who who those like you can't do that if you don't know who the delegators are yeah so uh you need though to have the economic effect there um and you also have to have a way to track like okay what are all these delegations um the way that we came up with just to solve all those problems at once is by having basically protocol native uh liquid staking tokens um there's a lot of different things that different people mean when they say liquid staking so we don't use that word uh instead we call them delegation tokens

so that you know we have this is our concept right um and what that is is a delegation token is a share of that validator's delegation pool so when you uh delegate to some validator the way that we record that on chain is not like oh we put you know some funds in this like staked part of the account instead we have a kind of protocol native exchange between the staking token and that validators delegation token right so you're like basically buying into that delegation pool when you do staking

and the exchange rate okay price is in all of the cumulative rewards that have been issued to that uh validators delegation pool from Genesis up until now and because of that if at some later point you undelegate that exchange rate is going to credit you for sort of all of the rewards from Genesis up till time T2 and the the kind of pre-debbiting and the crediting cancel out so you end up with like Auto compounded sticking Rewards or exactly the time period that you had delegated but without the chain actually having to

um sort of explicitly track that or like make payments out to anybody it's all just kind of bundled into that exchange rate mechanism that's super cool so effectively when you stake there's there's a quasi-liquid staking mechanism that's built in where you get a position your stake is represented by a position in the pool for uh but which pool so it's like like what so remember token and each um each validator has their own delegation pool that represents like all of the stake delegated to that validator right

um but is it is it like a like a liquidity pool or are there two tokens it's not it's just uh like a single asset pool just the stake that they have but um when you have like say you know staking Rewards or something all that does is just like you mark up the size of that pool and then everybody who has a share of that pool the value of those Shares are going to increase but those Shares are just like another token that's just recorded like any other token you can send it around you can transfer it over IBC like if somebody wants to build some uh you know like pooled staking contract or something on Juno like they could do that

um but at the base layer uh the kind of big idea of penumbra is like any time you have any kind of state that's just like be a token right so instead of having like oh here's this account and it has these tokens and these tokens have these special properties that they're staked or whatever it's just oh those that's a different token right like and you record all of that in this sort of one big uh multi-asset shielded pool very cool so IVC yeah uh what what's the point of using IBC with a private system if you're interacting with chains that are not private that's my burning question uh

and maybe it's a bit of a smooth brain question but um I I [Music] I'm struggling to understand here the the the big picture I would say is that what IBC does to the whole like blockchain ecosystem is it unlocks the ability to have strongly differentiated L ones right if you rewind to like pre-idc people would make blockchains and they'd be like okay here's our new like layer one blockchain and it has this like special thing which is like the pulling of our project but because we're now building an L1 we have to like build this whole ecosystem we have to build

like all of these different things like we have to have our own smart contract story we have to have like all of this stuff because it has to be kind of its own ecosystem what IVC unlocks um is the ability for people to build intentionally differentiated like focused uh chains and products while still being within a bigger ecosystem so um you know again to use the comparison with zcash right there's this like shielded pool in the transparent pool so people can like you know go to an exchange or whatever um for us like our transparent pool is

like the entire interchange ecosystem and the reason that we have IBC is so that we can be focused on like doing one thing which is an interchange Shield pool and a uh private decks and we don't have to be kind of all things to all people like if you know the programmability story for penumbra is like you do an IBC transfer to Juno and use Cosmos in there if you want uh but it also means that like any IBC connected chain which right now is just Cosmos SDK chains but like that's

already changing um every time a new chain connects to IVC we can act as a shielded pool for that chain and that's kind of the long game of penumbra actually is to act as basically a universal privacy layer for uh every blockchain okay so the idea here is that any chain would uh with an IBC connection to penumbra would be able to by some mechanism start up its own um shielded pool um rather it's that chains users can use the penumbra shielded pool okay so

practical use cases here would be well let's say I have osmo on an address and I want to decouple that osmo um from like I want to start a fresh address I'll IDC out into penumbra and I can IBC in maybe you know spreading that osmo as different um like the kind of you don't want to know you don't want to do the exact same amount because then somebody can say like oh this amount went in yeah you're not I'm guessing it's the same but you send in like you know 100 osmo and then later send out like 78.4 or something you know maybe there's enough uh volume there we can also build

some like client-side software that helps sort of make these randomized spreads but exactly that type of use case um is is a kind of initial thing that and then you could also you could also leverage penumbra to move tokens um move tokens swap them so you could move like say in osmo swap the those tokens get another token and then transfer those out and with um I guess here you're probably safer like if you go in USD and go out osmo because prices are fluctuating it would be really difficult to

you know over time it would be difficult to um to associate the the in transaction and the out transactions because you don't know when the trade happened or at what price right so that's I think kind of an underappreciative point about like uh having a multi-asset shielded pool is if you don't have a way to exchange assets within the multi-asset shielded pool you don't actually have a multi-asset shielded pool you have like you know n single asset shielded pools in a trench coat that are all kind of like bundled together but like you know if if someone sends in an asset of one type and then later the same type comes out

like you know that there's really only the anonymity set of of that one um type yeah no I think that makes a lot of sense and I see how that works and and so what what kind of because you know people are quite used to using osmosis and of course it's the biggest decks in The Interchange like most volume most IBC transactions in and out uh what what kinds of how do we facilitate the use of penumbra such that like look I think it would be desirable for the ecosystem to for most of the trading in the ecosystem to happen on penumbra right so that we uh operate in uh

in us we operate under the assumption that most transactions should should and are private yeah but practically speaking there's a lot of network effects to you know like being like osmosis already being the biggest text in the interchange where do you see penumbra's role there are you are you hoping that penumbra becomes as big as as osmosis or is it just more for like these kind of Niche traits where hey I want to have privacy now I'm going to move in and out of penumbra maybe do a few trades there or maybe some part of my activity I want to be private but it's not like what I'm doing all the time yeah

um so I think there's a couple different angles there so one um which ties back to some a question you raised earlier that we didn't end up getting to but hopefully we could before the average it's like okay how do you actually make all this like practical and usable for people to to use go for it no I'm just I'm just like mentioning that one so we don't forget it but the second part which is also very interesting is like what is the kind of eventual future role of penumbra in the ecosystem right like how for instance does penumbra relate to like osmosis um the way that I see it is

um that sort of in the near term uh you know there's some kind of like potential you know potentially competitive aspect and then it's like okay this thing can do trading and this other thing can do trading right but in the long term I think that the divisions are pretty different like for osmosis it seems like uh and it's not my project so I can't speak on their behalf but it seems like the vision is to basically build a defy Hub right um and so one kind of potential way that works out is um in penumbra we could expose like IVC

hooks that would allow people on other chains to submit uh uh trades on to penumbra and have them be executed as part of that batch you know if somebody's trading cross-chain like that's not going to be private but if the theory is that we're going to have the best execution because of you know private Market making strategies you know that would be pretty useful um but the longer term vision of of penumbra is to be able to have to to generalize the strategy of okay here's how you can have private interaction with this like specific hard-coded decks to here's how you can have like private

batched interaction with any kind of smart contract on any IBC connected chain um and so I think those are kind of pretty complementary um Visions like there's a lot of stuff that you can do as like a transparent defy Hub that currently we just like don't have the technical ability to Do privately right like synchronous composition um having like contracts that like control other D5 Primitives this is all like very powerful and it's difficult to Do privately um but what what we're aiming for for

penumbra is giving people the ability to to privately interact with like any smart contract on any chain and how does interchain accounts and interchange queries work here so if if I'm if I've got say assets that I've moved over I've moved over some atom into penumbra can I still control those from outside uh penumbra with interesting accounts and similarly you can no okay and and the reason is that like uh you know if you think about what's happening with interchange accounts it's like this chain it's like posting messages of like do exactly this specific thing to this

account yeah so fundamentally that can't be private but yeah what we can do uh and this is like still early stages this is for like you know camera V2 um we can give away for someone who has assets on penumbra to effectively create a kind of like Anonymous ephemeral interchain account on another chain have that account do one specific action that they want to do and then sort of wind up all the results into the penumbra um shielded pool again um okay so going the other way so

basically but penumbra could control accounts on other chains but you couldn't control accounts outside okay so you could sort of be operating as like in in you could be operating in the penumbra yeah literally right like uh I'm thinking like in the French you say like is like yeah kind of hiding in the dark right you just be like operating in the dark you're controlling some stuff out here doing transactions moving stuff over IDC and interacting with tokens maybe voting doing governance whatever and then like to just come back movie was talking back in different number as if nothing happened that's cool I like that yeah yeah yeah and and then not just for for like a cosmos SDK chain either uh we think we

can actually do that for ethereum that's cool okay and um and but so interchange queries though can I guess you couldn't query penumbra from another chain but penumbra could query you can query any of the public chain State yeah right so you could make an interchange query for like hey what was the you know market price for this aspect for this asset of you know at this time or whatever that's all public what you can't do is like you know can I do an interchange query for like sebs account no because it's like not my data like that's not

you know accessible to the whole world yeah someone in the someone in live chat thinks this is all a very bad idea but uh all right um I mean I think that like the world of like uh every financial transaction I've ever done being completely public to the entire world forever is a dystopia yeah about um you know they're like biometric like face scanning thing at the airport and you know my feeling about it is like yeah I guess like you know like a

retinal scan or like a whatever is like like a kind of a creepy thing but on the other hand like think about all the like information that somebody can learn from like looking at my credit card statements like that feels to me like a much more like scary thing because that's like literally the record of like every economic interaction that I've ever had with anybody else yeah um and you know we can't put all that on a blockchain uh without well it is on a blockchain I mean all of that is on a blockchain no no what I'm saying is like like all of the the current model in the current model all that is on blockchain but the

current model is that people like do most of their financial activity like you know through Visa or Mastercard or whatever yeah yeah and like you know that has its problems but like at least all that data is like only being data mined by a bank and not just like broadcast all over the internet yeah yeah yeah um I I really wish we would have had some time to get into the into the client stuff I mean maybe maybe a little bit um because I thought that was really the most interesting yeah one of the most technically interesting things and and maybe explaining how the number client architecture is different from a typical

client and this comes back to the conversation we're having earlier about how most of the compute is having is happening at the edge right and there's this great slide in your deck where you've got like Network full node view service wallet custody service uh I'll link to this I'll link to that talk here uh so if you're interested in learning more about that you should definitely watch Henry's talk from nebular Summit uh but yeah let's walk through how these different architectures how can members architecture is different from a regular wallet yeah so the basic problem that we're trying to solve there is like how do we recover the um kind of development Paradigm of a transparent chain right so it's like oh we've like built this whole like Sheila

chain like how do I actually now know what my account balance is right and one of the things that's really cool about um transparent chains is that like all of the data all and all the state is like just stored on chain so if you're writing a a front end of any kind whether that's like a wallet or dashboard whatever um you know you don't have to do anything special you just like query the RPC to find out like okay what's the state of the world and uh once you go to a shielded chain you can't do that anymore because by Design there's no like single server that just like sees everybody's account balances

um but at the same time we don't want to sort of force every front-end developer for penumbra to have to figure out like okay how do I like deal with all this like weird photography right um and and so we designed this kind of modular client architecture uh that effectively allows a uh the front-end developer to recover the same kind of development process that they would have the same kind of like State model workflow Etc that they'd have for a transparent chain and the way that we do that is by defining a view service and a custody service The View service is responsible

for scanning synchronizing all of the users sort of portion of the private chain State and the custody service is responsible for actually doing you know transaction signing keeping that as like a separate service means that you can kind of treat like you know it's the keys in a browser extension are they in a hardware wallet or is there some threshold thing you know all that kind of is a plugable detail um and the view service effectively acts as like a local RPC server um so we can basically do all of the cryptography work once provide this common API with you know here's the kind

of local per account rpcs um and we can provide that to application developers you can ship it in a browser extension say and now the workflow for a front-end developer is basically you know the same except instead of querying just one RPC uh they would query the full node for the public part of the chain State and query The View service for specific per user information and what's the biggest challenge there like from like uh a user experience because it feels like what this might challenge is a lot of

the user experience assumptions that people have about wallets um are there challenges that you have to face here yeah um one of the things that we've been working on over the last little while actually and we're going to ship it and I think the next weekly test net is a kind of comprehensive solution for um conceptualizing like transaction viewing right so if you just look at a number transaction most of the actual content almost all of it except you know it has X number of spends X number outputs whatever uh all of the rest of the interesting data is

all encrypted um but you don't want to sort of force every front-end developer to have to like understand like how do I do all the like number specific encryption or whatever um so we built uh basically like a first class concept of a transaction View where um you can take a shielded transaction and then someone can give you a piece of a bundle of data that we call a transaction perspective and you can use that perspective to view the transaction from a diff you know various different angles right like one view is like the view that I have as the

sender I can see everything another view is like the receiver can view um the parts that were sent to them but they can't view you know my own change outputs or something um and the resulting transaction view is this kind of like pre-parsed pre-decrypted thing that we can just like hand out as a a data object um and so that way we can we can basically allow we can like bundle all of that kind of cryptography privacy infrastructure stuff into um the the common view service implementation um that we provide as this kind of

off-the-shelf component and then anybody can ideally like write a front end in whatever language like all these data types are all uh in protobufs so you can compile them to whatever tooling you want um and be able to like easily work with the kind of plain text contents of the the chain data even if it's private so uh before we wrap up here I wanted to ask you well there's two two last things I want to touch on so one one is how are you uh I I was at um uh CK Summit in uh in Berlin briefly a couple weeks ago or some some time ago and and uh the inoma

team was mentioning kind of close Integrations with penumbra and even I think some like IVC transactions over um like private IBC transactions between penumbra and secret and anoma and like so how are you working with these different um private or privacy preserving zones and yeah what's the like long-term Vision here um yeah I mean we're we collaborate like uh uh on kind of like overall ideas we share um different um sort of like bits and pieces that we've we've picked up

um I think uh the the private bridging so there's an idea that um anoma is very excited about uh which is building like uh shielded IBC transfers you know between two different shielded um zones um and we've talked with them about it uh for me personally I think I'm like a little less uh uh it's not quite as exciting to me because my perspective is that like it's not totally clear that shielding all of the IBC transfers is actually

uh good right like if you have a situation where you already have two private um like like fully shielded pools and you can send amounts back and forth between those um that's giving you like you know at least like 70 to 80 percent of the Privacy benefit of also having the sort of amounts and the transfers be private um but also it's giving a lot more information that's helpful for maintaining kind of ecosystem security right like how do you do a circuit breaker if all of the transfer amounts are encrypted

um and so I guess like that that feels like more of a kind of long-term thing to me um I think that the kind of nearer term goal is just like how do we get like shielded like private Solutions deployed into the the inter chain and actually get people to use them um and and so I think that's the area where we've had kind of like the closest kind of um sharing ideas and so on yeah well uh Adrian and Chris are going to be on here in a couple of weeks so I'll ask another question and see what kind of response they give uh um yeah one of the things that I think it's been a lot on the minds of a lot of

people recently is um the the whole tornado cash ordeal uh uh do you um well I mean like because we're like with penumbra we can do sort of similar things that we can do with turnover cash as we mentioned you can you can certainly obfuscate um origin of funds and things of that nature uh you know bluntly are you are you fearing for your you know for your safety and um and yeah what yeah how do you how do you go about sort of building this without the risk of um illegal or you know like regulatory action um no I mean I'm not particularly

worried like I I've uh I spent two years working NC cash which you know same sort of thing um I think uh the kind of overall sort of points that I would have are one it's kind of unclear how things are going to end up going with tornado the coin Center has a a legal challenge that's ongoing and um it'll be interesting to see how that uh plays out um another point is uh so the second thing is um I think as as a side effect of building

uh good software we actually end up with a lot of really powerful and precise uh disclosure capabilities like for instance um you know suppose you have like a browser extension that's running your view service you don't necessarily want that to be posting your like kind of long-term viewing Keys into this like potentially untrusted front end so you need to build the ability to have like per transaction disclosure capability just like you know for security but that same tooling is also the kind of tooling that you need to have to be able to produce like here is a complete list of like all of the

activity that I've ever done like it's a normal thing for people to want to like you know have an auditor or like you know do their tax return or whatever um and the type of tooling that you need to build to be able to do that is exactly the type of tooling that allows people to like demonstrate to some third party like here is my activity like you can like this is a report of of what I've done um and and so I think that that kind of comes out of just like sort of like basic operational um uh stuff so so we we're building some like pretty sophisticated

um opt-in disclosure systems uh and I guess the third thing is that with penumbra in in comparison to something that's like you know just uh like a shielded pool there's a much more clear and compelling reason like why this has to exist right if you look back at the history of of Bitcoin right um in the early days of Bitcoin there was all this like fear-mongering about like oh like Bitcoin is like this like thing for criminals and the Silk Road and like you know the whole thing should just be like

illegal um but over time the amount of like legitimate use cases uh grew so strongly that it was just like harder and harder to credibly make that argument and so it just like became impossible and for penumbra the the thing that we're really aiming for is to like build a useful product whose value to you know hundreds of thousands millions of people is just like undeniable right um and I think that's really the the strongest possible uh argument that you

can make it's like showing here are things that you can that are only possible because everybody is not just like broadcasting all their information all over the internet at all times yeah that certainly seems like I I think the concerns about privacy will yeah I feel like current uh uh um the current sentiment uh in the public eye like in sort of like public discourse about about privacy on on crypto is rooted in the fact that most people don't use crypto and the media

the media and also policy makers and politicians have uh clearly put like crypto in this in this um um somewhat uh in this like box that's counter to the prevailing narratives of uh like Most states and and mainstream media I think that if and when crypto becomes more widely adopted by um by so like the masses um then their the privacy concerns will will be turned on there on it like the Privacy concern will probably be turned on its head at that point because then at that point not only is everybody else using it but also you know corrupt

politicians and and and and those who actually do want you know people who actually do want privacy uh are also going to be um you know wanting privacy and you know the the dystopian the dystopian uh future is one where you know there's privacy for um for like the elite but no privacy for for um for anyone else and but I mean that's that's not the that's just like the dystopian present right like all of this like you know Donald Trump having all this like shell Manhattan shell companies for like real estate and doing all kinds of like sketchy [ __ ] like that's that's just the reality it's like if you are like the the in the current system you have like Financial privacy

only for the elite and meanwhile you know if you like receive money on venmo for Syrian food you get this like scary warning of like can you explain like what you meant by Syria and are you like you know our criminal sanctions violator right yeah like I it's that's that's just like the way that that things are now and I think that I I would actually put it as like rather than being something that comes out of adoption I think that broad adoption of of cryptocurrency for everyday normal economic activity is not going to be possible until we have the ability to

control information disclosure Unchained because every every kind of interesting meaningful real world coordination actually requires some kind of control over information disclosure look what happened with Constitution Dao like it it's really cool that you can just like make a Discord with a bank account to buy the Constitution but it turns out that if you're trying to win an auction and somebody can see like a live feed of what your max bid is you will not win the auction like this is just not POS that that type of coordination it's just not possible without having

some way to control information disclosure yeah um and and so I actually would would View privacy features as being a thing that is going to unlock uh adoption rather than something that will be sort of normalized as a as a result of that adoption interesting so where can people go to learn more about penumbra what's the road map um yeah yeah so uh if you go to penumbra.zone there's like a link to uh our Discord um we also have uh if you go to guide dot penumbra.zone we have instructions on how to use our test Nets right now it's still command line only but you

know we're currently working on a uh building a web UI um I would say basically like join the Discord we have an announcement Channel um there's also like you know arbitrarily in-depth protocol specs at uh protocol.penember.zone but there you go um yeah I had a gander of those today we really gotta get the kind of um uh sort of missing middle of of uh better documentation so that's that's going to be a focus for us in the next few months cool and final question who should I have on the podcast next

who do you think is interesting uh that you would recommend uh uh uh I would talk to uh sriram from eigenlayer okay I I don't know very cool they're building cool stuff and uh he's very interesting cool well Henry thanks for being on the show today thanks for uh for being so generous with your time thanks to everybody yeah it was very interesting and thanks to everybody who joined the live stream today uh lots of conversations and discussions and asking questions and sorry you couldn't get to

all of them but I do appreciate it we do live streams every week typically on Thursday so be sure to subscribe to get notified when uh those come out we'll have a new live stream next week on Thursday and it's going to be really interesting uh yeah so thanks for joining and we'll see you next week no this is great bye