added preprocess_url