reduce to known case
simplify cursor hl calcs
first working version
debug pass 1
debug pass 2
debug pass 3
Rearrange some functions before merge
merge, prelim