simplify demo
decouple