 Hello everyone, I am Sanjay Gupta, I welcome you on Sanjay Gupta Tech School. So today we are going to learn collections and I will be explaining set in Apex. It is a collection data type and this is day 36 of this Salesforce learning bootcamp. So welcome to the new week. We have came so far and I hope you are enjoying learning Apex. So we started last week learning Apex and like we are in second week of Apex learning and soon next week we will be completing all the Apex related stuff. So welcome everyone once again in this session. So I am just waiting for more folks to join. So meanwhile let's just wait and I hope you are going through all the sessions and exercises. So I think more than 50 folks joined. So let me just go to next slides. So if you have started this bootcamp from this session only if you want to know about me. So through this slide you can just know who am I and what I have done so far, how many certifications I have done. So those who are learning from the beginning they are more familiar with me and I hope you are following all these virtual learning best practices. So I can see when there is no session still folks are following the exercise sheet session tracker project because it shows me how many people are online. So this makes me happy like because of this bootcamp lots of learners are learning Salesforce and upskilling their knowledge. So keep on following all these points and I can see after the session like there are total more than 600 700 views and in a couple of days it goes to more than 2000 3000 views. So I think lots of people are learning through this bootcamp. So I am happy like my efforts are going in the right direction and you are learning because you can see like this year there is recession lots of layoffs are going on. So this is the best year to prepare yourself for upcoming placements right. So soon this part this like layoff will end and you will get a chance to have lots of hiring right. So just prepare yourself and don't give up. So that's why I am just focusing on this slide every day consistency is the key right. So if you have good knowledge then whenever there will be mass hiring or opening. So you will be having enough advantage because you are already doing consistent practice. So consistency is the key. So please do regular practice whatever I explain in the session. No, there was no session on Friday. So last week I just conducted only four sessions Monday to Thursday. This week also I will be doing only four sessions because Friday Saturday Sunday I need some time to prepare more content. So that's why I am not doing sessions and this session I will be explaining topics. So today's session will be short because we already understood list. So I will be just focusing on the set and it will be quick. So if you have any question related to past sessions, so today's Q&A session will be like having more time so we can discuss and still if you have not followed the telegram group just join them and soon this week I will be announcing one big announcement for you. It is related to one more boot camp. So we are finalizing the dates. So I will just announce this week like what will be the curriculum, what will be the targeted date to start that boot camp. So like keep your eyes on telegram group so that you will get enough information. And this is our boot camp timeline so you can see how consistently we are in week 10. So I can remember like from January I started this boot camp and like week by week we are into week 10 and soon like after two, three months all the admin and development related stuff will be completed and you will be having all the exercises, recorded videos and project everything with you so that you can prepare yourself for jobs. So just follow all these social media platforms so that whenever I do an announcement for upcoming boot camp so you don't miss that, right? And that boot camp will be for non-sales force ecosystem folks as well. So I already told you like that boot camp is for cyber security, right? So cyber security is part of sales force as well as it is part of other ecosystems as well. Okay, so everywhere whenever wherever you use network so there is a need of cyber security so soon I will be announcing everything related to that. So whoever in your circle wants to know about cyber security the path and like this year is we are experiencing recession so if you want to become a freelancer so cyber security is a good field for that. So we will be giving you enough insight so my friend who is a expert in cyber security field so we both together will be conducting those sessions. So I will be host and he will be delivering all the sessions so I will be there because you have enough trust on me so I will be there throughout all the sessions as a host and he will be delivering the content. So we'll try to do those things as per your requirement. So as I promised you like there will be lots of upcoming courses or boot camps so this is the one and step by step I will be like arranging other boot camps as well. So on this channel everything will be happening free of cost you will get all the guidance so just share all the information with everybody so that they can follow and learn the things. So now let's discuss about the topic so in last session we discussed about list so list is very powerful or useful collection data type and now we need to discuss about set so first of all we need to know what set is right. So set is basically an unordered collection of elements so if we compare set with list so list is basically ordered collection of elements ordered means in list we have indexes so we know on a zero index which element will be available on one index which element will be available but in case of set you won't be knowing on which index what element will be available because set doesn't have any indexing right so in set you can just store the elements and it can be available at any location and it doesn't contain duplicate elements as well so set basically we use whenever we want to store unique elements right so set can contain collections that can be nested within one another and elements can be of any type so similarly like we created list of any data type it can be string it can be integer it can be account so similarly your set can be of any type right so if you want to know like how we can create a set in apex so these are some examples if you go through with these examples you will get to know how we can create set in apex right so you just need to write a set so set is a class so similar to list here we are using set so set is a class then we are using data type as string so what does it mean this set will be containing like collection of string and unique string we cannot store duplicate strings into this set right so name of the set is string set and then through new we are initializing it then next is set of ID and third one is set of integer so generally whenever you want to create any set so we prefer to create set of IDs because in case of IDs we want unique collection right so whenever you want to create a collection of IDs you will be preferring set for that so now let's do some hands on so that we can understand these methods like how we can use set so I'm jumping to developer org and here in developer console first in anonymous window I will be creating a set then I will be creating a set into the class so that you can know we can write code on both the places right so I hope you know we can we can just implement our code we can just implement our code on both the places anonymous window as well as class so the differences on anonymous window you can just go you can run your code immediately and it won't be saved permanently right so if you refresh or log in log out so maybe your code will be removed right so if you want to store your code permanently so instead of writing your code into anonymous window just go with the class so now here I'm going to create a set for you so I'm creating set of integer right so this way you will be able to create a set now if you want to store the values into this set so you can write int set then dot you can use add method through add method you can just add the value right so this way I just added three values and if you want to display these values whether they are available in set or not so you can write set contains equals to then plus int set right so this message which is available in single codes it will display as is and after plus we are having this int set instance or variable that will be displaying all the values 10 20 30 and I'm just going to store a duplicate as well so here I'm storing 22 times right now if I display it you will see 20 will be available only single time so I'm just checking this open log and clicking on execute so logs will be opened and inside log you will be able to see the result so here you can see set is containing 10 20 30 only three values are available 20 is available once so this is a proof like in set you cannot store duplicate elements so this is very important to understand right so whenever you are implementing any code in apex programming so you need to pick collection data type smartly so if you want to store duplicate values you will go with set with list if you want to store unique values only you will go with set right so now if I want to implement this code inside a class so here I'm just saving it and closing this and I'm going to create new class which is set demo and inside this class I'm going to create a method public static void demo and inside this method I'm pasting this code right so if you implement this way so your code will be available permanently it is saved and if you want to run this code so you can open your anonymous window and here you can write set demo dot demo so this way you can run your method okay so I hope now you all are familiar like how we can implement methods in a class in apex and how we can call and execute it right so this way I hope you understood how we can implement add a method now if we go further so in previous session I just skipped this like how to add data from set to list or list suit to set right so now I'm going to show you so we have add all so through this add all we can add a list into set or we can add a set into set so both both is possible right so what I am going to do here I am going to create a list so list of integer make sure data type is same make sure data type is same because if you have different data type then addition doesn't make any sense so here we have set then then I am just creating a list so I'm just entering 50 and entering one more value 60 right now I'm writing in set dot add all and here I am writing in the list okay so list I'm adding into set so set will be having 10 20 30 50 and 60 right so Sunita is asking how the data will be stored incremental or decremental so I didn't get your question can you please elaborate it more meanwhile I'm just going to execute it so that you can see the results so we are just showing in set so here you can see in set is containing 10 20 30 50 and 60 so whatever is available in set sorry whatever is available into list that is added into set as well and similarly if you want to add two sets so one set you can write here and another set you can just pass here as a parameter okay so I hope this way you understood how we can merge two sets or one list and one set yes one sheet we cannot define order in the set it is random right so here it is available in the order we are adding but still you cannot say first element is available on 0th index because in set indexing is not available right so this this thing you need to remember okay so now I'm going to show you clear clone so first let's see clear so clear will be removing all the elements so if I copy and paste it here and before that if I write in set dot clear so what will happen whatever value will be available into this in set that will be cleaned so now I'm going to run it so you will see two results now so line number 17 is showing you five elements but line number 19 is blank right why so because line number 17 is having elements after that in line number 18 we applied clear and nothing will be available into the set no major we cannot use index of method in set because in set indexing is not available right now I'm showing you clone so for cloning we need to create one more set so I'm creating one more set so I just created a set named as cloned set now here I'm using it so what will happen int set will be cloned and result will be stored in the cloned set and you can see clone set is having nothing so if clone set shows the value which is available in the int set so it means all the values which are available in the int set is available with clone set so Navish I think we don't have delete here so you will be using clean sorry you will be using clear to clean the data okay someone is asking at all again so I will be explaining first I'm going to run this code so that I can show you the working of clone so here you can see line number 18 and line number 20 both are showing same results it means what happened line number 18 is having int set we cloned int set and stored it into clone set variable and that is showing the same values now if I show you add all so add all is very simple here we created a set here we created a list so what we are doing we are just adding whatever values are available in the list into the set so list is having 50 and 60 so 50 and 60 both will be added into this set so you can say add all means merge merge two collection variables yes we can we can remove elements from set so here you will see we have this remove method so we will be discussing about this so above I already explained this merging like merging we are doing through add all so what add all is doing add all is adding all the elements which are available into list with set so you will be creating set and list separately and through this add all you can merge so whichever is available at left hand side that will be containing merged data and whichever you are passing as a parameter its value will be added into this set okay so I hope till here like till clear and clone you understood now we have contains so contains will check whether particular element is available or not so I'm writing system dot debug so this way I am just writing the statement so I am having system dot debug which is showing element is available this message will be displayed on the out in the output and here we are using contains method so contains method will check whether this value is available in the set or not if it is available it will show true otherwise false so I just saved this code and I am executing it if I click on debug only so here you can see it is showing true because 30 is available in the set right so this way you can just pass a value which is not available like if I pass 100 and if I execute it so you will see false here you can see element is available equals to false because 100 is not available in the set then contains all so you can just check two sets or one set and one list right so how we can use that so I am just copying and pasting it so we are going to compare int set so method is contains all and here I am passing the list right so int set contains all int list so now if I execute this code let's see what will be the result so here you can see it is showing true why true because whatever values are available into this int list all those values are available in this set also right so this way you can compare and accordingly you will see the results so Praveen is asking can we add set in list so answer will be yes so how you can do you can just write int list dot add all and int set right so this way you can just this way you can add set into list so this you can try and practice yourself so here what you need to do you need to display value of int list in the result okay so I hope this answers your question now we have equals method so equals basically compare two sets whether they are having exact same values or not so for this we have clone set and int set so I am going to compare them so here I am writing system dot debug so here I am writing int set dot equals then cloned set so this way what will happen these two sets will be compared int set and cloned set so if both are having same values then result will be true otherwise false so I am going to run this code okay I didn't save so it didn't execute it so I am just saving it executing it again always remember whenever you modify the code you save so here you can see equal is true why so because int set and clone set both are having same values because we just cloned int set into clone set right so next one question is there is any possible to replace the old value to new value because if we done any mistake in old value like spelling mistake yes so but but if you want to replace old value with new value so both will be having different values so you won't be able to replace that right so Nagarjuna this won't be possible so Praveen is saying please debug the set value after adding list into the set no so here you can see I am adding list into the set and here I am showing set so it is showing the values in my case so next question is what is the difference between contains all and equals so contains all basically checks whether this parameter values are available into set or not whereas equals check whether two sets are having equal like same values or not so contains basically checks subset whereas equals checks equal values should be available in the sets so major we can check only two sets you cannot compare three sets so here as a parameter you can just pass one parameter and if you want to see whether there is any other method available other method available or not so you can just search for set class and here you will find all the methods right so you can see whether that method is available or not so I don't think we can pass more than one parameter so here we have this equals so we can pass only one set here right so I am just sharing this link with you so that you can understand it yes none we answer to your question will be yes okay so let's understand a few more methods next we have is empty so is empty is very easy what you need to do so just write system dot debug and here you can write in set dot is empty so it will return true or false if it is empty it will return true if it is not empty then it will be returning false so just implement it okay I didn't save so I'm just closing and saving the code first then I will be executing it again and if you have a system so you can just practice with me as well otherwise you can do it later on so here you can see empty is false why it is false because int set is not empty right so this way if you want to check the size so in that case you can use this is empty so later on I will be demonstrating you how we can use is empty to check the size of the set so if you are comparing and if you are having different values so result will be false jyoti so if you compare two sets and true equals method and if they are having different values so your result will be false okay then we have remove so remove is very easy so what you can do in set dot remove and let's say 20 and then I'm going to show it okay so I just want to remove 20 from this set and after removing I'm going to show the values of set as well so I'm going to save this so here I just saved the code now I'm going to execute it so once I execute this so if I click on debug only so here you can see the results 20 is not available into this set so earlier it was available but after remove 20 is gone and to remove the element you don't need to specify any index nothing just pass the value it will be removed from the set so asset is asking difference between equals and double equals to so equals is a method of set class and double equals to is operator so generally we prefer equals method over double equals to but both works similar yes first I will be explaining so here you can see I have two examples where I will show you how we can create set where we can collect IDs of particular as object or records so I will be demonstrating that so have patience so we have these four five methods as well so let me explain these and then we'll be discussing about those examples so after explaining remove next we have remove all right so remove all basically remove so remove all is having two versions so if you pass a list so whatever values are available into this list if those values are available into set so all those values will be removed then remove all set of elements so it means if you want to remove particular values from one set with the help of another set so you can use this remove all right so these are two methods so now I am going to show you this with the help of example okay so what I am going to do here I am going to add one value as 30 right 20 we already removed now I am going to use this remove all so int set dot remove all and here I am passing int list and then I am going to show this int set right so at this point int set will be having 10 30 then 50 and 60 right so at this point this set is having 10 30 50 and 64 values okay now what we need to do we need to apply remove all so whatever is available into this int list if those values are available into this int set so those will be removed and the remaining values will be available in the int set so I am just saving it saving it and executing the code so you can see at line number 35 the debug statement is showing only 10 why 10 because this set is having 10 30 50 and 60 and list is having 50 60 and 30 so 50 60 and 30 is removed and only 10 is left in the set right so this way if you want to if you want to remove mass values from a set so here you can pass a list and you can do this through list through you can do this through set as well so here instead of passing list you can pass a set as well right so if you are passing a set and if those values which are available in this in that set the same values are available into set as well so those values will be removed okay then we have retain all so retain all means like if if I write retain all here so what will happen whatever values are available into this list only those will be retained in the set other values will be removed so what will be the result of this statement now so 10 will be removed and 30 50 and 60 will be retained so I'm just saving it and executing it again so you will see different result now so here you can see 10 is removed and 30 50 and 60 is retained in the set right so this way these methods are working and last one is size so through size you can just display size of the set so you can write it like this way so if you write this and execute so it will display the size of the set basis on the number of values so Jana is asking how dynamically we will be knowing which value we need to remove so this this will depend on your business logic you need to know which value you want to remove whatever value you pass for removal that will be removed automatically so Jyoti in real time generally we don't use set for string int or primitive data type we use set for ids so if you see the next two examples are related to those so I will be explaining them so first time answering all the questions then I will explain them as well so Shivani is asking set do not have indexing so how traversing takes place in set so we cannot traverse a set you can just search values randomly not sequentially so how to retrieve particular value from the set so there is no method for that because we don't have any indexing so generally why we prefer set so that we can create a unique collection and through contains you can just search whether particular value is available or not okay indexing is not available so you cannot retrieve any value basis on the index okay Deepak is asking I'm having x integer element in a list and y integer element in a set so how my contains all is showing true so if different values are there if any like you have x list and y set if both are having totally different values so result of contains all will be false so someone is asking nested list so I will explain that so if you want to create nested list so you will be creating it like this right so list of list of accounts so if you have more than one okay so there is one more question which is very good so here we have one question that says whenever we merge list with set and list having a duplicate elements that what happens so if you are adding a list into set and if your list is having duplicate values so while adding that list into set duplicates will be erased automatically okay so if you add a list which is having duplicates or if you add a list into set and after adding there is probability of duplicates so those duplicates will be removed automatically you won't be having duplicates in the set in any of the cases okay so I hope till here everything is cleared and like in between this stream disconnected due to internet connection now I hope everybody is able to listen me properly just confirm whether you are able to listen me properly or not and I hope everybody's doubt is cleared now and we can just jump on these two examples so that we can apply a set on s objects as well okay so just just focus on the first example first example says create a set of account id's and display id's using system dot debug so jana I didn't explain list of list in detail and I don't want to explain it right now because it is difficult to understand so let's have some more hands-on with the basics of apex and later on when you will be able to understand the complex examples then I will be able to explain list nested list right so right now just focus on the first problem we need to create set of account id's okay so I am going to create one method here so my method name is demo s object with set and here I am creating set of id naming it as acc id's new set of id right then I am creating a list of account as well okay now I am going to query some account records okay so in last session I told you this is simply SOQL we are just querying some data from account s object so we are querying five records and we are querying id and name field all the data that we are querying will be stored into this acc list right now through this acc list I just need to collect all the id's so there is one way so what you can do you can apply a loop so loop is basically for repetition if you attended my flow sessions so in flow also we discussed about loop loop means repetition so here I am going to apply a repetition on acc list so what I am going to do I am going to add id's like this so just understand this code properly so here we are implementing a loop which is iterating on acc list so acc list is basically having lots of account records one by one those account record will go to this acc one by one account record from this acc list will go to this acc variable right it is of type account because we are processing account list so this is the syntax here we write the collection variable and one by one data goes to this variable and through this variable we are adding the id of particular account into this set so this loop will repeat five times because acc list will be having five account records and all those five account id's will be stored into this set now after completion of loop I can write system dot debug set contains equals to acc id's okay so this way what I did I just queried some data from the s object stored that into list and then through that list I am just trying to create a set and that set is basically containing all the id's only now I am going to run it so here you can see I am just running this method so I am just clicking on execute and it is showing some error because I didn't save this code so now I am just saving this code and executing it again so in debug only you will see set is containing five account id's right so here you can see one two three four five five account id's are available right so this way with the help of list you will be able to create a set now let's try one more way like what happens if we cut it here we write it here and if I directly pass acc list so I am also trying this okay now it won't work right so this this is not working so you can just ignore it right so this way you can convert your list into set and set will be having all the account id's right so now we have one more requirement that is to create a set of position record id's and display id using system dot debug so it is also same so here what we can do we can create one more so let's create one more method so I am going to demo custom object with set so just copying all the statements now here it will be position id's then here list of position underscore underscore c then position list then here we are going to change the type then it will be position list select id name from position limit five then here position list here it will be position and rescue underscore c then pos then here pos dot id and it will be pos id's then it also will be pos id so this way you just need to modify your code yeah so shashi is asking name didn't come into debug because we didn't add name into this set set is just containing id so right now we are not using name so you can just remove it from here if you are not using name you can just remove because we are just creating collection of id's into the set so you can just ignore other fields right so this way it is created now if you want to run it so just copy this method paste it here and execute so you can just debug and here you can see five position id's are available okay prashant is asking show id name set of string didn't get your question so prashant can you just elaborate more are you trying to say create a set where we can store name of accounts is it so jana here five random records are fetching we cannot say which five records we are fetching so automatically any random five records will be fetched okay so this way i hope you understood these two examples and today i didn't get enough time to update this exercise sheet so after this session i will be updating so like i will be giving you an assignment so that you can practice all the methods and these two examples so similar to this list you just need to practice all the methods of set and these two examples which i demonstrated okay now if you have any question you can ask okay prashant is saying yes so i'm going to explain that as well so what i'm going to do here i'm creating a set of string account names equals to set of string this way you can create and here you can write accnames.add and acc.name so this way you can add and here you can write name so this way id will be stored into different set and account names will be stored into different set and if you want to display okay so here you can just write accnames so this way you can have two different sets and in two different sets you can have two different values okay so if you have any more questions so you can ask i will answer that question and if you understood everything so this is end for today's session and tomorrow we will be discussing about map no shriekar we cannot get id's along with name so that we can do with the help of map so praveen who id what id these are object specific so if you work if you are working on task or event objects so there you will find who id or what id so these are basically related to the users so these are not available with all the objects yes prashant if you want to use list of strings so that is also possible you can use yes jana in real time also we will be using those in same way so soon you will see how we will be implementing these methods with real life examples so just follow all the session you will get to know everything yes praveen we will discuss about wrapper classes for sure and pratik is asking how you manage time so like if you want to manage your time so it depends on your willpower so like i do lots of things apart from job so i i do job i do freelancing i am doing this bootcamp i am planning for other bootcamps as well so this is my passion so that's why i'm doing so if you have passion so you can manage your time appropriately nothing to worry i hope this answers your question and initially i told you like there there are certain reasons i started this bootcamp and will be doing more bootcamps so i'm i'm planning to answer that question as well so maybe this week or next week i will create a linkedin post where i will be answering that question and will share that with you in the telegram group so that you can go through i'm just trying to do a change in education system because everywhere education has become a business so i'm just trying to break that change so that like people who are very who are willing to learn so they can just have a free platform there they can have quality knowledge so that's why yes amya if you go for java videos definitely your concepts will be clear deeply so anvitha right now i cannot explain sales and service cloud because they have huge difference and if i say in one word so it won't be enough you can just understand sales cloud basically focuses on the business who just sales the product and service cloud basically works for the company who provide support so that's what i can just say but as per functionality both are different thank you punkach just follow all the sessions and if you need session tracker so that session tracker is available in the description of this video thank you sanjith thank you pratik thank you shimani thank you fani thank you hema so so like soon cyber security boot camps will be starting and that boot camp we will be doing in the modules so first of all i will introduce the trainer who is a consultant so that will be uh interacting with you so that we can have your insights and accordingly we will be starting delivering the modules live yes jyothi resume building personality development how to do how to talk in interview i'm planning that boot camp as well thank you jt so venu if you if you want to learn coding properly so that comes through practice only if you're doing regular practice then only you will be able to understand and don't memorize the code codes are available on internet just understand the logic behind it mayur i don't have any coupon so funny this equals to an equals to colon i will be explaining why we will be discussing more about s o q l so there will be separate session where i will discuss about equals to an equals to colon so shivam right now fresher jobs are very less because of recession so don't ask this question again and again just focus on your preparation if you are a fresher then learn lots and lots of skills whenever there will be lots of jobs then you will be able to have enough chances so learn admin learn development learn l w c learn sales cloud service cloud industry clouds right so like set a target like this year you will be learning lots of things and whenever job market will be high you will be getting enough chances to apply as a fresher so gayatri we cannot assign list directly to set that we can do with map if you want to assign list directly to map that is possible but in list it is not possible that's why we are using a loop so abhinav is asking how we can remember the code you cannot remember the code you can understand the code and like you can just have inspiration from me how passionately i am teaching you so you can have same passion and you can do practice so that that will come from yours your inner sense if i do motivation that won't work you need to motivate yourself right so i i never watch any motivational videos i just motivate myself and i am doing things so if you motivate yourself you can do anything and in one day you won't be learning it is a lifelong learning process right so have patience and then start practicing if you do something consistently because i just added one slide consistency so just have consistency in your life and you will be able to do things so aparna no no such coding is required we will be doing everything from the beginning so no need to worry so punkers if you want to become a good coder then just practice and help help your friends colleagues explaining things if you teach you you becomes better right so manjunath i don't have any free voucher so won't be able to share so praveen it is optional to have certification if you have you will be like preferred candidate and i know its cost is high so if you have enough knowledge then you can just compete other folks who are having certification so knowledge is must even after having certification your knowledge will be tested thank you fani baskar thank you bharti jana i won't be covering visual force whatever i will be covering is listed in the session tracker you can go through that thank you pranay so just just wanted to know your thoughts about cyber security bootcamp so are you really excited will you will you pass this message to your groups like your juniors colleagues friends family members like whoever whoever is related to technical or non-technical background if they if they want to do some freelancing work so are you excited to know about cyber security can you can you tell me in the chat who who are online so just just show me your interest in cyber security because we we are doing lots of efforts planning to that bootcamp similar to sales force so will will you help me to pass the word with other folks as well because i can see telegram channel is growing day by day more than 1500 members joined i just started the telegram channel or group in january itself and in three months i'm able to have more than 1500 people there so i just want to know your enthusiasm so no no jana cyber security is like is a job role in sales force so if for that you you need to know admin development for sure and it is it is something different so i can see very less people are interested so i hope like this group is related to sales force but if you are not interested and any of your friend if they want to learn things freely so ask them to join and soon maybe tomorrow or day after tomorrow i will be creating a separate group i will be creating a separate group for cyber security and i will be sharing that link with you every day so that you can share or pass on that group with everybody so that all the details related to that bootcamp i will be sharing yes that cyber security is related to sales force as well as it is related to other technologies as well because you know nowadays lots of frauds are happening and you you should know how to how we can like how we can make awareness so we will be doing those sessions as well and it will be covering penetration testing it will be covering bug bounty like how you can search the bugs so lots of things are there so soon i will be sharing the enough information with you okay so i think a few folks are excited and they will share the information as well so i will be sharing other details with you soon so if you have any more questions then just ask otherwise i'm going to end this session and i can see i am having lots of subscribers growing on my channel so this is because of your support so thank you so much for that and help others learn sales force and share this channel because soon you will be having sales cloud service cloud omni studio related sessions as well cyber security we are starting soon and i'm just working with devops and data science folks as well so those bootcamps will be there so i think by the end of this year you will be having lots of content freely available on this channel yeah so ajay this this year is the recession year so whenever there is a recession so don't give up just learn new things so whenever the session will end and there will be lots of hiring lots of like freshers and experience folks will be required with many companies so if you are having enough knowledge for different different areas so your CV will be strong and you will be able to explain more things to the interviewer so your chances will be high to be selected so umka i don't have any book so i think whatever we are discussing and trailhead because i don't know in in this digital digital world of anybody going through books so i don't have any book i just learned everything online so i think you should go with that way and you can search for books but i would prefer digital mediums because everything is available there but you can surely search for a book if you see it is enough and having good knowledge so you can go with that as well okay guys so thank you so much for joining today's session and tomorrow we will be discussing about map and that session will be very interesting and very important as well so do join that session and thank you so much once again see you tomorrow