rem: else {
add: } else {
context: static Scheme_Object *read_variable(Scheme_Object *obj){  Scheme_Env *env;  env = scheme_get_env(NULL);  if (!SCHEME_SYMBOLP(obj)) {    /* Find variable from module. */    Scheme_Object *modname, *varname;    int mod_phase = 0;    if (!SCHEME_PAIRP(obj)) return NULL;    modname = SCHEME_CAR(obj);        if (SCHEME_INTP(modname)) {      mod_phase = SCHEME_INT_VAL(modname);      if (mod_phase != 1) return NULL;      obj = SCHEME_CDR(obj);      if (!SCHEME_PAIRP(obj)) return NULL;      modname = SCHEME_CAR(obj);    }    varname = SCHEME_CDR(obj);    if (SAME_OBJ(modname, kernel_symbol) && !mod_phase)      return (Scheme_Object *)scheme_global_bucket(varname, scheme_initial_env);    else {      Module_Variable *mv;      Scheme_Object *insp;      insp = scheme_get_param(scheme_current_config(), MZCONFIG_CODE_INSPECTOR);            mv = MALLOC_ONE_TAGGED(Module_Variable);      mv->so.type = scheme_module_variable_type;            mv->modidx = modname;      mv->sym = varname;      mv->insp = insp;      mv->pos = -1;      mv->mod_phase = mod_phase;      return (Scheme_Object *)mv;    }  }  return (Scheme_Object *)scheme_global_bucket(obj, env);}