add javascript magic
add threading