Interested calculated is ampliefied by multiple of 1000 in `_debt_interest_since_last_update`
Interest calculated in the `_debt_interest_since_last_update` function is amplified by multiple of 1000, hence can completely brick the system and debt calculation. Because we divide by PERCENTAGE_BASE instead of PERCENTAGE_BASE_HIGH which has more precision and which is used in utilization calculation.\\nFollowing function calculated the interest accured over a certain interval :\\n```\\ndef _debt_interest_since_last_update(_debt_token: address) -> uint256:\\n\\n    return (\\n\\n        (block.timestamp - self.last_debt_update[_debt_token])* self._current_interest_per_second(_debt_token)\\n        * self.total_debt_amount[_debt_token]\\n        / PERCENTAGE_BASE \\n        / PRECISION\\n    )\\n```\\n\\nBut the results from the above function are amplified by factor of 1000 due to the reason that the intrest per second as per test file is calculated as following:\\n```\\n    # accordingly the current interest per year should be 3% so 3_00_000\\n    # per second that is (300000*10^18)/(365*24*60*60)\\n    expected_interest_per_second = 9512937595129375\\n\\n    assert (\\n        expected_interest_per_second\\n        == vault_configured.internal._current_interest_per_second(usdc.address)\\n    )\\n```\\n\\nSo yearly interest has the precision of 5 as it is calculated using utilization rate and `PERCENTAGE_BASE_HIGH_PRECISION` is used which has precision of 5 .and per second has the precision of 18, so final value has the precision of 23.\\nInterest per second has precision = 23.\\nBut if we look at the code:\\n```\\n        (block.timestamp - self.last_debt_update[_debt_token])* self._current_interest_per_second(_debt_token)\\n        * self.total_debt_amount[_debt_token]\\n        / PERCENTAGE_BASE \\n        / PRECISION\\n```\\n\\nWe divide by PERCENTAGE_BASE that is = 100_00 = precision of => 2 And than by PRECISION = 1e18 => precision of 18. So accumulated precision of 20, where as we should have divided by value precises to 23 to match the nominator.\\nWhere is we should have divided by PERCENTAGE_BASE_HIGH instead of PERCENTAGE_BASE\\nHence the results are amplified by enormous multiple of thousand.
Use PERCENTAGE_BASE_HIGH in division instead of PERCENTAGE_BASE.\\nEscalate for 10 USDC\\nThis should be high as described impact in the given submission and the duplicate too.\\nA magnitude of 1000 times of interest can be deemed as "material loss of funds".\\n141345\\nEscalate for 10 USDC The wrong calculation of interest rates will cause a direct loss of funds to users. This should definitely be high severity.\\nSame as above\\nhrishibhat\\nResult: High Has duplicates Considering this a valid high\\nsherlock-admin2\\nEscalations have been resolved successfully!\\nEscalation status:\\nNabeel-javaid: accepted\\ntwicek: accepted
Interest are too much amplified, that impacts the total debt calculation and brick whole leverage, liquidation and share mechanism.\\nNote: Dev confirmed that the values being used in the tests are the values that will be used in production.
```\\ndef _debt_interest_since_last_update(_debt_token: address) -> uint256:\\n\\n    return (\\n\\n        (block.timestamp - self.last_debt_update[_debt_token])* self._current_interest_per_second(_debt_token)\\n        * self.total_debt_amount[_debt_token]\\n        / PERCENTAGE_BASE \\n        / PRECISION\\n    )\\n```\\n