improved generic method that runs methods with multiple params