add typeof function