 So in my presentation, I will first introduce what HydroShare is and some of the feature functions in the system. Then I will talk about the CSDMS and HydroShare capability. Also, I will use this full-gray data component as the example for the demo. So HydroShare is a web-based hydrologic information system designed to help people collaborate and solve research problems. People can use the data sharing and social functionality to share their data and models and collaborate around them. They can also use some of the web apps for data visualization, analysis, or modeling. So I'm going to introduce some functions around these three aspects, which is the data sharing, social functionality, and the web apps. In HydroShare, datasets are organized and managed by resource. Each resource can contain any kind of files, and one resource can include multiple datasets. There are also some additional data functions for several data types, such as the time series, multi-dimensionals, base time data, geographic feature, and roster. HydroShare also supports the data publication. When you want to publish your data model or Jupyter notebooks, you will get a DOI for it. In HydroShare, there are some social functions to encourage collaboration. One is the resource access control. The user can share their datasets or their resources only with trusted users or groups. It can also make it open to public so that anyone can discover and access it. In HydroShare, users can also create their own groups for collaboration. It can also make a request and join some existing ones, such as the quasi Jupyter Hub group in HydroShare. So HydroShare also includes several web apps to support data visualization, analysis, and modeling. One of the examples is the quasi Jupyter Hub. So on the quasi Jupyter Hub, there are multiple server options. One of them is the CSDMS Workbench, which is the CSDMS and HydroShare capability. It was implemented to have the CSDMS tools installed, including the PIME-T and LandLab. There are also some other widely used scientific packages installed on this server option, such as pandas, matplotlib, and x-array. The notebooks for PIME-T and LandLab are available in HydroShare. So this figure shows a HydroShare resource that includes the notebooks for the soil-gray data component. You can also create your own data or model components or the modeling workflows and share the notebooks in HydroShare. This will help the people discover, access, and then reproduce your work using HydroShare without the need to download the data or install the software on the local computers. Before my demo, I also would like to talk about a little bit about the data components. So a data component is a Python package that wraps an API for a data source with a basic model interface. This means like a model component, a user or machine can access the data source without the knowledge of its specific API under the PIME-T modeling framework. Currently we have six data components and more is underway. We also want to encourage people to create and share new data components for the community to use in the research. As for the soil-gray data component, it fetches the global graded soil information from soil-gray system. This system maps the spatial distribution of soil properties such as bulk density, clay, sand, and silt content. And I just want to talk a little bit about the general steps how to create a data component and take the soil grays as an example. So I first created the soil-grays Python package. In this package, it includes the soil-grays.py file, which has a class to download the soil data sets from the soil-grays system using its web coverage service. This package also includes the BMI-py file. This wraps the class with the basic model interface. Then I run the Bibleizer over the soil-grays package to create the PIME-T soil-grays package. The Bibleizer actually is a utility for wrapping libraries that expose the BMI so that they can be imported through PIME-T. So PIME-T soil grays is the data component that can be imported into the PIME-T modeling framework. One thing to note is that a user can directly use the soil-grays package to download the soil data if there is no need to couple it with other PIME-T model components. So now I'm going to make a demo for the soil-grays data component in HydroShare. Can you see my screen? So this is the home page of HydroShare. If you go to the Discover page and you can type soil-grays. You will see here is the resource that includes the notebooks for the soil-grays data component. And this is the resource learning page of that resource. It includes a bunch of metadata information. And on the top right corner, it shows the resource access control function. And this is the version control of the resource. And this one is trying to help people publish their resource and get a DOI for it. And there are two notebooks. One is for the soil-grays Python package. One is for the PIME-T soil-grays Python package. Now I'm going to open it with a quasi-JWHAP app. In the soil-grays notebook, it includes three sections. The first one is a brief introduction and install the package. The second one to show the example how to use soil-grays to download the data for realization. And the third section is to guide you, write your own code, and download datasets for different soil properties. The first step is to install this soil-grays Python package. On quasi-JWHAP, the user has the freedom to install their new data or model components or other required Python packages. The benefit of it is that we don't need to update the CMS Workbench server option when there are some new components coming out and created by the community. So, in the second section are the examples. And in the soil-grays package, there are two classes. One class is the soil-grays class, which is designed for users to download the datasets. The other one is the BMI soil-grays class, which actually wraps the soil-grays class with a basic model interface. And in the soil-grays class, there is a method called getCaverageData, which actually is used to retrieve the dataset from the system. And you can click on this link to get more detailed information for the parameter settings. And in this example, actually it's trying to download the soil-page value in the study area in the single. Okay, and this cell is trying to show some of the metadata information for the soil datasets, such as the variable name units and like the bounding box and the grid resolution information. Now we're going to make a plot of the soil dataset. Okay, so I will skip this section because this section actually is to demonstrate how to use the BMI soil-grays class to download the exact same datasets. But this is the BMI soil-grays class is not designed for people to use. So if you have interest, you can just went through the cells and see the detailed information. In the third section, it will help you to learn about some of the soil-grays map service. And then it will guide you to download several soil datasets for the Boulder Creek area in the Colorado state. One thing to mention is that when you write your code, you can also double click here and check with the answer and see if your code is correct. So this is the notebook for the BMI soil-grays. The first step is to install this Python package. If you look at the coding example, you will find out the way to use the data component is very similar as the way to use the model components. For example, the first step is to initialize the data component using a configuration file. While we're waiting, maybe I can show what the config file looks like. So actually these information are exactly the same as the parameter settings from the soil-grays Python package. Okay, now after the initialization, we have actually downloaded the data from the soil-grays system actually downloading exactly the same datasets from the study area in Senegal. And this is actually showing how to use the variable-related methods and check the variable information. Like the variable name, units, and its value, location, and the variable type, and the grade for that variable. And this is trying to use the grid-related methods and check the grid information of the soil datasets, such as the grid type, grid rank, shape, spacing, 250 meters, and the grid origin for the lower left point. So these methods are exactly the same how to get the grid information for a model component. And this step is trying to retrieve the data using the get-value method, and finally it's doing a plot. So it's the same as the one which is shown in the soil-grays notebook. Okay, finally, we'll do the finalize the component. I think that's all my demo. One thing I want to talk about is the benefit of creating the data component is that with the same interface, it will make the datasets more interoperable with the models and then the Python team modeling framework. There's no need to worry about what the file format is, or the specific API of the original data source. It also supports the reproducibility of the research because sometimes the data files may not be accessible for people to use and reproduce the work, but with data components, people can easily to retrieve the same datasets just using some commands. And the benefit of using the CSDMS and HydroShare capability is this will help the community easily discover and access and reproduce your modeling work, and they don't need to download the datasets or install the software on the local PC. Okay, I think that's all my demo. Thank you.