fn partition_source(s: &str) -> (String, String, String)