fix null pointer
add number parsing