change surcharge to float