parallel stack approach