There is also something wrong with `factory2`. I don't see any usage of this argument.