allow url lib (need refactor)