anchor.diff:  }
   -----------------------------------
   
  -The only way to modify the State is by applying a transition (see below).
  +The only way to modify the State is by applying a *transition* (see below).
   
   === Render
   
  -Render is a view of the state. Render is a function which takes state as the argument and returns DOM. Korolev has its own DSL to define templates using Scala code. Do not be afraid, you will quickly get used to it.
  +Render is a view of the state. Render is a function which takes state as an argument and returns a DOM. Korolev has its own DSL to define templates using Scala code. Do not be afraid, you will quickly get used to it.
   
   [source,scala]
   -----------------------------------
  
positive.code: 
  === Principles
  
  1. Thin client. Let's be honest, modern JavaScript applications are too greedy. Every JavaScript developer thinks that his page is special. But the user has a different opinion. He opens dozens of tabs. Each tab contains a ton of code, and this works very slowly. So we make our JavaScript bridge as lightweight as possible.
  
  2. Immutable and pure. Really, we don't need mutability even on the frontend. Especially on the frontend. The majority of modern JavaScript frameworks try to be functional. So we do.
  
  3. Lack of dependencies. Korolev does not impose to use cats, scalaz, Akka, or futures from the standard library. Use what you want. Korolev tries to give a way to integrate itself into any environment.
  
  === Quick start
  
  
negative.code:             user <- authService.authorize(login, password)
              _ <- access.transition {
                case Anonymous(deviceId) =>
                  Authorized(deviceId, user)
              }
            } yield ()
          }
  