all javascript work