move dsl.js to top level