FIX: precision was not accurate with Float, switched to Decimal