Logic fix for token approval