for callable , setlocale