let inter_b s1 s2 =
  let rec loop s1 s =
    match s1 with
        [] -> s
      | e::s1' ->
          (loop s1' (if (List.mem e s2) then (e::s) else s))
  in
    loop s1 []