use SafeMath;
use ;
use crateBASIS_POINT_MAX;
use crateLBError;
use *;
// In Trader Joe, the active_id need to be shifted by 2 ** 23 to get the actual ID.
// The reason is because they mint LP for each bin based on active_id using ERC1155, which the ID do not support negative
/// Calculate price based on the given bin id. Eg: 1.0001 ^ 5555. The returned value is in Q64.64