stacks via factories