Hello miracle makers,

I would like to use GMM and external IVs at the same time and struggling to see the difference between putting the external IVs as gmm vs as ivstyle. As a starting point, here is the 2SLS model with two external IVs meant to instrument for the endogenous L.x1, where the external IVs associated with L.x1 are L.z1a L.z1b.

Code:
ivregress 2sls y L.y L.x2 L.x3 i.year i.id (L.x1 = L.z1a L.z1b)
L.x2 may also be endogenous, but I'm not sure, so would like to just instrument it with its lags in the GMM in one of two manners:

(1)
Code:
xtabond2 y L.y L.x1 L.x2 L.x3 i.year, gmm(L.y L.x2) ivstyle(L.x3 L.z1a L.z1b i.year, equation(level)) twostep
(2)
Code:
xtabond2 y L.y L.x1 L.x2 L.x3 i.year, gmm(L.y L.x2) gmm(L.z1a L.z1b) ivstyle(L.x3 i.year, equation(level)) twostep
Three important questions I have are:
Assuming these are both possibly logical, does (2) make a more robust model with L.z1a L.z1b as GMM, thereby including their lags as the instruments for the main endogenous variable L.x1?
Does changing
Code:
gmm(L.z1a L.z1b)
to
Code:
gmm(L.z1a L.z1b, laglimit(1 1))
in (2) make it the same as (1)?
And lastly, why is equation(level) not included in the gmm area (in any of the examples and usually in discussions online) - I cannot make sense of this in the help file.

Thanks very much for your time!