NOTE: I didn't bother to not use es6 features on this page, so if it doesn't work on your browser, why aren't you in the latest firefox?