dup inputs when merging/rebasing in values

merge, merge_given, rebase, rebase_given should give back input objects that do not mutate each other