## groceries ### Instructions Create a function called `insert` that inserts a new element at the end of the Vec And another function `at_index` that returns the value found at the index passed as an argument ### Notions [Common Collections]( https://doc.rust-lang.org/stable/book/ch08-00-common-collections.html) ### Expected Functions ```rust pub fn insert(vec: &mut Vec, val: String) { } pub fn at_index(vec: &Vec, index: ) -> String { } ``` ### Usage Here is a possible program to test your function: ```rust use groceries::{insert, at_index} fn main() { let mut groceries = vec![ "yogurt".to_string(), "panetone".to_string(), "bread".to_string(), "cheese".to_string(), ]; insert(&mut groceries, String::from("nuts")); println!("The groceries list now = {:?}", &groceries); println!( "The second element of the grocery list is {:?}", at_index(&groceries, 1) ); } ``` And its output: ```console student@ubuntu:~/[[ROOT]]/test$ cargo run The groceries list now = ["yogurt", "panetone", "bread", "cheese", "nuts"] The second element of the grocery list is "panetone" student@ubuntu:~/[[ROOT]]/test$ ```