adds factorial