Find and fix the bug in this Rust solution
1impl Solution {2pub fn two_sum(nums: Vec<i32>, target: i32) -> Vec<i32> {3let mut map = HashMap::new();4for (i, n) in nums.into_iter().enumerate(){5let diff = target + n;6if let Some(&j) = map.get(&diff){7return vec![i as i32, j as i32];8}else{9map.insert(n, i);10}11}12unreachable!()13}14}