private IFigure Mathline_Figure_Helper_Test(IMultemic str, MathlineMockModel fom)
        {
            IFigure rts = str.NewFigure();

            for (int i = 1; i < str.Rubrics.Count; i++)
            {
                var r = str.Rubrics[i].RubricInfo;
                if (r.MemberType == MemberTypes.Field)
                {
                    var fi = fom.GetType().GetField(((FieldInfo)((MemberRubric)r).RubricInfo).Name);
                    if (fi != null)
                    {
                        rts[r.Name] = fi.GetValue(fom);
                    }
                }
                if (r.MemberType == MemberTypes.Property)
                {
                    var pi = fom.GetType().GetProperty(((PropertyInfo)((MemberRubric)r).RubricInfo).Name);
                    if (pi != null)
                    {
                        rts[r.Name] = pi.GetValue(fom);
                    }
                }
            }

            return(rts);
        }
        public MathlineTest()
        {
            instFig = new InstantFigure(typeof(MathlineMockModel).GetMembers().Select(m => m.MemberType == MemberTypes.Field ? m :
                                                                                      m.MemberType == MemberTypes.Property ? m :
                                                                                      null).Where(p => p != null).ToArray(),
                                        "InstantFigure_MemberRubric_FieldsAndPropertiesModel");

            instMtic = new InstantMultemic(instFig, "InstantMultemic_Mathline_Test");

            spcMtic = instMtic.New();

            MathlineMockModel fom = new MathlineMockModel();

            for (int i = 0; i < 250 * 1000; i++)
            {
                var f = Mathline_Figure_Helper_Test(spcMtic, fom);
                f["NetPrice"] = (double)f["NetPrice"] + i;
                f["NetCost"]  = (double)f["NetPrice"] / 2;
                spcMtic.Add((long)int.MaxValue + i, f);
            }
        }