What's my mistake?
\'\n    def dieSimulator(self, n: int, rollMax: List[int]) -> int:\n        def helper(d):\n            c = {0:0, 1:0, 2:0, 3:0, 4:0, 5:0}\n            for i in
```\'\n    def dieSimulator(self, n: int, rollMax: List[int]) -> int:\n        def helper(d):\n            c = {0:0, 1:0, 2:0, 3:0, 4:0, 5:0}\n            for i in d:\n                c[i] += 1\n            if len(d) == n: return 1\n            ans = 0\n            for i in range(6):\n                if c[i] < rollMax[i]:\n                    ans += helper(d + [i])\n            #print(d, c, ans)\n            return ans\n        \n        return helper([]) % (10**9 + 7)\n```\n\nThe output for n = 3, rollMax = [1,1,1,2,2,3] is 166 instead of 181.  However, I checked all possibilities manually and I could only get 166 different sequences.  So what did I miss?
[]