properly merge everything