Pure JS is functional