added merge (passes all but cascade merge test)