collection common functions, like clone, merge