[{"p": [1],"li": "v1"}] [] [{"p": [1],"li": "v1"}] [] # insert/replace/delete on same path [{"p": [1],"li": "v1"}] [{"p": [1],"li": "v2"}] [{"p": [1],"li": "v1"}] [{"p": [2],"li": "v2"}] [{"p": [1],"li": "v1", "ld":"v3"}] [{"p": [1],"li": "v2", "ld":"v4"}] [{"p": [1],"li": "v1", "ld":"v2"}] [] [{"p": [1],"ld": "v1"}] [{"p": [1],"ld": "v2"}] [] [] ## insert conflict with replace [{"p": [1],"li": "v1"}] [{"p": [1],"li": "v2", "ld":"v3"}] [{"p": [1],"li": "v1"}] [{"p": [2],"li": "v2", "ld":"v3"}] ## insert conflict with delete [{"p": [1],"li": "v1"}] [{"p": [1],"ld": "v2"}] [{"p": [1],"li": "v1"}] [{"p": [2],"ld": "v2"}] ## replace conflict with delete [{"p": [1],"li": "v2", "ld":"v3"}] [{"p": [1],"ld": "v1"}] [{"p": [1],"li": "v2"}] [] # insert/replace/delete on overlap path ## insert conflict with insert [{"p": [1],"li": "v1"}] [{"p": [1, 2],"li": "v2"}] [{"p": [1],"li": "v1"}] [{"p": [2, 2],"li": "v2"}] ## delete conflict with delete [{"p": [1],"ld": {"k1": "v2"}}] [{"p": [1, 2],"ld": "v2"}] [{"p": [1],"ld": {"k1": "v2"}}] [] [{"p": [1],"ld": ["v1", "v2", "v3"]}] [{"p": [1, 2],"ld": "v3"}] [{"p": [1],"ld": ["v1", "v2"]}] [] ## replace conflict with replace [{"p": [1],"li": "v1", "ld": {"k2": "v2"}}] [{"p": [1, 2],"li": "v3", "ld":"v4"}] [{"p": [1],"li": "v1", "ld": {"k2": "v2"}}] [] [{"p": [1],"li": "v1", "ld": ["v1","v2","v3"]}] [{"p": [1, 2],"li": "v4", "ld":"v5"}] [{"p": [1],"li": "v1", "ld": ["v1","v2", "v4"]}] [] ## insert conflict with delete [{"p": [1],"ld": ["v1", "v2"]}] [{"p": [1, 2],"li": "v3"}] [{"p": [1],"ld": ["v1", "v2", "v3"]}] [] [{"p": [1],"li": "v1"}] [{"p": [1, 2],"ld": "v2"}] [{"p": [1],"li": "v1"}] [{"p": [2, 2],"ld": "v2"}] [{"p": [1],"li": ["v1", "v2", "v3"]}] [{"p": [1, 2],"ld": "v2"}] [{"p": [1],"li": ["v1", "v2", "v3"]}] [{"p": [2, 2],"ld": "v2"}] ## does not meet CP1 [{"p": [1, 2],"ld": "v1"}] [{"p": [1],"li": {"k2": "v2"}}] [{"p": [2, 2],"ld": "v1"}] [{"p": [1],"li": {"k2": "v2"}}] ## insert conflict with replace [{"p": [1], "li": "v1", "ld": ["v1", "v2", "v3"]}] [{"p": [1, 2],"li": "v4"}] [{"p": [1], "li": "v1", "ld": ["v1", "v2", "v4", "v3"]}] [] [{"p": [1, 2], "li": "v1", "ld": "v2"}] [{"p": [1],"li": {"k3":"v4"}}] [{"p": [2, 2], "li": "v1", "ld": "v2"}] [{"p": [1],"li": {"k3":"v4"}}] ## delete conflict with replace [{"p": [1, 2], "ld": "v1"}] [{"p": [1],"li": "v2", "ld": "v3"}] [] [{"p": [1],"li": "v2", "ld": "v3"}] # op on deleted path [{"p": [1], "li": "v1"}] [{"p": [1],"ld": ["l3","l4"]}] [{"p": [1], "li": "v1"}] [{"p": [2],"ld": ["l3","l4"]}] [{"p": [1], "li": "v1"}] [{"p": [1],"ld": ["l3","l4"], "li":["l5","l6"]}] [{"p": [1], "li": "v1"}] [{"p": [2],"ld": ["l3","l4"], "li":["l5","l6"]}] # move ## insert conflict with move [{"p": ["k", 0], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 0], "li": "v4"}] [{"p": ["k", 4],"lm": 2}] [{"p": ["k", 2], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 3], "li": "v4"}] [{"p": ["k", 4],"lm": 1}] [{"p": ["k", 3], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 4], "li": "v4"}] [{"p": ["k", 4],"lm": 1}] [{"p": ["k", 4], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 4], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 0, 1], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 0, 1], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", ["v1"], "v2", "v3"]} # new_op effect: {"k": ["v0", ["v1","v4"], "v2", "v3"]} # base_op effect: {"k": ["v0", "v3", ["v1"], "v2"]} # expected result: {"k": ["v0", "v3", ["v1","v4"], "v2", "v4"]} [{"p": ["k", 1, 1], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 2, 1], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", ["v2"], "v3"]} # new_op effect: {"k": ["v0", "v1", ["v2", "v4"], "v3"]} # base_op effect: {"k": ["v0", "v3", "v1", ["v2"]]} # expected result: {"k": ["v0", "v3", "v1", ["v2", "v4"]]} [{"p": ["k", 2, 1], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 3, 1], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", ["v3"]]} # new_op effect: {"k": ["v0", "v1", "v2", ["v3", "v4"]]} # base_op effect: {"k": ["v0", ["v3"], "v1", "v2"]} # expected result: {"k": ["v0", ["v3", "v4"], "v1", "v2"]} [{"p": ["k", 3, 1], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 1, 1], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", ["v3"]]} # new_op effect: {"k": ["v0", "v1", "v2", ["v3", "v4"]]} # base_op effect: {"k": ["v0", "v2", ["v3"], "v1"]} # expected result: {"k": ["v0", "v2", ["v3", "v4"], "v1"]} # move backward [{"p": ["k", 3, 1], "li": "v4"}] [{"p": ["k", 1],"lm": 3}] [{"p": ["k", 2, 1], "li": "v4"}] [{"p": ["k", 1],"lm": 3}] # origin {"k": ["v0", "v1", "v2", "v3"]} # new_op effect: {"k": ["v0", "v1", "v2", "v3", ["v4"]]} # base_op effect: {"k": ["v0", "v3", "v1", "v2"]} # expected result: {"k": ["v0", "v3", "v1", "v2", ["v4"]]} [{"p": ["k", 4, 1], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 4, 1], "li": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 1, 1], "li": "v4"}] [{"p": ["k", 1],"lm": 3}] [{"p": ["k", 3, 1], "li": "v4"}] [{"p": ["k", 1],"lm": 3}] ## delete conflict with move # origin {"k": ["v0", "v1", "v2", "v3"]} # {"k": ["v1", "v2", "v3"]} # {"k": ["v0", "v3", "v1", "v2"]} # {"k": ["v3", "v1", "v2"]} [{"p": ["k", 0], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 0], "ld": "v4"}] [{"p": ["k", 2],"lm": 0}] [{"p": ["k", 2], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 3], "ld": "v4"}] [{"p": ["k", 2],"lm": 1}] [{"p": ["k", 3], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 1], "ld": "v4"}] [] [{"p": ["k", 3], "ld": "v4"}] [{"p": ["k", 2],"lm": 0}] [{"p": ["k", 3], "ld": "v4"}] [{"p": ["k", 2],"lm": 0}] # origin {"k": [["v0", "v1"], "v1", "v2", "v3", "v4"]} # new_op effect: {"k": [["v0"], "v1", "v2", "v3", "v4"]} # base_op effect: {"k": [["v0", "v1"], "v3", "v1", "v2", "v4"]} # expected result: {"k": [["v0"], "v3", "v1", "v2", "v4"]} [{"p": ["k", 0, 1], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 0, 1], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", ["v1", "v5"], "v2", "v3", "v4"]} # new_op effect: {"k": ["v0", ["v1"], "v2", "v3", "v4"]} # base_op effect: {"k": ["v0", "v3", ["v1", "v5"], "v2", "v4"]} # expected result: {"k": ["v0", "v3", ["v1"], "v2", "v4"]} [{"p": ["k", 1, 1], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 2, 1], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", ["v2","v5"], "v3", "v4"]} # new_op effect: {"k": ["v0", "v1", ["v2"] "v3", "v4"]} # base_op effect: {"k": ["v0", "v3", "v1", ["v2","v5"],"v4"]} # expected result: {"k": ["v0", "v3", "v1", ["v2"],"v4"]} [{"p": ["k", 2, 1], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 3, 1], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", ["v3", "v5"], "v4"]} # new_op effect: {"k": ["v0", "v1", "v2", ["v3"], "v4"]} # base_op effect: {"k": ["v0", ["v3", "v5"], "v1", "v2", "v4"]} # expected result: {"k": ["v0", ["v3"], "v1", "v2", "v4"]} [{"p": ["k", 3, 1], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 1, 1], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", "v3", ["v4", "v5"]]} # new_op effect: {"k": ["v0", "v1", "v2", "v3", ["v4"]]} # base_op effect: {"k": ["v0", "v3", "v1", "v2", ["v4", "v5"]]} # expected result: {"k": ["v0", "v3", "v1", "v2", ["v4"]]} [{"p": ["k", 4, 1], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 4, 1], "ld": "v4"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", ["v3", "v5"], "v4"]} # new_op effect: {"k": ["v0", "v1", "v2", ["v3"], "v4"]} # base_op effect: {"k": ["v0", "v2", ["v3", "v5"], "v1", "v4"]} # expected result: {"k": ["v0", "v2", ["v3"], "v1", "v4"]} # move backward [{"p": ["k", 3, 1], "ld": "v4"}] [{"p": ["k", 1],"lm": 3}] [{"p": ["k", 2, 1], "ld": "v4"}] [{"p": ["k", 1],"lm": 3}] # origin {"k": ["v0", "v1", "v2", ["v3", "v5"], "v4"]} # new_op effect: {"k": ["v0", "v1", "v2", ["v3"], "v4"]} # base_op effect: {"k": ["v0", "v2", "v1", ["v3", "v5"], "v4"]} # expected result: {"k": ["v0", "v2", "v1", ["v3"], "v4"]} # move backward [{"p": ["k", 3, 1], "ld": "v4"}] [{"p": ["k", 1],"lm": 2}] [{"p": ["k", 3, 1], "ld": "v4"}] [{"p": ["k", 1],"lm": 2}] # origin {"k": ["v0", ["v1", "v5"], "v2", "v3", "v4"]} # new_op effect: {"k": ["v0", ["v1"], "v2", "v3", "v4"]} # base_op effect: {"k": ["v0", "v2", "v3", ["v1", "v5"], "v4"]} # expected result: {"k": ["v0", "v2", "v3", ["v1"], "v4"]} # move backward [{"p": ["k", 1, 1], "ld": "v4"}] [{"p": ["k", 1],"lm": 3}] [{"p": ["k", 3, 1], "ld": "v4"}] [{"p": ["k", 1],"lm": 3}] ## replace conflict with move # origin {"k": ["v0", "v1", "v2", "v3"]} # {"k": ["v5", "v1", "v2", "v3"]} # {"k": ["v0", "v3", "v1", "v2"]} # {"k": ["v5", "v3", "v1", "v2"]} [{"p": ["k", 0], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 0], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", "v3"]} # {"k": ["v0", "v1", "v5", "v3"]} # {"k": ["v0", "v3", "v1", "v2"]} # {"k": ["v0", "v3", "v1", "v5"]} [{"p": ["k", 2], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 3], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", "v3"]} # {"k": ["v0", "v1", "v2", "v5"]} # {"k": ["v0", "v3", "v1", "v2"]} # {"k": ["v0", "v5", "v1", "v2"]} [{"p": ["k", 3], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", "v3"]} # {"k": ["v0", "v1", "v2", "v5"]} # {"k": ["v2", "v1", "v2", "v3"]} # {"k": ["v2", "v1", "v2", "v5"]} [{"p": ["k", 3], "ld": "v4", "li":"v5"}] [{"p": ["k", 2],"lm": 0}] [{"p": ["k", 3], "ld": "v4", "li":"v5"}] [{"p": ["k", 2],"lm": 0}] # origin {"k": [["v0", "v1"], "v1", "v2", "v3", "v4"]} # new_op effect: {"k": [["v0", "v5"], "v1", "v2", "v3", "v4"]} # base_op effect: {"k": [["v0", "v5"], "v3", "v1", "v2", "v4"]} # expected result: {"k": [["v0", "v5"], "v3", "v1", "v2", "v4"]} [{"p": ["k", 0, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 0, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", ["v1", "v5"], "v2", "v3", "v4"]} # new_op effect: {"k": ["v0", ["v1", "v5"], "v2", "v3", "v4"]} # base_op effect: {"k": ["v0", "v3", ["v1", "v5"], "v2", "v4"]} # expected result: {"k": ["v0", "v3", ["v1", "v5"], "v2", "v4"]} [{"p": ["k", 1, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 2, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", ["v2","v5"], "v3", "v4"]} # new_op effect: {"k": ["v0", "v1", ["v2", "v5"] "v3", "v4"]} # base_op effect: {"k": ["v0", "v3", "v1", ["v2","v5"],"v4"]} # expected result: {"k": ["v0", "v3", "v1", ["v2", "v5"],"v4"]} [{"p": ["k", 2, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 3, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", ["v3", "v5"], "v4"]} # new_op effect: {"k": ["v0", "v1", "v2", ["v3", "v5"], "v4"]} # base_op effect: {"k": ["v0", ["v3", "v5"], "v1", "v2", "v4"]} # expected result: {"k": ["v0", ["v3", "v5"], "v1", "v2", "v4"]} [{"p": ["k", 3, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 1, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", "v3", ["v4", "v5"]]} # new_op effect: {"k": ["v0", "v1", "v2", "v3", ["v4"]]} # base_op effect: {"k": ["v0", "v3", "v1", "v2", ["v4", "v5"]]} # expected result: {"k": ["v0", "v3", "v1", "v2", ["v4"]]} [{"p": ["k", 4, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] [{"p": ["k", 4, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 3],"lm": 1}] # origin {"k": ["v0", "v1", "v2", ["v3", "v5"], "v4"]} # new_op effect: {"k": ["v0", "v1", "v2", ["v3", "v5"], "v4"]} # base_op effect: {"k": ["v0", "v2", ["v3", "v5"], "v1", "v4"]} # expected result: {"k": ["v0", "v2", ["v3", "v5"], "v1", "v4"]} # move backward [{"p": ["k", 3, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 1],"lm": 3}] [{"p": ["k", 2, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 1],"lm": 3}] # origin {"k": ["v0", "v1", "v2", ["v3", "v5"], "v4"]} # new_op effect: {"k": ["v0", "v1", "v2", ["v3", "v5"], "v4"]} # base_op effect: {"k": ["v0", "v2", "v1", ["v3", "v5"], "v4"]} # expected result: {"k": ["v0", "v2", "v1", ["v3", "v5"], "v4"]} # move backward [{"p": ["k", 3, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 1],"lm": 2}] [{"p": ["k", 3, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 1],"lm": 2}] # origin {"k": ["v0", ["v1", "v5"], "v2", "v3", "v4"]} # new_op effect: {"k": ["v0", ["v1", "v5"], "v2", "v3", "v4"]} # base_op effect: {"k": ["v0", "v2", "v3", ["v1", "v5"], "v4"]} # expected result: {"k": ["v0", "v2", "v3", ["v1", "v5"], "v4"]} # move backward [{"p": ["k", 1, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 1],"lm": 3}] [{"p": ["k", 3, 1], "ld": "v4", "li":"v5"}] [{"p": ["k", 1],"lm": 3}] # move conflict with move ## noop [{"p": ["k", 0], "lm": 0}] [{"p": ["k", 0], "lm": 1}] [{"p": ["k", 0], "lm": 0}] [{"p": ["k", 0], "lm": 1}] ## same move [{"p": ["k", 0], "lm": 1}] [{"p": ["k", 0], "lm": 1}] [] [] [{"p": ["k", 1], "lm": 0}] [{"p": ["k", 1], "lm": 0}] [] [] ## move same value to different place [{"p": ["k", 0], "lm": 1}] [{"p": ["k", 0], "lm": 2}] [{"p": ["k", 2], "lm": 1}] [] [{"p": ["k", 4], "lm": 2}] [{"p": ["k", 4], "lm": 3}] [{"p": ["k", 3], "lm": 2}] [] ## non-overlap move [{"p": ["k", 0], "lm": 1}] [{"p": ["k", 3], "lm": 4}] [{"p": ["k", 0], "lm": 1}] [{"p": ["k", 3], "lm": 4}] [{"p": ["k", 0], "lm": 1}] [{"p": ["k", 4], "lm": 3}] [{"p": ["k", 0], "lm": 1}] [{"p": ["k", 4], "lm": 3}] [{"p": ["k", 1], "lm": 0}] [{"p": ["k", 3], "lm": 4}] [{"p": ["k", 1], "lm": 0}] [{"p": ["k", 3], "lm": 4}] [{"p": ["k", 1], "lm": 0}] [{"p": ["k", 4], "lm": 3}] [{"p": ["k", 1], "lm": 0}] [{"p": ["k", 4], "lm": 3}] ## overlap but inclusive # origin {"k", ["v0", "v1", "v2", "v3", "v4"]} # new_op effect: {"k", ["v1", "v2", "v3", "v4", "v0"]} # base_op effect: {"k", ["v0", "v1", "v3", "v2", "v4"]} # # expected result: {"k", ["v1", "v3", "v2", "v4", "v0"]} [{"p": ["k", 0], "lm": 4}] [{"p": ["k", 2], "lm": 3}] [{"p": ["k", 0], "lm": 4}] [{"p": ["k", 1], "lm": 2}] [{"p": ["k", 0], "lm": 4}] [{"p": ["k", 3], "lm": 2}] [{"p": ["k", 0], "lm": 4}] [{"p": ["k", 2], "lm": 1}] # origin {"k", ["v0", "v1", "v2", "v3", "v4"]} # new_op effect: {"k", ["v4", "v0", "v1", "v2", "v3"]} # base_op effect: {"k", ["v0", "v1", "v3", "v2", "v4"]} # # expected result: {"k", ["v4", "v0", "v1", "v3", "v2"]} [{"p": ["k", 4], "lm": 0}] [{"p": ["k", 2], "lm": 3}] [{"p": ["k", 4], "lm": 0}] [{"p": ["k", 3], "lm": 4}] [{"p": ["k", 4], "lm": 0}] [{"p": ["k", 3], "lm": 2}] [{"p": ["k", 4], "lm": 0}] [{"p": ["k", 4], "lm": 3}] [{"p": ["k", 4], "lm": 0}] [{"p": ["k", 3], "lm": 0}] [{"p": ["k", 4], "lm": 0}] [{"p": ["k", 4], "lm": 1}] ## exclusive intersect [{"p": ["k", 0], "lm": 3}] [{"p": ["k", 2], "lm": 4}] [{"p": ["k", 0], "lm": 2}] [{"p": ["k", 1], "lm": 4}] # origin {"k", ["v0", "v1", "v2", "v3", "v4"]} # new_op effect: {"k", ["v1", "v2", "v3", "v0", "v4"]} # base_op effect: {"k", ["v0", "v1", "v4", "v2", "v3"]} # expected result: {"k", ["v1", "v4", "v2", "v3", "v0"]} [{"p": ["k", 0], "lm": 3}] [{"p": ["k", 4], "lm": 2}] [{"p": ["k", 0], "lm": 4}] [{"p": ["k", 4], "lm": 1}] [{"p": ["k", 3], "lm": 0}] [{"p": ["k", 2], "lm": 4}] [{"p": ["k", 2], "lm": 0}] [{"p": ["k", 3], "lm": 4}] [{"p": ["k", 3], "lm": 0}] [{"p": ["k", 4], "lm": 2}] [{"p": ["k", 4], "lm": 0}] [{"p": ["k", 4], "lm": 3}] ## inclusive intersect # origin {"k", ["v0", "v1", "v2", "v3", "v4"]} # new_op effect: {"k", ["v1", "v2", "v3", "v0", "v4"]} # base_op effect: {"k", ["v3", "v0", "v1", "v2", "v4"]} # expected result: {"k", ["v3", "v1", "v2", "v0", "v4"]} [{"p": ["k", 0], "lm": 3}] [{"p": ["k", 3], "lm": 0}] [{"p": ["k", 1], "lm": 3}] [{"p": ["k", 2], "lm": 0}] # origin {"k", ["v0", "v1", "v2", "v3", "v4"]} # new_op effect: {"k", ["v1", "v2", "v3", "v0", "v4"]} # base_op effect: {"k", ["v0", "v1", "v2", "v4", "v3"]} # # expected result: {"k", ["v1", "v2", "v0", "v4", "v3"]} [{"p": ["k", 0], "lm": 3}] [{"p": ["k", 3], "lm": 4}] [{"p": ["k", 0], "lm": 2}] [{"p": ["k", 2], "lm": 4}]