merged everything so far