pub unsafe extern "C" fn string_substring( p1: String, p2: String, p3: c_int, p4: c_int, ) -> *mut c_char