Added pure JS support