 Hi, everyone. Thank you for joining us. We'll get started in just one minute. Hello, everyone. Thank you for joining us today for this webinar. We will get started in just one minute, allowing people to kind of come in. Hi, everyone. Thank you for joining us today. My name is Karen Otoni. I'm the Director of Ecosystem at Hyperledger, and I will be hosting our Hyperledger in depth, an hour with Oracle, enabling tokenization options on Hyperledger Fabric. We have actually three presenters with us today, Mark Gorov and Luke, who you'll be hearing from throughout the hour today. Before we get started, I have a few housekeeping rules to just take us through. We have an antitrust policy with all our meetings here at Hyperledger. Many of you are familiar with this, and so if you are curious about this or want to learn more about it, you can look at it on our website, our wiki, or at this link below. This is being recorded. We are actually also currently live on YouTube. That's another way you can watch these webinars. After the presentation, the webinar recording, as well as the slides, will be available on the hyperledger.org website. So you'll be able to download those things there. We do encourage participation in this session, and we have quite a few of you join us today, so thank you so much for making the time. If you have a question, you can raise your hand. We can use the Q&A box, or you can use the chat. We will be monitoring this, and we will leave time for some questions at the end, as well. We do have another webinar coming up on September 15th, just so you know. We do these two times a month with TALIS, so keep an eye for that and make sure to register there, as well. For now, I will hand it off then to Mark. Thank you very much, Karen. We have an exciting session today, and I appreciate everybody joining, taking the time to learn about the optimization options and how to enable them on hyperledger fabric. There is, of course, a lot of conversations about enterprise optimization, in particular, in addition to DeFi and all of the other things going on with tokens in the blockchain space. So I'm happy to have today with me Gaurav Sarkar, who is going to show us a live demo of doing tokenization on Oracle blockchain platform, which is hyperledger fabric-based, as well as Luke Riley from Quant Network, who is going to show us not only how you can use tokens, but how you can actually exchange them between Oracle blockchain or hyperledger fabric and other DLTs, as well. So let's get started. We'll briefly touch on the tokenization kind of basics. Very beautiful of you, I'm sure, for many of you, this is not a new topic. And then we'll delve into how we actually provide capabilities to automatically generate token chain code on hyperledger fabric using some Oracle tools. We'll share some custom examples and then get into the demo and then have some time at the end for a brief summary and Q&A. So let me start with this brief overview, this brief summary, and this is largely based on a very good report from a forester that I would recommend called Invent the Future with asset tokenization. Fundamentally, tokenization is a mechanism that allows you to make assets, enterprise assets, trackable, make them more useful, and provide a lot of capabilities to automate actions and activities around those assets. So tokens can describe the kind of privileges, rights, attributes, obligations related to an asset, and then the systems that use those tokens can obviously apply those rules or control who can do what with the assets if it's a digital asset. Tokens can, of course, leverage the DLT systems and enterprise blockchain or public blockchains to support all kinds of multi-party processes. So you have the benefits of time for resistance, multiple parties, time for evidence, data, immutability, all of those things that pertain to operations being done on top of tokens, which makes them extremely useful for processes between different companies in the ecosystem or even with consumers. And of course, if they're smart contract-based tokens, they're programmable, so you can implement a rich set of business logic capabilities to manage them in whatever way makes sense, apply validation rules, apply all kinds of code around making those tokens useful. Now, the benefits from an enterprise perspective in asset mechanization is that you can, if you're dealing with a digital asset, you can actually track it obviously across the enterprise, across the ecosystem, multiple enterprises. And if you're dealing with a physical asset, then you're creating a digital twin of the asset on a blockchain for tracking that within other B2B ecosystem or even BTC. So the digital systems that actually then controls the operations can perform different things on the asset based on the state, based on their grid rules, based on the actor who's performing the operations and so on, such as simple things, transfer of ownership, of course, that's what we all familiar with in cryptocurrency world, right? Alice is going to send the payment to Bob to transfer of ownership of some tokens, for example. But there could be all other kinds of rights, right? Licenses and so on. We'll talk about that more. Fundamentally, in our conversations with enterprise customers, what we find is that the tokenization in an enterprise provides significant capabilities to both affect the bottom line, which is cost savings, right? Process efficiencies, fraud reduction, risk reduction, as well as stop line, create new revenue opportunities, right? Where you could have complete multi-party process redesign, and you can adopt new business models to help grow your top line. So this is why tokenization is interesting beyond the cryptocurrency world and in an enterprise context. Now, obviously, you know, cryptocurrencies and tokens came with, you know, forced blockchain, with Bitcoin, and many of the chains after that, as well, that are focused on that space. However, you know, when Ethereum pioneered programmable tokens, based on smart contracts like your C27, 21, more recently, your C1155, they became much more useful because you could do more than just transfers, and you could do all kinds of applications built around tokenization. And of course, now we see emerging networks, for example, Flow, there's a lot of NFT marketplaces being built on that, for digital arts, for collectibles, et cetera, right? Now, in an enterprise world, we have seen a number of interesting use cases for fungible tokens, what we call FT, where fungible tokens are like money, like dollars in your pocket, you could have different dollars, but they all mean the same thing, or NFT, non-fungible tokens, whereas actually unique and serializable in some sense, they have a sequence or serial number, and those are useful for tracking parts, ingredients, doing inventory financing, we've seen some interesting cases around the SG investment, of course, rights management, IP monetization, so on. Now, the challenge is that in a high-pollage of fabric, like some of the other permission networks, there is no native token support in the infrastructure. Fabric has been built in the model that does not provide built-in tokenization. However, many of our customers and some partners have built token-based applications by essentially emulating ERC-20, ERC-721 business logic as an application level chain code on high-pollage of fabric. So this has been used as common building blocks. In fact, we have NFT marketplaces being built using that, essentially an ERC-721 that's emulated on fabric. Now, that can be done, but that means everybody has to go through that process and creating the basic building block. So we decided at Oracle that what we really wanted to do is to provide a little bit more than that to our customers, because this was becoming a very popular application space for blockchain. So, tokenization implementation can, of course, as I mentioned, be provided as an application chain code. But in order to really scale it well, you have to optimize some of the peer transaction validation logic in fabric, because, otherwise, it will not scale very well. You couldn't do more than one transaction per block with MCC and so on. So we decided to make this possible and created mechanisms that allows us to provide standardized application chain code as a building block for customers to build upon. We have a development tool environment called blockchain upbuilder, which is able to generate all of the chain code methods for basic persistence crowd operations if we will create query update delete of the data assets from a specification that defines those assets. You're going to see this actually live in the demo. So what we've done then is essentially created a sample specification based on what is the closest for token standards currently at least available in this industry, and that is token taxonomy framework from the interwork alliance. Token taxonomy framework provides templates and defines a meta model that defines different token types like fungible and unfungible, their properties, behaviors, like transferable, vulnerable, mintable, etc. And we went ahead and optimized the peer logic, at least in the Oracle blockchain platform, to make sure that when you validate tokenization transactions, we don't encounter MCC errors and so on. So this was initially announced and released at Hyperlegic Global Forum in June. This fungible token support is available now. And we're also working to add support for non-fungible tokens for the token taxonomy framework specification. Now, if you're not familiar with that specification, it basically provides a foundational spec for different types of tokens. It defines things like token units, whether they're fractional or whole or singleton. Singleton, of course, applies to non-fungible tokens. There's different value types, different representations, supply controls, how you control the supply of tokens, and different template types. And that defines through this sort of quasi-mathematical formulas that includes the base type, behaviors, additional group of behaviors, and property set. And you can see some of the different behaviors, properties, etc., that are available based on that specification. So when you are going to want to define a type of token, you obviously wanted to provide a simplified way of specifying that. And so I'm going to show you how this is something that we've implemented using our blockchain upbuilder. But for us, just a little bit about Oracle Blockchain Platform, as I mentioned, based on Hyperlegic Fabric, there's a lot of enterprise extensions to make a production ready. And, you know, meet a lot of enterprise requirements. It's all preassembled. It's available as a cloud option, as well as on-premises, sort of a software appliance. And it's open, of course, to operate with other fabric nodes. We do a lot of that with IBM nodes, with other clouds, Microsoft, AWS, what have you, etc. A lot of integration capabilities was fabric-lined as the case standard, as well as adapters that we provide in our integration cloud, REST APIs, as well. And a lot of features around enterprise-grade manageability, automated DevOps, and so on. And as I said, there is an on-premise version available as well for customers who don't want to deploy. They cannot deploy in Oracle Cloud because of data server and data residency requirements or industry issues, etc. So the same platform can be deployed, basically, as a virtual machine in VMware or virtual box and provide the same capabilities. Now, the Blockchain Outbuilder is a developer environment, an IDE that is available as an extension, basically, in Visual Studio Code. So you have full GUI support for Visual Studio Code available, as well as a command line interface, a CLI for power users or for CI CD automation. And based on having spec files, it essentially creates and generate automatically the chain code and scuffles the project that you can use then to support all of the lifecycle operations related to packaging, deployment, upgrade of chain code, and so on, right? And that's available, basically, as a download tool from Oracle Blockchain Platform. Now, the methodologies that we use, as I said, starts with creating a specification file and then generating the code automatically and scaffolding the project. You can, of course, add custom methods and implementations on top, or you can use generated smart contracts and APIs directly. You can deploy locally on a local fabric instance that the tool provides for you. You can do testing, debugging, and then ultimately deploy it into the running blockchain network using cloud or OVP. If you're not using Oracle Blockchain Platform for deployment, the code that we generate is pure Hyperledger Fabric. So you could certainly deploy it on other fabric implementations as well. Now, in the app builder, we've created a specification based on the TTF model, as I mentioned, talking about the autonomy framework, that defines the anatomy of a token. You specify a type call and token here when you define the asset. You specify whether it's fungible, fractional, or whole, etc., different behaviors and properties associated with those behaviors. And then you can also add, custom properties, custom attributes if available, and then you can add custom methods and will generate appropriate signatures. So this is very much out of TTF, just a simplified way using YAML or other kind of specification files, JSON, etc., you can do that. Now, we generate then the token SDK based on that, that provides all of the implementation requirements and APIs. It's based on an account-based system, and then based on the SDK, we generate additional 30 plus wrapper functions for token lifecycle management with built-in security. So there is ability to make specifically assign roles like minting, burning, and notary escrow roles to different accounts and then make sure there can be, you know, there's the ones who can do those functions that nobody else can, based on auto-ID of the actual caller who's invoking the function. So this is a functionality we define in the SDK. This is a basic, if you will, functions that are provided, and you're going to see that in the demo. And then we have the wrapper functions for initialization, management of accounts, adding roles, a lot of querying and gets, of course, and then token operations underneath that actually handle minting, transfer, as-grown, things of that sort. So you're going to see a lot of those capabilities in the demo. So the entire lifecycle now becomes available once you've deployed this into the blockchain platform. The setup that is done initially to initialize the token, create accounts and add roles, and then standard operations around issuing and transferring and, you know, burning tokens and so on, then we have, of course, a whole DexyCat escrow mechanism available as well. All right, so this was just a very quick introduction of the approach. As I said, we're going to see in the demo, but just let me take a couple minutes and take you through a few customer examples, right? We have seen a lot of interest, and I try to summarize it by categories, right? So the first one is around things like rewards programs using fungible tokens, right? So you're all familiar with loyalty programs, you know, frequent flyer programs for our lines, but there's all kinds of rewards programs out there. For example, we've seen a project in the agriculture supply chain, a rewards program to send farmers to participate in reporting, you know, their data, right? Sustainability information. We have another project we're working with manufacturing companies that's collecting CNC factory machine data from, you know, their subsidiaries as well as other companies and using tokens as a reward mechanism as well, so that they can get more data for machine learning-based predictive maintenance. There are also use cases around digital currency, of course, or twins are presenting other kind of assets. The perfect example is digital currency, of course, including central bank digital currency, CBDC, which I'll talk a little bit about, but also things like, for example, royalty accruals, right? So this is basically representing means of tracking royalties that they do in the supply chain, for example, there is some patented fabric supply chain customer and they collect royalties from everybody who's participating or insurance back office payments accounting. So this is not replacing the actual payments between the insurance company and the brokers or the reinsurer or the actual policy customers who are buying the policies, you're just providing in the digital twin to track all of that and provide better reporting in an environment where there is a lot of disparate systems and multiple organizations in the world. And, you know, it makes sense to track this on a blockchain faster than the current processes that they have in the back end. And then non-fungible tokens, and of course, you're all familiar with collectibles, but we see also things like IP rights for NFTs, personalized media, video, etc., those kind of things. But interesting is going beyond that, you know, ESG, auditability and investing, right? Environmental social governance kind of focused investing where people are trying to capture and quantify those things in a manner that's a little bit more realistic and then track it using tokens. In inventory financing and then being able to essentially, you know, use those NFTs to get financing on digital exchanges is another good example, but I'm sure this is going to be an evolving area. So let me get through a few of these examples. So this is a customer in Europe, the Catholic, which is a large sprint, sorry, a large sports retailer. They have implemented a loyalty program in Eastern Europe built by a partner of ours. The idea was to tie their stores in each country with a lot of sports teams, clubs, and other organizations that provide variety of activities and participation. And so if you buy things in the store, you get loyalty points, which you can then go and have other organizations claim and exchange, right? So now you buy a tennis racket, you might want to sign up for tennis lessons, and use a credit that loyalty points that you got for buying tennis racket to actually, you know, get a credit for, you know, some tennis lessons as an example, or now you're going to, you know, soccer game or football game, right? And, you know, you can get some points in the tickets and then use those points and apply them in the store. So this has been a very popular, very straightforward kind of a retail loyalty program implemented on blockchain because blockchain provides the real time visibility, right? Typically, those kind of balance updates between organizations would usually take at least a month and people would not be able to see real time data. Now with the blockchain environment, you can see this in real time. Here's another project that was implemented by Infosys for a sustainable agriculture project related to palm oil harvesting in Indonesia. There is a lot of concern about burning jungle, burning forests and so on. And they wanted to make sure that farmers only collect from the lands, from the plots that are already allocated. And they created a tracking program where basically individual farmers and all of the intermediaries involved were able to provide this information ultimately to the oil mills who were then able to consolidate it and provide it to the clients who are buying the oil, right? Big CPG companies. So they included an incentive program in here using loyalty tokens to essentially provide digital wallets to all of the farmers and all of the other participants here, whereas they were able to accrue points and they were able to try to convert them to cash payments with the local bank or use the loyalty points to get credit and buy some agricultural supplies and so on. And so this was a rewards program. Again, nothing too unusual here. A slightly different example. I mentioned the royalty payments in the supply chain ecosystem. So we've implemented a project for a customer that provides specific specialty chemicals that they use in patented fabrics. But before you can make the garments, you have to go through the fiber production, yarns and then into fabrics, right? Those are converted into fabrics and then fabrics are used in garments. So there is a royalty tracking system here on top of the tracking of the actual inventory information. So inventory information kind of flows out this way, royalty flows out the way up into the supply chain ecosystem. It's a licensing company. It's a license and materials actually. And this was implemented using a token based mechanism as well. And so the royalties are now able to be tracked in real time as opposed to waiting to get spread to its end of the month. I mentioned insurance in the past, right? So this is a partner of our super money that implemented an insurance back office payments in reconciliation where multiple organizations mentioned the insurance company itself, the brokers that sells insurance, which are typically external organizations. The clients who buy insurance and actually pay for the premiums and then the insurance at the end of the day as well. They're all able to track this in real time because all of those payments are visible in a single place on the blockchain platform using tokens. Central bank digital currency is a very interesting topic of conversations these days. And what you find is that, of course, there is a lot of different implementations, right? So we're working on some projects in this area. And we have been working with some partners to implement a solution, of course, using tokens to represent the actual currency. There is a mechanism that allows us to basically use multiple channels to provide charging mechanism. There was a wholesale channel, there is a central bank involved, and then there is what we call the narrow banks of transaction and custody institutions, DCIs, which actually provide user account management, KVC, AML information. There is obviously things that need to be checked when the user are able to make the payments. In some cases, anonymously, but depending on the amounts, depending on certain conditions, there may need to be anti-manual laundering or other kinds of checks that are done in the system. Maybe people get blacklisted, things of that sort. So there is a contextual privacy mechanism as well. This is a topic of a whole separate presentation we might do someday, but just wanted to point out that tokens are, of course, a very important aspect of distributed ledger for CBDC. And another example here, I mentioned NFTs in particular. So we're working with a partner of ours, a company called Zua, that provides a local templatize-based, white-label NFT marketplace capability on Oracle blockchain. And in order to implement it, they are using tokens as well, right? So there is NFT tokens that are being implemented using GRC721. But in some of the cases, for example, we have a customer who is working on a live event streaming and fan community platform, kind of an online theater experience, if you will. And they're going to have fungible token reward system as well that can be used to port NFTs, in addition to Fiat. There is a personalized video company that's creating fan experiences from specific videos in sports or entertainment industry and so on, something similar. And then finally, a news media that's looking to enable the freelance contributors to create and then sell NFTs as well. So there is a lot of different interesting applications here. Now, let me take a couple of minutes and help set up the context for the demo that you're going to see. And we're going to explain what the demo will look like. So we are doing an airline loyalty program example here, right? So we have an airline company and we have a frequent flyer. The frequent flyer gets some points awarded. Then they want to use those points for a car rental, right? So there is a car rental partner in the airline loyalty program. And they're going to take the 500 loyalty points, they're going to spend 300 on the car rental. And then they're going to have 200 points left. So what they want to do is actually want to transfer this into Ethereum using ERC20 coin that's provided by the airline, right? So the airline provides this kind of capability. And so you're going to see the first part of the demo, which is going to be done on Oracle Blockchain followed by an exchange with Ethereum here, right? So just to be a little bit more specific here. So the players, the actors, we have utopian airline, which is an airline that's setting this up. And they have an admin that handles initialization, setting up of accounts, adding roles and so on. Then we have an airline manager who will actually issue tokens and award them probably through a setup automated in an airline's ERP system, right? So the airline manager is going to issue tokens and then transfer it to a consumer flight traveler here, Michael Gregg, who is actually the frequent flyer. Now Michael Gregg is going to use the tokens and he's going to redeem some of that with the car rental company. So we have a car rental manager use AD for this fast travels. And then they're going to burn tokens to actually cash out with the airline company. And so you're going to see blockchain nodes for the airline and for the car rental, there are just two nodes in the simple network. But then the frequent flyer, Michael Gregg, is going to look at his tokens. I have some tokens left here. Why don't I exchange them with an Ethereum coin? It's the only reason we're not doing it purely with Ethereum. But if you will, a different coin is because it's just easier to set up a demo for that. You can obviously do it directly with Ethereum, Ether, and you could do it with other coins as well. And this is the exchange that's being facilitated by the Quant Networks. And we're going to see that part of the demo as well. The ways that exchange works, it's using something called hash time lock atomic swaps, which if you're not familiar with, I'll briefly explain. So we have essentially two entities here. We have the Traveler and we have the airline. The Traveler will generate a secret, you can think about it as a one-time password maybe. They're going to actually do an sgrow transfer to log the fiat or their current Oracle blockchain tokens on an sgrow account. And then they will send the hash of that to an Ethereum smart contract that's provided here as an sgrow. The airline will lock the year C20 on Ethereum. And then when the flight traveler claims it, in step five, they're going to actually provide that secret in order to unlock the sgrow. At that point, they have in their account on Ethereum some amount of coins. The airline manager here can retrieve that secret and then using that, they can claim the tokens on OPP network. And so you're going to see this exchange. This is a very classic hash time lock mechanism that's used for a lot of atomic swaps and can be used in other kind of networks. And what you're going to see is a Quant Network overledged gateway being used. It provides a front end to be able to interact with multiple types of blockchain, different ledgers. So they support a great number of them, not just Ethereum, but Corda and Quorum and Ripple and Stellar and so on. And they can support a number of different orchestration scenarios. We're going to do this cross-DLT asset ownership swap that you'll go to see in a demo. But you can also do things like do a logging where you're conforming, for example, transactional Oracle blockchain on a public network. We're putting a hash. Maybe more complex orchestrations where you have some kind of a business process, this purchase order, inverse matching that's being done in Oracle blockchain and then there is maybe a payment, a settlement on another network. So there's all of the different orchestrations that are possible through the REST APIs that they provide. So with that, let me turn it over to Gurav, who is going to take us through the demo. Thanks, Mark. Let me share my screen. Please let me know once I have your screen. Yeah. So what Mark mentioned about the demo, so I'll take care of the first part of the demo where we will quickly implement the entire loyalty token implementation through the blockchain app builder. And then Luke will take us through the exchange of the tokens with Ethereum ERC20. So before we jump into the blockchain app builder, I'd like to quickly touch upon on how the network is structured for the loyalty program. So for this, we have two organizations which are forming the entire network, blockchain network. The first is the Utopian Airlines organization, which has... So we are using the Oracle blockchain platform for creating this entire network. Over here under the Utopian Airlines organization, Utopian organization is onboarding three different users. The loyalty program admin who would be having the admin privilege to initialize the token, create the accounts, and assign the minter role to a specific user. Then we have the airline manager who would be issuing or minting the token and rewarding the token to the flight traveler. And the flight traveler user who would be redeeming the token with the car rental corporation. This is the first organization that we have. And the second organization is a car rental corporation where we have the car rental manager who would be burning the tokens from the airline company to get the cash out from the airlines. So let me quickly jump into the blockchain app builder. So as Mark mentioned, blockchain app builder comes up with two different flavors. So we are going to use Oracle blockchain app builder VS port extension. This is where you will land up. Working with the blockchain app builder is very easy. So it's just a four-step process. And the first step is to define the specification file. So for the loyalty program, we have defined the specification file over here. You can see that we have defined the assets under the specification file. So there are two different types of assets created under the specification file. One is a token asset. And this is the loyal token asset which manages a complete lifecycle of the loyalty token. You can define what type of token it is, whether it's fungible, non-fungible, whether it's fractional or a whole. And you can define all the different behaviors, suppose they're divisible, mintable, transferable, so on and so forth. And you can also define the different custom methods like I have defined over here as the currency name or token to currency ratio or effective from date. So this is the token asset. And the second type of asset is a generic asset. So under the generic asset, we have two different assets created. The consumer loyalty is a generic asset which maintains that entire flight traveler-related account details. And the second one is marching details which contains the information about the airline manager and all the partner-related details. Along with that one, we can also define the custom methods. So over here, for this specific use case, we have defined four different custom methods. Initialize marching, which would be initializing the marching-related accounts, initialize consumer, the flight traveler-related accounts, reward loyalty tokens, which would reward the loyalty token from the airline manager to the flight traveler and redeem loyalty tokens where the flight traveler would be redeeming the tokens with the card rental corporation. So this is the first step. The second step is to scaffold the chain port. And we can scaffold the chain port or auto-generate the port very easily. So we can just mention it here as a loyal one as my first chain port. And I can choose which kind of language I'd like to generate it on. Let's choose go. And specification file, the specification file that I showed you over here. So I just choose a specification file. And then I will click on the create. So it will auto-generate the entire chain port. And I can show you after it's auto-generated. So basically it will create two very important files. So after it is generated, one is a controller.go file, another one is a model.go file. The controller.go file will actually contain the entire information or all the methods which are required to implement the token chain port. So it will contain all the information about it. And the model.go file will contain the entire asset structure. Whatever we have defined in the specification file, it will create the entire asset structure. So now it has auto-generated the chain port here. So let us quickly check. We can see it over here that under this, the controller.go file, it has all the methods related to the tokens are auto-generated based on the behaviors that we have set. And at the end, we have all this custom methods where you can key in your custom logic. So for the ease, we have already keyed in all the custom logic here. So I will quickly switch on to the controller file where we have keyed in the custom logic for those four different methods. You can see so we have just entered the custom logic here. So you can actually define the custom logic. And once you have defined it, you can deploy it. So we can quickly deploy it either on the local hyperledger fabric. The blockchain abildo comes up with the local hyperledger in the environment or you can define the Oracle blockchain platform environment. So I'll quickly deploy it on the utopian airlines organization. The channel is loyalty program. And you can define the here, who would be the admin for this. So for this, we want the token admin to be defined here during the initialization process. So I just mentioned it as the utopian airline. And the user ID is loyalty program admin. So you can just define it here. And then once they deploy it, so it will, it will start the deployment on the Oracle blockchain platform on the utopian airlines organization. And it will first install on the peers and then instantiate on this specific channel. So by the time it is getting instantiated, installed and instantiated on the channel, we'll quickly check that how the model file is structured there. So you can see that as I mentioned in the specification file, we have the two different types of assets defined. One is loyal talker, which maintains the entire token lifecycle. And you can see that all the assets, all the attributes, whatever we have defined in the specification file, these are mentioned here itself. And the second type of asset is the generic asset where this consumer loyalty and merchant details are already mentioned here. So you can see that these are already mentioned. And you can also define the different validation. So I've defined the validation as active or inactive. So if you see here, these are something which are defined in the specification file. So you can also do that. So now by the way, it has been deployed on the Oracle blockchain platform, and we can execute the REST APIs for the token through the, through the postman. So as Mark mentioned in the flow, we have these four different personas, the admin who will be initializing the token, and then create the accounts and add the roles, airline manager issue, or the mint the token, reward the tokens, and flight traveler redeem the tokens and car rental manager to burn the tokens. So I'll go one by one. So the first is the initialization of the token. So we can just initialize the token here. So you can, you can see that this token loyal to L talk to has been initialized with all the behaviors, whatever we have set in the specification file. The second one is to initialize the account manager. So airline manager user ID with this L energy user ID will create the account. And we're just creating the account for the airline manager. So we have already created it. The next one is to create the account for the car rental manager. And we'll just use the postman to execute it. So it has also created the margins that car rental manager did the details. The next one is the flight traveler, and the flight travelers Michael break. So we'll create account for Michael break. And so, so, so now we have initialize the token and created the accounts. The next one is to add the mentor role to a specific user. And we are going to be the mentor role to airline manager. So the manager would now be the mentor. So I'll just add the mentor role to the airline manager. So now you can see that online manager has been added with the mentor role. And at any point of time, if you'd like to check that, what details we have entered, we can actually query it. So all these are auto generated codes. So auto generated methods, you can also execute it to check the consumer related details. So we have already achieved about we have already completed admin related operation, and we'll slowly move towards the airline manager, where you would be issuing the tokens or minting the token. So he is going to mint 500 tokens. And we'll just execute it. And you can see that after the execution, the 500 tokens are minted. And now he would be rewarding those 500 tokens to the flight traveler. So we'll just execute the next one to execute to just transfer it to the flight traveler. So he rewarded 500 tokens and you can check his count balance or the account transaction data. So you can see that 500 tokens was initially minted by him. And now 500 token is debited because he just transferred it to the flight traveler. His current account balance is zero. Now we have also achieved the flow for the airline manager. And then we'll go to the flight traveler. So flight traveler will transfer or redeem 300 tokens. So 300 tokens, he just gave it to the car rental manager. And if you check the transaction history, you can check that 500 was initially credited to his account by the airline manager. And then he burned, he transferred 300. So his account balance is now 200 over here. And then the car rental manager who is the last person in this flow and he will be burning the token. So you can see that once it burns, this 300 tokens, so he just burned the 300 tokens, this 300 tokens burned. And you can check the transaction details. You will find that 300 token he received before through the credit. And then he burned 300 tokens now. So his account balance is zero. So this is the overall flow with a very short span of time, we just created the token chain code and implemented the entire flow, which is actually this token chain code is almost auto-generated. So with this, I'll just hand it over to Luke who would be showing that how the token, how the leftover tokens can be exchanged with the Ethereum ESC 21. Over to you, Luke. Thank you very much, Gaurav. I will share my screen. Desktop 2. Great. So here we are. I just noticed that, of course, our Ethereum blockchain is running very slow today. So we'll get through as much as we can live. And then we'll switch to our last valid run if we need to. So what we're going to do with the remaining loyalty tokens, we are going to swap them to a more liquid asset on the Ethereum blockchain. So we're going to put them into escrow. And by the flight travelers, going to put them into escrow in the Oracle blockchain. The airline manager is then going to escrow some ERC 20 coins on the Ethereum. And then we're going to atomically swap them using a hash time lock method. So just to keep in mind that the escrow contract and the Oracle token contract were created by the blockchain app builder. And then the escrow contract on Ethereum and the ERC 20 token contracts is more standard solidity. So let's move ahead to step one. Step one is the flight traveler with his remaining 200 loyalty tokens. He's going to lock them for a specific time using a specific secret. And only the flight traveler has this secret. And should the secret be revealed on the Oracle blockchain, then the airline manager will receive these coins. So step one is creating the escrow object. So you can see that all the parameters have made it into the escrow. And then step two is to move the tokens into the escrow. So we need the same escrow ID into the body, which will move the tokens into the escrow. So now the loyal tokens have left the flight traveler, gone into a smart contract escrow, and is awaiting the airline manager to create the corresponding escrow on Ethereum. We should note that you can connect to both blockchains with Overledger, or you can connect direct to the Oracle blockchain using the Oracle REST proxy. So here, number one on the postmonitor is using the Oracle REST proxy, as you might be more familiar with our native method. So let's switch to the airline manager on the Ethereum blockchain. This is the airline manager's ID. In the corresponding escrow on Ethereum, we need the same escrow ID. We need the same hash. We need to put in the token amount. So let's prep this transaction using Overledger version two. So we have a generic blockchain message that we've sent to Overledger. Overledger has come back with the native data. And then I need to sign this native data off chain client side to not pass the private key to any middle mode. So I'm just signing that now. I'm going to bring back the sign transaction. One second. Okay. So I've got the signed create escrow request, and now we're going to execute the create escrow request. So we'll send that back to Overledger. And Overledger will give us a transaction ID that relates to that request. So let's have a look for it on this third party block explorer. So we can see, yeah, it has appeared on the third party block explorer has gone through Overledger to the node in the native data style. Let's have a little bit more look at this native data. It's the same information that we saw on the Oracle blockchain side. Same escrow ID, same hash. This is for 60 tokens on the Ethereum side because it's got two decimal places. That's the token contract address. So I'm going to now switch to the last run because, yeah, these blocks have not been confirmed for a long time. So what would happen live is that this create escrow order was step five on this screen. It would get confirmed on the blockchain. Then the flight traveler would read the escrow information to check it corresponds to the escrow created on the Oracle blockchain side. And if that is true, then the flight traveler would release the secrets on the Ethereum side to close the escrow to move the RC20 coins from the escrow smart contract to himself. So let's have a look at the last run where this occurred. So this was a create escrow request and it was going from the airline manager to the escrow smart contract for four coins. And then on the second transaction, we had the close escrow request. And it was going from the escrow smart contract back to the flight travelers address after the unlock, after the reveal of the secret phrase. And the secret phrase was the Oracle demo secrets. So if we use that secret phrase on the Oracle side, we'll be able to close the escrow on the Oracle side to move the tokens to the airline manager. So we can see the secret phrase has gone into a transaction that's broadcast on the Oracle blockchain. And these tokens have been claimed. So I think that's completes this demo. I think we've got a few minutes for questions. Yeah, great. Thanks, Luke. I appreciate it. Yeah, let me just bring up a summary and then we'll take a few questions. And I'll also go through live some of the questions here. Don't you know there were some really great questions here. But just as a summary, what you saw here basically is a mechanism that, first of all, supports straightforward implementation, easy to use implementation of tokens for variety of enterprise use cases, allowing you to generate the code out of the box, which means you have faster developer productivity. You can use local approach. You can easily go and tweak specification. It will automatically regenerate and redeploy all of the smart contracts. It follows TTF standard in that space. And of course, we've also been able to show you how you can then exchange those tokens with other DLTs like Ethereum. The idea here, again, is to make all of this easy without requiring very complex skills. There is obviously a source of development, chain code development expertise out there for all kinds of enterprises that are looking to build something. And by providing a preassembled blockchain infrastructure based on Hyperledger Fabric with all of the capabilities that we have added for enterprise kind of requirements, rapid development using UpBuild, the tokenization support that's now available, and optimizations in Fabric itself to actually make tokenization scale. I think this is a great set of capabilities that can be leveraged to actually allow people to build broad range of tokenization use cases. What we've actually done recently is, in addition to providing this in the blockchain UpBuilder, we have actually integrated a sample in our blockchain platform. So if you happen to be using Oracle blockchain platform, or you can go into cloud and provision a free instance, free trials available. Once you provision it in our console, you can go into developer tools, samples page, and you will see towards the bottom here, samples that we provide called Fiat money token, where you can actually deploy, instantiate, you can invoke the token functions automatically. So you don't even have to go through the UpBuilder if you just want to play with the sample, it's already built into the platform. All right, with that, we'll take some questions. I'll leave up this page for additional resources. If you want to look at variety of things that you have available, you can go read up more on Oracle blockchain. We have a post yesterday where I put on our blockchain blog, there is a detailed video on how to use UpBuilder and variety of other things. And then you can go to actually our blockchain platform and sign up for free tier as well. But let's take some additional questions here. So let me go and actually ask a few, go back to some of the questions I've answered online. So there's an interesting question here. What are the biggest concerns or difficulties for enterprises to actually implement tokenization? I think there are two fundamental issues. One is of course, the skills involved. You have to make sure that you can bring the right skills at the business level and technical level. But then the other question then becomes, is if you're doing this on a public blockchain, there is all kinds of issues with scalability, performance, response times, as well as legal abilities. And all of the uncertainty is there depending on who you're dealing with. If you're doing this for a B2B use case and a permissioned blockchain provides a much better platform. So there was a question about the demo, who owns admin rights to blockchain network, Kaila and Ocar Antel? The answer is nice as they both do. They both have nodes and they participate equally in the operation of the network. Of course, other partners can be added and there are different governance models for things like consortiums and other things like that. Let's see. There was a question about sharing public use cases for some of the things. So we are going to share once available Oracle kind of take customer confidentiality pretty seriously and some customers are not ready to talk publicly until they have something deployed in life. Some of these capabilities are fully new, overledged integration and certification was done a few months ago in the spring, so the tokenization came out in June. So we're still working with customers who are in flight, but certainly hopefully in a few months we'll be able to announce some public references as well. Let's see. Anybody wants to raise their hand and we can also take some questions live if we can open up the lines for that. Yeah, I see Nathan Phillips. Karen, can we unmute? Unmute, Nathan, I guess. Hello. Yes, go ahead, I can hear you. Oh, great. Yeah, first off, thank you, Kara and Mark, Gaurav and Luke for talking today. I just have a question. In the demo, we saw that Ethereum was having a little difficulty confirming the transactions. I was just wondering what do you suggest your enterprise clients when difficulties like this happen? So maybe this is something Luke can comment on as well, but we were using test net version of Ethereum, so this is not the actual main net itself. But with Ethereum, you obviously might want to wait a certain amount of time, a certain number of blocks, and then you might want to retry the transaction, redrive it. That's the basic mechanism with public chains. Look if you have any other thoughts. So you could retry the transaction with a higher fee, but yeah, just keep replacing the gas fee. The problem there, we're just having a low amount of blocks really because it is a test net, so there's less miners on the network. But yeah, probably gas fee is the only thing you can do really. Just be familiar with if you have to wait. Thanks so much, Nathan, for your question. I have a question here. If I can just read from somebody, do you have programs for startups to join? Actually, we do. You can go to oracle.com. Let's start up. Let me say start up or start up plural. Try both. And there is a program where we work with a lot of startups and there is a particular kind of a lane in there for blockchain related startups as well because we're closely with that team. So yes. There's a question here about Internet Work Alliance joining or merging with Global Blockchain Business Council. I cannot see all of the details yet, but we'll certainly be watching that space. I think the token taxonomy framework is an evolving standard, of course. It's not a kind of the joy standard, but it provides from what we've seen at least in the industry over the last year to probably one of the best starting points. So we feel comfortable using it. And of course, as the changes evolves, we'll follow that. And there was one question here, Mark, on why use Ethereum for a token exchange? We just wanted to show a demo with one non-hypology network. People are always concerned about interoperability. Ethereum is, of course, pretty popular as they are well known. So since we could only fit one in the demo time available, we picked Ethereum. But I'm sure that looking at that, they could do the same thing, the score, the quorum, anything else out there. Yeah, with many others. And the advantage that we had here using the public Ethereum network was that we could use the block explorer that's already familiar to many people. But yeah, we can do many other chains as stated on the website. Yeah. I mean, you don't even need to do token exchanges, of course. I mean, you can just keep the tokens on, you know, hypervisor fabric and just use them there. It just added questions that often comes up. So we wanted to cover that as well as a possibility. All right. Thank you so much, Mark, Luke, and Gaurav. And thank you, everyone, for the fascinating questions. This has been a really informative session. I would like to invite everyone to go to our events page to find the, if I can get the screen to share. Yeah, let me stop sharing here. Yeah. There you go. Like I mentioned earlier, we have another one of these webinars coming up in a couple of weeks. And you can always engage with our community on our wiki.hyperledger.org or also on our website as well. Look at our events page. You'll find the slides for this session where you can download them. And on our YouTube page, this session was streamed live. We also have many, many more sessions related to tokenization, just many of the use cases that we're touched upon from our recent Global Forum back in June that you can also find on our YouTube page. And finally, like I said, there's many different ways that you can get involved, both on our website events and our wiki page as well. So we look forward to seeing you there and seeing you at a future session. Thank you, everybody. Have a great rest of your day. Thanks, everybody.