 I am an open source evangelist, into the talk I am going to introduce PyP, a programmable network proxy for cloud, edge and IoT. Here is the agenda for today's talk. I will be briefly explaining what is PyP and its key characteristics, then we will take a high level view of PyP architecture and design and in the end I will be sharing the links which can be used to learn more. So what is PyP? PyP is an open source, lightweight, high-performance, modular, programmable, cloud-related network stream processor and it has been used and can be used in different use cases like, you know, proxy solutions, load balancers, edge routers, API gateways, sidecars and so on and so forth. I have added the keywords which have specific meaning and I will be explaining them in the next slide. Compiled PyP executable has zero external dependency and is around 10 megabyte in size and requires a very small memory for print to run. PyP is written in C++, it leverages asynchronous networking, allocative resources are pooled and reused. PyP is versatile and has been used or can be used in multiple use cases which I will explain in the previous slide. PyP comes with its own built-in custom JavaScript engine called PyP.js and has its own garbage collection overhead and it implements a subset of ECMO standard. PyP requires a range of pluggable building blocks, also known as the filters, which can be changed together in any fashion to build a pipeline. I will be talking about pipelines and filters in the next slides. PyP is fully open source and all the source code is available on the GitHub repository. Just take a look at the architecture and design. PyP is a stream oriented where it takes streams in, process them and output the streams. PyP is event-driven in the sense that PyP streams are made of events instead of bytes. There are four types of events in PyP, the data event and three non-data are already known as the marker events over there. A stream coming along from the network is a series of data events each holding a chunk of bytes received from the receive communication there. Events are processed by a chain of filters where you can think of filters like a tiny UNIX process that varies from its input to its output, with the output of one filter connected to the input of the next. Chain of filters in PyP is known as the pipeline and there's a key concept in PyP and PyP provides four different categories of the pipeline. The port pipeline is the one which is used when you are writing a network service, which is listening at a particular port. And if you need a current job like functionality, I mean the periodic timer is there, then you will go with the timer pipeline. And if you need to process the signals which are sent to the UNIX process, then you work with the signal pipeline. And the sub-pipeline is a unique one that can only be called by the joint filter. Port, timer, and single pipelines are known as the root pipelines and they cannot be invoked by any joint filter. A PyP module is a PyPGS source file containing the PyP script that configures a set of pipeline layouts actually. As you see, the pipeline layout is actually how you compose or chain the filters together. And each module has its own context or the context is actually where you define the variables which can be used in generally and only visible internally through this module. But you can use the export and import functionality to export the variables so the other modules can see that one. Here's a look at a simple hello world example there. So what we are going to do is actually we are writing a simple PyP script that is going to listen at port 6080 and it's just going to return high there to every HTTP request no matter what PIP you use. Here we are actually using three different filters there. Decode HTTP, replace message, and encode HTTP response. On the left-hand side actually it shows the visual depiction of the messages or the events which happen inside the PyP. Don't worry actually if you need just to need to write a simple hello world like script there. So you can do that with only three lines of that one. The one in the right side actually you can see here the line four to eight on the top one side can be replaced with line four to six and the server HTTP is actually the same as doing the decoding, replacing message and encoding the HTTP response. PyP comes with AdWin Web UI that actually provides you the intelligence and syntax highlighting of the PyP scripts which you can use to develop the PyP scripts of there. On the right-hand side actually you can see the visual depiction of how the pipeline looked like. Please visit PyP website for more details or you can subscribe to the Twitter handle PyProxy or you can join our Slack channel. Thank you so much.