updates to sem.js