public static AssignToMember_c resolveInstance(
      ModelRoot modelRoot,
      java.util.UUID p_m_statement_id,
      java.util.UUID p_m_r_value_id,
      java.util.UUID p_m_l_value_id,
      int p_m_attributelinenumber,
      int p_m_attributecolumn) {
    InstanceList instances = modelRoot.getInstanceList(AssignToMember_c.class);
    AssignToMember_c source = null;
    synchronized (instances) {
      Object[] key = {p_m_statement_id};
      source = (AssignToMember_c) instances.get(key);
      if (source != null && !modelRoot.isCompareRoot()) {
        source.convertFromProxy();
        source.batchUnrelate();
        // pre-process the uuid so that we re-use null uuid instance rather then creating a new one.
        source.m_statement_id = IdAssigner.preprocessUUID(p_m_statement_id);
        // pre-process the uuid so that we re-use null uuid instance rather then creating a new one.
        source.m_r_value_id = IdAssigner.preprocessUUID(p_m_r_value_id);
        source.m_attributelinenumber = p_m_attributelinenumber;
        source.m_attributecolumn = p_m_attributecolumn;
        // pre-process the uuid so that we re-use null uuid instance rather then creating a new one.
        source.m_l_value_id = IdAssigner.preprocessUUID(p_m_l_value_id);

        return source;
      }
    }
    // there is no instance matching the id
    AssignToMember_c new_inst =
        new AssignToMember_c(
            modelRoot,
            p_m_statement_id,
            p_m_r_value_id,
            p_m_l_value_id,
            p_m_attributelinenumber,
            p_m_attributecolumn);
    return new_inst;
  }