potential overflow in reward accumulator may freeze functionality
Note the above description of `updatePool()` functionality. We can see that accRewardPerShare is only allocated 128 bits in PoolInfo:\\n```\\n      struct PoolInfo {\\n          uint128 accRewardPerShare;\\n            uint64 lastRewardTime;\\n               uint64 allocPoint;\\n```\\n\\nTherefore, even if truncation issues do not occur, it is likely that continuous incrementation of the counter would cause accRewardPerShare to overflow, which would freeze vault functionalities such as withdrawal.
Steal 32 bits from lastRewardTime and 32 bits from allocPoint to make the accumulator have 192 bits, which should be enough for safe calculations.
```\\n      struct PoolInfo {\\n          uint128 accRewardPerShare;\\n            uint64 lastRewardTime;\\n               uint64 allocPoint;\\n```\\n