main stuff
merge