**** February 18, 2013

** Set user directory
cd c:\BrazilInformal\MinasFacilVirtual\

******************************************************
* Dataset
use ReplicationDataMinasExpresso.dta, clear

**** Get Means of Formalization Rates by Month and Treatment Status for Figure 2
*collapse (mean) formalized1-formalized56, by(actualtreat)

**** Get Means of Taxes by Month and Treatment Status for Figure 4
* collapse (mean) tax1-tax12 tax13-tax24 tax25-tax36 tax37-tax48 tax49-tax58, by(actualtreat)


*** 36 Month Matching on Data up to end 2010
cap drop pscore1
pscore actual formalized1-formalized36  população_2010, pscore(pscore1) comsup
gen commonsupport1=comsup==1
gen group1=1 if actual==1 & commonsupport==1
replace group1=0 if actual==0 & commonsupport==1
label var group1 "Treatment Status for municipalities in 36 month common support"
*** Take means by this for Figure 2
*collapse (mean) formalized1-formalized56, by(group1)

* Nearest neighbor matches only
 attnd formalized56 actual, pscore(pscore1) comsup matchvar(nndefine) matchdta(nnmatches) id(municipalid)
cap drop _merge
sort municipalid
merge municipalid using nnmatches.dta
gen group2=1 if actual==1 & nndefine==1
replace group2=0 if actual==0 & nndefine==1
label var group2 "Treatment Status for Nearest neighbor matches"
*** Take means by this for Figure 3
*collapse (mean) formalized1-formalized56, by(group2)

*** Alternative control group - firms on initial list of 50 possibilities (planned implementation)
gen group3=1 if actual==1
replace group3=0 if actual==0 & dummy_mg==1
label var group3 "Planned Implementation group"
*** Take means by this for Figure 3
*collapse (mean) formalized1-formalized56, by(group3)

***** TAX MATCHING
*** Matching on Data up to end 2010
cap drop pscore11
pscore actual tax1-tax12 tax13-tax24 tax25-tax36  população_2010, pscore(pscore11) comsup
gen commonsupport11=comsup==1
gen group11=1 if actual==1 & commonsupport11==1
replace group11=0 if actual==0 & commonsupport11==1
label var group11 "Tax Matched Common Support"

* Tax matched Nearest neighbor matches only
 attnd tax58 actual, pscore(pscore11) comsup matchvar(nndefine11) matchdta(nnmatches11) id(municipalid)
cap drop _merge
sort municipalid
merge municipalid using nnmatches11.dta
gen group21=1 if actual==1 & nndefine11==1
replace group21=0 if actual==0 & nndefine11==1
label var group21 "Tax matched nearest neighbors"
**** take means of this for Figure 4
* collapse (mean) tax1-tax12 tax13-tax24 tax25-tax36 tax37-tax48 tax49-tax58, by(group21)

**** Label Group Indicators
label var group1 "Common support formalize - up to end 2010"
label var group2 "Nearest neighbor formalize - up to end 2010"
label var group3 "Planned implementation control group"
label var group11 "Common support tax - up to end 2010"
label var group21 "Nearest neighbor tax- up to end 2010"


**** Table of Summary Statistics by Treatment Status
egen average2008=rowmean(formalized1-formalized12)
egen average2009=rowmean(formalized13-formalized24)
egen average2010=rowmean(formalized25-formalized36)
egen average2011toaug=rowmean(formalized37-formalized44)
egen sd2008to2010=rowsd(formalized1-formalized36)
egen sd2011=rowsd(formalized37-formalized44)
egen atax2010=rowmean(tax25-tax36)
egen atax2009=rowmean(tax13-tax24)
egen atax2008=rowmean(tax1-tax12)


************ TABLE 1
 #delimit cr
 * First Compare Treated Municipalities to All Others
matrix R=[1,1,1,1,1,1]
matrix colnames R="mean Control" "mean Treat" "N Control" "N Treat" "N tot" "p value"
#delimit ;
quietly foreach var in average2008 average2009 average2010 sd2008to2010 população_2010 
average2011toaug 
sd2011 participation_of_industry_in_gdp gdp_per_capita_growth_2003_2008 gdppercapita atax2009 atax2010
 {;
	ttest `var',by(actual);
	matrix A=[r(mu_1),r(mu_2),r(N_1) ,r(N_2),r(N_1)+r(N_2)  ,r(p)];
	matrix rownames A=`var';
	matrix list A;
	matrix R=R\A;
	matrix list R;
};
set linesize 200;
matrix list R;


 #delimit cr
 * Compare Treated Municipalities to Common Support Matching 
matrix R=[1,1,1,1,1,1]
matrix colnames R="mean Control" "mean Treat" "N Control" "N Treat" "N tot" "p value"
#delimit ;
quietly foreach var in average2008 average2009 average2010 sd2008to2010 população_2010 
average2011toaug 
sd2011 participation_of_industry_in_gdp gdp_per_capita_growth_2003_2008 gdppercapita atax2009 atax2010
 {;
	ttest `var' if group1~=.,by(group1);
	matrix A=[r(mu_1),r(mu_2),r(N_1) ,r(N_2),r(N_1)+r(N_2)  ,r(p)];
	matrix rownames A=`var';
	matrix list A;
	matrix R=R\A;
	matrix list R;
};
set linesize 200;
matrix list R;

 #delimit cr
 * Compare Treated Municipalities to Common Support Nearest Neighbors
matrix R=[1,1,1,1,1,1]
matrix colnames R="mean Control" "mean Treat" "N Control" "N Treat" "N tot" "p value"
#delimit ;
quietly foreach var in average2008 average2009 average2010 sd2008to2010 população_2010 
average2011toaug 
sd2011 participation_of_industry_in_gdp gdp_per_capita_growth_2003_2008 gdppercapita atax2009 atax2010
 {;
	ttest `var' if group2~=.,by(group2);
	matrix A=[r(mu_1),r(mu_2),r(N_1) ,r(N_2),r(N_1)+r(N_2)  ,r(p)];
	matrix rownames A=`var';
	matrix list A;
	matrix R=R\A;
	matrix list R;
};
set linesize 200;
matrix list R;

 #delimit cr
 * Compare Treated Municipalities to Planned Placements
matrix R=[1,1,1,1,1,1]
matrix colnames R="mean Control" "mean Treat" "N Control" "N Treat" "N tot" "p value"
#delimit ;
quietly foreach var in average2008 average2009 average2010 sd2008to2010 população_2010 
average2011toaug 
sd2011 participation_of_industry_in_gdp gdp_per_capita_growth_2003_2008 gdppercapita atax2009 atax2010
 {;
	ttest `var' if group3~=.,by(group3);
	matrix A=[r(mu_1),r(mu_2),r(N_1) ,r(N_2),r(N_1)+r(N_2)  ,r(p)];
	matrix rownames A=`var';
	matrix list A;
	matrix R=R\A;
	matrix list R;
};
set linesize 200;
matrix list R;

#delimit cr
sort munic
save MVdata1.dta, replace

*** Reshape Data for Regressions
use MVdata1.dta, clear
reshape long formalized tax, i(munic) j(time)
save MVdatapanel.dta, replace


**** Regressions
use MVdatapanel.dta, clear
gen treat=0
replace treat=1 if datada=="9/19/2011" & time>=45
replace treat=1 if (datada=="10/5/2011"|datada=="10/7/2011") & time>=46
replace treat=1 if (datada=="11/16/2011"|datada=="11/30/2011") & time>=47
replace treat=1 if (datada=="12/12/2011"|datada=="12/20/2011"|datada=="12/26/2011"|datada=="12/7/2011") & time>=48
replace treat=1 if (datada=="1/19/2012"|datada=="1/23/2012"|datada=="1/24/2012") & time>=49
replace treat=1 if (datada=="2/13/2012"|datada=="2/15/2012"|datada=="2/16/2012"|datada=="2/17/2012"|datada=="2/29/2012") & time>=50
replace treat=1 if (datada=="3/15/2012"|datada=="3/20/2012") & time>=51

#delimit ;
replace treat=1 if (municipalid==984649|municipalid==985191|municipalid==985111|
municipalid==985371 |municipalid==985133|municipalid==984521|municipalid==985029) & time>=52;
replace treat=1 if (municipalid==984555|municipalid==984171|municipalid==984145
|municipalid==984703|municipalid==985221|municipalid==984895) & time>=53;
replace treat=1 if (municipalid==984637|municipalid==984675) & time>=54;
#delimit cr

*** Number of firms by round (for Figure 1)
tab time treat


egen id=group(munic)
tsset id time
gen lead1treat=F.treat
gen lag1treat=L.treat
gen lag2treat=L2.treat
gen lead2treat=F2.treat
for num 1/58: gen tdumX=time==X

****** TESTS OF COMMON TRENDS ASSUMPTION FOR FORMALIZATION GROUP (bottom of Table 1)
* linear trend
gen actualtreat_time=actualtreat*time
reg formalized actualtreat actualtreat_time time if time<=44, robust cluster(id)
reg formalized actualtreat actualtreat_time time if time<=44 & group1~=., robust cluster(id)
reg formalized actualtreat actualtreat_time time if time<=44 & group2~=., robust cluster(id)
reg formalized actualtreat actualtreat_time time if time<=44 & group3~=., robust cluster(id)


* non-parametric trend
for num 2/44: gen tdumX_actualtreat=tdumX*actualtreat
reg formalized actualtreat tdum2_actualtreat-tdum44_actualtreat tdum2-tdum44 if time<=44, robust cluster(id)
#delimit ;
test tdum2_actualtreat==tdum3_actualtreat==tdum4_actualtreat==tdum5_actualtreat==tdum6_actualtreat
==tdum7_actualtreat==tdum8_actualtreat==tdum9_actualtreat==tdum10_actualtreat==tdum11_actualtreat==
tdum12_actualtreat==tdum13_actualtreat==tdum14_actualtreat==tdum15_actualtreat==tdum16_actualtreat==
tdum17_actualtreat==tdum18_actualtreat==tdum19_actualtreat==tdum20_actualtreat==tdum21_actualtreat==
tdum22_actualtreat==tdum23_actualtreat==tdum24_actualtreat==tdum25_actualtreat==tdum26_actualtreat==
tdum27_actualtreat==tdum28_actualtreat==tdum29_actualtreat==tdum30_actualtreat==tdum31_actualtreat==
tdum32_actualtreat==tdum33_actualtreat==tdum34_actualtreat==tdum35_actualtreat==tdum36_actualtreat==
tdum37_actualtreat==tdum38_actualtreat==tdum39_actualtreat==tdum40_actualtreat==tdum41_actualtreat==
tdum42_actualtreat==tdum43_actualtreat==tdum44_actualtreat==0;
#delimit cr
reg formalized actualtreat tdum2_actualtreat-tdum44_actualtreat tdum2-tdum44 if time<=44 & group1~=., robust cluster(id)
#delimit ;
test tdum2_actualtreat==tdum3_actualtreat==tdum4_actualtreat==tdum5_actualtreat==tdum6_actualtreat
==tdum7_actualtreat==tdum8_actualtreat==tdum9_actualtreat==tdum10_actualtreat==tdum11_actualtreat==
tdum12_actualtreat==tdum13_actualtreat==tdum14_actualtreat==tdum15_actualtreat==tdum16_actualtreat==
tdum17_actualtreat==tdum18_actualtreat==tdum19_actualtreat==tdum20_actualtreat==tdum21_actualtreat==
tdum22_actualtreat==tdum23_actualtreat==tdum24_actualtreat==tdum25_actualtreat==tdum26_actualtreat==
tdum27_actualtreat==tdum28_actualtreat==tdum29_actualtreat==tdum30_actualtreat==tdum31_actualtreat==
tdum32_actualtreat==tdum33_actualtreat==tdum34_actualtreat==tdum35_actualtreat==tdum36_actualtreat==
tdum37_actualtreat==tdum38_actualtreat==tdum39_actualtreat==tdum40_actualtreat==tdum41_actualtreat==
tdum42_actualtreat==tdum43_actualtreat==tdum44_actualtreat==0;
#delimit cr
reg formalized actualtreat tdum2_actualtreat-tdum44_actualtreat tdum2-tdum44 if time<=44 & group2~=., robust cluster(id)
#delimit ;
test tdum2_actualtreat==tdum3_actualtreat==tdum4_actualtreat==tdum5_actualtreat==tdum6_actualtreat
==tdum7_actualtreat==tdum8_actualtreat==tdum9_actualtreat==tdum10_actualtreat==tdum11_actualtreat==
tdum12_actualtreat==tdum13_actualtreat==tdum14_actualtreat==tdum15_actualtreat==tdum16_actualtreat==
tdum17_actualtreat==tdum18_actualtreat==tdum19_actualtreat==tdum20_actualtreat==tdum21_actualtreat==
tdum22_actualtreat==tdum23_actualtreat==tdum24_actualtreat==tdum25_actualtreat==tdum26_actualtreat==
tdum27_actualtreat==tdum28_actualtreat==tdum29_actualtreat==tdum30_actualtreat==tdum31_actualtreat==
tdum32_actualtreat==tdum33_actualtreat==tdum34_actualtreat==tdum35_actualtreat==tdum36_actualtreat==
tdum37_actualtreat==tdum38_actualtreat==tdum39_actualtreat==tdum40_actualtreat==tdum41_actualtreat==
tdum42_actualtreat==tdum43_actualtreat==tdum44_actualtreat==0;
#delimit cr
reg formalized actualtreat tdum2_actualtreat-tdum44_actualtreat tdum2-tdum44 if time<=44 & group3~=., robust cluster(id)
#delimit ;
test tdum2_actualtreat==tdum3_actualtreat==tdum4_actualtreat==tdum5_actualtreat==tdum6_actualtreat
==tdum7_actualtreat==tdum8_actualtreat==tdum9_actualtreat==tdum10_actualtreat==tdum11_actualtreat==
tdum12_actualtreat==tdum13_actualtreat==tdum14_actualtreat==tdum15_actualtreat==tdum16_actualtreat==
tdum17_actualtreat==tdum18_actualtreat==tdum19_actualtreat==tdum20_actualtreat==tdum21_actualtreat==
tdum22_actualtreat==tdum23_actualtreat==tdum24_actualtreat==tdum25_actualtreat==tdum26_actualtreat==
tdum27_actualtreat==tdum28_actualtreat==tdum29_actualtreat==tdum30_actualtreat==tdum31_actualtreat==
tdum32_actualtreat==tdum33_actualtreat==tdum34_actualtreat==tdum35_actualtreat==tdum36_actualtreat==
tdum37_actualtreat==tdum38_actualtreat==tdum39_actualtreat==tdum40_actualtreat==tdum41_actualtreat==
tdum42_actualtreat==tdum43_actualtreat==tdum44_actualtreat==0;

#delimit cr
*** Common non-parametric trend except January 2011
reg formalized actualtreat tdum2_actualtreat-tdum44_actualtreat tdum2-tdum44 if time<=44 & time~=37, robust cluster(id)
#delimit ;
test tdum2_actualtreat==tdum3_actualtreat==tdum4_actualtreat==tdum5_actualtreat==tdum6_actualtreat
==tdum7_actualtreat==tdum8_actualtreat==tdum9_actualtreat==tdum10_actualtreat==tdum11_actualtreat==
tdum12_actualtreat==tdum13_actualtreat==tdum14_actualtreat==tdum15_actualtreat==tdum16_actualtreat==
tdum17_actualtreat==tdum18_actualtreat==tdum19_actualtreat==tdum20_actualtreat==tdum21_actualtreat==
tdum22_actualtreat==tdum23_actualtreat==tdum24_actualtreat==tdum25_actualtreat==tdum26_actualtreat==
tdum27_actualtreat==tdum28_actualtreat==tdum29_actualtreat==tdum30_actualtreat==tdum31_actualtreat==
tdum32_actualtreat==tdum33_actualtreat==tdum34_actualtreat==tdum35_actualtreat==tdum36_actualtreat==
tdum37_actualtreat==tdum38_actualtreat==tdum39_actualtreat==tdum40_actualtreat==tdum41_actualtreat==
tdum42_actualtreat==tdum43_actualtreat==tdum44_actualtreat==0;
#delimit cr
reg formalized actualtreat tdum2_actualtreat-tdum44_actualtreat tdum2-tdum44 if time<=44 & group1~=. & time~=37, robust cluster(id)
#delimit ;
test tdum2_actualtreat==tdum3_actualtreat==tdum4_actualtreat==tdum5_actualtreat==tdum6_actualtreat
==tdum7_actualtreat==tdum8_actualtreat==tdum9_actualtreat==tdum10_actualtreat==tdum11_actualtreat==
tdum12_actualtreat==tdum13_actualtreat==tdum14_actualtreat==tdum15_actualtreat==tdum16_actualtreat==
tdum17_actualtreat==tdum18_actualtreat==tdum19_actualtreat==tdum20_actualtreat==tdum21_actualtreat==
tdum22_actualtreat==tdum23_actualtreat==tdum24_actualtreat==tdum25_actualtreat==tdum26_actualtreat==
tdum27_actualtreat==tdum28_actualtreat==tdum29_actualtreat==tdum30_actualtreat==tdum31_actualtreat==
tdum32_actualtreat==tdum33_actualtreat==tdum34_actualtreat==tdum35_actualtreat==tdum36_actualtreat==
tdum37_actualtreat==tdum38_actualtreat==tdum39_actualtreat==tdum40_actualtreat==tdum41_actualtreat==
tdum42_actualtreat==tdum43_actualtreat==tdum44_actualtreat==0;
#delimit cr
reg formalized actualtreat tdum2_actualtreat-tdum44_actualtreat tdum2-tdum44 if time<=44 & group2~=. & time~=37, robust cluster(id)
#delimit ;
test tdum2_actualtreat==tdum3_actualtreat==tdum4_actualtreat==tdum5_actualtreat==tdum6_actualtreat
==tdum7_actualtreat==tdum8_actualtreat==tdum9_actualtreat==tdum10_actualtreat==tdum11_actualtreat==
tdum12_actualtreat==tdum13_actualtreat==tdum14_actualtreat==tdum15_actualtreat==tdum16_actualtreat==
tdum17_actualtreat==tdum18_actualtreat==tdum19_actualtreat==tdum20_actualtreat==tdum21_actualtreat==
tdum22_actualtreat==tdum23_actualtreat==tdum24_actualtreat==tdum25_actualtreat==tdum26_actualtreat==
tdum27_actualtreat==tdum28_actualtreat==tdum29_actualtreat==tdum30_actualtreat==tdum31_actualtreat==
tdum32_actualtreat==tdum33_actualtreat==tdum34_actualtreat==tdum35_actualtreat==tdum36_actualtreat==
tdum37_actualtreat==tdum38_actualtreat==tdum39_actualtreat==tdum40_actualtreat==tdum41_actualtreat==
tdum42_actualtreat==tdum43_actualtreat==tdum44_actualtreat==0;
#delimit cr
reg formalized actualtreat tdum2_actualtreat-tdum44_actualtreat tdum2-tdum44 if time<=44 & group3~=. & time~=37, robust cluster(id)
#delimit ;
test tdum2_actualtreat==tdum3_actualtreat==tdum4_actualtreat==tdum5_actualtreat==tdum6_actualtreat
==tdum7_actualtreat==tdum8_actualtreat==tdum9_actualtreat==tdum10_actualtreat==tdum11_actualtreat==
tdum12_actualtreat==tdum13_actualtreat==tdum14_actualtreat==tdum15_actualtreat==tdum16_actualtreat==
tdum17_actualtreat==tdum18_actualtreat==tdum19_actualtreat==tdum20_actualtreat==tdum21_actualtreat==
tdum22_actualtreat==tdum23_actualtreat==tdum24_actualtreat==tdum25_actualtreat==tdum26_actualtreat==
tdum27_actualtreat==tdum28_actualtreat==tdum29_actualtreat==tdum30_actualtreat==tdum31_actualtreat==
tdum32_actualtreat==tdum33_actualtreat==tdum34_actualtreat==tdum35_actualtreat==tdum36_actualtreat==
tdum37_actualtreat==tdum38_actualtreat==tdum39_actualtreat==tdum40_actualtreat==tdum41_actualtreat==
tdum42_actualtreat==tdum43_actualtreat==tdum44_actualtreat==0;

*** Table 2:
**** LEVELS REGRESSIONS

*** Panel A: difference-in-differences regression with time dummies
reg formalized actualtreat treat average2008 average2009 average2010 tdum2-tdum56, robust cluster(id)
outreg2 actualtreat treat average2008 average2009 average2010 using table2c.out, replace
sum formalized if actualtreat==1 & time>=33 & time<=44 
reg formalized actualtreat treat average2008 average2009 average2010 tdum2-tdum56 if group1~=., robust cluster(id)
outreg2 actualtreat treat average2008 average2009 average2010 using table2c.out, append
reg formalized actualtreat treat average2008 average2009 average2010 tdum2-tdum56 if group2~=., robust cluster(id)
outreg2 actualtreat treat average2008 average2009 average2010 using table2c.out, append
reg formalized actualtreat treat average2008 average2009 average2010 tdum2-tdum56 if group3~=., robust cluster(id)
outreg2 actualtreat treat average2008 average2009 average2010 using table2c.out, append


** Panel B: Fixed effects regression with time dummies
xtreg formalized treat tdum2-tdum56, i(id) fe cluster(id)
outreg2 actualtreat treat using table2.out, replace slow(800)
xtreg formalized treat tdum2-tdum56 if group1~=., i(id) fe cluster(id)
outreg2 actualtreat treat using table2.out, append slow(800)
xtreg formalized treat tdum2-tdum56 if group2~=., i(id) fe cluster(id)
outreg2 actualtreat treat using table2.out, append slow(800)
xtreg formalized treat tdum2-tdum56 if group3~=., i(id) fe cluster(id)
outreg2 actualtreat treat using table2.out, append slow(800)

*** Robustness: September 2011 is a weird month, so let's examine robustness to it in two ways
*** Panel C: First, just drop this month
xtreg formalized treat tdum2-tdum56 if time~=45, i(id) fe cluster(id)
outreg2 actualtreat treat using table2r.out, replace slow(800)
xtreg formalized treat tdum2-tdum56 if group1~=. & time~=45, i(id) fe cluster(id)
outreg2 actualtreat treat using table2r.out, append slow(800)
xtreg formalized treat tdum2-tdum56 if group2~=. & time~=45, i(id) fe cluster(id)
outreg2 actualtreat treat using table2r.out, append slow(800)
xtreg formalized treat tdum2-tdum56 if group3~=. & time~=45, i(id) fe cluster(id)
outreg2 actualtreat treat using table2r.out, append slow(800)

*** Panel D: Second, drop the three municipalities that formalize in that month
gen municdrop=munic==984881|munic==985091 |munic==985249
xtreg formalized treat tdum2-tdum56 if municdrop~=1, i(id) fe cluster(id)
outreg2 actualtreat treat using table2r.out, append slow(800)
xtreg formalized treat tdum2-tdum56 if group1~=. & municdrop~=1, i(id) fe cluster(id)
outreg2 actualtreat treat using table2r.out, append slow(800)
xtreg formalized treat tdum2-tdum56 if group2~=. & municdrop~=1, i(id) fe cluster(id)
outreg2 actualtreat treat using table2r.out, append slow(800)
xtreg formalized treat tdum2-tdum56 if group3~=. & municdrop~=1, i(id) fe cluster(id)
outreg2 actualtreat treat using table2r.out, append slow(800)


***** TABLE 3
**** time since treatment
gen timetreated=time if treat==1 & lag1treat==0
egen mtimetreated=max(timetreated), by(id)
gen timesince=time-mtimetreated 
replace timesince=0 if actualtreat==0

*** 6 months before, month of or after, 2+ months after
gen immediatetreat=(timesince==0|timesince==1) & actualtreat==1
gen months2plus=timesince>=2 & timesince~=.
gen sixbefore=timesince>=-6 & timesince<=-1

*** Panel A - DD
reg formalized actualtreat sixbefore immediatetreat months2plus average2008 average2009 average2010 tdum2-tdum56, robust cluster(id)
outreg2 actualtreat sixbefore immediatetreat months2plus average2008 average2009 average2010 using table3.out, replace slow(400)
reg formalized actualtreat sixbefore immediatetreat months2plus average2008 average2009 average2010 tdum2-tdum56 if group1~=., robust cluster(id)
outreg2 actualtreat sixbefore immediatetreat months2plus average2008 average2009 average2010 using table3.out, append slow(400)
reg formalized actualtreat sixbefore immediatetreat months2plus average2008 average2009 average2010 tdum2-tdum56 if group2~=., robust cluster(id)
outreg2 actualtreat sixbefore immediatetreat months2plus average2008 average2009 average2010 using table3.out, append slow(400)
reg formalized actualtreat sixbefore immediatetreat months2plus average2008 average2009 average2010 tdum2-tdum56 if group3~=., robust cluster(id)
outreg2 actualtreat sixbefore immediatetreat months2plus average2008 average2009 average2010 using table3.out, append slow(400)

**** Panel B - FE
xtreg formalized sixbefore immediatetreat months2plus tdum2-tdum56, i(id) fe cluster(id)
outreg2 actualtreat sixbefore immediatetreat months2plus using table3.out, append slow(400)
xtreg formalized sixbefore immediatetreat months2plus  tdum2-tdum56 if group1~=., i(id) fe cluster(id)
outreg2 actualtreat sixbefore immediatetreat months2plus using table3.out, append slow(400)
xtreg formalized sixbefore immediatetreat months2plus  tdum2-tdum56 if group2~=., i(id) fe cluster(id)
outreg2 actualtreat sixbefore immediatetreat months2plus using table3.out, append slow(400)
xtreg formalized sixbefore immediatetreat months2plus  tdum2-tdum56 if group3~=., i(id) fe cluster(id)
outreg2 actualtreat sixbefore immediatetreat months2plus using table3.out, append slow(400)


**** Table 4: Impacts on taxes collected

*** Panel A: difference-in-differences regression with time dummies
reg tax actualtreat treat atax2008 atax2009 atax2010 tdum2-tdum58, robust cluster(id)
outreg2 actualtreat treat atax2008 atax2009 atax2010 using table4.out, replace
sum tax if actualtreat==1 & time>=33 & time<=44 
reg tax actualtreat treat atax2008 atax2009 atax2010 tdum2-tdum58 if group11~=., robust cluster(id)
outreg2 actualtreat treat atax2008 atax2009 atax2010 using table4.out, append
reg tax actualtreat treat atax2008 atax2009 atax2010 tdum2-tdum58 if group21~=., robust cluster(id)
outreg2 actualtreat treat atax2008 atax2009 atax2010 using table4.out, append
reg tax actualtreat treat atax2008 atax2009 atax2010 tdum2-tdum58 if group3~=., robust cluster(id)
outreg2 actualtreat treat atax2008 atax2009 atax2010 using table4.out, append


** Panel B: Fixed effects regression with time dummies
xtreg tax treat tdum2-tdum58, i(id) fe cluster(id)
outreg2 actualtreat treat using table4.out, append slow(800)
xtreg tax treat tdum2-tdum58 if group11~=., i(id) fe cluster(id)
outreg2 actualtreat treat using table4.out, append slow(800)
xtreg tax treat tdum2-tdum58 if group21~=., i(id) fe cluster(id)
outreg2 actualtreat treat using table4.out, append slow(800)
xtreg tax treat tdum2-tdum58 if group3~=., i(id) fe cluster(id)
outreg2 actualtreat treat using table4.out, append slow(800)





