C++ version
WIP
WIP
WIP
WIP
WIP
wip
WIP
WIP: direct
merge
DONE: direct