needs non-local urls (js d'oh)