| CPC G06F 9/451 (2018.02) [G06F 3/0481 (2013.01); G06F 3/0482 (2013.01); G06F 16/2365 (2019.01); G06F 40/169 (2020.01); G06F 40/194 (2020.01); G06Q 10/101 (2013.01); G06F 8/65 (2013.01)] | 20 Claims |

|
1. A method comprising:
receiving, by a first client device, a first group of instructions from a server, the first group of instructions instructing the first client device to execute a first update to an element of a user interface presented on the first client device, the first group of instructions having been received by the server from a second client device, wherein the first group of instructions are generated based off a state of the element presented on a user interface of the second client device;
determining that the first group of instructions conflicts with a second group of instructions previously executed on the first client device, the second group of instructions having performed a previous update to the element of the user interface;
in response to determining that the first group of instructions conflicts with the second group of instructions:
transforming the first group of instructions based on the second group of instructions to generate a transformed first group of instructions;
causing the first client device to execute the transformed first group of instructions; and
transmitting the transformed first group of instructions to the server, wherein the server transmits the transformed first group of instructions to the second client device and cause the second client device to execute the transformed first group of instructions.
|