rebuilt js (tests not updated)