 are looking, I wanna give a little closer look at what Firefly actually is on the ground and the tools that we're trying to build and share with this community. So I'm gonna share just one side that's kind of a different version of probably the same thing Steve's been saying for the last 30 or 40 minutes. But this is kind of the picture of the enterprise problem, right? On the left, they have messages and bits of data that may be arbitrary JSON blobs or they may be binary data, PDFs, images that we wanna share in some secure fashion with other members of an organization. And then on the bottom right, we have all these tools, right? Of course, we have a blockchain, which may be Ethereum, it may be Core to our Fabric or anything else. And then we have off-chain tools as well. We're very, you're not seeing the slides? Oh, let me make sure that would be helpful. Is it working that time? Yeah. Sorry about that. So like I was saying, on the left, we have the data that we want to share. On the bottom right, we have the tools that we wanna use to share. It's a blockchain that we wanna use for proofs, finality, immutable ledger. But then we have loads of off-chain logic as well. And Firefly is intending to be the glue that brings those things together, right? So just kind of a touch on the terminology inside Firefly so you know what you're looking at when I show the tool and kind of the plumbing that we've been talking about. The messages can be either broadcast to the whole network or they can be a directed message that is private to a certain number of members. When we bring those messages into Firefly, we build what's called a batch, maybe one or more messages and data blobs together. And then that batch is paired to a transaction on the blockchain. That data is actually going to be hashed and anonymized. And then the hash is stored on the blockchain of your choice as a transaction object. And then the data itself is going to be stored either in a database or if it's public data, it may be used in IPFS, which is a peer-to-peer file system. We have all these different operations that plug into the various tools. And I think we've said it many times, but the whole goal here is to be very pluggable and allow you to bring your own tools and integrate them together. And this kind of deceptively simple concept is what actually a lot of organizations get kind of hung up on building and what we're hoping to sort of standardize, bringing these messages together, having the off-chain data paired with the on-chain transaction. So from that, I'm going to go over and show you what the tools and the Firefly tool belt actually look like. The first one is the Firefly CLI, which is something you can download. And we did some workshops on it earlier today that you can view the recordings if you missed. But the CLI is just a really easy way to start up a stack of all the things you need to build an enterprise application. By default, it's going to build a ganache local blockchain and it's going to create IPFS nodes and private data exchange nodes for all your members and run them as dockers so that you can actually run all these things very quickly and easily. It takes a minute to set up a stack, so I'm going to skip setting it up and just show you one that I've already set up. The next piece in the tool belt is the Firefly UI itself. And this is a web UI that's part of the Firefly project and it shows you kind of a behind-the-scenes look at everything that's traveling through the Firefly network. I mentioned these terms, the messages, the data, the transactions, so each transaction represents something on the blockchain and then the messages and data are the actual individual bits of information that are shared between members. And I just get an overview here. I've created a three-member network and I can see this is my member one, my member two, my member three. They each have their own UI and can see the messages that have been shared with them. Just another quick look at another tool that's in here, built, baked in. We use OpenAPI for all of the API schemas so you can even get a lower look at the API from each of these nodes. This is from member one, but you can see kind of all the low-level operations to get what are the messages, what are the operations, what are the transactions that have been sent to this network. And then from there, I'm gonna actually take and run a quick demo just to show you how these pieces work together and what actually flows through the network. We have a very simple application here that is part of the Firefly Samples repo. Show you the repo and I'll show you a little bit more behind the scenes in just a second. But this is public on the Hyperledger Labs org and you can download this and try it out for yourself. And again, we did a workshop earlier if you wanna tune into that to see how to kind of walk through it in detail. But this basically gives me the option to view the Firefly network from the perspective of any of the members and to send either broadcast or private messages. So I'll start by sending a broadcast from member one and when I submit that, it's gonna go in, it's going to get bashed, it's going to get anonymized and hashed, it's going to get pinned to a blockchain. The data is gonna be shared with the other members and then it'll be visible on all of the org's nodes. So there it is, I see it came through on my own nodes sent from self. If I view as any of the other members, it's visible, this hello everyone is visible, who it came from, it's visible to all members since it was a broadcast. And again, I said before, this is all a bit deceptively simple, but underneath the covers, a whole lot of things just happened. One of the things is that we did pin a blockchain transaction. So my Gnash logs here show an Ethereum transaction with the block number, the gas usage, everything you'd expect. And then that transaction is also gonna be visible in the Firefly UI. So this is the new transaction that just succeeded a minute ago and each of the UIs has a copy of that transaction. And I can even go into this timeline view to see all the different transactions that have gone back and forth between the members, things that I've sent, things that others have sent on, it's just a nice view of what's actually going on to the blockchain. Then the messages, of course, I can see what were broadcast and what were private messages. So the actual data that was attached to that transaction, I can see here the contents of that data. So this is that pairing of on chain and off chain. And I can jump from this message to the actual transaction that pinned it to the chain that we know this message was sent by this person at this time, we have that immutable record without sharing all of the actual data on the chain. And where that becomes really powerful is if I wanna switch this over to a private message and send, say from member two to member one here and member zero is not gonna be privy to this information. I can send a message only to org one and I've selected that this is a private message. It's again gonna go in, it's gonna get hashed and pinned to the chain and it's gonna get shared only with org one. If I switch to their perspective, they're going to receive the same message, might take a second for it to come through. Member zero here is not gonna be able to see it. We'll see if it comes through to member one. I'll check, I can see in member two's logs that I sent a message here and then I can see here, org one did receive a message. So let's go back here, let's try another one. So I'm sending this one from org one to org zero. Got a timeline here and I do see a message sent from org one. I think it was received here. So the sample app could be having some problems. I think you can get through the whole thing. I didn't think we'd be able to do, we did so many demos, we gotta have a few demo hiccups. But again, I think we've covered the basic ideas and the basic kind of components involved here. The goal is to tie together that on chain and off chain messaging and make it very clear who to have that privacy model as to who can see what data and then have the blockchain kind of backing it all up to know the order the data was sent, the sender, et cetera, et cetera. And I think with that, I guess I'll turn it back over to Steve or Sophia. Unless, I guess I could show underneath the covers too. We did show earlier. Yeah, show the code for the sample application. Again, one thing we've been emphasizing is ease of use for this system. And the amount of code here required to do the broadcast and private send is not very much. We've got here just kind of simple REST API wrappers around the same REST APIs that I was sharing that are exposed by the Firefly node. And then the application itself, this one in particular is in React, but you could write it in any language and any tool and you really don't have that much to do. We have these APIs for sending private messages, for sending broadcasts. It should be, I'm gonna take it back. Thanks, thanks Andrew. I love the look and feel of everything there. So while we're, as we're concluding the day today, just wanted to thank everyone who joined. We will be making the recordings available, we'll have some follow-up links. There's some already in the Firefly booth section that you can copy. These links come, they're all there, if you wanna go in and start getting involved. And just wanted to extend a big open invitation for everyone to join the Firefly community. And we look forward to connecting with you soon. We're gonna see if you have any parting thoughts. Thank you all, it's been a lot of fun. Okay, thanks everyone.