E:\TrabalhoSuely\RoboDescompilado\Redistribuir\ZionRobot\Helpers\CQuery.cs E:\TrabalhoSuely\RoboDescompilado\CriarVerificar\ZionRobot\Helpers\CQuery.cs
using System; using System;
using System.Collections; using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Expressions; using System.Linq.Expressions;
using System.Runtime.CompilerServices; using System.Runtime.CompilerServices;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
using Microsoft.CSharp.RuntimeBinder; using Microsoft.CSharp.RuntimeBinder;
using mshtml; using mshtml;
   
namespace ZionRobot.Helpers namespace ZionRobot.Helpers
{ {
    // Token: 0x02000013 RID: 19     // Token: 0x0200000E RID: 14
    internal class CQuery     internal class CQuery
    {     {
        // Token: 0x0600006C RID: 108 RVA: 0x0000373C File Offset: 0x0000193C         // Token: 0x06000046 RID: 70 RVA: 0x00002DDC File Offset: 0x00000FDC
        public static bool CompareInnerHtmlByValue(IHTMLElement element, string value)         public static bool CompareInnerHtmlByValue(IHTMLElement element, string value)
        {         {
            return element.innerHTML == value;             return element.innerHTML == value;
        }         }
   
        // Token: 0x0600006D RID: 109 RVA: 0x0000375C File Offset: 0x0000195C         // Token: 0x06000047 RID: 71 RVA: 0x00002DFC File Offset: 0x00000FFC
        public static bool CompareInnerHtmlByElements(IHTMLElement element1, IHTMLElement element2)         public static bool CompareInnerHtmlByElements(IHTMLElement element1, IHTMLElement element2)
        {         {
            try             try
            {             {
                string aa = (element1 as HTMLDocument).body.innerText;                 string aa = (element1 as HTMLDocument).body.innerText;
                string bb = (element2 as HTMLDocument).body.innerText;                 string bb = (element2 as HTMLDocument).body.innerText;
            }             }
            catch (Exception ex)             catch (Exception ex)
            {             {
                throw;                 throw;
            }             }
            if (CQuery.<>o__2.<>p__2 == null)             if (CQuery.<>o__2.<>p__2 == null)
            {             {
                CQuery.<>o__2.<>p__2 = CallSite<Func<CallSite, object, HTMLDocument>>.Create(Binder.Convert(CSharpBinderFlags.ConvertExplicit, typeof(HTMLDocument), typeof(CQuery)));                 CQuery.<>o__2.<>p__2 = CallSite<Func<CallSite, object, HTMLDocument>>.Create(Binder.Convert(CSharpBinderFlags.ConvertExplicit, typeof(HTMLDocument), typeof(CQuery)));
            }             }
            Func<CallSite, object, HTMLDocument> target = CQuery.<>o__2.<>p__2.Target;             Func<CallSite, object, HTMLDocument> target = CQuery.<>o__2.<>p__2.Target;
            CallSite <>p__ = CQuery.<>o__2.<>p__2;             CallSite <>p__ = CQuery.<>o__2.<>p__2;
            if (CQuery.<>o__2.<>p__1 == null)             if (CQuery.<>o__2.<>p__1 == null)
            {             {
                CQuery.<>o__2.<>p__1 = CallSite<Func<CallSite, object, object>>.Create(Binder.GetMember(CSharpBinderFlags.None, "document", typeof(CQuery), new CSharpArgumentInfo[]                 CQuery.<>o__2.<>p__1 = CallSite<Func<CallSite, object, object>>.Create(Binder.GetMember(CSharpBinderFlags.None, "document", typeof(CQuery), new CSharpArgumentInfo[]
                {                 {
                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                }));                 }));
            }             }
            Func<CallSite, object, object> target2 = CQuery.<>o__2.<>p__1.Target;             Func<CallSite, object, object> target2 = CQuery.<>o__2.<>p__1.Target;
            CallSite <>p__2 = CQuery.<>o__2.<>p__1;             CallSite <>p__2 = CQuery.<>o__2.<>p__1;
            if (CQuery.<>o__2.<>p__0 == null)             if (CQuery.<>o__2.<>p__0 == null)
            {             {
                CQuery.<>o__2.<>p__0 = CallSite<Func<CallSite, object, object>>.Create(Binder.GetMember(CSharpBinderFlags.None, "body", typeof(CQuery), new CSharpArgumentInfo[]                 CQuery.<>o__2.<>p__0 = CallSite<Func<CallSite, object, object>>.Create(Binder.GetMember(CSharpBinderFlags.None, "body", typeof(CQuery), new CSharpArgumentInfo[]
                {                 {
                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                }));                 }));
            }             }
            string db = target(<>p__, target2(<>p__2, CQuery.<>o__2.<>p__0.Target(CQuery.<>o__2.<>p__0, element1.document))).body.innerText;             string db = target(<>p__, target2(<>p__2, CQuery.<>o__2.<>p__0.Target(CQuery.<>o__2.<>p__0, element1.document))).body.innerText;
            if (CQuery.<>o__2.<>p__5 == null)             if (CQuery.<>o__2.<>p__5 == null)
            {             {
                CQuery.<>o__2.<>p__5 = CallSite<Func<CallSite, object, HTMLDocument>>.Create(Binder.Convert(CSharpBinderFlags.ConvertExplicit, typeof(HTMLDocument), typeof(CQuery)));                 CQuery.<>o__2.<>p__5 = CallSite<Func<CallSite, object, HTMLDocument>>.Create(Binder.Convert(CSharpBinderFlags.ConvertExplicit, typeof(HTMLDocument), typeof(CQuery)));
            }             }
            Func<CallSite, object, HTMLDocument> target3 = CQuery.<>o__2.<>p__5.Target;             Func<CallSite, object, HTMLDocument> target3 = CQuery.<>o__2.<>p__5.Target;
            CallSite <>p__3 = CQuery.<>o__2.<>p__5;             CallSite <>p__3 = CQuery.<>o__2.<>p__5;
            if (CQuery.<>o__2.<>p__4 == null)             if (CQuery.<>o__2.<>p__4 == null)
            {             {
                CQuery.<>o__2.<>p__4 = CallSite<Func<CallSite, object, object>>.Create(Binder.GetMember(CSharpBinderFlags.None, "document", typeof(CQuery), new CSharpArgumentInfo[]                 CQuery.<>o__2.<>p__4 = CallSite<Func<CallSite, object, object>>.Create(Binder.GetMember(CSharpBinderFlags.None, "document", typeof(CQuery), new CSharpArgumentInfo[]
                {                 {
                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                }));                 }));
            }             }
            Func<CallSite, object, object> target4 = CQuery.<>o__2.<>p__4.Target;             Func<CallSite, object, object> target4 = CQuery.<>o__2.<>p__4.Target;
            CallSite <>p__4 = CQuery.<>o__2.<>p__4;             CallSite <>p__4 = CQuery.<>o__2.<>p__4;
            if (CQuery.<>o__2.<>p__3 == null)             if (CQuery.<>o__2.<>p__3 == null)
            {             {
                CQuery.<>o__2.<>p__3 = CallSite<Func<CallSite, object, object>>.Create(Binder.GetMember(CSharpBinderFlags.None, "body", typeof(CQuery), new CSharpArgumentInfo[]                 CQuery.<>o__2.<>p__3 = CallSite<Func<CallSite, object, object>>.Create(Binder.GetMember(CSharpBinderFlags.None, "body", typeof(CQuery), new CSharpArgumentInfo[]
                {                 {
                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                }));                 }));
            }             }
            string dbx = target3(<>p__3, target4(<>p__4, CQuery.<>o__2.<>p__3.Target(CQuery.<>o__2.<>p__3, element2.document))).body.innerText;             string dbx = target3(<>p__3, target4(<>p__4, CQuery.<>o__2.<>p__3.Target(CQuery.<>o__2.<>p__3, element2.document))).body.innerText;
            return element1.innerHTML == element2.innerHTML;             return element1.innerHTML == element2.innerHTML;
        }         }
   
        // Token: 0x0600006E RID: 110 RVA: 0x00003994 File Offset: 0x00001B94         // Token: 0x06000048 RID: 72 RVA: 0x00003034 File Offset: 0x00001234
        public static bool CompareInnerTextByValue(IHTMLElement element, string value)         public static bool CompareInnerTextByValue(IHTMLElement element, string value)
        {         {
            return element.innerText == value;             return element.innerText == value;
        }         }
   
        // Token: 0x0600006F RID: 111 RVA: 0x000039B4 File Offset: 0x00001BB4         // Token: 0x06000049 RID: 73 RVA: 0x00003054 File Offset: 0x00001254
        public static bool CompareInnerTextByElements(IHTMLElement element1, IHTMLElement element2)         public static bool CompareInnerTextByElements(IHTMLElement element1, IHTMLElement element2)
        {         {
            return element1.innerText == element2.innerText;             return element1.innerText == element2.innerText;
        }         }
   
        // Token: 0x06000070 RID: 112 RVA: 0x000039D8 File Offset: 0x00001BD8         // Token: 0x0600004A RID: 74 RVA: 0x00003078 File Offset: 0x00001278
        public static List<IHTMLElement> Find(string selector, List<IHTMLElementCollection> listElements)         public static List<IHTMLElement> Find(string selector, List<IHTMLElementCollection> listElements)
        {         {
            List<IHTMLElement> result = new List<IHTMLElement>();             List<IHTMLElement> result = new List<IHTMLElement>();
            bool cont = true;             bool cont = true;
            foreach (string tag in selector.Split(new char[]             foreach (string tag in selector.Split(new char[]
            {             {
                '>'                  '>' 
            }).ToList<string>())             }).ToList<string>())
            {             {
                MatchCollection tmp = Regex.Matches(tag, CQuery.pattern);                 MatchCollection tmp = Regex.Matches(tag, CQuery.pattern);
                int count = 0;                 int count = 0;
                foreach (object obj in tmp)                 foreach (object obj in tmp)
                {                 {
                    Match match = (Match)obj;                     Match match = (Match)obj;
                    count++;                     count++;
                    char c = match.Value[0];                     char c = match.Value[0];
                    char c2 = c;                     char c2 = c;
                    if (c2 != ':')                     if (c2 != ':')
                    {                     {
                        if (c2 != '[')                         if (c2 != '[')
                        {                         {
                            string[] parts2 = match.Value.ToUpper().Split(";".ToCharArray(), 2);                             string[] parts2 = match.Value.ToUpper().Split(";".ToCharArray(), 2);
                            bool flag = result.Count == 0;                             bool flag = result.Count == 0;
                            if (flag)                             if (flag)
                            {                             {
                                foreach (IHTMLElementCollection elements in listElements)                                 foreach (IHTMLElementCollection elements in listElements)
                                {                                 {
                                    bool flag2 = parts2.Count<string>() == 1;                                     bool flag2 = parts2.Count<string>() == 1;
                                    if (flag2)                                     if (flag2)
                                    {                                     {
                                        if (CQuery.<>o__5.<>p__21 == null)                                         if (CQuery.<>o__5.<>p__21 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__21 = CallSite<Action<CallSite, List<IHTMLElement>, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.ResultDiscarded, "AddRange", null, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__21 = CallSite<Action<CallSite, List<IHTMLElement>, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.ResultDiscarded, "AddRange", null, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        Action<CallSite, List<IHTMLElement>, object> target = CQuery.<>o__5.<>p__21.Target;                                         Action<CallSite, List<IHTMLElement>, object> target = CQuery.<>o__5.<>p__21.Target;
                                        CallSite <>p__ = CQuery.<>o__5.<>p__21;                                         CallSite <>p__ = CQuery.<>o__5.<>p__21;
                                        List<IHTMLElement> arg = result;                                         List<IHTMLElement> arg = result;
                                        if (CQuery.<>o__5.<>p__20 == null)                                         if (CQuery.<>o__5.<>p__20 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__20 = CallSite<Func<CallSite, Type, object, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.None, "getChildren", null, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__20 = CallSite<Func<CallSite, Type, object, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.None, "getChildren", null, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType | CSharpArgumentInfoFlags.IsStaticType, null),                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType | CSharpArgumentInfoFlags.IsStaticType, null),
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        target(<>p__, arg, CQuery.<>o__5.<>p__20.Target(CQuery.<>o__5.<>p__20, typeof(CQuery), elements.tags(match.Value)));                                         target(<>p__, arg, CQuery.<>o__5.<>p__20.Target(CQuery.<>o__5.<>p__20, typeof(CQuery), elements.tags(match.Value)));
                                    }                                     }
                                    else                                     else
                                    {                                     {
                                        if (CQuery.<>o__5.<>p__23 == null)                                         if (CQuery.<>o__5.<>p__23 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__23 = CallSite<Action<CallSite, List<IHTMLElement>, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.ResultDiscarded, "AddRange", null, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__23 = CallSite<Action<CallSite, List<IHTMLElement>, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.ResultDiscarded, "AddRange", null, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        Action<CallSite, List<IHTMLElement>, object> target2 = CQuery.<>o__5.<>p__23.Target;                                         Action<CallSite, List<IHTMLElement>, object> target2 = CQuery.<>o__5.<>p__23.Target;
                                        CallSite <>p__2 = CQuery.<>o__5.<>p__23;                                         CallSite <>p__2 = CQuery.<>o__5.<>p__23;
                                        List<IHTMLElement> arg2 = result;                                         List<IHTMLElement> arg2 = result;
                                        if (CQuery.<>o__5.<>p__22 == null)                                         if (CQuery.<>o__5.<>p__22 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__22 = CallSite<Func<CallSite, Type, object, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.None, "getChildren", null, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__22 = CallSite<Func<CallSite, Type, object, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.None, "getChildren", null, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType | CSharpArgumentInfoFlags.IsStaticType, null),                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType | CSharpArgumentInfoFlags.IsStaticType, null),
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        target2(<>p__2, arg2, CQuery.<>o__5.<>p__22.Target(CQuery.<>o__5.<>p__22, typeof(CQuery), elements.item(int.Parse(parts2[1]), Type.Missing)));                                         target2(<>p__2, arg2, CQuery.<>o__5.<>p__22.Target(CQuery.<>o__5.<>p__22, typeof(CQuery), elements.item(int.Parse(parts2[1]), Type.Missing)));
                                    }                                     }
                                }                                 }
                            }                             }
                            else                             else
                            {                             {
                                List<IHTMLElement> temp = new List<IHTMLElement>();                                 List<IHTMLElement> temp = new List<IHTMLElement>();
                                foreach (IHTMLElement element3 in result)                                 foreach (IHTMLElement element3 in result)
                                {                                 {
                                    bool flag3 = parts2.Count<string>() == 1;                                     bool flag3 = parts2.Count<string>() == 1;
                                    if (flag3)                                     if (flag3)
                                    {                                     {
                                        if (CQuery.<>o__5.<>p__25 == null)                                         if (CQuery.<>o__5.<>p__25 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__25 = CallSite<Action<CallSite, List<IHTMLElement>, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.ResultDiscarded, "AddRange", null, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__25 = CallSite<Action<CallSite, List<IHTMLElement>, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.ResultDiscarded, "AddRange", null, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        Action<CallSite, List<IHTMLElement>, object> target3 = CQuery.<>o__5.<>p__25.Target;                                         Action<CallSite, List<IHTMLElement>, object> target3 = CQuery.<>o__5.<>p__25.Target;
                                        CallSite <>p__3 = CQuery.<>o__5.<>p__25;                                         CallSite <>p__3 = CQuery.<>o__5.<>p__25;
                                        List<IHTMLElement> arg3 = temp;                                         List<IHTMLElement> arg3 = temp;
                                        if (CQuery.<>o__5.<>p__24 == null)                                         if (CQuery.<>o__5.<>p__24 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__24 = CallSite<Func<CallSite, Type, object, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.None, "getChildren", null, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__24 = CallSite<Func<CallSite, Type, object, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.None, "getChildren", null, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType | CSharpArgumentInfoFlags.IsStaticType, null),                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType | CSharpArgumentInfoFlags.IsStaticType, null),
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        target3(<>p__3, arg3, CQuery.<>o__5.<>p__24.Target(CQuery.<>o__5.<>p__24, typeof(CQuery), (element3.all as IHTMLElementCollection).tags(match.Value)));                                         target3(<>p__3, arg3, CQuery.<>o__5.<>p__24.Target(CQuery.<>o__5.<>p__24, typeof(CQuery), (element3.all as IHTMLElementCollection).tags(match.Value)));
                                    }                                     }
                                    else                                     else
                                    {                                     {
                                        if (CQuery.<>o__5.<>p__27 == null)                                         if (CQuery.<>o__5.<>p__27 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__27 = CallSite<Action<CallSite, List<IHTMLElement>, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.ResultDiscarded, "AddRange", null, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__27 = CallSite<Action<CallSite, List<IHTMLElement>, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.ResultDiscarded, "AddRange", null, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        Action<CallSite, List<IHTMLElement>, object> target4 = CQuery.<>o__5.<>p__27.Target;                                         Action<CallSite, List<IHTMLElement>, object> target4 = CQuery.<>o__5.<>p__27.Target;
                                        CallSite <>p__4 = CQuery.<>o__5.<>p__27;                                         CallSite <>p__4 = CQuery.<>o__5.<>p__27;
                                        List<IHTMLElement> arg4 = temp;                                         List<IHTMLElement> arg4 = temp;
                                        if (CQuery.<>o__5.<>p__26 == null)                                         if (CQuery.<>o__5.<>p__26 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__26 = CallSite<Func<CallSite, Type, object, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.None, "getChildren", null, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__26 = CallSite<Func<CallSite, Type, object, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.None, "getChildren", null, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType | CSharpArgumentInfoFlags.IsStaticType, null),                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType | CSharpArgumentInfoFlags.IsStaticType, null),
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        target4(<>p__4, arg4, CQuery.<>o__5.<>p__26.Target(CQuery.<>o__5.<>p__26, typeof(CQuery), (element3.all as IHTMLElementCollection).item(match.Value, parts2[1])));                                         target4(<>p__4, arg4, CQuery.<>o__5.<>p__26.Target(CQuery.<>o__5.<>p__26, typeof(CQuery), (element3.all as IHTMLElementCollection).item(match.Value, parts2[1])));
                                    }                                     }
                                }                                 }
                                result = temp;                                 result = temp;
                            }                             }
                            bool flag4 = result.Count == 0;                             bool flag4 = result.Count == 0;
                            if (flag4)                             if (flag4)
                            {                             {
                                cont = false;                                 cont = false;
                            }                             }
                        }                         }
                        else                         else
                        {                         {
                            string[] parts = match.Value.TrimStart(new char[]                             string[] parts = match.Value.TrimStart(new char[]
                            {                             {
                                '['                                  '[' 
                            }).TrimEnd(new char[]                             }).TrimEnd(new char[]
                            {                             {
                                ']'                                  ']' 
                            }).Split("=".ToCharArray(), 2);                             }).Split("=".ToCharArray(), 2);
                            bool flag5 = result.Count == 0;                             bool flag5 = result.Count == 0;
                            if (flag5)                             if (flag5)
                            {                             {
                                foreach (IHTMLElementCollection elements2 in listElements)                                 foreach (IHTMLElementCollection elements2 in listElements)
                                {                                 {
                                    foreach (object obj2 in elements2)                                     foreach (object obj2 in elements2)
                                    {                                     {
                                        IHTMLElement element2 = (IHTMLElement)obj2;                                         IHTMLElement element2 = (IHTMLElement)obj2;
                                        object attr = element2.getAttribute(parts[0], 0);                                         object attr = element2.getAttribute(parts[0], 0);
                                        if (CQuery.<>o__5.<>p__8 == null)                                         if (CQuery.<>o__5.<>p__8 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__8 = CallSite<Func<CallSite, object, bool>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsTrue, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__8 = CallSite<Func<CallSite, object, bool>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsTrue, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        Func<CallSite, object, bool> target5 = CQuery.<>o__5.<>p__8.Target;                                         Func<CallSite, object, bool> target5 = CQuery.<>o__5.<>p__8.Target;
                                        CallSite <>p__5 = CQuery.<>o__5.<>p__8;                                         CallSite <>p__5 = CQuery.<>o__5.<>p__8;
                                        if (CQuery.<>o__5.<>p__0 == null)                                         if (CQuery.<>o__5.<>p__0 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__0 = CallSite<Func<CallSite, object, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.NotEqual, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__0 = CallSite<Func<CallSite, object, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.NotEqual, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.Constant, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.Constant, null)
                                            }));                                             }));
                                        }                                         }
                                        object obj3 = CQuery.<>o__5.<>p__0.Target(CQuery.<>o__5.<>p__0, attr, null);                                         object obj3 = CQuery.<>o__5.<>p__0.Target(CQuery.<>o__5.<>p__0, attr, null);
                                        if (CQuery.<>o__5.<>p__4 == null)                                         if (CQuery.<>o__5.<>p__4 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__4 = CallSite<Func<CallSite, object, bool>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsFalse, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__4 = CallSite<Func<CallSite, object, bool>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsFalse, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        object obj4;                                         object obj4;
                                        if (!CQuery.<>o__5.<>p__4.Target(CQuery.<>o__5.<>p__4, obj3))                                         if (!CQuery.<>o__5.<>p__4.Target(CQuery.<>o__5.<>p__4, obj3))
                                        {                                         {
                                            if (CQuery.<>o__5.<>p__3 == null)                                             if (CQuery.<>o__5.<>p__3 == null)
                                            {                                             {
                                                CQuery.<>o__5.<>p__3 = CallSite<Func<CallSite, object, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.BinaryOperationLogical, ExpressionType.And, typeof(CQuery), new CSharpArgumentInfo[]                                                 CQuery.<>o__5.<>p__3 = CallSite<Func<CallSite, object, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.BinaryOperationLogical, ExpressionType.And, typeof(CQuery), new CSharpArgumentInfo[]
                                                {                                                 {
                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),
                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                                }));                                                 }));
                                            }                                             }
                                            Func<CallSite, object, object, object> target6 = CQuery.<>o__5.<>p__3.Target;                                             Func<CallSite, object, object, object> target6 = CQuery.<>o__5.<>p__3.Target;
                                            CallSite <>p__6 = CQuery.<>o__5.<>p__3;                                             CallSite <>p__6 = CQuery.<>o__5.<>p__3;
                                            object arg5 = obj3;                                             object arg5 = obj3;
                                            if (CQuery.<>o__5.<>p__2 == null)                                             if (CQuery.<>o__5.<>p__2 == null)
                                            {                                             {
                                                CQuery.<>o__5.<>p__2 = CallSite<Func<CallSite, object, object>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.Not, typeof(CQuery), new CSharpArgumentInfo[]                                                 CQuery.<>o__5.<>p__2 = CallSite<Func<CallSite, object, object>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.Not, typeof(CQuery), new CSharpArgumentInfo[]
                                                {                                                 {
                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                                }));                                                 }));
                                            }                                             }
                                            Func<CallSite, object, object> target7 = CQuery.<>o__5.<>p__2.Target;                                             Func<CallSite, object, object> target7 = CQuery.<>o__5.<>p__2.Target;
                                            CallSite <>p__7 = CQuery.<>o__5.<>p__2;                                             CallSite <>p__7 = CQuery.<>o__5.<>p__2;
                                            if (CQuery.<>o__5.<>p__1 == null)                                             if (CQuery.<>o__5.<>p__1 == null)
                                            {                                             {
                                                CQuery.<>o__5.<>p__1 = CallSite<Func<CallSite, DBNull, object, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.None, "Equals", null, typeof(CQuery), new CSharpArgumentInfo[]                                                 CQuery.<>o__5.<>p__1 = CallSite<Func<CallSite, DBNull, object, object>>.Create(Binder.InvokeMember(CSharpBinderFlags.None, "Equals", null, typeof(CQuery), new CSharpArgumentInfo[]
                                                {                                                 {
                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),
                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                                }));                                                 }));
                                            }                                             }
                                            obj4 = target6(<>p__6, arg5, target7(<>p__7, CQuery.<>o__5.<>p__1.Target(CQuery.<>o__5.<>p__1, DBNull.Value, attr)));                                             obj4 = target6(<>p__6, arg5, target7(<>p__7, CQuery.<>o__5.<>p__1.Target(CQuery.<>o__5.<>p__1, DBNull.Value, attr)));
                                        }                                         }
                                        else                                         else
                                        {                                         {
                                            obj4 = obj3;                                             obj4 = obj3;
                                        }                                         }
                                        object obj5 = obj4;                                         object obj5 = obj4;
                                        if (CQuery.<>o__5.<>p__7 == null)                                         if (CQuery.<>o__5.<>p__7 == null)
                                        {                                         {
                                            CQuery.<>o__5.<>p__7 = CallSite<Func<CallSite, object, bool>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsFalse, typeof(CQuery), new CSharpArgumentInfo[]                                             CQuery.<>o__5.<>p__7 = CallSite<Func<CallSite, object, bool>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsFalse, typeof(CQuery), new CSharpArgumentInfo[]
                                            {                                             {
                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                            }));                                             }));
                                        }                                         }
                                        object arg7;                                         object arg7;
                                        if (!CQuery.<>o__5.<>p__7.Target(CQuery.<>o__5.<>p__7, obj5))                                         if (!CQuery.<>o__5.<>p__7.Target(CQuery.<>o__5.<>p__7, obj5))
                                        {                                         {
                                            if (CQuery.<>o__5.<>p__6 == null)                                             if (CQuery.<>o__5.<>p__6 == null)
                                            {                                             {
                                                CQuery.<>o__5.<>p__6 = CallSite<Func<CallSite, object, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.BinaryOperationLogical, ExpressionType.And, typeof(CQuery), new CSharpArgumentInfo[]                                                 CQuery.<>o__5.<>p__6 = CallSite<Func<CallSite, object, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.BinaryOperationLogical, ExpressionType.And, typeof(CQuery), new CSharpArgumentInfo[]
                                                {                                                 {
                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),
                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                                }));                                                 }));
                                            }                                             }
                                            Func<CallSite, object, object, object> target8 = CQuery.<>o__5.<>p__6.Target;                                             Func<CallSite, object, object, object> target8 = CQuery.<>o__5.<>p__6.Target;
                                            CallSite <>p__8 = CQuery.<>o__5.<>p__6;                                             CallSite <>p__8 = CQuery.<>o__5.<>p__6;
                                            object arg6 = obj5;                                             object arg6 = obj5;
                                            if (CQuery.<>o__5.<>p__5 == null)                                             if (CQuery.<>o__5.<>p__5 == null)
                                            {                                             {
                                                CQuery.<>o__5.<>p__5 = CallSite<Func<CallSite, object, string, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.Equal, typeof(CQuery), new CSharpArgumentInfo[]                                                 CQuery.<>o__5.<>p__5 = CallSite<Func<CallSite, object, string, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.Equal, typeof(CQuery), new CSharpArgumentInfo[]
                                                {                                                 {
                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),
                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null)                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null)
                                                }));                                                 }));
                                            }                                             }
                                            arg7 = target8(<>p__8, arg6, CQuery.<>o__5.<>p__5.Target(CQuery.<>o__5.<>p__5, attr, parts[1]));                                             arg7 = target8(<>p__8, arg6, CQuery.<>o__5.<>p__5.Target(CQuery.<>o__5.<>p__5, attr, parts[1]));
                                        }                                         }
                                        else                                         else
                                        {                                         {
                                            arg7 = obj5;                                             arg7 = obj5;
                                        }                                         }
                                        bool flag6 = target5(<>p__5, arg7);                                         bool flag6 = target5(<>p__5, arg7);
                                        if (flag6)                                         if (flag6)
                                        {                                         {
                                            result.Add(element2);                                             result.Add(element2);
                                        }                                         }
                                    }                                     }
                                }                                 }
                            }                             }
                            else                             else
                            {                             {
                                bool flag7 = parts[0].ToUpper() == "CLASS";                                 bool flag7 = parts[0].ToUpper() == "CLASS";
                                if (flag7)                                 if (flag7)
                                {                                 {
                                    result = CQuery.searchByClass((from i in result                                     result = CQuery.searchByClass((from i in result
                                    where i.className != null && i.className != string.Empty                                     where i.className != null && i.className != string.Empty
                                    select i).ToList<IHTMLElement>(), parts[1]);                                     select i).ToList<IHTMLElement>(), parts[1]);
.                                    bool flag8 = result.Count == 0;  
                                    if (flag8)  
                                    {  
                                        cont = false;  
                                    }  
                                }                                 }
                                else                                 else
                                {                                 {
.                                    bool flag9 = parts[0].ToUpper() == "INNERTEXT";                                     bool flag8 = parts[0].ToUpper() == "INNERTEXT";
                                    if (flag9)                                     if (flag8)
                                    {                                     {
                                        result = CQuery.searchByInnerText(result, parts[1]);                                         result = CQuery.searchByInnerText(result, parts[1]);
.                                        bool flag10 = result.Count == 0;  
                                        if (flag10)  
                                        {  
                                            cont = false;  
                                        }  
                                    }                                     }
                                    else                                     else
                                    {                                     {
                                        try                                         try
                                        {                                         {
.                                            bool flag11 = parts.Count<string>() == 1;                                             bool flag9 = parts.Count<string>() == 1;
                                            if (!flag11)                                             if (!flag9)
                                            {                                             {
                                                IEnumerable<IHTMLElement> a = result.Where(delegate(IHTMLElement element)                                                 IEnumerable<IHTMLElement> a = result.Where(delegate(IHTMLElement element)
                                                {                                                 {
                                                    if (CQuery.<>o__5.<>p__10 == null)                                                     if (CQuery.<>o__5.<>p__10 == null)
                                                    {                                                     {
                                                        CQuery.<>o__5.<>p__10 = CallSite<Func<CallSite, object, bool>>.Create(Binder.Convert(CSharpBinderFlags.None, typeof(bool), typeof(CQuery)));                                                         CQuery.<>o__5.<>p__10 = CallSite<Func<CallSite, object, bool>>.Create(Binder.Convert(CSharpBinderFlags.None, typeof(bool), typeof(CQuery)));
                                                    }                                                     }
                                                    Func<CallSite, object, bool> target9 = CQuery.<>o__5.<>p__10.Target;                                                     Func<CallSite, object, bool> target9 = CQuery.<>o__5.<>p__10.Target;
                                                    CallSite <>p__9 = CQuery.<>o__5.<>p__10;                                                     CallSite <>p__9 = CQuery.<>o__5.<>p__10;
                                                    if (CQuery.<>o__5.<>p__9 == null)                                                     if (CQuery.<>o__5.<>p__9 == null)
                                                    {                                                     {
                                                        CQuery.<>o__5.<>p__9 = CallSite<Func<CallSite, object, string, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.Equal, typeof(CQuery), new CSharpArgumentInfo[]                                                         CQuery.<>o__5.<>p__9 = CallSite<Func<CallSite, object, string, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.Equal, typeof(CQuery), new CSharpArgumentInfo[]
                                                        {                                                         {
                                                            CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),                                                             CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),
                                                            CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null)                                                             CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null)
                                                        }));                                                         }));
                                                    }                                                     }
                                                    return target9(<>p__9, CQuery.<>o__5.<>p__9.Target(CQuery.<>o__5.<>p__9, element.getAttribute(parts[0], 0), parts[1]));                                                     return target9(<>p__9, CQuery.<>o__5.<>p__9.Target(CQuery.<>o__5.<>p__9, element.getAttribute(parts[0], 0), parts[1]));
                                                });                                                 });
                                                result = result.Where(delegate(IHTMLElement element)                                                 result = result.Where(delegate(IHTMLElement element)
                                                {                                                 {
                                                    if (CQuery.<>o__5.<>p__19 == null)                                                     if (CQuery.<>o__5.<>p__19 == null)
                                                    {                                                     {
                                                        CQuery.<>o__5.<>p__19 = CallSite<Func<CallSite, object, bool>>.Create(Binder.Convert(CSharpBinderFlags.None, typeof(bool), typeof(CQuery)));                                                         CQuery.<>o__5.<>p__19 = CallSite<Func<CallSite, object, bool>>.Create(Binder.Convert(CSharpBinderFlags.None, typeof(bool), typeof(CQuery)));
                                                    }                                                     }
                                                    Func<CallSite, object, bool> target9 = CQuery.<>o__5.<>p__19.Target;                                                     Func<CallSite, object, bool> target9 = CQuery.<>o__5.<>p__19.Target;
                                                    CallSite <>p__9 = CQuery.<>o__5.<>p__19;                                                     CallSite <>p__9 = CQuery.<>o__5.<>p__19;
                                                    if (CQuery.<>o__5.<>p__11 == null)                                                     if (CQuery.<>o__5.<>p__11 == null)
                                                    {                                                     {
                                                        CQuery.<>o__5.<>p__11 = CallSite<Func<CallSite, object, string, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.Equal, typeof(CQuery), new CSharpArgumentInfo[]                                                         CQuery.<>o__5.<>p__11 = CallSite<Func<CallSite, object, string, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.Equal, typeof(CQuery), new CSharpArgumentInfo[]
                                                        {                                                         {
                                                            CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),                                                             CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),
                                                            CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null)                                                             CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null)
                                                        }));                                                         }));
                                                    }                                                     }
                                                    object obj6 = CQuery.<>o__5.<>p__11.Target(CQuery.<>o__5.<>p__11, element.getAttribute(parts[0], 0), parts[1]);                                                     object obj6 = CQuery.<>o__5.<>p__11.Target(CQuery.<>o__5.<>p__11, element.getAttribute(parts[0], 0), parts[1]);
                                                    if (CQuery.<>o__5.<>p__18 == null)                                                     if (CQuery.<>o__5.<>p__18 == null)
                                                    {                                                     {
                                                        CQuery.<>o__5.<>p__18 = CallSite<Func<CallSite, object, bool>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsTrue, typeof(CQuery), new CSharpArgumentInfo[]                                                         CQuery.<>o__5.<>p__18 = CallSite<Func<CallSite, object, bool>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsTrue, typeof(CQuery), new CSharpArgumentInfo[]
                                                        {                                                         {
                                                            CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                             CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                                        }));                                                         }));
                                                    }                                                     }
                                                    object arg13;                                                     object arg13;
                                                    if (!CQuery.<>o__5.<>p__18.Target(CQuery.<>o__5.<>p__18, obj6))                                                     if (!CQuery.<>o__5.<>p__18.Target(CQuery.<>o__5.<>p__18, obj6))
                                                    {                                                     {
                                                        if (CQuery.<>o__5.<>p__17 == null)                                                         if (CQuery.<>o__5.<>p__17 == null)
                                                        {                                                         {
                                                            CQuery.<>o__5.<>p__17 = CallSite<Func<CallSite, object, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.BinaryOperationLogical, ExpressionType.Or, typeof(CQuery), new CSharpArgumentInfo[]                                                             CQuery.<>o__5.<>p__17 = CallSite<Func<CallSite, object, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.BinaryOperationLogical, ExpressionType.Or, typeof(CQuery), new CSharpArgumentInfo[]
                                                            {                                                             {
                                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),                                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),
                                                                CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                                 CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                                            }));                                                             }));
                                                        }                                                         }
                                                        Func<CallSite, object, object, object> target10 = CQuery.<>o__5.<>p__17.Target;                                                         Func<CallSite, object, object, object> target10 = CQuery.<>o__5.<>p__17.Target;
                                                        CallSite <>p__10 = CQuery.<>o__5.<>p__17;                                                         CallSite <>p__10 = CQuery.<>o__5.<>p__17;
                                                        object arg8 = obj6;                                                         object arg8 = obj6;
.                                                        bool flag15 = Regex.IsMatch(parts[1], "\\.\\*");                                                         bool flag13 = Regex.IsMatch(parts[1], "\\.\\*");
                                                        object arg12;                                                         object arg12;
.                                                        if (flag15)                                                         if (flag13)
                                                        {                                                         {
                                                            if (CQuery.<>o__5.<>p__16 == null)                                                             if (CQuery.<>o__5.<>p__16 == null)
                                                            {                                                             {
                                                                CQuery.<>o__5.<>p__16 = CallSite<Func<CallSite, bool, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.BinaryOperationLogical, ExpressionType.And, typeof(CQuery), new CSharpArgumentInfo[]                                                                 CQuery.<>o__5.<>p__16 = CallSite<Func<CallSite, bool, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.BinaryOperationLogical, ExpressionType.And, typeof(CQuery), new CSharpArgumentInfo[]
                                                                {                                                                 {
                                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),                                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null),
                                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                                                }));                                                                 }));
                                                            }                                                             }
                                                            Func<CallSite, bool, object, object> target11 = CQuery.<>o__5.<>p__16.Target;                                                             Func<CallSite, bool, object, object> target11 = CQuery.<>o__5.<>p__16.Target;
                                                            CallSite <>p__11 = CQuery.<>o__5.<>p__16;                                                             CallSite <>p__11 = CQuery.<>o__5.<>p__16;
.                                                            bool arg9 = flag15;                                                             bool arg9 = flag13;
                                                            if (CQuery.<>o__5.<>p__12 == null)                                                             if (CQuery.<>o__5.<>p__12 == null)
                                                            {                                                             {
                                                                CQuery.<>o__5.<>p__12 = CallSite<Func<CallSite, object, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.NotEqual, typeof(CQuery), new CSharpArgumentInfo[]                                                                 CQuery.<>o__5.<>p__12 = CallSite<Func<CallSite, object, object, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.None, ExpressionType.NotEqual, typeof(CQuery), new CSharpArgumentInfo[]
                                                                {                                                                 {
                                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),                                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),
                                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.Constant, null)                                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.Constant, null)
                                                                }));                                                                 }));
                                                            }                                                             }
                                                            object obj7 = CQuery.<>o__5.<>p__12.Target(CQuery.<>o__5.<>p__12, element.getAttribute(parts[0], 0), null);                                                             object obj7 = CQuery.<>o__5.<>p__12.Target(CQuery.<>o__5.<>p__12, element.getAttribute(parts[0], 0), null);
                                                            if (CQuery.<>o__5.<>p__15 == null)                                                             if (CQuery.<>o__5.<>p__15 == null)
                                                            {                                                             {
                                                                CQuery.<>o__5.<>p__15 = CallSite<Func<CallSite, object, bool>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsFalse, typeof(CQuery), new CSharpArgumentInfo[]                                                                 CQuery.<>o__5.<>p__15 = CallSite<Func<CallSite, object, bool>>.Create(Binder.UnaryOperation(CSharpBinderFlags.None, ExpressionType.IsFalse, typeof(CQuery), new CSharpArgumentInfo[]
                                                                {                                                                 {
                                                                    CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)                                                                     CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null)
                                                                }));                                                                 }));
                                                            }                                                             }
                                                            object arg11;                                                             object arg11;
                                                            if (!CQuery.<>o__5.<>p__15.Target(CQuery.<>o__5.<>p__15, obj7))                                                             if (!CQuery.<>o__5.<>p__15.Target(CQuery.<>o__5.<>p__15, obj7))
                                                            {                                                             {
                                                                if (CQuery.<>o__5.<>p__14 == null)                                                                 if (CQuery.<>o__5.<>p__14 == null)
                                                                {                                                                 {
                                                                    CQuery.<>o__5.<>p__14 = CallSite<Func<CallSite, object, bool, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.BinaryOperationLogical, ExpressionType.And, typeof(CQuery), new CSharpArgumentInfo[]                                                                     CQuery.<>o__5.<>p__14 = CallSite<Func<CallSite, object, bool, object>>.Create(Binder.BinaryOperation(CSharpBinderFlags.BinaryOperationLogical, ExpressionType.And, typeof(CQuery), new CSharpArgumentInfo[]
                                                                    {                                                                     {
                                                                        CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),                                                                         CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.None, null),
                                                                        CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null)                                                                         CSharpArgumentInfo.Create(CSharpArgumentInfoFlags.UseCompileTimeType, null)
                                                                    }));                                                                     }));
                                                                }                                                                 }
                                                                Func<CallSite, object, bool, object> target12 = CQuery.<>o__5.<>p__14.Target;                                                                 Func<CallSite, object, bool, object> target12 = CQuery.<>o__5.<>p__14.Target;
                                                                CallSite <>p__12 = CQuery.<>o__5.<>p__14;                                                                 CallSite <>p__12 = CQuery.<>o__5.<>p__14;
                                                                object arg10 = obj7;                                                                 object arg10 = obj7;
                                                                if (CQuery.<>o__5.<>p__13 == null)                                                                 if (CQuery.<>o__5.<>p__13 == null)
                                                                {                                                                 {
                                                                    CQuery.<>o__5.<>p__13 = CallSite<Func<CallSite, object, string>>.Create(Binder.Convert(CSharpBinderFlags.ConvertExplicit, typeof(string), typeof(CQuery)));                                                                     CQuery.<>o__5.<>p__13 = CallSite<Func<CallSite, object, string>>.Create(Binder.Convert(CSharpBinderFlags.ConvertExplicit, typeof(string), typeof(CQuery)));
                                                                }                                                                 }
                                                                arg11 = target12(<>p__12, arg10, CQuery.<>o__5.<>p__13.Target(CQuery.<>o__5.<>p__13, element.getAttribute(parts[0], 0)).Contains(parts[1].Replace(".*", "")));                                                                 arg11 = target12(<>p__12, arg10, CQuery.<>o__5.<>p__13.Target(CQuery.<>o__5.<>p__13, element.getAttribute(parts[0], 0)).Contains(parts[1].Replace(".*", "")));
                                                            }                                                             }
                                                            else                                                             else
                                                            {                                                             {
                                                                arg11 = obj7;                                                                 arg11 = obj7;
                                                            }                                                             }
                                                            arg12 = target11(<>p__11, arg9, arg11);                                                             arg12 = target11(<>p__11, arg9, arg11);
                                                        }                                                         }
                                                        else                                                         else
                                                        {                                                         {
.                                                            arg12 = flag15;                                                             arg12 = flag13;
                                                        }                                                         }
                                                        arg13 = target10(<>p__10, arg8, arg12);                                                         arg13 = target10(<>p__10, arg8, arg12);
                                                    }                                                     }
                                                    else                                                     else
                                                    {                                                     {
                                                        arg13 = obj6;                                                         arg13 = obj6;
                                                    }                                                     }
                                                    return target9(<>p__9, arg13);                                                     return target9(<>p__9, arg13);
                                                }).ToList<IHTMLElement>();                                                 }).ToList<IHTMLElement>();
.                                                bool flag12 = result.Count == 0;                                                 bool flag10 = result.Count == 0;
                                                if (flag12)                                                 if (flag10)
                                                {                                                 {
                                                    cont = false;                                                     cont = false;
                                                }                                                 }
                                            }                                             }
                                        }                                         }
                                        catch (Exception ex)                                         catch (Exception ex)
                                        {                                         {
                                            throw;                                             throw;
                                        }                                         }
                                    }                                     }
                                }                                 }
                            }                             }
                        }                         }
                    }                     }
.                    bool flag13 = !cont;                     bool flag11 = !cont;
                    if (flag13)                     if (flag11)
                    {                     {
                        break;                         break;
                    }                     }
                }                 }
.                bool flag14 = !cont;                 bool flag12 = !cont;
                if (flag14)                 if (flag12)
                {                 {
                    break;                     break;
                }                 }
            }             }
            return result;             return result;
        }         }
   
        // Token: 0x06000071 RID: 113 RVA: 0x000044E4 File Offset: 0x000026E4         // Token: 0x0600004B RID: 75 RVA: 0x00003B64 File Offset: 0x00001D64
        private static List<IHTMLElement> searchByClass(List<IHTMLElement> elements, string value)         private static List<IHTMLElement> searchByClass(List<IHTMLElement> elements, string value)
        {         {
            List<IHTMLElement> result = new List<IHTMLElement>();             List<IHTMLElement> result = new List<IHTMLElement>();
            List<string> parts = value.Split(new char[]             List<string> parts = value.Split(new char[]
            {             {
                '|'                  '|' 
            }).ToList<string>();             }).ToList<string>();
            foreach (IHTMLElement element in elements)             foreach (IHTMLElement element in elements)
            {             {
                foreach (string part in parts)                 foreach (string part in parts)
                {                 {
                    bool flag = Regex.IsMatch(element.className, part);                     bool flag = Regex.IsMatch(element.className, part);
                    if (flag)                     if (flag)
                    {                     {
                        result.Add(element);                         result.Add(element);
                        break;                         break;
                    }                     }
                }                 }
            }             }
            return result;             return result;
        }         }
   
        // Token: 0x06000072 RID: 114 RVA: 0x000045B0 File Offset: 0x000027B0         // Token: 0x0600004C RID: 76 RVA: 0x00003C30 File Offset: 0x00001E30
        private static List<IHTMLElement> searchByInnerText(List<IHTMLElement> elements, string value)         private static List<IHTMLElement> searchByInnerText(List<IHTMLElement> elements, string value)
        {         {
            List<IHTMLElement> result = new List<IHTMLElement>();             List<IHTMLElement> result = new List<IHTMLElement>();
            List<string> parts = value.Split(new char[]             List<string> parts = value.Split(new char[]
            {             {
                '|'                  '|' 
            }).ToList<string>();             }).ToList<string>();
            List<string> chars = new List<string>             List<string> chars = new List<string>
            {             {
                "\\",                 "\\",
                "$",                 "$",
                "^",                 "^",
                "*",                 "*",
                "(",                 "(",
                ")",                 ")",
                "+",                 "+",
                "{",                 "{",
                "}",                 "}",
                "[",                 "[",
                "]",                 "]",
                "|",                 "|",
                "?",                 "?",
                "-",                 "-",
                ".",                 ".",
                "/"                  "/" 
            };             };
            foreach (string part in parts)             foreach (string part in parts)
            {             {
                string partTemp = Regex.Replace(part, "\\W", string.Empty);                 string partTemp = Regex.Replace(part, "\\W", string.Empty);
                chars.ForEach(delegate(string c)                 chars.ForEach(delegate(string c)
                {                 {
                    partTemp = partTemp.Replace(c, "\\" + c);                     partTemp = partTemp.Replace(c, "\\" + c);
                });                 });
                foreach (IHTMLElement element in elements)                 foreach (IHTMLElement element in elements)
                {                 {
                    string text = element.innerText;                     string text = element.innerText;
                    bool flag = text != null;                     bool flag = text != null;
                    if (flag)                     if (flag)
                    {                     {
                        string temp = Regex.Replace(text, "\\W", string.Empty);                         string temp = Regex.Replace(text, "\\W", string.Empty);
                        bool flag2 = Regex.IsMatch(temp, partTemp);                         bool flag2 = Regex.IsMatch(temp, partTemp);
                        if (flag2)                         if (flag2)
                        {                         {
                            result.Add(element);                             result.Add(element);
                            break;                             break;
                        }                         }
                    }                     }
                }                 }
            }             }
            return result;             return result;
        }         }
   
        // Token: 0x06000073 RID: 115 RVA: 0x000047A8 File Offset: 0x000029A8         // Token: 0x0600004D RID: 77 RVA: 0x00003E28 File Offset: 0x00002028
        private static List<IHTMLElement> getChildren(dynamic elements)         private static List<IHTMLElement> getChildren(dynamic elements)
        {         {
            List<IHTMLElement> children = new List<IHTMLElement>();             List<IHTMLElement> children = new List<IHTMLElement>();
            if (CQuery.<>o__8.<>p__0 == null)             if (CQuery.<>o__8.<>p__0 == null)
            {             {
                CQuery.<>o__8.<>p__0 = CallSite<Func<CallSite, object, IEnumerable>>.Create(Binder.Convert(CSharpBinderFlags.None, typeof(IEnumerable), typeof(CQuery)));                 CQuery.<>o__8.<>p__0 = CallSite<Func<CallSite, object, IEnumerable>>.Create(Binder.Convert(CSharpBinderFlags.None, typeof(IEnumerable), typeof(CQuery)));
            }             }
            using (IEnumerator enumerator = CQuery.<>o__8.<>p__0.Target(CQuery.<>o__8.<>p__0, elements).GetEnumerator())             using (IEnumerator enumerator = CQuery.<>o__8.<>p__0.Target(CQuery.<>o__8.<>p__0, elements).GetEnumerator())
            {             {
                while (enumerator.MoveNext())                 while (enumerator.MoveNext())
                {                 {
                    if (CQuery.<>o__8.<>p__1 == null)                     if (CQuery.<>o__8.<>p__1 == null)
                    {                     {
                        CQuery.<>o__8.<>p__1 = CallSite<Func<CallSite, object, IHTMLElement>>.Create(Binder.Convert(CSharpBinderFlags.ConvertExplicit, typeof(IHTMLElement), typeof(CQuery)));                         CQuery.<>o__8.<>p__1 = CallSite<Func<CallSite, object, IHTMLElement>>.Create(Binder.Convert(CSharpBinderFlags.ConvertExplicit, typeof(IHTMLElement), typeof(CQuery)));
                    }                     }
                    IHTMLElement element = CQuery.<>o__8.<>p__1.Target(CQuery.<>o__8.<>p__1, enumerator.Current);                     IHTMLElement element = CQuery.<>o__8.<>p__1.Target(CQuery.<>o__8.<>p__1, enumerator.Current);
                    children.Add(element);                     children.Add(element);
                }                 }
            }             }
            return children;             return children;
        }         }
   
        // Token: 0x06000074 RID: 116 RVA: 0x00004890 File Offset: 0x00002A90         // Token: 0x0600004E RID: 78 RVA: 0x00003F10 File Offset: 0x00002110
        private static List<IHTMLElement> getChild(IHTMLElement parent, string tagName)         private static List<IHTMLElement> getChild(IHTMLElement parent, string tagName)
        {         {
            List<IHTMLElement> children = new List<IHTMLElement>();             List<IHTMLElement> children = new List<IHTMLElement>();
            if (CQuery.<>o__9.<>p__0 == null)             if (CQuery.<>o__9.<>p__0 == null)
            {             {
                CQuery.<>o__9.<>p__0 = CallSite<Func<CallSite, object, IEnumerable>>.Create(Binder.Convert(CSharpBinderFlags.None, typeof(IEnumerable), typeof(CQuery)));                 CQuery.<>o__9.<>p__0 = CallSite<Func<CallSite, object, IEnumerable>>.Create(Binder.Convert(CSharpBinderFlags.None, typeof(IEnumerable), typeof(CQuery)));
            }             }
            using (IEnumerator enumerator = CQuery.<>o__9.<>p__0.Target(CQuery.<>o__9.<>p__0, parent.children).GetEnumerator())             using (IEnumerator enumerator = CQuery.<>o__9.<>p__0.Target(CQuery.<>o__9.<>p__0, parent.children).GetEnumerator())
            {             {
                while (enumerator.MoveNext())                 while (enumerator.MoveNext())
                {                 {
                    if (CQuery.<>o__9.<>p__1 == null)                     if (CQuery.<>o__9.<>p__1 == null)
                    {                     {
                        CQuery.<>o__9.<>p__1 = CallSite<Func<CallSite, object, IHTMLElement>>.Create(Binder.Convert(CSharpBinderFlags.ConvertExplicit, typeof(IHTMLElement), typeof(CQuery)));                         CQuery.<>o__9.<>p__1 = CallSite<Func<CallSite, object, IHTMLElement>>.Create(Binder.Convert(CSharpBinderFlags.ConvertExplicit, typeof(IHTMLElement), typeof(CQuery)));
                    }                     }
                    IHTMLElement child = CQuery.<>o__9.<>p__1.Target(CQuery.<>o__9.<>p__1, enumerator.Current);                     IHTMLElement child = CQuery.<>o__9.<>p__1.Target(CQuery.<>o__9.<>p__1, enumerator.Current);
                    bool flag = child.tagName == tagName.ToUpper();                     bool flag = child.tagName == tagName.ToUpper();
                    if (flag)                     if (flag)
                    {                     {
                        children.Add(child);                         children.Add(child);
                    }                     }
                    children.AddRange(CQuery.getChild(child, tagName));                     children.AddRange(CQuery.getChild(child, tagName));
                }                 }
            }             }
            return children;             return children;
        }         }
   
        // Token: 0x0400002E RID: 46         // Token: 0x0400001C RID: 28
        private static string pattern = "\\[.*\\]$|([:=\\[\\(]{0}[a-zA-Z0-9;]{1,})";         private static string pattern = "\\[.*\\]$|([:=\\[\\(]{0}[a-zA-Z0-9;]{1,})";
    }     }
} }