replaced isspecial()