Fixes: State design pattern.