When should I use percentMul, wadMul, and rayMul in Solidity?


I am new to Solidity and Aave smart contracts and I am confused about when to use `percentMul`, `wadMul`, and `rayMul`. Can someone explain the differences between these functions and when it is appropriate to use each one? Any examples or code snippets would be greatly appreciated.

Answers 1

`percentMul `is for 4 decimal percentages such as LTV, LT. `wadMul `is for 18 decimal values (standard token units), and rayMul is for 27 decimal values such as rates and indeces. More details [here](https://github.com/aave/aave-v3-core/tree/master/contracts/protocol/libraries/math).