gate-to-gate analysis