add overlap check
add overlap check