This “shadow state” is necessary so that we can compare against it to determine if any modifications were made.
Optimizations to consider:
- only store the JSON.stringify() version and compare against that
- only store statements for the property we’re interested in