private ExternalValueExpression DeriveMemberAccessParameter(ExternalValueExpression oldPrm, MemberInfo memberInfo, TranslationContext context)
 {
     MemberExpression newSource = Expression.MakeMemberAccess(oldPrm.SourceExpression, memberInfo);
       Expression safeNewSource = newSource;
       if(!memberInfo.IsStaticMember() && oldPrm.Type.IsInterface)
     safeNewSource = MakeSafeEntityParameterMemberAccess(newSource);
       return DeriveInputParameter(oldPrm, safeNewSource, context);
 }