1. A method comprising: accessing encoded data which comprise at least two blocks; compiling a list of changes to the encoded data that include a direct change to a block; determining motion character of a non-immediate block, non-immediate blocks being adjacent to an immediate block that are immediately adjacent to the block; determining change to the immediate block based on original motion character of the block and the non-immediate block and the motion character of the block that would result from the application of the change; storing the change to the list if the change does not cause a difference to the immediate block; and evaluating other potential changes if other potential changes are available, wherein the other potential changes are subjected to process steps that are the same as a prior change.