refactor screen. add base logic
add blocking screen