we should be calling optimize on `g^8`. I don't think we should make any contract on the unoptimized graphs.