with proper note.
with basic note boundries
check top boundry
with basic note boundry.
better checks
with checking contains. could be less efficient!