New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

Chicago Ethereum Meetup | saveDAI: Tokenized, interest-earning, insured DAI | 2020 May

Chicago Ethereum MeetupFri, Oct 9, 2020, 12:00 AM

https://www.meetup.com/Chicago-Ethereum-Meetup/events/270593608/ Speaker links: https://twitter.com/spengrah https://twitter.com/devgirlla https://twitter.com/dougiebuckets Project links: https://savedai.xyz/ https://twitter.com/save_dai https://medium.com/savedai

Transcript

all right awesome thanks Paul so I'm kind of double dipping here both organizing this made okay Paul but also presenting along with the other the other people on the same guy team so I'm gonna say a few words and then try to get out of the way let Ksenia and Doug handle most of this but we we are you're saved I and we're super happy to be here so let me talk a little bit about what Sid is I'll just do a quick introduction and then I hand it over to to Doug and then continue to talk about some other things and then I'll be back at some point to talk a little more so like a little bit of history about I don't know how long does it go now my month math is bad right now but it lasts last August I kinda had this thought that I would love to see a tokenized version of die that has both interests bearing capabilities as well as insurance coverage so if you guys are familiar with compound they have the CDI token that they that you get when you deposit into compound I wanted to see something like Nexus mutual create a tokenized version of that so this something I kind of put out there on Twitter and it seemed to get a little little traction it did something so it's something that's stuck in my head for a while so when it came time to go to youth Denver I was thinking about that and all of a sudden open protocol was announced just a few days before we'll talk a little bit more about open protocol in a sec but I I met Ksenia at Abbey Denver and then we we continued up with our hack and I don't know what it's like a two or three weeks later we brought Doug in to help out and join a team so so the team is right now it's three of us we've gotten a little bit on the help from a few other folks but it's been three of us for now and it's kind of a side gig for all of us but it's been super fun so what is same die and what are we trying to do this probably two different ways to think about it but the easiest or the simplest way is the a really easy way to open an insured high interest savings account so what do we mean by that so traditional savings account I'm sure you guys are all familiar with those and you may be familiar with the newer concept of a defy savings account so compound at the cd-i is effectively a defy savings account you deposit your die you get back a representation of that deposit and you can earn interest both traditional and defy you can earn interest defy savings accounts or interest rates are typically a little higher although the the environment is a little bit depressed right now where things start to really differ is is in the risk involved a traditional savings account has got at least in the United States FDIC insurance or in other countries other forms of deposit insurance so if there's a run on the bank you you're guaranteed to get your money back up to a up to a certain amount but in dphi that's just not at all the case right now there's a lot of things that can go wrong the the protocol can get hacked there could be some sort of adverse financial event as some of these protocols like compounds start adding in governance components there might be some sort of issue in with governance it could be captured by in some way and potentially your money could could go fly away on the other hand define savings accounts are super easy to open or just get started and you can move your money wherever you'd like you're not you're not beholden to any single bank or anything like that so what save guys trying to do is be the best of both of those things and and really where we're focusing and on is in the difference between is is here in the second row in risk so how are we doing that so let's let's talk about the components of save duiker for a second so we already talked about seed i seed i where you basically you you're depositing your die in to compound and c-d-i is essentially a representation of the die inside of compound discerning interest so you can think about she died as an interest-bearing digital dollar on the other side is OCD I always see die is you can think about it as insurance from the open protocol the open protocol is an option protocol so actually what in reality what OCD is is a it's a protective put option which basically says that you have if you own that it means you you have the right to sell your see die at some point in the future before that option expires for a certain amount of of eath and in this case that is a mount of beef roughly equivalent to your original deposit which means that it acts roughly like the deposit insurance so these two things exist we're not really changing what these two things are you can today you can go and get c die you can go get OC die what saved i is is basically just a wrapper around those two we trying to make it as easy as possible to get both of those things together into a single asset and we like to talk about that kind of thing as a self-insured asset which we think is a kind of a new a new concept that is only possible on a blockchain like like assyria and we think that's that's pretty cool and we'll talk a little bit more about what that might mean in in the future so we have with that i think we're gonna get into a lot more a lot more detail we'll take a look at some of the technical components so with that i'm gonna hand it over to Doug cool thanks Spencer um yeah so same died at a high level really has three core pieces of functionality and we'll kind of drill down into these in a moment but at a high level you can you get mint same die right you can exercise insurance on your save die or you can withdraw from saved a contract and we have a few different ways in which you can do that which will will speak to more in a moment next slide so as far as the the mid function here what we're doing is interface goes is we accept an argument that specifies the amount saved I Junkins an individual would like to bid and then we return a boolean to represent if the transaction was successfully executed next allowed me so kind of taking a look at the code itself and kind of step-by-step what's happening so the first thing we do is we calculate what the cost of seed I and OCD will be that is necessary to make that given amount of saved I tokens that the users requesting upon identifying you know that costs that will be incurred we then transfer the die needed to make the same die tokens from the message sender and use it to mint the seed i from compound and then also we go ahead and buy the OC die from from you swap and then upon completing those transactions we go ahead and mint the sale amount of saved I'd tokens for message sender so our contract is holding on to that that seed I and OC die on behalf of message sender but then sending those saved I'd tokens to them next level next time to exercise insurance so this function accepts the amount of Santa tokens on which to exercise insurance as well as provides in a way of addresses which are these these vaults which contain East and we'll talk more about these in a moment it's kind of a piece of opens protocol but these vaults of which will withdraw that each from in order to sufficiently exercise insurance on behalf of the message center so the way open works and Spencer was getting into it but just kind of take a step further it operates it's a two-sided marketplace in users can obtain coverage ie o tokens and providers can then earn money by providing coverage right so in order to provide coverage a user has to lock up east as collateral and I believe opens clatter is a shin ratio is one hundred forty percent I think it's around that and then once providers have done that right they've locked up their eath in these vaults as collateral they receive Oh tokens in return and then they have two options as far as how they can they can make money they can either sell that insurance those tokens to buyers on your swap and earn premiums or they can add those tokens to the you know swap pool and transaction fees from you know other trading activity that's taking place it's also with noting - and I thought this was pretty cool in that if you're providing insurance you can close your position at any time all you need to do is buy back your own oaken's and return them to default and then you can retrieve that nice collateral that you initially put in there so at a high level that's how that that bumping marketplace is operating next level so as far as our exercising insurance function and kind of the logic behind it the first thing we have to do is we have to approve opens o CGI contract and give it permission to spend CDI and OC died on behalf of our save die contract and the reason we have to do this is because within it opens exercise function the way it works is that so after user exercises their insurance option and receives eath from those vaults that we mentioned earlier the providers then in turn receive the amount of OC die and see die from the save that contract and so that way they can they can liquidate those items if they want to you know if something really bad happened and that individual is exercising insurance because something really bad happened with compound or you know something else then those tokens probably less valuable right but they can still at least link without those you know get back some some capital in return so it's not a total loss but after that approval then we withdraw eath from the vault addresses provided in that right accommodate the users desire to exercise that insurance and I eat is in sin back to the message sender and that corresponding amount of CDI and hos edye are sent to the insurance provider and then lastly of course you know we go ahead and burn that amount of tokens next slide cool so with withdrawal we have a few different flavors for withdrawal so users can either they have the option to withdraw both their asset IEC die o tokens ioc died or they have the option to withdraw just their asset now you just their CDI tokens or lastly they have the option to withdraw their underlying die asset next slide so as far as the interface goes for the edge off for asset and oat oaken's function we of course accepted amount of st. tokens that a user would like to unbundle in return for C die and OC die and then next log so the first thing that we'll do is we'll check and make sure that insurance coverage hasn't expired yet and if it hasn't then we'll go ahead and send message sender back the amount of C die and OCD that if requested conversely if it has expired we can only send back the see die right that that most dies no longer a value any longer so we just send them back the C die and then of course after transferring those tokens we go ahead and burn the corresponding amount of save die tokens next level now if we're just withdrawing for the asset ie that the C die what we do here is well as far as the interface goes we accept the the amount argument of which we want to unbundle for seed on next line and so the first thing we'll do again will similarly well check to see if a pterence has expired don't unlike withdraw for asset no tokens if insurance has expired we're gonna go and Reaver right away if it hasn't expired what we'll do is we will swap the amount of OC die on you opt for die and then we'll use that new die that we've obtained and usually define or seed on and then finally what we'll do is send the initial amount of C die as well as that newly amount of C die I will send the sum of that to the message sender and then of course go ahead and burn the corresponding amount of save die tokens next level and then lastly as far as the interface goes from the withdraw for her line asset this is very similar to withdraw for asset though we're talking about the underlying asset of died in this case right so the next line so the first thing we'll do is again we'll check to see if insurance is color has expired if it has won't revert if it hasn't we'll go ahead and redeemed I present she died through compound and then we'll swap out the amount of OC die for die on you swap and then transfer that that total sum of die back to message sender so very similar to withdraw for asset but instead it's all for the underlying asset that the user is withdrawing and with that I think I will hand things off to you because anything well thanks Doug okay so I'm just gonna go over some of the challenges we faced when working on this project I have three to go over there was definitely a lot more it's kind of funny what started as a weekend hackathon project has turned into months of work see I'm just highlighting a couple of these challenges the first one is the compound minting rounding issue which which drove us crazy for for a couple weeks there like Doug mentioned in our mint function we are we need to calculate the amount of dye needed to min to see dye tokens as well as to buy the OCI tokens and we know that we want two men we're passing in the amount of save dye that we want to mint and we know that we also want to mint that same amount of C dye and by that same amount of OC die so the compound mint function works where a user deposits dye that dye amount is divided by the compound exchange rate and that gives you your amount of CDI tokens so using basic math we know to calculate the dye needed we can just take the amount of C die that we want to mint and multiply it by the exchange rate so that's what we're doing inside of our we have an internal function that's doing that math then we take that dye amount that we've calculated and we transfer it from the user as well of course and then we pass that into the compound mint function to go ahead and mint the see dye then we take a look at the see dye that's actually been minted and it's always the amount of C die that we want to mint -1 so every single time it's just missing that one one digit at the very end so we were racking our brain to figure out what if we were doing something wrong compound actually has a couple they have to exchange rates in their protocol so we try both turns out it's a common thing it's just a rounding issue and initially we decided to just say okay it's just off one by one digit to the user it's they're not even going to be able to notice we just know to test that it'll always be off by one we actually had someone from the etherium foundation do a code review and he said that it's a known issue and he would send us some code to help fix it essentially what that code is doing is just subtracting one when we do that calculation so yeah it drove us crazy but we were able to solve it by just subtracting that one next slide Ksenia we've got a question from which all where is that exchange rate coming from ah that's so compound the compound protocol it's like I'm not I can't remember what the formula is but it's based on the supply and demand of CDI in a compound so you can just call call that function on the compound protocol and it gives you the exchange rate next slide testing yes so from the very beginning when we started writing the solidity code obviously if anyone writes solidity code you know that you have to write unit tests in order to be able to test the code and because we're interacting with so many protocols we knew that running a local local ganache blockchain would be difficult or painful I should say because we'd have to deploy the unit swap factory and exchange we'd have to deploy dye you'd have to mint die for our wallets we'd have to set up the unit swap exchange contract for dye and OC dye we'd have to deploy open options factory we'd have to create actually meant those OC OC dye tokens by you know calling a function on the open protocol and depositing Eva's collateral so all of these were our steps that we would need to write out before we could actually start interacting with our functions so we found a less painful way of testing which is running a forked name that using ganache I don't know if anyone's ever used use this but it was actually really really useful essentially you just it's a feature with ganache CLI you run the ganache CLI command with the stash F and then you point to a node so we used in Fiera set up a project and that basically just gives you a fork of the main net up to the point that you're forking and then all of these accounts you see - - unlock these are all of the accounts that to interact with I mean that so the you know swap factory you know swap exchange die all of these contracts that we don't have ownership of or have private keys of you can use this - - lock command and interact with those contracts basically so everything's already set up obviously because it's on may not so we could use all of those contracts balances we found a user wallet that had like a million die or something in their wallet and we're unlocking one of we're unlocking their user Wallace so we can use use their user wallet to you know test our min function essentially and then next next slide oh and this one is I mean this one isn't a huge challenge but I'm sure other developers understand can empathize with this why is naming so hard it's really hard to find the perfect function or variable names we had several conversations about this and we were trying to decide whether to go generic versus specific so we started with very specific names remove insurance and sell insurance proceed by removing sell insurance or die get cost of seed I get cost of OC die and after a few conversations we decided to switch those to use more generic naming conventions and that's mainly to do with our like our future plans which we'll talk about in a moment so yeah remove insurance got turned to withdraw for asset and oh tokens withdraw for asset withdraw for underlying asset and then get cost of a set and get cost of oh token and looks like oh this is you Spencer all right cool so what I'm gonna do here is I'm gonna click this image and it's kind of what we're gonna do is gonna walk through we have a sigma prototype thought we would show you guys as how we're thinking about what the the front end or the user interface is gonna look like it's currently in development so we in Tier II could show you have a partly done like a live version my phone wanted to join the conversation we could show you a partly done version but instead I think we're just gonna show you the prototype to show you what like most of the interactions will work but before I do that I just wanted to pause and see if anybody had any questions about anything we've we've talked about so far there's there's one additional one in the chat that we'll get to in a second but anybody have any questions or Paul have we got many in the discord I put a couple in the discord but they can wait til the end I don't think there's any from anyone else yet and the link to the discord is in the zoom chat I think so the one in the zoom chat is how will prove a mistake once we move the two effects this project so the answer that is probably not a ton or at least not very differently from any other any other project or or or or contract or protocol one probably the cop-out answer is that that is going to happen that likely is going to happen in a meaningful way after the point at which the insurance for the first version of CI expires so the life of the contract that we're writing now is going to be shorter than the point at which is going to end by the point at which proof of stake or anything any anything like sharding or anything like that has any sort of impact there's a longer answer but I'll leave it there for now and maybe maybe after and in the in the hangout session we can get more into it all right so let's see if this link works sweet I'm going to do this because I kind of mocked up a Brad to put meta masks in there so here we go oh this is faded because I was messing around and I forgot to unnecessary so this is just the the homepage or the beginning of the app one thing that we are trying to be very careful with is to not make any kind of promises or to fact like go the other direction and be very careful with what we tell users the code has not been audited even when we first launched likely the code will not have been completely all fully audited at that point and so we're thinking about ways to to mitigate that and try to take a more of a phased approach to our watch that's oh that's an interesting topic that we could probably discuss it at greater length and that's another point but I guess the the first thing that I want to point out is that we're trying to show again everything we're doing is trying to make things easier on our users basically the whole point of save dye is to make something that already exists easier you can already get see dye you can already get OCD so we're not adding anything new or it's basically a UX project so that's where a lot of our focus of it is in addition to to security so we're trying to make it clear what is going on and where the different different things come from so in this case if we were to deposit $100 as of like a few months ago when the the the compound dye interest rate was more like 5% but you might expect a premium that you have to pay for the insurance basically the cost of the OC dye to come in at around 2% of your deposit and so you the difference between those two that would be around 3% which is your the insured interest rate err with a covered interest rate the current version of OC die that expires February 10th 2021 its us it was launched originally on February 10 2020 at that point we'll talk about this a little bit we'll need to do something to to renew there's a concept in with with OCD or open options of where the insurance from open of amount insured or max locks this is basically you could think of this almost like like a deductible and it's there to optimize the the two-sided market for for those options so in options terms is putting the strike price slightly out of the money which which has a lot of benefits some of which I don't understand but that basically mean we have to take from open the amount of the amount that they're actually that is actually getting covered and you can see here that of our hundred die eight is actually not going to get covered only about 90 is the reason that's eight and ninety is because to die is going towards buying the insurance in the in the first place so something were to happen and the value of die or the value of OCD I were to crater then you would get about ninety dollars back in terms of ease so let's get started I'm sign-in to to meta mask or will connect to meta mask and then I haven't locked up the the unlock or enable or prove all so just ignore that for the time being let's say I had 500 died in in my current in this account this is babies are basically the what we would see there but let's deposit just 100 this was in a better days of gas prices I paid that okay so it's going it's going it's going let's say it's done hooray we've deposited hundred died so now we get to manage that and what does that mean so we could deposit more if we wanted we could withdraw if we wanted to get out of there or if something were to happen we could make a claim and this is basically a claim is exercises insurance from a user's perspective so what we're showing you is the the actual amount of saved I in terms of died but then also in terms of u.s. dollars the reason we're doing this is to so you can know if you're saved I value has has dropped so if something happens to see died if something happens to die this likely will be something something lower so this falls below ninety that's the point at which you would want to claim so let's let's take a look at that basically it well these prices are a little bit out of date so let's say we wanted to claim for do I have this on here yes I do if we wanted to claim one hundred saved I we could click claim and we would get 0.53 eat which is roughly at the time that I made this was roughly $90 so I click claim gray okay now I'm back to deposit I'm gonna go through that again just so I can show you withdraw so when I want to withdraw now here we're seeing the different options that we have we're still playing around with exactly how this will look and something we're experimenting with but if we were going to die we might want to keep it so my prototype only has exchanged so we're gonna exchange the insurance portion for die so this is where we're going to win draw for underlying assets that's what we'll be calling in the background here so we'll go max 400 and withdraw and then now my now we're back to the home so that's basically basically it there's probably some some more complex interactions that we need to think about when it comes to renewing or or some other things but we haven't quite gotten yet gotten there yet we're starting here so questions from Brandon any benefit to creating some sort of contract that auto renews your term are there any risks of creating longer and longer insurer it's terms so the first one is something we're thinking about it will actually Ksenia is gonna touch on that in a little bit but for the second question are there any risks to creating longer and longer insurance terms so Open has played around with a perpetual option actually or at least they've been thinking about it I don't know whether they're gonna go that direction it kind of sounds like they're not I'm sure there are a number of complexities and nuances involved in in that in that decision from a user experience perspective that would be awesome the longer it is the easier it is for a user to not have to deal with any renewals or anything like that they just kind of set it and forget if that were the case we could really get to the point of having a true tokenized insured interest-bearing asset that's just an asset and it's not really add something you have to do much with outside of making a claim if indeed that happens in today's reality there are some there are some things around the edges that we need that users have to have to deal with one direction we've thought about is making things a little bit easier for them by automating some of that or providing a service that would do that let's see we get out of here and go back to one other quick question if that's cool yeah do you do you get the same amount back regardless of whether you exercise the insurance like one day into having the insured tokens versus on like February 9th 2021 yeah so it's basically so there so there is an Oracle involved in this so it uses the compound Oracle so I need so that one level up or one part of one type of risk that OC dies does not cover is the compound Oracle risk or Oracle issues but that does mean that we that what can happen is at any point you can client make a claim exercise your insurance or exercise your option and get back the amount of the of the deposit basically you're the positives not any insurance that you would accrued and quick follow-up question would it have been possible to make it that way or is it impossible to make it so that like as you accrue insurance you top up what you would get back I'm not sure it's something that we've talked about with open a little bit and it might be possible but I'm not sure how much they've put a lot of work into that cool thanks okay any other questions before pass it back to Ksenia all right okay so these are yeah so next steps and talk about some future ideas we are pretty much done with the smart contracts we keep saying that but then we make little minor tweaks and updates no probably be some updates to do after we get the audit done but we are almost done with smart contracts we're currently working on the front end so we're going to complete that and then of course testing testing testing testing we finally deploy to a test net today actually to be able to test some of the functions again audit and then the goal is to launch in June or July and that's also kind of contingent on the compound interest price because right now it's very low right so it's like less than 1% at the moment so there might not be incentive to use save died until that interest increases so we might hold off until we see that interest going up next slide okay and then some ideas that we have for the future that we've talked about obviously saved AI is very specific to die and OC die and again this it's specific to the OCD that expires in 2021 so we see essential for building out this kind of token factory where we can pump out different save tokens so you'd call the creates a token it would deploy different versions of other versions of save die so for example once the current OC die expires we could about deploy a save die 2020 version using the new OCD contract we also see it with using US DC so that's something that we could actually build right now so the underlying asset that the user would deposit is u.

s. DC and then the Cu SCC would be the interest bearing and o OC us TC is the insurance portion and then any just any other kind of tokens in the future right now open just provides insurance for OC die and OC us DC but as they add more in the future we could use those or hypothetically if there's other kind of protocols that are using that create insurance with ER c 20 tokens there's potential for that and then next slide yeah and then these are a couple functions spencer mentioned we haven't really fleshed these ideas out but we see opportunities for renew function or a mint with renewal so where the factory would be deploying another version of saved I with the new OCD contract there could also be this renew function that a user calls that kind of does everything automatically for them so they wouldn't have to like unbundle the current saved I get their die back and then mint new saved I tokens with new OCD tokens this could be a function that just does that unbundling and purchasing new OCD tokens automatically for them and then mint with renewal is a function that a user would have the choice to use if they wanted us to handle the renewals for them so they would because we like I said we haven't flushed these out completely but they would be giving us approval so we would keep a look out for OCD when that expires we would basically renew the insurance portion on their safe die and they wouldn't have to worry about anything so yeah these are just a couple ideas if you guys have any that you think would be interesting I want to share we'd be happy to hear about them and the next slide I think looks like this is it next slide is just all of our resources yeah so these are all of our links we've got a website a web app that's not deployed yet is that the front end piece that's currently live no that's actually not that's just a placeholder for what it does okay and then get hub we have Docs and then of course our Twitter and medium so right now our we haven't announced anything we haven't like publicly announced that the code is then the contract code is is open source but it is so you can go check out the code on github the the front-end is still closed but at some point we plan on when it's ready opening that up so I think that's that's all that we have our presentation very cool I'm sorry go ahead okay we can get into questions yeah if anyone has any questions feel free to keep asking them in the chat or in our discord or feel free to just unmute yourself as well I've got a couple but I'll wait and see if anyone else has anything sure I had this calling in from New York so nice to be at Chicago hear some cool thing I've never been to Chicago Peter Peters one of our partners in our company actually so knowing a little bit that you have this bullwhip effect where you've got compound and then you've got on top of that hurt me I've died and then on top of that you have C die then you have oh she died and then saved I kind of combining the two when one of the underlying assets has some innovate innovation she died has some innovation or oh she died does it necessarily mean that save die is obsolete or is it true that the it's closer to just being in you know now there's opportunity for a new version and the old version remains functional what do you mean when you say obsolete like like the I guess I will have done what saved I does already or like there's a new feature that breaks saved I may be a new feature exists and now saved I wasn't built to handle it that's a good question I think it probably depends on what the feature is or door set of features would be think as it exists now they're like all the tokens that were talking about are ER c 20s so there is a certain there are certain standard functions that unless people change like unless the FC Twente standard kind of falls away will always always be there one thing go ahead I was gonna say it's like let's say compound came out with a new version of C die right that they would kind of like maker Dow came out with their new version of it's a different different contract different contract address and that if that were to happen we would use the factory to kind of mint another create another save die or save whatever token er c22 use that new that new contract from C down or or MC die so depending on how you design it it'll either be writing some new code to handle the new situation or the factory will be built for the new situation to be handleable in the future is that true yeah I think it's more the latter yeah what we would love to be able to do is be able to design the factory in such a way that it could handle multiple different types of tokens so let's see what what did we have here so all of these are C tokens but that doesn't necessarily that's not a constraints was he token to being compound tokens we're not really constrained to just that then if we had a different token like rep for example and so say there was a a protective put options market for rep from augur we wouldn't necessarily have to go through the compound version of that we can have a self-insured rep just it just wouldn't be any interest-bearing component of it you'd have under why and the insurance or the asset any insurance that does open up the question and you mentioned us DC there's also tether there's other stable coins and not only that maybe with each one of them there's a different version of compound and the different version of what oh she is as well so then is the safe die concept and if it's gonna just be the quote unquote save concept if it's not always related to die it does in some way matters that like us DC is better than die for the popularity of this safe concept is die the only one that you can do this on and that's why you chose die or is it that die is actually better than us DC in your opinion and that's why you chose died probably neither of those two I wouldn't say die is better than us see see it definitely makes different trade-offs than us DC to me those trade-offs are more appealing than us DC although of course something could happen to die I guess maybe maybe another way to answer that question is there are fewer risks when you watch us DC when it comes to like economic or or protocol risks because there's not a lot of complexity to what's going on with us DC it's just a deposit minted thing obviously there's like regulatory and like custodial risks with the US DC but probably on balance lower so maybe there's some more room for like there's more risk to die to actually ensure which is a reason to to cover die I think probably where we're we're we were focused originally is is is just died is like the most popular and kinda defy native version isn't met a coin ever happens or I guess it's right now and that goes into into compound then there wouldn't really be much stopping us from doing that to medic wine is that the one that Amina's doing yeah yeah yeah that one sounds really cool and tether tethers actually its own tethers not be RC 20 right okay oh it is yeah it's one of the reasons our gas prices are insane right now all right yeah because there's so much movement of tether yeah sorry I guess do like this one thing sorry Paul but well I think an important distinction is between save die the user-facing product and save die the kind of protocol kind of concept probably said they're one in the same right now but we see them very differently in the future where the where the factory that enables this like save token concept or this self-insured asset concept definitely would support a proliferation of more saved I type things and support the next version of saved I or the next kind of next term of insurance etc but also could be used to create any number of self-insured assets so long as there is a a token that represents insurance for that asset so we're thinking about that as a longer term version of or or niche for this concept let's say die quick question I had I noticed that a lot of the main methods for the contracts were external rather than public I was wondering if that was like if that choice was made for any specific reasons yeah so the idea is that say that can be a Lego block right so other people can utilize it for further data so we actually have the same value interface which are contracts inheriting from so just by the spec were required to make those external but the reality is like the only ones that are facing with those functions are external individuals whether it's message sender or another contract you've never within the own contract our own contract are we utilizing those functions in particular so there's no need to make it public there's always utilized by external transactions cool makes sense then one idea I guess I had is have you looked at all at the Open Zeppelin message sender implementation that lets you use either meta transactions or standard transactions I bring that up because message sender is used in a few spots the context context contract I think it's the context it's it's for many transactions I so like we are subsidizing gas fees essentially yeah you or someone right so yeah that's it we haven't really talked about that but it's it's definitely worth give you more thought to there are a number of things like that may be they may be like a newer Verte like a newer PRC 20 sorry ERC 777 with additional functionality maybe things like that I think all of that we're sort of whether we've explicitly talked about it or we be like one of us have had the idea we're kind of waiting for the point at which we get to the factory to think more thoroughly about about that yeah we're kind of in a let's let's build it fast and get it out there and then like worry about the longer term fast yeah yeah we thought we could get it out this month and yeah I think for something more integrated like so this notion of using meta transactions which I think can be a really compelling idea it's definitely worth give me a more thought to it it just might be a little bit further down the road I think right kind of trade off you know expedience to get this thing out there versus like comprehensive functionality another consideration is that there are like wallet user wallet services that exist that kind of take care of that already without us having to do anything I think there's a lot of value to supporting that directly but things like aetherium or I guess on the mobile side or while I connect side I guess they don't really do okay just out the area for is the one I mean what I'm thinking about and web web 3 modal and and similar things like that make it super super easy to just support pretty much any user wallet service that that's out there so it's pretty pretty easy for us to do that does anyone else have any other questions I have a question for myself I guess or like something something interesting that we didn't really touch on too much but I think is interesting to talk about we sort of hinted at it a little bit let's see if I can go back and a few slides and show you what I'm talking about yeah okay so it's trying to point your thing can you guys see what I'm doing here okay so these couple require statements what I what's important is not really the require statements themselves but just the concept that we are trying to make sure that we have equivalence between the amount of the assets of the CTI token and the amount of saved eye tokens ultimately that we are minting and the amount of tokens for the the OCD that we have so this is an interesting relationship that you might see other other rapper functional rapper tokens out there and a lot of them will have mappings that so that it can keep track of balances which is obviously is what they need to do but there is a because there is a relationship between a unit relationship between let's see yeah yeah between OC dye and dye where one OCD eye protects one die and all decimals on down it actually allows us to forego those mappings all together as long as we are as long as we maintain that relationship between between good maintain the amount equivalence between the two and also mint the same number of saved eye tokens so that does mean a couple things it does mean that same dye tokens are denominated in CDI units so it's not quite as easy for users to think about as like one dye for example so we're having to do a couple things on the front end to account for that but it does help on the contract to keep things much simpler and probably helps with keeping gas at at a reasonable level as well there's something else that I had in mind too but I forgot it so I'll just leave it there well if there aren't any other questions thanks the insurance brakes adds a Feb 10 20 21 then that's job 10 20 21 determined by makers of oh she died was it that they said a year term on that yeah so as the makers of OCD I want to set up more insurance are they currently doing that is they're currently another different contract I would expire in June of 2021 or anything with a flexible term or there are other existing alternatives today not today however we anticipate that happening and anybody in theory could go today and create one open is a permissionless protocol so they have made some very deliberate decisions - behind what they are stems like they themselves are minting and creating markets for but that doesn't prevent anybody else from from doing the same thing for in any with any printers that they'd like understood so iron ore I get the curve team has has actually created their own version so that's not something we've talked about it all here but that's another possibility for something to include or to admit to be at the contour sorry the factory at the point when we get to there so I could be clear about it that would be that team creating something more similar to oh she died yeah it's called OCR v/o copies the token that they created

Automatic transcript — names and jargon may be misspelled.