let get_value mmap_id =
  let immediate_value = Globals.value_table#get_value mmap_id in
    match immediate_value with
        If_const maybe_pointer ->
          begin
            try
              begin
                match (Globals.type_table#get_type maybe_pointer) with
(*                  Base(Pointer)*)
                  Set(_) ->
                    let pointer_global_var_id = Globals.global_var_id#get_id_of 0 maybe_pointer in
                    let pointer_mmap_id = Globals.memory_map#get_map pointer_global_var_id in
                    Globals.value_table#get_value pointer_mmap_id 
                | _ -> immediate_value
              end
            with
                _ -> immediate_value
          end
      | _ -> immediate_value