New URL-based constructor