 Good day. This is the fourth session on the Zambian Tags Benefit Microsimulation Model, MicroZamard. And in this session, we're going to be looking at making some policy changes to the model. So, we'll firstly look at how to add a new system to MicroZamard. We'll then go on to look at how to implement a change to an existing policy in the model. And lastly, we'll look at how to add a new policy to MicroZamard. So, why might we want to add a new system? Well, we might want to add a new system if we're including a new policy here. So, for example, when we implement out 2016 and 2017 policy years, we will need to add two new systems in order to do this. We also might want to add a new system if we're implementing a reform scenario. So, as we'll see in this session, we will have such an example. And in this instance, we will need to add a new system. And it is always good modeling practice to add a new system rather than to amend policies in an existing system as this ensures that the parameters of the existing policy are preserved as a record for that specific time point. So, as I mentioned in this session, we're actually going to be making a reform, implementing a reform scenario rather. And we're going to have to add a new system in order to do this. And this is just so that the parameters of the existing policy are preserved as a record for that specific time point. So, when we make changes to the model, we don't lose any of the existing parameters. So, a new system is always initially a copy of an existing system. And thus, we can use the already implemented system as a template. And this will be our base system. In the first instance, the new system is an exact copy of the base system, except for the name of the output file. And it is also configured to run with the same data set as the base system. And we have two ways of adding a new policy. So, again, what I'm going to do is go through the PowerPoint first and then move over to the live version of the model to demonstrate these two ways of adding a new system. So, the first way of adding a new system is to go to our country tools tab and use the add systems button and then select a base system as indicated on the PowerPoint. Or we could right click on the head of the existing system, in this case ZM underscore 2015, and simply choose the first option which says copy paste. So, after using one of these two new methods, one of these two methods to add a new system, we then choose a name for the new system. And in our case, we're going to name our new system ZM underscore 2015 underscore reform underscore one. So, now I'll move over to the model to demonstrate how to add a new system. So, the first way of adding a new system is to go to our country tools tab, click on that and go to add system. It'll ask the select base system dialog box will pop up and it'll ask us to select a base system. We can choose our 2015 system as our base and click okay. And then we can name it ZM underscore 2015 underscore reform underscore one. And we can click on okay. And there we have our new system added to our main workspace. And as I mentioned previously, if we open up any one of our policies, for example, our constants policy, which is number four on the spine, we can see that our reform one system, so our new system, is an exact copy of our base system, which is 2015. If we look at the different values in our constants policy, we see that this is an exact copy. So, that's the first way of adding a new system. And similarly, we could also delete this system using the same country tools tab. And I'm going to do it for this demonstration because I'll then show you how to use the other method of adding a new system. So, if we wanted to delete the system, again, we'd go to country tools, delete system. Again, a dialog box will pop up, asking us to select the system we want to delete. We can delete our reform system. If we click on okay, it'll ask us if we're sure we want to delete the system. We can say yes. And our system has been deleted. So, that's the first way of adding a new system or similarly deleting a new system using the country tools tab. The other way of adding a new system is to right click on the base system on the head of the system that you want is your base system. In this case, ZM underscore 2015. Go to the first option, which says copy slash base system. If we click on that, the same dialog box as previously shown will pop up. And again, we can name it ZM underscore 2015 underscore reform underscore one. If we click on okay, again, our new system has been added to our main workspace. And again, if we wanted to look at open up one, any policy, we can see that again, our new system is an exact copy of our base system, which is in this case 2015. And then again, if you wanted to delete the system using the same method, you would right click on the head of the system and go to the third option, which is delete system. But for this purpose, I won't be deleting the system as we will be using it in our example later on. So, that's, those are the two ways of adding a new system. So, as we've just seen in our live version of the model, the new system has been added to the main workspace. And the system has also, has also been added to lists and country tools and the systems and databases. And we can quickly go and look at this. If we go to country tools, which we're already on, if we go to systems, we can see that our new system has been added to the system configuration. If we go to databases, again, we can see that our new system has been added over here. So, there are a number of policy changes that one could make to the model. We could either make a change in existing policy. And we could do a simple change, such as amending a means test threshold or cash transfer amount. We could do a more moderately difficult policy change, such as removing a means test or adding an extra amount for meeting a specific criteria. Or we could do a complex policy change, such as varying the means test and amount by a certain characteristic. The other kind of policy change that we could make is adding a new policy altogether. And we could do this by adding a new social benefit, for example. So, now we're going to look at an example of changing an existing policy. And it'll be a fairly simple example using the turnover tax policy. So, the policy TTN underscore ZM specifies the conditions under which individuals are liable to pay turnover tax. So, the current rules state that individuals with a turnover of less than 800,000 quattro per year are required to pay 3% of their total turnover in tax. So, those are current rules. So, what we're going to do and the policy change that we're going to be making is we're going to increase the rate of turnover tax from 3% to 5% and also increase the threshold for the tax from 800,000 to 1 million Zambian quattro per year. So, this is how our policy currently looks, our turnover tax policy. We see that we have our first parameter, which is our comp underscore count, which is our eligibility, which simply states that YTN, which is income from turnover, has to be greater than zero. And it has to be less than the upper limit for turnover tax, which we know is 800,000. So, once an individual has been identified who has to pay turnover tax, they then pay 3% on their income from turnover. So, if we multiply YTN by 0.03, that is the amount that individuals have to pay in turnover tax. We then have our output variable, which is generated, which is TTN underscore S, and all of this is done at the level of the individual. So, if you'll notice here, we haven't placed our turnover tax rate in our constants policy. Instead, we've put it in the actual turnover tax policy itself. Now, it isn't incorrect to do this, but it's always good modeling practice to put the any rates and amounts in our constants policy, as opposed to in the actual policy. So, there we have our upper limit for turnover tax, which is 800,000 Zambian Kutcher per year. So, we're going to look at the steps of how to make a change to an existing policy on the PowerPoint, and then we'll go over to the live version of the model and then go through these same steps again. So, the first step is to copy the latest system, which is our ZM underscore 2015 system, and name it ZM underscore 2015 underscore reform underscore one. And if you'll remember, we've already done that when we added our new system. Then, we're going to introduce a new upper limit and rate as constants. If you'll remember, the 3% wasn't a constant, but the 800,000 upper limit was. So, in this case, we're going to introduce both of these amounts and rates as constants. And how we're going to do this is we're going to go to our const def underscore ZM policy, go to our def const function and right click and add two new placeholders. We will then rename these placeholders to dollar TTN underscore upper underscore limit underscore reform underscore one for the new upper limit. And then, similarly, for our new tax rate, we will name this dollar underscore TTN underscore rate underscore reform underscore one. And once we've renamed our placeholders, we will then place the values in the ZM underscore 2015 underscore reform underscore one system. As 1 million quadra per year, so the hash Y indicates that it's per year for the new upper limit and 5% for the new rate. So, we can go to our model and implement these first three steps because we've already added our new system. So, we've added our new system and named it reform underscore one. So, our second step is to go to our constant's policy, open that up, go to our def const function, right click on that, go to show add parameter form, click on placeholder because that's what we want to add. And then, this is bullshit. So, we'll open our def const function, right click on that, go to show add parameter form, click on that, go to placeholder, if we take that and in the count column, we can put two because we're adding two new placeholders. If we then click on add and then close this add parameter form and go back to our def const function, if we scroll down, we'll see that two new placeholders have been added. So, if we go back to our steps, we said that we would add two new placeholders, we've done that. Then, we said that we would rename these placeholders to dollar TTN underscore upper underscore limit underscore reform one for our new upper limit and TTN underscore rate underscore reform underscore one for our new tax rate. So, we can go back and do that. So, most importantly, all our constants, whether they are rates or amounts have to begin with the dollar symbol as per Euromod naming convention. So, our new upper limit for our reform scenario will now be called dollar TTN underscore upper underscore limit underscore reform underscore one. You can just click on enter and that's been added and then we will rename our new rate and call it as if you remember that we didn't add this initially to our constants policy, but we're going to add it now. So, most importantly, to start off with a dollar TTN underscore rate underscore reform underscore one. If we can click on enter and now that's been added, we can just make this a bit bigger so we can see it. So, we've now added our two new constants and renamed them. So, our last step now is to place the values most importantly in the ZM underscore 2015 underscore reform underscore one system as 1 million quatcha per year for the new upper limit and 5% for the new rate respectively. So, we can go back and do that. So, our new rate. So, most importantly, we have to add it to our reform one system. Otherwise, we'll be changing the values of our base system. So, if we click on that, remove the NA and add one million. So, it has to be a hash Y for million. And we can just leave a comment to ourself to remind us what this is and why we did this. So, this is our new upper limit for turnover tax reform. And similarly, we'll now add our new rate, which is 5% and we can just put 0.05 for that. And then again, this is our new rate for turnover tax for reform one. And really, the comments are just for you to remember what you did so you can put any kind of comment to yourself. So, those are the first few steps of making a change to an existing policy. So, now I'll go back to the PowerPoint. So, we've been through the step already where we've right click on our def const function. And so, you'll see in the PowerPoint that we did this under our existing upper limit for turnover tax. But it really doesn't matter where in the constants policy, your reform or your change to your policy goes. So, we saw this dialog box where we added our two new place holders. And then we had to rename them. And we renamed them TTN underscore upper underscore limit underscore reform one and then TTN underscore rate underscore reform underscore one. And most importantly, all of these have to start off with the dollar symbol. So, after renaming them, we then place the values in the reform one system. So, now our final step is to go to our actual turnover tax policy, which is number eight on the spine and then make the change to our policy. So, I'll do that now. So, we can close this and now go to our TTN underscore ZM, open that up. So, if we go to our reform one system, you'll see that it's still an exact copy of our 2015 system. But now we've changed the amount and we've called it something else and we've also changed the rate. We've put it in the constants and we've called it something else. So, we need to amend these two parameters. So, the first parameter starts off by saying income from turnover has to be greater than zero. In other words, someone has to be earning an income from turnover or earning turnover or making a turnover rather. And the second half of the condition states that the income from turnover has to be less than the upper limit. And if you hover on this part of the condition, you can see that the upper limit is specified, still specified as 800,000 per year. But we know that this has changed. So, we're going to click on this and then delete everything up to that point. So, we could have written this whole policy from scratch, but we could also just simply replace the upper limit with the new upper limit for our reform. So, we know that we've placed it in the constants. And in order for the model to pick it up, we have to start off with our dollar symbol. And then as soon as you do that, you'll see that it'll give you a list of amounts and rates and things that it thinks you're looking for. So, remember we renamed it TTN underscore upper underscore limit underscore reform one. So, there it is. So, if we click on that, that's our new upper limit. And there it is. So, our next part of the policy that we must change of the turnover tax policy that we must change is our comp underscore per tax unit, which is currently taking turnover, income from turnover and multiplying it by 0.03 in order to get this output variable TTN underscore S. But we know that we've changed this amount and we've also put that in our constants. So, we can delete the 0.03. We can keep the multiplication because we still want to multiply income from turnover. But again, if we start off with our dollar symbol, again, it'll give us a list of things that it thinks we're looking for. And if you remember that we renamed our rate TTN underscore rate underscore reform underscore one, if we click on that. So, that now states that individuals must have turnover and that's less than the upper limit, which is one million. And this turnover is in turn multiplied by 0.05. If you see, again, if you hover over this condition, you see that the new rate for reform one is 0.05. And so, those are the first two parameters. And then the output variable, which is generated is TTN underscore S and all of this is done at the level of the individual. So, now I'll go back to the PowerPoint. So, as you can see, those are the changes that we've just implemented. Now the new turnover tax policy states that individuals must earn a turnover, so their income from turnover must be greater than zero. And the income from turnover has to be less than the new upper limit for reform one, which is one million quattro per year. And then we take this income from turnover and multiply it by the new rate for reform one, which is 5% or 0.05. Then the output variable which is generated is TTN underscore S and all of this is done at the level of the individual. So, that's how we make a change in existing policy. So, now we're going to look at adding a new policy and specifically we're going to look at adding a universal child benefit. So, this example, we're going to introduce a universal child benefit of 140 quattro per month for children under three. And we're going to follow a few of the steps will be similar to the ones we've just done for changing existing policy. So, the first step will be to copy the base system, which in this case is ZM underscore 2015 and name it ZM underscore 2015 underscore reform underscore two, because we can't have the same name for different for more than one system. So, first we need to choose where on the spine the new policy should be located. And then after we do that, we need to right click on the policy before the one we want to introduce and then select add policy after. So, if we go to the model and just implement these first few steps. So, we can close that up. So, first we have to add a new system. So, again, I'm going to use this time I'll use the country tools tab and add a system that way. And then again, our base system will be 20 ZM underscore 2015. We can click OK. And now we're going to rename our system ZM underscore 2015 underscore reform underscore two. So, you'll now see that the system has been added to our main workspace. A handy tool for rearranging systems is if you wanted to rearrange these two systems to ensure that the one came before the two, you just click on the reform two system and just drag it to the right. So, that's just how to rename and to rearrange and reorder systems on the main workspace. So, now our second step is to choose where on the spine we want to add our new policy. So, as you can see, we start off with our definitional policies. We then have one income policy, which are poverty lines. We then have two social insurance contribution policies. And then our tax policies, another social insurance contribution policy. And then our benefit policies. So, we could add a universal child benefit. So, we could add our universal child benefit after our farmer input support program benefit. So, if we right click on that benefit, which is called BOT underscore ZM, and go to add policy after and it's a benefit policy. So, click on benefit, we then asked to name our policy. And because this is a benefit for children, our policy has to follow the Euromod naming convention. So, it has to start off with the broad category of the policy. So, if it's a benefit, it'll start off with B, as that's the broad category of variable of variables for benefits. And then, since it's a benefit for children, the next two letters that are going to follow the B will be CH, representing that it's a benefit for children. And then, most importantly, it has to be followed by underscore ZM, as it's a child policy for children in Zambia. So, we can just, once we've named it, we can click on OK. And there, our new policy has been added. It's now number 15 on the spine. And then, we can just name it under the comment section, so we know what it is. And this is our universal child benefit reform, just so we know what it is. So, if we go back to the PowerPoint now, we've done, we've right clicked on where we wanted to add it on the spine, on the policy after which we wanted to add it on the spine. And then, we just said add policy after, and it's a benefit. So, now we need to name the policy BCH underscore ZM, as I've already explained why. The policy name is named after the output variable. Next, we right click on the new policy name and select a function. And in this example, we're going to be using the function BenCalc, although we could have also used a combination of Elge and Arithop. And then, most importantly, we have to turn the policy and the function on. Otherwise, the model won't run it. So, if we go back to our model, if we go to our BCH underscore ZM, right click again, we're now going to add function. And I've said that we're going to add a BenCalc, although we could have added a combination of Elge and Arithop. So, if we click on BenCalc, and most importantly, we have to switch both the policy and the function on. And we have to do this for our reform two scenario because this is where we're making our reform. So, we can go back to the PowerPoint now. So, we've added our function, BenCalc. Now, we're going to go and complete the criteria, the eligibility criteria for the policy, as well as specifying the amount of the policy and specifying the output variable and the tax unit. So, I'll do that on the model and then we can look through the PowerPoints and see how this has been done. So, my first step would be to add the benefit amount, the amount that we're going to assign to all the children that are eligible to the Constance policy. It's quite easy to forget to do this, so I always tend to do it first. So, if we go to our ConstDev policy, open that up, go to our Devconst function, right click as we did with our turn of attacks reform, go to show add parameter form, go to placeholder, you can keep the one under the count column because we're only adding one placeholder this time. If we go to add and close that, so as you can see it's been added to the very bottom of our ConstDev policy and then again we will rename it and in this case, we can call it BCH because it's a benefit for children and call it amount because it's the BCH amount and just underscore reform because we know it's a reform and maybe underscore 2 because it's our reform 2. If you click on enter, now we have to fill in the amount under our reform 2 system. So, we said that we're going to give every eligible child 140 kW per month and then we can just leave a comment to ourselves saying this is the universal child benefit amount reform 2. So, that's quite an easy step to do but also quite easy to forget. So, I always tend to do that one first. So, now we're all done with that constants, adding our constants, we can close that policy up. Now we can go to our actual universal child benefit policy. So, now we can specify our eligibility criteria. So, we said that we want to give children age between zero and two years and if you use the data requirement document, it'll specify that the variable for age is called DAG. So, in order to type in that condition, we first have to start off with our curly brackets and then type in DAG which stands for age and we said age between zero and two so that'll be greater or equal to zero. We can close that, that's our first half of our condition and again DAG less than or equal to two because we said all children aged under three which also means children age between zero and two years. So, we can close that up and again we can write a comment for ourselves saying that children aged under under three years old or we could have put children age between zero and two years. It effectively means the same thing. Our next step is to, so that's our comp underscore con parameter which is in essence our eligibility criteria. Our next step is now to fill in our comp underscore per tax unit which is our calculator in a sense. So, the comp underscore per tax unit we had said that we want to give each child 140 quattres per month but remember that we had specified this in our constants policy. So, if we click, if we start off with our dollar symbol it'll give us again a list of amounts, rates, upper limits that it thinks we're looking for and remember we had named our amount dollar bch underscore amount underscore form underscore two. So, if you click on that that's the amount that each child is going to be allocated and again if you hover over that you can see that it says dollar bch underscore amount underscore form underscore two which is equal to 140 per month. So, that's the amount that the that each eligible child will receive. Again, we can write a comment and say something like each child is allocated the relevant amount or any comments that you want to write to yourself. Our output variable we've already specified this is bc, we've already spoken about this rather is bch underscore s to indicate that this is what is going to be simulated and then we can write a comment again this is the output variable is called bch underscore s and lastly we have to specify our tax unit and this is the individual and then again our comment could be the calculation are undertaken at the level of the individual. So, that's a big part of implementing a new policy. There's still two other important steps that we have to do before we can say that we've finished and we've implemented a new policy but I'll just go back to the PowerPoint and go through the steps that we've already undertaken. So, our first step was to introduce bch amount as a constant and call it dollar bch slash underscore amount. So, we've done that. The next step is to introduce a new output variable using the variables tool if necessary. So, this wasn't necessary in our case as this variable has already been specified. Now, we need to add bch underscore s to the output policy if necessary. Again, this wasn't necessary as this has already been specified in our model. So, most importantly the final steps that we need to take is we now need to add the new benefit to ills underscore bensim which is simulated benefits and ills underscore bch and this is needed for the statistics presenter which will be covered in session five of these videos. So, in order the reason why we do this is so that these two income lists to which we're going to add this new benefit are needed in order for the stats presenter to work. So, if we go back to our model, so we need to add we need to add them in two new income lists. So, our income lists are our second policy on the spine. So, we need to add them to simulated benefits and if we go to that income list and open it up and we So, we'll first add our new benefit to our simulated benefits. Our income list called ills underscore bensim and again we'll do this in the same fashion as when we added our constants is we'll add a new placeholder and then rename this placeholder. So, then we'll go to show add parameter form tick placeholder again we only need one in this in this instance close that and here we have our new placeholder which we have to rename and the name of our new simulated benefit will be bch underscore s as we've already stipulated in our policy and then most importantly we need to put a plus sign under the reform two scenario so that the statistics presenter knows to add this to the list of simulated benefits when making its calculations. So, that's the first half of adding our new benefit to the income lists. The second half is that we'll see if we go to our if income is 2.13 and if we go over to the comment sign we comment section we see that this it says define income list child benefits child benefits in the statistics presenter. So, we also need to add this new benefit to this child this specifically child benefits function in order for the stats presenter to work and you'll see that we have a range of other benefits under this so we have social assistance benefits in the stats presenter we have widows and orphan benefits which we have not in Zambia but we need for the stats presenter we have disabled benefits so once you've added once you've made a reform and in effect if you've added a new a new benefit you have to add it to the simulated benefits income list first of all and then to only one of these income lists in order for the stats presenter to work. So, if you've implemented a benefit for disabled people then you would have to add it to the disabled benefits in stats presenter as well as simulated benefits as we've already done and again in order to do this we'll simply right click on the the name go to show add parameter form again put one placeholder add this close this up and then again we have to rename it and we can we know that it's going to be called bch underscore s and again we have to put a plus symbol under the reform 2 system in order for the stats presenter to know to calculate this when it's performing its its calculations. So, if we go back to the PowerPoint so this is what I've just explained on the live version of the model once we've added a new benefit in the form of making a reform so once we've made a reform scenario and we've added a new benefit for example we need to add the new benefit to simulated benefits first of all which contains all simulated benefits and then to one of the income lists for the stats presenter and as you can see these are mutually exclusive so you can only add it to one of the income lists. So, after we've made all our changes we save the changes to the model and we I'll show you how to do this and we'll go to the first tab which is save country and the differences between the base and the derived system can be highlighted and we can do this using a tool called automatic conditional formatting and I'll speak about this in our last session and then the last point is that the reform system system is run in the same way as other systems and we'll output the same variables unless a change is made to the output so unless a change is made to output underscore std underscore zm policy then the reform system is run in the same same way. So, we can go back to our model now and save our changes if we just above where it says country systems databases we can click on that little button and go to save country and then we've saved all of our changes and that brings us to the end of the session. Thank you very much.