pushed G construction a bit more