There seems to be a bug in the block reward calculation in Babylon.
For example, in block 664451 there were 26 endorsements. So the reward should be
16 * (0.8 + 0.2 * 26 / 32) = 15.4 XTZ (source). But the baker got 14.4 XTZ.
Can someone explain how the reward is actually calculated, and why there is a discrepancy between the expected amount and the actual reward?