Program: 74773
Project: 74773
Buggy source:
/** 
 * @return True if this nested actor is ready to be created.
 * @exception PtalonRuntimeException If there isproblem accessing any parameters.
 */
public boolean isReady() throws PtalonRuntimeException {
  for (  String portName : _unknownLeftSides.keySet()) {
    if (evaluateString(_unknownLeftSides.get(portName)) == null) {
      return false;
    }
  }
  for (  String portName : _unknownExpressions.keySet()) {
    if (evaluateString(_unknownExpressions.get(portName)) == null) {
      return false;
    }
  }
  try {
    if (_getType(_symbol).equals("String_Node_Str")) {
      PtalonParameter param=_actor.getPtalonParameter(_symbol);
      if (!param.hasValue()) {
        return false;
      }
    }
 else     if (!(_getType(_symbol).equals("String_Node_Str") || _getType(_symbol).equals("String_Node_Str"))) {
      throw new PtalonRuntimeException("String_Node_Str" + _symbol);
    }
    for (    String bool : _boolParams) {
      PtalonBoolParameter param=(PtalonBoolParameter)_actor.getAttribute(getMappedName(bool));
      if (!param.hasValue()) {
        return false;
      }
    }
    for (    String integer : _intParams) {
      PtalonIntParameter param=(PtalonIntParameter)_actor.getAttribute(getMappedName(integer));
      if (!param.hasValue()) {
        return false;
      }
    }
    for (    ActorTree child : _children) {
      if (!child.isReady()) {
        return false;
      }
    }
    return true;
  }
 catch (  Exception e) {
    throw new PtalonRuntimeException("String_Node_Str");
  }
}

Fixed version (ground truth):
/** 
 * @return True if this nested actor is ready to be created.
 * @exception PtalonRuntimeException If there isproblem accessing any parameters.
 */
public boolean isReady() throws PtalonRuntimeException {
  for (  String portName : _unknownLeftSides.keySet()) {
    String evaluation=evaluateString(_unknownLeftSides.get(portName));
    if (evaluation == null) {
      return false;
    }
    try {
      if (_getType(_symbol).equals("String_Node_Str")) {
        String portType="String_Node_Str";
        try {
          portType=_getType(evaluation);
        }
 catch (        PtalonScopeException e) {
          continue;
        }
        if (portType.equals("String_Node_Str")) {
          if (!_transparentRelations.containsKey(evaluation)) {
            return false;
          }
        }
      }
    }
 catch (    PtalonScopeException e) {
      throw new PtalonRuntimeException("String_Node_Str",e);
    }
  }
  for (  String portName : _unknownExpressions.keySet()) {
    if (evaluateString(_unknownExpressions.get(portName)) == null) {
      return false;
    }
  }
  for (  String transparency : _transparentLeftHandSides.keySet()) {
    if (!_transparentRelations.containsKey(transparency)) {
      return false;
    }
    String connectType="String_Node_Str";
    try {
      connectType=_getType(_transparentLeftHandSides.get(transparency));
    }
 catch (    PtalonScopeException e) {
      continue;
    }
    if (connectType.equals("String_Node_Str") && !_transparentRelations.containsKey(_transparentLeftHandSides.get(transparency))) {
      return false;
    }
  }
  try {
    if (_getType(_symbol).equals("String_Node_Str")) {
      PtalonParameter param=_actor.getPtalonParameter(_symbol);
      if (!param.hasValue()) {
        return false;
      }
    }
 else     if (!(_getType(_symbol).equals("String_Node_Str") || _getType(_symbol).equals("String_Node_Str"))) {
      throw new PtalonRuntimeException("String_Node_Str" + _symbol);
    }
    for (    ActorTree child : _children) {
      if (!child.isReady()) {
        return false;
      }
    }
    return true;
  }
 catch (  Exception e) {
    throw new PtalonRuntimeException("String_Node_Str");
  }
}