support source URL argument