major rework with binding and examples