Make factorial even better