 So let's take a look at forms and there are two types of forms. I want to go over the notes here first. One is called the reactive. The other is the template-driven. And they are named because of how and where data is stored and how you create components. When I say components in this case, I should say form components or form controls. So notice when you create a form like this in your flight list. Oh, it's not a form, but when you create a form, you're going to add the field for ID, flight, number, and type, and so on. So each of those will be a field. And you have to do that in your form, which is normal. So what you can do here is that if you're using a reactive, then you control those forms in the source code. And I'm sure it will not be later when we do it. If you are creating using a template-driven, the key word here is template. Okay, that means all your forms, you control everything in the template. Like you control especially validation stuff, like the minimum, maximum characters or length of size, the type of content or the type of input, like is it a password or email, you can put so that FU is required. You do all of that like you normally do in your HTML form. You add that explicitly, manually in the content in the form, right? That's the template-driven type. The reactive, you can also do that too, but you're not going to touch the template at all. The template only houses the input tags and all the tags that you need. Everything will be controlled in the source code. You do that inside the program. And so that is the difference. And the difference between, the major difference between the reactive and template-driven is where is the data being stored, okay? The data is sometimes referred to as the single source of truth. The template-driven form, say the source of truth, okay, is in the template. The template in this case is in the DOM. And this is something that you're already very familiar with. So far when you create a form and you want to access the data, everything you do so far up to this point, including in the Web 2 class, you access data from the DOM, right? You're using the web form. If you remember we did that with the book stuff. You access the data. You say document.elementofid.username, okay? You're getting there from the DOM. So the data are in the DOM and not in the source code. So that means if you want to get the data, you have to pass all this data to the source code through that data binding we talked about. Otherwise, Angular does not know how to get the data, okay? So here is, again, the form. And this data here are only present in the DOM. Angular needs them in the source. You have to pass them to the source, okay? Just like your regular form, your passers-form control data to say that if you pass it to the backend of a PHP file or express a program, you pass it through the form data. So here is the difference between the other one and this one here. So the source, as you can see, has no direct access to the form controls. It does not know where to get those data. So here is the form. We have to submit the form, okay? Notice we have to submit it. Once you submit it, you call your function, call handle submit. This is the function you call, whatever you want doesn't matter. And you pass this entire form. Remember we gave an ID, right? The pound sign is an ID for this form. And we're going to pass this form and all its inputs to this function in a variable called flight form. This variable here is this variable here. This is the template variable. Do you remember last week how we created template variables? So any of this input tag can have a variable in the template. You should put a pound sign followed by a unique name. You can access this content, right? So you pass the entire form to this function. So this form here have access to all the input tags, as long as you give it a name, okay? You have a unique name. Then you can access them by using the dot notation, right? Dot flight number, dot, you know, return date, whatever it is, whatever it is. And notice also all my validations here. I have to put it inside the, in the tag here. Minimum length, maximum length is required, right? If it's a password, you have to say a password, a type of password, type of email and so on. You put everything here just like you normally do in a regular form. And the only thing difference here you see is the two-way binding here, right? So you bind that to a variable in the source. But if you make changes in this content, data, you have to get the data from the form, okay? That's why the source does not have access to your phone control. You have to pass it to it. Or you have to bind it using the data binding so you can access directly from here.