user widget (begin)