wrapper for demo.js