private IList <T> GetBreadcrumbRecursive(IList <T> items, Guid id)
        {
            V_0 = items.GetEnumerator();
            try
            {
                while (V_0.MoveNext())
                {
                    V_1 = V_0.get_Current();
                    if (!Guid.op_Equality(V_1.get_Id(), id))
                    {
                        V_2 = this.GetBreadcrumbRecursive(V_1.get_Items(), id);
                        if (V_2 == null)
                        {
                            continue;
                        }
                        V_2.Insert(0, V_1);
                        V_3 = V_2;
                        goto Label1;
                    }
                    else
                    {
                        stackVariable24 = new List <T>();
                        stackVariable24.Add(V_1);
                        V_3 = stackVariable24;
                        goto Label1;
                    }
                }
                goto Label0;
            }
            finally
            {
                if (V_0 != null)
                {
                    V_0.Dispose();
                }
            }
Label1:
            return(V_3);

Label0:
            return(null);
        }