_calculateClaim() does not distribute boost emissions correctly
The function `_calculateClaim()` is responsible for the calculations of the amount of emissions a specific veSatin is entitled to claim. The idea is to distribute emissions only to veSatin tokens locked for more than minLockDurationForReward and only for the extra time the veSatin is locked for on top of minLockDurationForReward. As an example, if minLockDurationForReward is set to 6 months a veSatin locked for 7 months would receive emissions for 1 month and a veSatin locked for 5 months would receive no emissions at all. To do so the following code is executed in a loop, where every loop calculates the amount of emissions the veSatin accumulated during a specific week, in chronological order:\\n```\\n      if ((lockEndTime - oldUserPoint.ts) > (minLockDurationForReward)) {\\n        toDistribute +=\\n          (balanceOf * tokensPerWeek[weekCursor]) / veSupply[weekCursor];\\n      weekCursor += WEEK;\\n      }\\n```\\n\\nThe code distributes the rewards if the elapsed time between lockEndTime (the locking end timestamp) and oldUserPoint.ts is bigger than minLockDurationForReward. However, oldUserPoint.ts is the timestamp of the last user action on a veSatin, for example depositing LP by calling `increaseAmount()`. As an example, a user that locks his veSatin and does nothing else will receive rewards for the whole locking duration. In contrast, a user that performs one action a week would only receive rewards for the locking duration minus minLockDurationForReward
The variable weekCursor should be used instead of oldUserPoint.ts in the if condition:\\n```\\n      if ((lockEndTime - weekCursor) > (minLockDurationForReward)) {\\n```\\n
```\\n      if ((lockEndTime - oldUserPoint.ts) > (minLockDurationForReward)) {\\n        toDistribute +=\\n          (balanceOf * tokensPerWeek[weekCursor]) / veSupply[weekCursor];\\n      weekCursor += WEEK;\\n      }\\n```\\n