https://wnhlee.dev/posts/lexical-state-updates/