work on
add new logic