cd "${output_path}\tmp\"


use "Linked_data.dta", clear


xtset, clear
keep if age>=25 & age<=40

*First, we transform the dataset from child-parent level to parent-level by dropping all child variables and then dropping duplicate observations
keep v* syear m*
drop vil* mil* mother_near 
drop merge*

drop month mother_known migback




duplicates drop


set more off

xtset vnr syear


gen vage2=vage*vage


gen vdisc60=cond((vage+0.001)>=(60+1/12),1,0)
replace vdisc60=cond((vage+0.001)>=(60+2/12),1,0) if vgebjahr==1952 & vgebmonat==1
replace vdisc60=cond((vage+0.001)>=(60+3/12),1,0) if vgebjahr==1952 & vgebmonat==2
replace vdisc60=cond((vage+0.001)>=(60+4/12),1,0) if vgebjahr==1952 & vgebmonat==3
replace vdisc60=cond((vage+0.001)>=(60+5/12),1,0) if vgebjahr==1952 & vgebmonat==4
replace vdisc60=cond((vage+0.001)>=(60+6/12),1,0) if vgebjahr==1952 & vgebmonat==5
replace vdisc60=cond((vage+0.001)>=(60+7/12),1,0) if vgebjahr==1952 & vgebmonat>=6 & vgebmonat<=12
replace vdisc60=cond((vage+0.001)>=(60+8/12),1,0) if vgebjahr==1953 
replace vdisc60=cond((vage+0.001)>=(60+9/12),1,0) if vgebjahr==1954
replace vdisc60=cond((vage+0.001)>=(60+10/12),1,0) if vgebjahr==1955
replace vdisc60=cond((vage+0.001)>=(60+11/12),1,0) if vgebjahr==1956
replace vdisc60=cond((vage+0.001)>=61,1,0) if vgebjahr==1957
 


gen mage2=mage*mage



gen mdisc60=cond((mage+0.001)>=(60+1/12),1,0)
replace mdisc60=cond((mage+0.001)>=(60+2/12),1,0) if mgebjahr==1952 & mgebmonat==1
replace mdisc60=cond((mage+0.001)>=(60+3/12),1,0) if mgebjahr==1952 & mgebmonat==2
replace mdisc60=cond((mage+0.001)>=(60+4/12),1,0) if mgebjahr==1952 & mgebmonat==3
replace mdisc60=cond((mage+0.001)>=(60+5/12),1,0) if mgebjahr==1952 & mgebmonat==4
replace mdisc60=cond((mage+0.001)>=(60+6/12),1,0) if mgebjahr==1952 & mgebmonat==5
replace mdisc60=cond((mage+0.001)>=(60+7/12),1,0) if mgebjahr==1952 & mgebmonat>=6 & mgebmonat<=12
replace mdisc60=cond((mage+0.001)>=(60+8/12),1,0) if mgebjahr==1953 
replace mdisc60=cond((mage+0.001)>=(60+9/12),1,0) if mgebjahr==1954
replace mdisc60=cond((mage+0.001)>=(60+10/12),1,0) if mgebjahr==1955
replace mdisc60=cond((mage+0.001)>=(60+11/12),1,0) if mgebjahr==1956
replace mdisc60=cond((mage+0.001)>=61,1,0) if mgebjahr==1957
 

*These are indicators of joint retirement and for the joint threshold
gen mvretired=cond(mretired==1 & vretired==1,1,cond(mretired!=. & vretired!=.,0,.))
gen mvdisc60=cond(mdisc60==1 & vdisc60==1 & mage!=. & vage!=.,1,cond(vage!=. & mage!=.,0,.))



eststo: xi: xtivreg2 mvretired vage vage2 i.vmonth i.syear (vretired = vdisc60 ) if vage>=50 & vage<=70, fe first cluster(vnr) partial(i.vmonth i.syear)

estout _all using "${output_path}\Results\TableA7.csv" , keep(vretired) cells(b(star fmt(3)) se(par(`"="("' `")""'))) mlabels(,depvars) style(fixed)  stats(widstat N) ///
starlevels(* 0.10 ** 0.050 *** 0.010)  replace
eststo clear

xtset mnr syear
eststo: xi: xtivreg2 mvretired mage mage2 i.mmonth i.syear (mretired = mdisc60 ) if mage>=50 & mage<=70, fe first cluster(mnr) partial(i.mmonth i.syear)

estout _all using "${output_path}\Results\TableA7.csv" , keep(mretired) cells(b(star fmt(3)) se(par(`"="("' `")""'))) mlabels(,depvars) style(fixed)  stats(widstat N) ///
starlevels(* 0.10 ** 0.050 *** 0.010)  append
eststo clear









