DynamicMetaObject DynamicMetaObject.BindInvoke(InvokeBinder binder, DynamicMetaObject[] args)
        {
            Class151 <T> class2 = new Class151 <T> {
                invokeBinder_0      = binder,
                dynamicMetaObject_0 = args,
                class143_0          = (Class143 <T>) this
            };

            if (!this.method_0("TryInvoke"))
            {
                return(base.BindInvoke(class2.invokeBinder_0, class2.dynamicMetaObject_0));
            }
            return(this.method_1("TryInvoke", class2.invokeBinder_0, Class143 <T> .smethod_1(class2.dynamicMetaObject_0), new Delegate2 <T>(class2.method_0), null));
        }
        DynamicMetaObject DynamicMetaObject.BindDeleteIndex(DeleteIndexBinder binder, DynamicMetaObject[] indexes)
        {
            Class156 <T> class2 = new Class156 <T> {
                deleteIndexBinder_0 = binder,
                dynamicMetaObject_0 = indexes,
                class143_0          = (Class143 <T>) this
            };

            if (!this.method_0("TryDeleteIndex"))
            {
                return(base.BindDeleteIndex(class2.deleteIndexBinder_0, class2.dynamicMetaObject_0));
            }
            return(this.method_4("TryDeleteIndex", class2.deleteIndexBinder_0, Class143 <T> .smethod_1(class2.dynamicMetaObject_0), new Delegate2 <T>(class2.method_0)));
        }
        DynamicMetaObject DynamicMetaObject.BindGetIndex(GetIndexBinder binder, DynamicMetaObject[] indexes)
        {
            Class154 <T> class2 = new Class154 <T> {
                getIndexBinder_0    = binder,
                dynamicMetaObject_0 = indexes,
                class143_0          = (Class143 <T>) this
            };

            if (!this.method_0("TryGetIndex"))
            {
                return(base.BindGetIndex(class2.getIndexBinder_0, class2.dynamicMetaObject_0));
            }
            return(this.method_1("TryGetIndex", class2.getIndexBinder_0, Class143 <T> .smethod_1(class2.dynamicMetaObject_0), new Delegate2 <T>(class2.method_0), null));
        }
        DynamicMetaObject DynamicMetaObject.BindCreateInstance(CreateInstanceBinder binder, DynamicMetaObject[] args)
        {
            Class150 <T> class2 = new Class150 <T> {
                createInstanceBinder_0 = binder,
                dynamicMetaObject_0    = args,
                class143_0             = (Class143 <T>) this
            };

            if (!this.method_0("TryCreateInstance"))
            {
                return(base.BindCreateInstance(class2.createInstanceBinder_0, class2.dynamicMetaObject_0));
            }
            return(this.method_1("TryCreateInstance", class2.createInstanceBinder_0, Class143 <T> .smethod_1(class2.dynamicMetaObject_0), new Delegate2 <T>(class2.method_0), null));
        }
        DynamicMetaObject DynamicMetaObject.BindInvokeMember(InvokeMemberBinder binder, DynamicMetaObject[] args)
        {
            Class149 <T> class2 = new Class149 <T> {
                invokeMemberBinder_0 = binder,
                dynamicMetaObject_0  = args,
                class143_0           = (Class143 <T>) this
            };

            if (!this.method_0("TryInvokeMember"))
            {
                return(base.BindInvokeMember(class2.invokeMemberBinder_0, class2.dynamicMetaObject_0));
            }
            Delegate2 <T>     delegate2       = new Delegate2 <T>(class2.method_0);
            DynamicMetaObject errorSuggestion = this.method_2("TryInvokeMember", class2.invokeMemberBinder_0, Class143 <T> .smethod_1(class2.dynamicMetaObject_0), this.method_2("TryGetMember", new Class144 <T>(class2.invokeMemberBinder_0), Class143 <T> .expression_0, delegate2(null), new Delegate2 <T>(class2.method_1)), null);

            if (!this.bool_0)
            {
                return(delegate2(errorSuggestion));
            }
            return(errorSuggestion);
        }