#[macro_use] extern crate lazy_static;
use crate::utils::{parse_url, check_status, swap_www};
pub mod utils;
pub async fn return_url(url: String) -> Option<String> {
match parse_url(url.clone(), true) {
Some(u) => {
match check_status(&u).await {
Some(s) => Some(s),
None => {
match check_status(&swap_www(&u).await).await {
Some(s2) => Some(s2),
None => {
match parse_url(url, false) {
Some(u2) => {
match check_status(&u2).await {
Some(s3) => Some(s3),
None => {
match check_status(&swap_www(&u2).await).await {
Some(s4) => Some(s4),
None => None
}
}
}
}
None => None
}
}
}
}
}
}
None => None
}
}