it // you must return from state handler some other state as a result of this one or null if you want to complete the chain
}
onCommand("start") {
startChain(StateRealization(it.chat.id)) // starting of chain with StateRealization state
}
}
```
Currently, for the states there is only one restriction - your state must implements `State` interface and override `context` to define it. It may be important that `context` will be used under the hood for comparison with contexts of other states in some situations in it may be important to correctly realize `equals` method.
It is important, that all other methods are the same as for [BehaviourBuilder](../tgbotapi.behaviour_builder/README.md).