modify bug
add map function