add factorial work
...