 Hello, everyone. I'm Sanjay Gupta. I welcome you on Sanjay Gupta Tech School. So today in this session, you are going to learn Appian and this is day seven of Appian Bootcamp. So I have Ankit with me. So welcome Ankit on the channel. So I hope whatever Ankit delivered so far you have gone through and in this session he will be explaining some more concepts related to Appian and will give you an update related to Appian instance so that you can start practicing that. So like before handing over mic to Ankit, I just want to share some social media handles with you like if you want to receive session reminders and all the updates related to the session which are happening on this platform. So you can follow Sanjay Gupta Tech School on YouTube, LinkedIn, Instagram and Telegram and the session tracker and other important links are available in the description of this video. Okay. So with this I hand over mic to Ankit. So Ankit over to you. Please start with the session. Yeah, sure. Thank you very much. And thanks everyone for joining. So if you have any questions, any query, we have our Telegram group that is called Maestro. So you can put your query there and we will respond that. And other than that, there will be some links also you'll share. So you can go through those links and you can check, you can review, you can get some knowledge from there. And other than that, we have one YouTube channel also for the code Maestro where you will get all the recordings of the session and other than recordings, you will get other other videos, other recorded videos where you will get the basic knowledge or other knowledge of APN. So if you have any queries, you can put the comment there as well. And other than that, like know that if anyone got the instance of APN, so please inform us or put that in our session tracker. So we will get know that you already got the instance access and you can do the practice on that. Yeah, Ankit for that, I think Telegram group will be the best because they don't have added access for session tracker. So I think if you have got the access, so just update in the Telegram group. Telegram group name is available in front of you. So you can just post there. Thanks. So I know that in our last sessions, we learn about APNs, data types and then data stored data sources and data store entities and other than that we learn about constants as well. Today we will learn about APNs expression rule. So first, what is expression rule? So if I know talking simple language, so expression rule is like a recipe. Okay, so in recipe, what we then really do we take some inputs and we process those inputs like we apply some logics, we apply some steps and then finally we will get an output. So that is a recipe. Okay, so in recipe or only we call it expression rule in APN. So in APN also we have an editor where we take some inputs and APN process those inputs on basis of some written expressions, that expression can have some logics, can have some calculations, can have some formulas and then it returns some results. Okay, so that is expression rule. Then second thing is like how we create expression rule. Okay, so as we discussed in our last sessions, so in APN we have some other components that we call as rules. Okay, so one of them is expression rule. Others we will discuss in our later sessions but both are like interfaces and other. Okay, so first you know that we will know that how we can create the expression rule. So for that also you have to go to new. Okay, and in that one you can, you have one expression rule. Okay, option here. Okay, so you have to click on this. Then you have these parameters. One is name, other is description and third one is save in. Okay, if you want to duplicate that existing expression rule, you can duplicate also. Okay, like it's a cloning process where you can, suppose there is already an existing expression rule and I just want to copy that and then I can do some changes whatever required. So that also we can do. Okay, with this functionality that duplicate existing expression rule. Okay, now first we will create no expression rule from scratch. Okay, so in name you can see that application initials are already there. Okay, so it's APN's naming convention approach where we take that application initials and we start and then we use the expression rules. We know that name with that know as you know the whatever the requirement. Suppose I am calculating some of two numbers. Okay, so I will give the name like calculate. Okay, so it is something like that. Now in description, description is like know that to understand the purpose of these expression rules. Okay, so I can give here numbers. Okay, I can give this. And one more thing, expression rule or any other rule cannot have same name. Okay, so suppose I am creating one expression rule with the name of AB and that's for calculate some. Okay, so in that case, I cannot create other expression rule or other interface or other, you know, rule with the same name. Okay, the name must be unique. Save in is like a folder. Okay, so as we discussed previously that this is rule. Okay, because you have seen an expression rule or interface, everything is rule. So we store this rule into rule type of folder. Right, so you can see here, we have some folder, I can filter out the folder. And we have some folders. So there are three types of folder that we know learn in our last sessions. Like first is rule folder that is this is rule folder. Other is process folder. Okay, and third is document folder. Okay, so because this is a rule, so we will store this in rule type of folder. So we have multiple rule type of folder, 80 interfaces, 80 expression rules, 80 all artifacts, or right, or AB rules and constants. So because this is an expression rule, so we will store this expression rule in this particular folder. Okay, I will just select this one, and it will populate. Okay, I will say that now I have I will click on this create button. If you want to change the folder, you can simply cross this one and you can change. Okay, and suppose if you know that folder in which you want to store is not there in the system, you can click on this button and you can create the new folder as well from here also. Okay, so I will know this folder is already there. So I won't create a new folder, but I will select this one. And then I will click on create button. You know that when whenever we were learning about groups or other data stores and all, so it was asking for security, but now I just click on create button and it did not ask me to set the security because expression rules and other rules all take the security from its parent folder. Okay, so because the folder in which we save this already have a security, right? So you can see it have security set up like at AB administrator one is administrator and AB user one is viewer. So that expression rule will also inherit the same security. Okay, if you want to check, you can go here. Okay, and you can check the security. So you can see this expression rule also have the same security set up. Okay, but if you want to give the different security, you have, you can just simply uncheck this one and you can update the security for this particular expression. Okay, in general, we do not update. We all know always take the security from its parent folder only, but in some cases if it is required, so we can perform this life. Okay, so we can simply uncheck this box and we can update the security of this expression rule. Okay, so like this, we can update the security, but by default it will take the security from its parent folder. Okay, so now you can see we have this expression editor that is open and it has three parts. First one is data editor, right? Second part we have test, you know, adhoc test and test cases. And third part is rule input. Okay, so rule inputs are nothing but parameter of this particular expression rule. Okay, parameters like variables. Okay, so we can create variables from this right hand side part. Okay, so from here I can create rule inputs or can create variables. Okay, in this first part I can write an expression or the code for the particular expression rule and in the middle part I can execute the test. Okay, so I can test this from this middle part. So first to create the rule input or the variable, I have to click on this plus sign, okay, in right top. So you can see we have, you know, one row here, so the first column is name, second is description, third is the type of this variable and fourth is checkbox. So it can be an array type of variable or a single type of variable. Okay, that we can create. And one more thing, you know, whatever inputs we are creating from here like the rule inputs that we are creating from here will be the global variable for this expression. Okay, so wherever we need, okay, that variable we can use in this whole editor. Okay, we now need to create different four different sections or different four different blocks. Okay, we can use in this whole expression rule this particular variable. So suppose I am creating one variable that is number A, I can say this is the variable name. Okay, and then I can put the description also here for this particular one. Like the description is I can say contains first number. Okay, I can apply, you know, select that it's data type. Okay, so it's data type, these are like, you know, some of the data type that we APN have like out of the box data type. First one is text, number, it is the same like other objects like, you know, that in custom data type also we selected some, you know, types data types. So same like that expression rule also have some data type. Okay, I can put a select text, I can select number integer, number decimal, date and time, date Boolean and other data type also. Okay, and even I can select the custom data type also here like you can see this is our custom data type, right? So I can simply select this one and I can put here. So I'm thinking there are some extra spaces I guess. Okay, so I will remove this extra space and you can see it is coming here. Okay, so we can take the input as custom data type also. Okay, so like this is variable in the number a, so I will select a number integer. Okay, I can select any other also. Now I will create one more variable that I can say number b, okay, something like that. Okay, in description also I can update something like contents tag field variable or number integer time. Okay, and I will select number. So now we have created two variables, same like that I can create more variables also. Suppose I need one more variable then I can create one more variable. Okay, so and if I want to remove I have to just click on cross and it will be removed. Okay, now suppose I want to add these two numbers. So first how expression rule works without any parameters or without any logic, like suppose I want to add these two numbers. Okay, so I will know this four plus nine that I want to add. So you can see here I just typed four and then plus sign and then nine. Okay, and then I click on test rule. Okay, and it executed this particular expression and return me the result and the result is 13. Okay, so it summed then these two numbers four and nine. Okay, so same like that I can perform other operations as well, calculations and other operations. Okay, and it will calculate and it will return the result. So, but these are like, you know, that hard coded values. Okay, suppose I want to take some inputs from user, I want to take some input from, you know, outside because we know the whatever functions we create or whatever expressions we create, we create to get the dynamic, you know, data, right. So to get that to access this particular variable in this input, okay, in this expression editor, I will write R i. Okay, R i is like rule input. Okay, so this is syntax to, you know, to get, you know, to access a particular rule input. Okay, I have to type like this only, like, you know, our last session we did about, you know, that constant and constant we call like c o n s. Okay, so same like that for rule input, we use R i. So, like R i bank sign, and then I will select number eight. Okay, it is, you know, suggesting automatically. So I can select number A or number B. So suppose now I'm selecting number A, and if I test the rule, it will return the value of this number A. Okay, so number A does not have any value, right. That's why it is returning null. You can see here it is returning null for number integer type, because then input type was number integer. That's why the output is also number integer. Okay, now if I want, if I put some value here, like, this is number A, and I can put the value here. So for number A, suppose I'm typing 10. Okay, now number A is values 10. Okay, so if I print the value of number A, I have to just click on test rule. And you can see here we have number age value is 10. Okay, now if I update the values like 10 to 11, okay, and click on test rule, it is updating the value. Okay, that you can see here. Suppose now suppose I want to add number A and number B. Okay, so I will write something like that, RI number A, same plus and then RI number B. Okay, and I can click on this test rule. Okay, and you can see here it is returning null. Why? Because the second variable's value is null, right. That's why it is returning null to us. Okay, now suppose I put here 5. So now number A value is 11 and number B value is 5. So the test rule, you know, output will be 16, 11 plus 5. Okay, so it returns an output. Okay, so and it returns the, you know, the time also, the execution time. Okay, that it took to execute this one particular, you know, expression. So it took, you know, that less than one millisecond. Okay, if you want to check the performance of this rule input, you have to just click on this view performance and it will give you the performance of this particular, like, you know, the expression rule that how, what expression is taking time, like, you know, how much, you know, and what is the, what is, you know, what artifact or what, I can say the logic is taking the time. Okay, and other than that, it returns the output of the, you know, type of the output also. Okay, that is number integer. So this is, you know, that expression rule. Okay, like this, we create the expression rule. In expression rule, this is a simple example, but in expression rule, we execute some complex logic, some simple logics. Okay, and it returning output. So, or not to run an expression, we have been provide some functions also, that trivial function that we can directly use. So like, you know, that I'm using plus here, but for we have one function also function also here, that is some function. Okay, to get the number of some of multiple numbers. Okay, so you can see here, the sum functions parameter are add in. So here you can, you can add like, I can put r i number a comma r i number b, it will return the same result like, you know, the plus sign was returning. If I change six, it will, you know, again, execute this one and it will return the other result. Okay, that is 17. Okay, so like this, we execute the expression rule. Okay, now we did about, we created the expression rule. Okay, naming convention also we know now, like in the name, the expressions rules is naming convention, follow this type of like, you know, that then initial of, you know, that application then underscored because it does not accept any blank space or any special character. So if I do not put this one, and if I just put like this, it will give the error. Okay, like name may not contain special characters or spaces. That's why we use underscore. Okay, and then camel casing. Okay, it can be lower camel case, it can be upper camel case as per the know that on whatever application you are working. So if in that application you are following lower camel case, you know, so all of the artifacts will come in lower camel case. If you know that artifacts are there are in particular application, if other artifacts are using upper camel case, then it will come in upper camel case. Okay, so like this, we use then as you know, we already know about expression rule description, that how we why we put the description in expression rule, that is to know the purpose of expression rule, that why we are creating the expression rule, like what is the use of this expression rule. Okay, and save in folder also, now we know that we store the expression rule into a rule type of folder. Right, because expression rule is also a rule and the security. Okay, so you know that we do not explicitly set the security by default. So APN automatically pick the security or unite the security from its parent folder, but if you want to update in any of the case, you can go and uncheck that checkbox. Okay, and update the security. And we created rule inputs as well. Okay, so rule inputs are like a global variable for a particular expression rule, that we created in this particular expression rule. So these are rule inputs that we call. Okay, then ad hoc test cases and test cases. Okay, so like that you know that we created, this is ad hoc test that we are doing. Okay, suppose I want to create some test cases. Okay, so I can just go here. Okay, and I can create. So suppose I'm creating one test case with like a number A and null. Okay, so if I want to add like this, I can simply put like three and null. Okay, and it is giving me the error. Right, that some parameter some cannot have null parameter. Okay, like if I put one, okay, then it will give me the reject. Okay, so if you are adding something, okay, so you have to handle this null exception as well. Okay, so and any other parameter, okay, cannot have null value. Some value must be there. Okay, whenever we are using the sound function. Okay, so this is one test case. So I have to just click on test create and if we create a test case, okay, that you can run at any time. This is for like, you know, the unit testing purpose or okay, or testing purpose. Like suppose there are multiple scenarios for this particular one. So I can create multiple test cases as well. Like if I want to add the minus numbers, okay, so suppose there is one number that is minus one and other number is two. Okay, so you can see here the output of this particular expression h1, okay, to one minus one plus two equals to one. Okay, and I click return create and it is creating another test case. Okay, that you can run all together. If any of the test case fail, then we have to fix the expression code. Okay, might be there are some issues or some scenario that it is not handling. Okay, so we execute the test case and we check if all the test cases are passed, then it is okay. If any of the test cases fail, then we have to fix that particular issue. Okay, so like this, we create the test cases. Now, you know that we execute one of the function that is some function, right, in this particular logic. So we perform some function and we added two numbers, okay, r i, number a and r i number b. So same like that apn provides us know that multiple functions. Okay, so for that apn have documentation. So you can go and check that documentation. Okay, so we will provide you the link of the apn functions, okay, in our telegram group. Okay, so you can check go there and you can check all of these functions. So you can see here we have multiple type of functions like array type of function, base conversion functions, connector functions, c m i s function, and custom fields, date and time type of function, evaluation, informational, interface component, logical looping, mathematical people, like scripting, smart services, statistical system, text, trigonometric function. Okay, so these are functions type, okay, data apn provide. But for a start, first we will know that learn about array type of function, okay, date and time of type of function in our start. Okay, then we will learn about logical functions, looping function, mathematical functions, people function, text functions. Okay, so in a start we will learn about these particular type of functions, then you know, in our next sessions we will learn other functions as well. Okay, so you have first you have to practice or you have to check this type of functions like these are array type of functions. So these array type of functions apply on array, okay, like multiple values. So you can see here, we have one function that is apn. Okay, in apn, we have one array existing array that had three values 10, 20 and 30. Okay, and now in the array I want to append one more value that is 99. Okay, so when I execute this, it will return this result. Okay, so it appended the particular value like 99 in the existing array. Okay, so like this you can test here. So suppose we have one variable that I can say array. Okay, or numbers work, I can say marks. Okay, so this is one of the array that I can say I can take it as integer. Okay, and because we will practice on array type of variables, so I will take it as array type. Okay, now in array type of, you know, I will apply that append function. Okay, so append functions first parameter is array. Right, here you can see you have no need to go learn or no remember everything, you can just type the function name and it will give you the description in this part. So you can just go and you can check like know that. So here I can put this array that is marks. Okay, and now I want to append one value that is 90. Okay, so it will append one value that is 90. So array marks value we can set from here, from adopt test. Okay, that's for testing purpose. So we take array in curly braces. Okay, in APL. So suppose there are array like five, three, seven, okay, and nine. Okay, so this is one of the five, three, seven, eight. So it have four integer type of values. Now I will click on test and it will return me five, three, seven, eight and 90. So it appended value 90. Okay, in this existing array marks array. Okay, so same like that. It have other functions as well, like one is like no join array. Okay, so join arrays to join multiple values of an array. So suppose I want to join this particular array using a pipe. Okay, or using other variable I can put. So suppose I'm joining this array using pipe. So it and I will click on this test tool. And now you can see all of the values are, you know, joining with the help of pipe and it is creating a single string. So five, five, three, five, seven, five, eight. Okay, like this. So this is other array type of array, array type of function. Same like we have other function, okay, that you can practice, like, suppose this is one of the array type of function that is where contents. Okay, so suppose I'm working on this where content function. So in where contents function you can see we have two parameter value and array. And what is the use of this where contents function you can read from here, like receive one or more values and return an array of index that indicates the position of the value within the array. For example, where contains two comma array, this is 123 return to because two is at second index, right. So same like this, suppose I want to search the position of seven in this particular array, so how I will do. So first parameter is value, right. So I'm searching seven in this particular array and array array marks. So now you can see it is returning three, because it is on third index, right. First, second, on first index five is there, on second index three is there, and on third index seven is there, okay. So it return third, because seventh is on third index. It is start the index from one. Now suppose I want to pass the value of a particular, you know, index. So suppose I want to pass the second and index value, okay, in this array. So how I will do, so like this is array marks and I can simply put two, okay, in this square bracket. So it will return me the second index value, that is three, you can see here, the output is three and on second index we have three, okay. There is other function also to get the same result. So this is one function, other function is index, okay. So you can see here in index function we have one parameter that is data, second is index and third is default, okay. So index first is data, that is array marks I can say, and I want to pass the value of second index, okay. And default means like, you know that if this particular one is null or it does not have any value then it will return, okay. I will use current. This is or null I can put or any other value that I want as default, okay. If this execution particular expression does not have any value. Now you can see here, on second, because we put the second index, that why it is returning three. If I put index three, then it will return value seven, because on third index we have seven. So I will click on this tab and you can see here we have the value seven that is on third index, okay. So like this, it will return the result, okay, or it will return the value for a particular index. So same like this, there are other array type of function on which we will practice, okay, like insert into a particular array or get, you know, the airdrop length of the particular array. Suppose I want to pass the length of this particular array, then also I can use, okay. So in length we have one variable only input variable that is array. So I put this one and now you can click on test and you can see the length of this array is four, because it has four values, right. So it has four values that is why it is written four. Suppose I am adding one new value, then it will return five, right. So you can see here we have value five. So same like that, we will, you know, we will practice on other array type of functions and other type of functions as well like first array, then data time, evaluation, logical functions, looping, looping functions, okay, on which, you know, we will practice. So same like, you know, the other languages where we have four loop and all, we have one function here that is a4 each, okay. So how it does work to support I am using a4 each, okay. So in a4 each we have two parameters, you can see one is items and another is expression, okay. So items like know that the variable on which basis we will repeat, okay, the particular logic. So suppose there is one variable that we have marks, so I will use the same variable here, okay. So it will execute, you know, the expressions that I will write here for each and every value of this variable, okay, r i marks. So suppose for now I am just patching the value, so we have two functions here, one is fv item, okay. So fv item is to know to get the particular index, you know, value of, you know, only particular index. So suppose it has five values, okay. So first it will run for first index, second time it will run for second index, third it will run for third index, same like that it will run for all five indexes, okay. So fv item return the value for a particular index, okay. So, you know, so suppose now if I am running this one, so first one is five, okay. So it is running for five, then first in the first iteration the value of fp item will be five, in second iteration it will be three, third iteration it will be seven, and you know, for fourth it will be eight and then nine, okay, for next iteration. So same like that we have other function as well, that is fv index, okay. So fv index return the index for a particular iteration. So like for first time when it is run, its value will be one, then two, then three, then four, and then five, okay. So same like that we have multiple functions, okay here, like fp item that is current arrays item, okay. Like in the fv index that items index of the current item, okay. Same like that items count we have, okay. So it returns the number of, you know, that items and then fv identifier, okay, that we use for data. So like you know that to identify a particular row, okay, in the array. Then fv is first that check if the particular number is first number or last number or second number or number. So if it is first number then it returns true, okay. fv is last, so it check if the particular value is last value on this array. So like for five each first will be true because it is the first value of this array. For nine each last will be true, okay. So now suppose if I want to execute this one it will return all the indexes, right. One, two, three, four, five because we are no using fv index. If I use fv item then it will run, you know, return all the values of that array. So you can see here five, three, seven, eight, nine. Now suppose in this expression I am doing the sum of fv item plus four, okay. So it will add four in each of the item, okay. So first five, four, plus four, three, plus four, seven, plus four, eight, plus four and nine, four, plus four like this. So if I click on 10, so you can see here the result. It is returning like, you know, fv item was five, right, for first time, then sum with four. So it's output is nine, like five plus four is nine, three plus four is seven, seven plus four is 11, eight plus four is 12, and nine plus four is 13 something like that, okay. It is returned. So it execute the expression for each and every value of this particular array, okay, whatever written in this expression, okay. So like this, we use the A4H, that is a looping function. So same like A4H, we have other functions also on which, you know, we will practice, okay. So I will share this sheet and you can do the practice on that, you know, all these functions. Same like we have mathematical functions, billing, ABS, E1, fact and all, okay, and other text type of functions we have, okay. So we have, you know, here you can see we have everything. We have a function name that required parameter, the sample expression, okay, and the output as well, okay. So you can easily practice on that. So these are APN functions, okay, on which we will do the practice. So now we, you know, know that how we use the APN functions in expression rule, right. Then there is one more function that we will practice here, that is if else, okay. If else is like, you know, that conditional statement. So suppose, and this if function have three parameters, okay. One is condition, other is value if true, value false. So if conditions output is true, then it will learn this, you know, statement if its output of this condition is false, then it will run this statement, the third statement, okay. So here I can put the condition. So suppose I am putting the condition like RI number equals to 7, okay. If equals to 7, then I will execute the first statement that I can say number is 7, and if it is false, then I will execute this statement, number is 5 or something like that, okay. So now you can see number is value is 11, that is not 7, right. So this condition will be false, okay, and it will run the third statement. So if you click on test 2, you can see here it is returning, you know, it executed the third statement and it is returning number is 6. Suppose its value is 7, okay. Now you can see here RI number equals to 7 and 7, right. So 7 equals to 7, that is true. So it will execute the second statement, okay, that is true part, and it will return number is 7, right. So it takes a condition. If condition true, then it run the second statement. If condition is false, then it run the third statement, okay. So this if have three parameters. You can use the nested if else also. So like, you know that suppose in this one, I won't apply one more if then I can apply, okay, here as well. And this if will also have the same conditions like if it is 7 and like I can put one more condition, like if number D equals to 9, okay, correct. So first it will check this condition, okay. First if condition, okay. If it is 7, then it will return the first result, right. So it is 7, that's why it is returning first result. Now if its value is not 7, then it will go come to this expression, right. And here it have one more if. So it will execute now the second statement, second if, right, and it will check if the number D equals to 9. That means number A is not equals to 7 because if number A equals to 7, then it will execute this one. But if number A value is not 7, then it will come to this one. So that means number A value is not equals to 7, but number D equals to 9, then it will return this statement because in that case it will be true, right. But if its value is not equals to 9, then it will run not correct. So suppose its value is 9A, right. So it will come to this false statement because its value is not equals to 7. Now number B equals to 9, that means this statement will be true, right. And it will come to this one. Now you can see if it returns, then it is returning number D is correct. Suppose number B equals to 9, but number A equals to 7, that then it won't come to second statement, right. And it will simply return number is 7 because in that case this first condition is already true, okay. And it will come to this statement. So like this if else works, okay. So we have this if statement, okay. A for each we already know now, right. That is a looping function in which we can process expressions, you know, multiple times. In expression rule, you can see we have some functions or no, that functionality on top. So first we will learn about points. So I can click here and I can search, okay, something. If you want to start something from this expression, you can click on the search box, okay, find and you can. There is one shortcut as well, control plus F, okay. So you can simply press control plus F from your keyboard and you can come to this, you know, dialogue box where you can type them. So suppose here I want to search correct, okay. Now you can see here it is, you know, it has two times in this particular expression. Now you can see it is highlighting that correct, okay. So like this, you can search any of the number or any of the text or any expression in this particular expression rule, okay. Now replace. So suppose now I already search the correct and I want to replace this with other value that also I can do, okay. So like it's correct, I can type, right, like this and I can replace one by one and all also, okay. So suppose I want to replace one by one, then I have to click the strip place. So first it will, you know, replace the first and then second, okay. If I want to replace all at one time, I can just click on replace and now you can see instead of correct, we have word right, okay. So this is like, you know, in not bad or some other tools we have cells and replace. So it is like that only. Now if you want to format the code, okay, we have one option here to format, okay. So you can see here it is formatting. Suppose I'm writing everything in single row, okay, like this, that is not a format, formatted version. Everything is in single row and something is like that. So it is not a formatted view, okay. So if you want to format, you have to just click and it will automatically format your code, okay. So then you can easily understand the code, okay. It will be easy for you to understand the code, right. If you comment out something, okay, we have one option here to comment out, okay. So suppose we have two statements here, like RA number A plus RA number B, okay, and other. So now I do not want to use this. I want to, I just want to comment. So I just, I can, I have to just select this one and I have to click on this comment and you can see it is commented, okay. So like this APN, in APN we can comment out the code and it won't execute this one now, okay. Whatever written in comment, APN does not exist, sorry, execute. So now you can see it won't execute that one and it will execute this code only because this is not a commented code, okay. So like this, we can use comment. So suppose if it, this wasn't a single row, suppose I want to comment out this whole code, okay. I have to select this whole and I can just click on this comment, okay. Now you can see here we have commented each row, okay. If you want to uncomment, you have to just select and click on this comment. So it will again uncomment this, okay. So like this we use the comment and comment we can use anywhere. So suppose if you want to add in middle of this expression, then also you can do, okay. So wherever you want, you can use the comment. Then new functions. So if you want to check the functions from here, you can directly check, okay. You can click here and it will return you the all the, all the functions that we checked just now in the documentation like array type of functions, the connector function, base can or the written time functions you can find, you know, all of the functions and you can select also from here. So like these all are array type of functions and you want to check the description, you have to just hover on that and you can see the description of this particular function. If you want to select this particular function, you have to just click, okay. And it will come here. So you can see here we have open function here, okay. So like this, you can go from here as well and the functions, okay. If you want to create the constant from here, you know that in our last session, we learned about how to create constant from new, okay, that we already know. If you want to create the constant directly from here, you can have to just click on this create constant and you can create, okay. Same like the way that we learned in our last session, but we have an option hit from here to create the constant, okay. So from here also, you can directly create the constant, okay. So this is the basic expression rule, like how we can create the variable, the global variable that we call as rule input here, okay. How we can use those rule input, how we can perform the calculations or some logics on basis of those rule inputs, okay. And how we can tell the performance of that particular expression, right. So and we learn about some of the functions, some of the functions are also there in APN. So we will learn about those functions as well. So I will, you know, that put that link of the particular APN, you know, that functions documentation in the telegram group. So you can go and you can check because everything is defined in there. You can check the function syntax, you can check the sample expression that you can use and then output also for that particular one. And other than output, it has a description also for each parameter, you know, that is required for a particular function. So you can go and check out that, okay. So this was about, you know, basic of expressions. In our next session, we will learn more about expression rules, okay, some complex logic, some more parameters, some more functionality of expression rules, okay, till that you can, you know, you can check, you know, you can check the recordings again or you can check the functions, okay. So whenever we will have like, you know, that our next session that is in tomorrow, so you will get, you know, more knowledge, okay, and it will be easy for you to understand. And anyone else, you know, that who wants community environment access can fill this details in this particular form, Google form, okay, and we will request for them. And you can request by yourself as well. And if you already got the instance, as we discussed in the start of this session, so you can put that in, you know, that our the code match towards Telegram channel, so we will know that you have access and you can do the practice, okay. If you have any query, you can ask in this session. And if you are, you know, watching the recording, so you can comment that your questions on your queries in there, know that YouTube comments, or you can put that, you know, questions or query in our Telegram group as well, okay, so you are open for everything. So with this, I want to hand over to Sanjay sir. Yeah, thank you. Thank you so much for delivering the session. And I hope like today's session was very much insightful. And you explained everything in detail. So like now, if anyone, like those who are following all the sessions, so just was the recording understand whatever is explained here, right. And I think you will be sharing that link in the Telegram group, right after the session, right? Yes. Okay, yeah, that will be helpful for folks. So please share a review or feedback about the bootcamp on LinkedIn or Telegram, right. And if you have any query or concern, so email ID is in front of you, or like Telegram is the best place, Telegram group where you can ask your queries and like all those queries will be answered. Okay, thank you so much for delivering the session and kit. So we have one more session tomorrow this week. So I think that will cover a few more concepts, right? Yeah. Okay, with this note, like we take your leave. Thank you, everyone, those who joined you. And those who are watching the recording, thank you for watching the content. And thank you on kit for delivering the content. Thanks, everyone.