let rec all_keys_visible fm keys = match keys with
  | [] -> true
  | k :: keys -> (key_visible fm k) && (all_keys_visible fm keys)