/// <summary>
            /// method calling the analysis of containers, wich is preceded by a partition analysis of containers
            /// </summary>
            public override IMethodResult <Variable> Analyze <Local, Parameter, Method, Field, Property, Type, Attribute, Assembly, Expression, Variable>(
                string fullMethodName,
                IMethodDriver <APC, Local, Parameter, Method, Field, Property, Type, Attribute, Assembly, Expression, Variable, ILogOptions> mdriver,
                IFactQuery <BoxedExpression, Variable> factQuery)
            // where Variable : IEquatable<Variable>
            // where Expression : IEquatable<Expression>
            // where Type : IEquatable<Type>
            {
                //IMethodResult<Variable> partitions = AnalysisWrapper.RunPartitionAnalysis(fullMethodName, mdriver, this.options); //t-maper@54: do I need a different set of options for the partition analyis or I mixed it with the options of Container Analysis?

                //return AnalysisWrapper.RunContainerAnalysis(fullMethodName, mdriver, partitions, this.options); //t-maper@54: this.options[0] ?

                var partitionsResult = AnalysisWrapper.RunPartitionAnalysis(fullMethodName, mdriver, this.options, factQuery);

                var containersResult = AnalysisWrapper.RunContainerAnalysis(fullMethodName, mdriver, partitionsResult, this.options);

                containersResult.MethodAnalysis = this; // Mic: keep track of the analysis that gave the result
                return(containersResult);
                //return partitionsResult;
            }