1. `getZone()` => ``` end: start + delta.keeps - 1 ``` 2. `filter()` => ``` if (delta.keeps > delta.total) { delta.end = delta.total - 1 } ``` 3. The condition is satisfied endlessly `beforeUpdate()` => ``` delta.end !== zone.end ``` As a result, a memory leak and 100% CPU.