added isNumber function