basic outline?
merge