cpp preprocessing
lazy load widget.
  fixed bugs in caching directives
demo
demo
demo
demo
demo
demo
demo
demo
demo
demo
demo
demo
demo
demo
demo
demo
demo
demo