Refacto using GSStack