language changes: ~"str" -> "str".to_owned().