use a macro and fix the l10n of tip amounts
fix `unlocalizeDecimal()` to ignore thousands separators