di in b "calculating big ZuuZ matrix"
local g=1 /* equation indicator */
while `g' <=$G {
tokenize ${z`g'} /* get names of instruments in separate macros */
local i=1 /* instrument indicator */
while "``i''" != "" { /* go over list of instruments for equation g */ * di "g=`g' i=`i' zi=``i''" /* ``i'' will put name of instrument variable */
tempvar z`g'_`i'
qui gen `z`g'_`i''=``i''*`u`g'' /* generating tempvar= Zi*u */
local list "`list' `z`g'_`i''" /* list of all instruments from all equations */
* di "`list'"
local i = `i' + 1 }
drop `u`g'' /* do not need ug after all Zi *ug is calculated */
local g=`g'+1
}