private Object FindInScope(UnresolvedReference unresolvedReference, ProcessBlockImpl scope) { Object referencedObject = null; if (scope != null) { ReferencableObject referenceType = new ReferencableObject(scope, unresolvedReference.DestinationType); IDictionary referencables = (IDictionary) _referencableObjects[referenceType]; if ((referencables != null) && (referencables.Contains(unresolvedReference.DestinationName))) { referencedObject = referencables[unresolvedReference.DestinationName]; } else { referencedObject = FindInScope(unresolvedReference, scope.ParentBlock); } } return referencedObject; }