2008-07-07 Atsushi Enomoto <atsushi@ximian.com>
authorAtsushi Eno <atsushieno@gmail.com>
Mon, 7 Jul 2008 11:54:56 +0000 (11:54 -0000)
committerAtsushi Eno <atsushieno@gmail.com>
Mon, 7 Jul 2008 11:54:56 +0000 (11:54 -0000)
* ServiceDescriptionSerializerBase2.cs,
  ServiceDescriptionSerializerBase.cs : regenerated with the latest
  sys.xml(.serialization).

svn path=/trunk/mcs/; revision=107373

mcs/class/System.Web.Services/System.Web.Services.Description/ChangeLog
mcs/class/System.Web.Services/System.Web.Services.Description/ServiceDescriptionSerializerBase.cs
mcs/class/System.Web.Services/System.Web.Services.Description/ServiceDescriptionSerializerBase2.cs

index 8fc6e63cd88492ddd21e8c5d99308d7a1ae7560a..1fecfed92a69c2fc7734639f730840227abc135f 100644 (file)
@@ -1,3 +1,9 @@
+2008-07-07  Atsushi Enomoto  <atsushi@ximian.com>
+
+       * ServiceDescriptionSerializerBase2.cs,
+         ServiceDescriptionSerializerBase.cs : regenerated with the latest
+         sys.xml(.serialization).
+
 2008-07-02  Atsushi Enomoto  <atsushi@ximian.com>
 
        * ProtocolImporter.cs : make event stuff public.
index 753847cf5b46d403c7e60023e38ac2761931d44f..3d7a703a27fc984ff885618b4d315c6164c302ce 100644 (file)
@@ -1,27 +1,5 @@
-
-//
-// Permission is hereby granted, free of charge, to any person obtaining
-// a copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to
-// permit persons to whom the Software is furnished to do so, subject to
-// the following conditions:
-// 
-// The above copyright notice and this permission notice shall be
-// included in all copies or substantial portions of the Software.
-// 
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-//
-
 #if !NET_2_0
-
+// It is automatically generated
 using System;
 using System.Xml;
 using System.Xml.Schema;
@@ -34,6 +12,11 @@ namespace System.Web.Services.Description
 {
        internal class ServiceDescriptionReaderBase : XmlSerializationReader
        {
+               static readonly System.Reflection.MethodInfo fromBinHexStringMethod = typeof (XmlConvert).GetMethod ("FromBinHexString", System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic, null, new Type [] {typeof (string)}, null);
+               static byte [] FromBinHexString (string input)
+               {
+                       return input == null ? null : (byte []) fromBinHexStringMethod.Invoke (null, new object [] {input});
+               }
                public object ReadRoot_ServiceDescription ()
                {
                        Reader.MoveToContent();
@@ -56,7 +39,7 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.ServiceDescription ();
+                       ob = (System.Web.Services.Description.ServiceDescription) Activator.CreateInstance(typeof(System.Web.Services.Description.ServiceDescription), true);
 
                        Reader.MoveToElement();
 
@@ -75,6 +58,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -102,8 +86,9 @@ namespace System.Web.Services.Description
                        {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
                                {
-                                       if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b0) {
-                                               ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
+                                       if (Reader.LocalName == "types" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b2) {
+                                               b2 = true;
+                                               ob.@Types = ReadObject_Types (false, true);
                                        }
                                        else if (Reader.LocalName == "service" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b6) {
                                                if (((object)o16) == null)
@@ -117,6 +102,9 @@ namespace System.Web.Services.Description
                                                o10.Add (ReadObject_Message (false, true));
                                                n9++;
                                        }
+                                       else if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b0) {
+                                               ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
+                                       }
                                        else if (Reader.LocalName == "portType" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b4) {
                                                if (((object)o12) == null)
                                                        throw CreateReadOnlyCollectionException ("System.Web.Services.Description.PortTypeCollection");
@@ -135,10 +123,6 @@ namespace System.Web.Services.Description
                                                o14.Add (ReadObject_Binding (false, true));
                                                n13++;
                                        }
-                                       else if (Reader.LocalName == "types" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b2) {
-                                               b2 = true;
-                                               ob.@Types = ReadObject_Types (false, true);
-                                       }
                                        else {
                                                ServiceDescription.ReadExtension (Document, Reader, ob);
                                        }
@@ -155,9 +139,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.Service ReadObject_Service (bool isNullable, bool checkType)
+               public System.Web.Services.Description.Types ReadObject_Types (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.Service ob = null;
+                       System.Web.Services.Description.Types ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -165,26 +149,24 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "Service" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "Types" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Service ();
+                       ob = (System.Web.Services.Description.Types) Activator.CreateInstance(typeof(System.Web.Services.Description.Types), true);
 
                        Reader.MoveToElement();
 
                        while (Reader.MoveToNextAttribute())
                        {
-                               if (Reader.LocalName == "name" && Reader.NamespaceURI == "") {
-                                       ob.@Name = Reader.Value;
-                               }
-                               else if (IsXmlnsAttribute (Reader.Name)) {
+                               if (IsXmlnsAttribute (Reader.Name)) {
                                }
                                else {
                                        UnknownNode (ob);
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -196,8 +178,8 @@ namespace System.Web.Services.Description
 
                        bool b17=false, b18=false;
 
-                       System.Web.Services.Description.PortCollection o20;
-                       o20 = ob.@Ports;
+                       System.Xml.Serialization.XmlSchemas o20;
+                       o20 = ob.@Schemas;
                        int n19=0;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
@@ -207,10 +189,10 @@ namespace System.Web.Services.Description
                                        if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b17) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
-                                       else if (Reader.LocalName == "port" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b18) {
+                                       else if (Reader.LocalName == "schema" && Reader.NamespaceURI == "http://www.w3.org/2001/XMLSchema" && !b18) {
                                                if (((object)o20) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.PortCollection");
-                                               o20.Add (ReadObject_Port (false, true));
+                                                       throw CreateReadOnlyCollectionException ("System.Xml.Serialization.XmlSchemas");
+                                               o20.Add (ReadObject_XmlSchema (false, true));
                                                n19++;
                                        }
                                        else {
@@ -229,9 +211,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.Message ReadObject_Message (bool isNullable, bool checkType)
+               public System.Web.Services.Description.Service ReadObject_Service (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.Message ob = null;
+                       System.Web.Services.Description.Service ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -239,11 +221,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "Message" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "Service" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Message ();
+                       ob = (System.Web.Services.Description.Service) Activator.CreateInstance(typeof(System.Web.Services.Description.Service), true);
 
                        Reader.MoveToElement();
 
@@ -259,6 +241,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -270,8 +253,8 @@ namespace System.Web.Services.Description
 
                        bool b21=false, b22=false;
 
-                       System.Web.Services.Description.MessagePartCollection o24;
-                       o24 = ob.@Parts;
+                       System.Web.Services.Description.PortCollection o24;
+                       o24 = ob.@Ports;
                        int n23=0;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
@@ -281,10 +264,10 @@ namespace System.Web.Services.Description
                                        if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b21) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
-                                       else if (Reader.LocalName == "part" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b22) {
+                                       else if (Reader.LocalName == "port" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b22) {
                                                if (((object)o24) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.MessagePartCollection");
-                                               o24.Add (ReadObject_MessagePart (false, true));
+                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.PortCollection");
+                                               o24.Add (ReadObject_Port (false, true));
                                                n23++;
                                        }
                                        else {
@@ -303,9 +286,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.PortType ReadObject_PortType (bool isNullable, bool checkType)
+               public System.Web.Services.Description.Message ReadObject_Message (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.PortType ob = null;
+                       System.Web.Services.Description.Message ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -313,11 +296,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "PortType" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "Message" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.PortType ();
+                       ob = (System.Web.Services.Description.Message) Activator.CreateInstance(typeof(System.Web.Services.Description.Message), true);
 
                        Reader.MoveToElement();
 
@@ -333,6 +316,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -344,8 +328,8 @@ namespace System.Web.Services.Description
 
                        bool b25=false, b26=false;
 
-                       System.Web.Services.Description.OperationCollection o28;
-                       o28 = ob.@Operations;
+                       System.Web.Services.Description.MessagePartCollection o28;
+                       o28 = ob.@Parts;
                        int n27=0;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
@@ -355,10 +339,10 @@ namespace System.Web.Services.Description
                                        if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b25) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
-                                       else if (Reader.LocalName == "operation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b26) {
+                                       else if (Reader.LocalName == "part" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b26) {
                                                if (((object)o28) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationCollection");
-                                               o28.Add (ReadObject_Operation (false, true));
+                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.MessagePartCollection");
+                                               o28.Add (ReadObject_MessagePart (false, true));
                                                n27++;
                                        }
                                        else {
@@ -377,9 +361,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.Import ReadObject_Import (bool isNullable, bool checkType)
+               public System.Web.Services.Description.PortType ReadObject_PortType (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.Import ob = null;
+                       System.Web.Services.Description.PortType ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -387,21 +371,18 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "Import" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "PortType" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Import ();
+                       ob = (System.Web.Services.Description.PortType) Activator.CreateInstance(typeof(System.Web.Services.Description.PortType), true);
 
                        Reader.MoveToElement();
 
                        while (Reader.MoveToNextAttribute())
                        {
-                               if (Reader.LocalName == "location" && Reader.NamespaceURI == "") {
-                                       ob.@Location = Reader.Value;
-                               }
-                               else if (Reader.LocalName == "namespace" && Reader.NamespaceURI == "") {
-                                       ob.@Namespace = Reader.Value;
+                               if (Reader.LocalName == "name" && Reader.NamespaceURI == "") {
+                                       ob.@Name = Reader.Value;
                                }
                                else if (IsXmlnsAttribute (Reader.Name)) {
                                }
@@ -410,6 +391,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -419,7 +401,11 @@ namespace System.Web.Services.Description
                        Reader.ReadStartElement();
                        Reader.MoveToContent();
 
-                       bool b29=false;
+                       bool b29=false, b30=false;
+
+                       System.Web.Services.Description.OperationCollection o32;
+                       o32 = ob.@Operations;
+                       int n31=0;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
                        {
@@ -428,6 +414,12 @@ namespace System.Web.Services.Description
                                        if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b29) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
+                                       else if (Reader.LocalName == "operation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b30) {
+                                               if (((object)o32) == null)
+                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationCollection");
+                                               o32.Add (ReadObject_Operation (false, true));
+                                               n31++;
+                                       }
                                        else {
                                                ServiceDescription.ReadExtension (Document, Reader, ob);
                                        }
@@ -438,14 +430,15 @@ namespace System.Web.Services.Description
                                Reader.MoveToContent();
                        }
 
+
                        ReadEndElement();
 
                        return ob;
                }
 
-               public System.Web.Services.Description.Binding ReadObject_Binding (bool isNullable, bool checkType)
+               public System.Web.Services.Description.Import ReadObject_Import (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.Binding ob = null;
+                       System.Web.Services.Description.Import ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -453,21 +446,21 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "Binding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "Import" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Binding ();
+                       ob = (System.Web.Services.Description.Import) Activator.CreateInstance(typeof(System.Web.Services.Description.Import), true);
 
                        Reader.MoveToElement();
 
                        while (Reader.MoveToNextAttribute())
                        {
-                               if (Reader.LocalName == "name" && Reader.NamespaceURI == "") {
-                                       ob.@Name = Reader.Value;
+                               if (Reader.LocalName == "location" && Reader.NamespaceURI == "") {
+                                       ob.@Location = Reader.Value;
                                }
-                               else if (Reader.LocalName == "type" && Reader.NamespaceURI == "") {
-                                       ob.@Type = ToXmlQualifiedName (Reader.Value);
+                               else if (Reader.LocalName == "namespace" && Reader.NamespaceURI == "") {
+                                       ob.@Namespace = Reader.Value;
                                }
                                else if (IsXmlnsAttribute (Reader.Name)) {
                                }
@@ -476,6 +469,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -485,25 +479,15 @@ namespace System.Web.Services.Description
                        Reader.ReadStartElement();
                        Reader.MoveToContent();
 
-                       bool b30=false, b31=false;
-
-                       System.Web.Services.Description.OperationBindingCollection o33;
-                       o33 = ob.@Operations;
-                       int n32=0;
+                       bool b33=false;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
                        {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
                                {
-                                       if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b30) {
+                                       if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b33) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
-                                       else if (Reader.LocalName == "operation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b31) {
-                                               if (((object)o33) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationBindingCollection");
-                                               o33.Add (ReadObject_OperationBinding (false, true));
-                                               n32++;
-                                       }
                                        else {
                                                ServiceDescription.ReadExtension (Document, Reader, ob);
                                        }
@@ -514,15 +498,14 @@ namespace System.Web.Services.Description
                                Reader.MoveToContent();
                        }
 
-
                        ReadEndElement();
 
                        return ob;
                }
 
-               public System.Web.Services.Description.Types ReadObject_Types (bool isNullable, bool checkType)
+               public System.Web.Services.Description.Binding ReadObject_Binding (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.Types ob = null;
+                       System.Web.Services.Description.Binding ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -530,23 +513,30 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "Types" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "Binding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Types ();
+                       ob = (System.Web.Services.Description.Binding) Activator.CreateInstance(typeof(System.Web.Services.Description.Binding), true);
 
                        Reader.MoveToElement();
 
                        while (Reader.MoveToNextAttribute())
                        {
-                               if (IsXmlnsAttribute (Reader.Name)) {
+                               if (Reader.LocalName == "name" && Reader.NamespaceURI == "") {
+                                       ob.@Name = Reader.Value;
+                               }
+                               else if (Reader.LocalName == "type" && Reader.NamespaceURI == "") {
+                                       ob.@Type = ToXmlQualifiedName (Reader.Value);
+                               }
+                               else if (IsXmlnsAttribute (Reader.Name)) {
                                }
                                else {
                                        UnknownNode (ob);
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -558,8 +548,8 @@ namespace System.Web.Services.Description
 
                        bool b34=false, b35=false;
 
-                       System.Xml.Serialization.XmlSchemas o37;
-                       o37 = ob.@Schemas;
+                       System.Web.Services.Description.OperationBindingCollection o37;
+                       o37 = ob.@Operations;
                        int n36=0;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
@@ -569,10 +559,10 @@ namespace System.Web.Services.Description
                                        if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b34) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
-                                       else if (Reader.LocalName == "schema" && Reader.NamespaceURI == "http://www.w3.org/2001/XMLSchema" && !b35) {
+                                       else if (Reader.LocalName == "operation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b35) {
                                                if (((object)o37) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Xml.Serialization.XmlSchemas");
-                                               o37.Add (ReadObject_XmlSchema (false, true));
+                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationBindingCollection");
+                                               o37.Add (ReadObject_OperationBinding (false, true));
                                                n36++;
                                        }
                                        else {
@@ -591,6 +581,13 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
+               public System.Xml.Schema.XmlSchema ReadObject_XmlSchema (bool isNullable, bool checkType)
+               {
+                       System.Xml.Schema.XmlSchema ob = null;
+                       ob = System.Xml.Schema.XmlSchema.Read (Reader, null); Reader.Read ();
+                       return ob;
+               }
+
                public System.Web.Services.Description.Port ReadObject_Port (bool isNullable, bool checkType)
                {
                        System.Web.Services.Description.Port ob = null;
@@ -605,7 +602,7 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Port ();
+                       ob = (System.Web.Services.Description.Port) Activator.CreateInstance(typeof(System.Web.Services.Description.Port), true);
 
                        Reader.MoveToElement();
 
@@ -624,6 +621,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -671,7 +669,7 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.MessagePart ();
+                       ob = (System.Web.Services.Description.MessagePart) Activator.CreateInstance(typeof(System.Web.Services.Description.MessagePart), true);
 
                        Reader.MoveToElement();
 
@@ -693,6 +691,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -740,11 +739,10 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Operation ();
+                       ob = (System.Web.Services.Description.Operation) Activator.CreateInstance(typeof(System.Web.Services.Description.Operation), true);
 
                        Reader.MoveToElement();
 
-                       ob.@ParameterOrderString = "";
                        while (Reader.MoveToNextAttribute())
                        {
                                if (Reader.LocalName == "name" && Reader.NamespaceURI == "") {
@@ -760,6 +758,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -781,27 +780,27 @@ namespace System.Web.Services.Description
                        {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
                                {
-                                       if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b40) {
-                                               ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
-                                       }
-                                       else if (Reader.LocalName == "fault" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b41) {
-                                               if (((object)o44) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationFaultCollection");
-                                               o44.Add (ReadObject_OperationFault (false, true));
-                                               n43++;
-                                       }
-                                       else if (Reader.LocalName == "input" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b42) {
+                                       if (Reader.LocalName == "output" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b42) {
                                                if (((object)o46) == null)
                                                        throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationMessageCollection");
-                                               o46.Add (ReadObject_OperationInput (false, true));
+                                               o46.Add (ReadObject_OperationOutput (false, true));
                                                n45++;
                                        }
-                                       else if (Reader.LocalName == "output" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b42) {
+                                       else if (Reader.LocalName == "input" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b42) {
                                                if (((object)o46) == null)
                                                        throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationMessageCollection");
-                                               o46.Add (ReadObject_OperationOutput (false, true));
+                                               o46.Add (ReadObject_OperationInput (false, true));
                                                n45++;
                                        }
+                                       else if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b40) {
+                                               ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
+                                       }
+                                       else if (Reader.LocalName == "fault" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b41) {
+                                               if (((object)o44) == null)
+                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationFaultCollection");
+                                               o44.Add (ReadObject_OperationFault (false, true));
+                                               n43++;
+                                       }
                                        else {
                                                ServiceDescription.ReadExtension (Document, Reader, ob);
                                        }
@@ -832,7 +831,7 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.OperationBinding ();
+                       ob = (System.Web.Services.Description.OperationBinding) Activator.CreateInstance(typeof(System.Web.Services.Description.OperationBinding), true);
 
                        Reader.MoveToElement();
 
@@ -848,6 +847,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -867,7 +867,15 @@ namespace System.Web.Services.Description
                        {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
                                {
-                                       if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b47) {
+                                       if (Reader.LocalName == "input" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b49) {
+                                               b49 = true;
+                                               ob.@Input = ReadObject_InputBinding (false, true);
+                                       }
+                                       else if (Reader.LocalName == "output" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b50) {
+                                               b50 = true;
+                                               ob.@Output = ReadObject_OutputBinding (false, true);
+                                       }
+                                       else if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b47) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
                                        else if (Reader.LocalName == "fault" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b48) {
@@ -876,14 +884,6 @@ namespace System.Web.Services.Description
                                                o52.Add (ReadObject_FaultBinding (false, true));
                                                n51++;
                                        }
-                                       else if (Reader.LocalName == "input" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b49) {
-                                               b49 = true;
-                                               ob.@Input = ReadObject_InputBinding (false, true);
-                                       }
-                                       else if (Reader.LocalName == "output" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b50) {
-                                               b50 = true;
-                                               ob.@Output = ReadObject_OutputBinding (false, true);
-                                       }
                                        else {
                                                ServiceDescription.ReadExtension (Document, Reader, ob);
                                        }
@@ -900,16 +900,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Xml.Schema.XmlSchema ReadObject_XmlSchema (bool isNullable, bool checkType)
-               {
-                       System.Xml.Schema.XmlSchema ob = null;
-                       ob = System.Xml.Schema.XmlSchema.Read (Reader, null); Reader.Read ();
-                       return ob;
-               }
-
-               public System.Web.Services.Description.OperationFault ReadObject_OperationFault (bool isNullable, bool checkType)
+               public System.Web.Services.Description.OperationOutput ReadObject_OperationOutput (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.OperationFault ob = null;
+                       System.Web.Services.Description.OperationOutput ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -917,11 +910,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "OperationFault" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "OperationOutput" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.OperationFault ();
+                       ob = (System.Web.Services.Description.OperationOutput) Activator.CreateInstance(typeof(System.Web.Services.Description.OperationOutput), true);
 
                        Reader.MoveToElement();
 
@@ -940,6 +933,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -987,7 +981,7 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.OperationInput ();
+                       ob = (System.Web.Services.Description.OperationInput) Activator.CreateInstance(typeof(System.Web.Services.Description.OperationInput), true);
 
                        Reader.MoveToElement();
 
@@ -1006,6 +1000,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -1039,9 +1034,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.OperationOutput ReadObject_OperationOutput (bool isNullable, bool checkType)
+               public System.Web.Services.Description.OperationFault ReadObject_OperationFault (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.OperationOutput ob = null;
+                       System.Web.Services.Description.OperationFault ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -1049,11 +1044,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "OperationOutput" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "OperationFault" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.OperationOutput ();
+                       ob = (System.Web.Services.Description.OperationFault) Activator.CreateInstance(typeof(System.Web.Services.Description.OperationFault), true);
 
                        Reader.MoveToElement();
 
@@ -1072,6 +1067,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -1105,9 +1101,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.FaultBinding ReadObject_FaultBinding (bool isNullable, bool checkType)
+               public System.Web.Services.Description.InputBinding ReadObject_InputBinding (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.FaultBinding ob = null;
+                       System.Web.Services.Description.InputBinding ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -1115,11 +1111,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "FaultBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "InputBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.FaultBinding ();
+                       ob = (System.Web.Services.Description.InputBinding) Activator.CreateInstance(typeof(System.Web.Services.Description.InputBinding), true);
 
                        Reader.MoveToElement();
 
@@ -1135,6 +1131,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -1168,9 +1165,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.InputBinding ReadObject_InputBinding (bool isNullable, bool checkType)
+               public System.Web.Services.Description.OutputBinding ReadObject_OutputBinding (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.InputBinding ob = null;
+                       System.Web.Services.Description.OutputBinding ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -1178,11 +1175,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "InputBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "OutputBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.InputBinding ();
+                       ob = (System.Web.Services.Description.OutputBinding) Activator.CreateInstance(typeof(System.Web.Services.Description.OutputBinding), true);
 
                        Reader.MoveToElement();
 
@@ -1198,6 +1195,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -1231,9 +1229,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.OutputBinding ReadObject_OutputBinding (bool isNullable, bool checkType)
+               public System.Web.Services.Description.FaultBinding ReadObject_FaultBinding (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.OutputBinding ob = null;
+                       System.Web.Services.Description.FaultBinding ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -1241,11 +1239,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "OutputBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "FaultBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.OutputBinding ();
+                       ob = (System.Web.Services.Description.FaultBinding) Activator.CreateInstance(typeof(System.Web.Services.Description.FaultBinding), true);
 
                        Reader.MoveToElement();
 
@@ -1261,6 +1259,7 @@ namespace System.Web.Services.Description
                                }
                        }
 
+                       Reader.MoveToElement ();
                        Reader.MoveToElement();
                        if (Reader.IsEmptyElement) {
                                Reader.Skip ();
@@ -1307,6 +1306,11 @@ namespace System.Web.Services.Description
        internal class ServiceDescriptionWriterBase : XmlSerializationWriter
        {
                const string xmlNamespace = "http://www.w3.org/2000/xmlns/";
+               static readonly System.Reflection.MethodInfo toBinHexStringMethod = typeof (XmlConvert).GetMethod ("ToBinHexString", System.Reflection.BindingFlags.Static | System.Reflection.BindingFlags.NonPublic, null, new Type [] {typeof (byte [])}, null);
+               static string ToBinHexString (byte [] input)
+               {
+                       return input == null ? null : (string) toBinHexStringMethod.Invoke (null, new object [] {input});
+               }
                public void WriteRoot_ServiceDescription (object o)
                {
                        WriteStartDocument ();
@@ -1344,7 +1348,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o59 = ob.@DocumentationElement;
                                if (o59 is XmlElement) {
-                               if ((o59.Name == "documentation" && o59.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o59.LocalName == "documentation" && o59.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o59.WriteTo (Writer);
                                        WriteElementLiteral (o59, "", "", false, true);
@@ -1409,7 +1413,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o65 = ob.@DocumentationElement;
                                if (o65 is XmlElement) {
-                               if ((o65.Name == "documentation" && o65.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o65.LocalName == "documentation" && o65.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o65.WriteTo (Writer);
                                        WriteElementLiteral (o65, "", "", false, true);
@@ -1446,7 +1450,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o66 = ob.@DocumentationElement;
                                if (o66 is XmlElement) {
-                               if ((o66.Name == "documentation" && o66.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o66.LocalName == "documentation" && o66.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o66.WriteTo (Writer);
                                        WriteElementLiteral (o66, "", "", false, true);
@@ -1489,7 +1493,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o68 = ob.@DocumentationElement;
                                if (o68 is XmlElement) {
-                               if ((o68.Name == "documentation" && o68.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o68.LocalName == "documentation" && o68.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o68.WriteTo (Writer);
                                        WriteElementLiteral (o68, "", "", false, true);
@@ -1532,7 +1536,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o70 = ob.@DocumentationElement;
                                if (o70 is XmlElement) {
-                               if ((o70.Name == "documentation" && o70.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o70.LocalName == "documentation" && o70.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o70.WriteTo (Writer);
                                        WriteElementLiteral (o70, "", "", false, true);
@@ -1577,7 +1581,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o72 = ob.@DocumentationElement;
                                if (o72 is XmlElement) {
-                               if ((o72.Name == "documentation" && o72.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o72.LocalName == "documentation" && o72.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o72.WriteTo (Writer);
                                        WriteElementLiteral (o72, "", "", false, true);
@@ -1620,7 +1624,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o74 = ob.@DocumentationElement;
                                if (o74 is XmlElement) {
-                               if ((o74.Name == "documentation" && o74.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o74.LocalName == "documentation" && o74.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o74.WriteTo (Writer);
                                        WriteElementLiteral (o74, "", "", false, true);
@@ -1670,7 +1674,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o76 = ob.@DocumentationElement;
                                if (o76 is XmlElement) {
-                               if ((o76.Name == "documentation" && o76.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o76.LocalName == "documentation" && o76.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o76.WriteTo (Writer);
                                        WriteElementLiteral (o76, "", "", false, true);
@@ -1711,7 +1715,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o77 = ob.@DocumentationElement;
                                if (o77 is XmlElement) {
-                               if ((o77.Name == "documentation" && o77.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o77.LocalName == "documentation" && o77.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o77.WriteTo (Writer);
                                        WriteElementLiteral (o77, "", "", false, true);
@@ -1727,12 +1731,12 @@ namespace System.Web.Services.Description
                        if (ob.@Messages != null) {
                                for (int n79 = 0; n79 < ob.@Messages.Count; n79++) {
                                        if (((object)ob.@Messages[n79]) == null) { }
-                                       else if (ob.@Messages[n79].GetType() == typeof(System.Web.Services.Description.OperationInput)) {
-                                               WriteObject_OperationInput (((System.Web.Services.Description.OperationInput) ob.@Messages[n79]), "input", "http://schemas.xmlsoap.org/wsdl/", false, false, true);
-                                       }
                                        else if (ob.@Messages[n79].GetType() == typeof(System.Web.Services.Description.OperationOutput)) {
                                                WriteObject_OperationOutput (((System.Web.Services.Description.OperationOutput) ob.@Messages[n79]), "output", "http://schemas.xmlsoap.org/wsdl/", false, false, true);
                                        }
+                                       else if (ob.@Messages[n79].GetType() == typeof(System.Web.Services.Description.OperationInput)) {
+                                               WriteObject_OperationInput (((System.Web.Services.Description.OperationInput) ob.@Messages[n79]), "input", "http://schemas.xmlsoap.org/wsdl/", false, false, true);
+                                       }
                                        else throw CreateUnknownTypeException (ob.@Messages[n79]);
                                }
                        }
@@ -1767,7 +1771,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o80 = ob.@DocumentationElement;
                                if (o80 is XmlElement) {
-                               if ((o80.Name == "documentation" && o80.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o80.LocalName == "documentation" && o80.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o80.WriteTo (Writer);
                                        WriteElementLiteral (o80, "", "", false, true);
@@ -1814,7 +1818,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o82 = ob.@DocumentationElement;
                                if (o82 is XmlElement) {
-                               if ((o82.Name == "documentation" && o82.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o82.LocalName == "documentation" && o82.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o82.WriteTo (Writer);
                                        WriteElementLiteral (o82, "", "", false, true);
@@ -1853,7 +1857,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o83 = ob.@DocumentationElement;
                                if (o83 is XmlElement) {
-                               if ((o83.Name == "documentation" && o83.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o83.LocalName == "documentation" && o83.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o83.WriteTo (Writer);
                                        WriteElementLiteral (o83, "", "", false, true);
@@ -1864,7 +1868,7 @@ namespace System.Web.Services.Description
                        if (writeWrappingElem) WriteEndElement (ob);
                }
 
-               void WriteObject_OperationInput (System.Web.Services.Description.OperationInput ob, string element, string namesp, bool isNullable, bool needType, bool writeWrappingElem)
+               void WriteObject_OperationOutput (System.Web.Services.Description.OperationOutput ob, string element, string namesp, bool isNullable, bool needType, bool writeWrappingElem)
                {
                        if (((object)ob) == null)
                        {
@@ -1874,7 +1878,7 @@ namespace System.Web.Services.Description
                        }
 
                        System.Type type = ob.GetType ();
-                       if (type == typeof(System.Web.Services.Description.OperationInput))
+                       if (type == typeof(System.Web.Services.Description.OperationOutput))
                        { }
                        else {
                                throw CreateUnknownTypeException (ob);
@@ -1884,7 +1888,7 @@ namespace System.Web.Services.Description
                                WriteStartElement (element, namesp, ob);
                        }
 
-                       if (needType) WriteXsiType("OperationInput", "http://schemas.xmlsoap.org/wsdl/");
+                       if (needType) WriteXsiType("OperationOutput", "http://schemas.xmlsoap.org/wsdl/");
 
                        WriteAttribute ("message", "", FromXmlQualifiedName (ob.@Message));
                        WriteAttribute ("name", "", ob.@Name);
@@ -1892,7 +1896,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o84 = ob.@DocumentationElement;
                                if (o84 is XmlElement) {
-                               if ((o84.Name == "documentation" && o84.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o84.LocalName == "documentation" && o84.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o84.WriteTo (Writer);
                                        WriteElementLiteral (o84, "", "", false, true);
@@ -1903,7 +1907,7 @@ namespace System.Web.Services.Description
                        if (writeWrappingElem) WriteEndElement (ob);
                }
 
-               void WriteObject_OperationOutput (System.Web.Services.Description.OperationOutput ob, string element, string namesp, bool isNullable, bool needType, bool writeWrappingElem)
+               void WriteObject_OperationInput (System.Web.Services.Description.OperationInput ob, string element, string namesp, bool isNullable, bool needType, bool writeWrappingElem)
                {
                        if (((object)ob) == null)
                        {
@@ -1913,7 +1917,7 @@ namespace System.Web.Services.Description
                        }
 
                        System.Type type = ob.GetType ();
-                       if (type == typeof(System.Web.Services.Description.OperationOutput))
+                       if (type == typeof(System.Web.Services.Description.OperationInput))
                        { }
                        else {
                                throw CreateUnknownTypeException (ob);
@@ -1923,7 +1927,7 @@ namespace System.Web.Services.Description
                                WriteStartElement (element, namesp, ob);
                        }
 
-                       if (needType) WriteXsiType("OperationOutput", "http://schemas.xmlsoap.org/wsdl/");
+                       if (needType) WriteXsiType("OperationInput", "http://schemas.xmlsoap.org/wsdl/");
 
                        WriteAttribute ("message", "", FromXmlQualifiedName (ob.@Message));
                        WriteAttribute ("name", "", ob.@Name);
@@ -1931,7 +1935,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o85 = ob.@DocumentationElement;
                                if (o85 is XmlElement) {
-                               if ((o85.Name == "documentation" && o85.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o85.LocalName == "documentation" && o85.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o85.WriteTo (Writer);
                                        WriteElementLiteral (o85, "", "", false, true);
@@ -1970,7 +1974,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o86 = ob.@DocumentationElement;
                                if (o86 is XmlElement) {
-                               if ((o86.Name == "documentation" && o86.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o86.LocalName == "documentation" && o86.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o86.WriteTo (Writer);
                                        WriteElementLiteral (o86, "", "", false, true);
@@ -2009,7 +2013,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o87 = ob.@DocumentationElement;
                                if (o87 is XmlElement) {
-                               if ((o87.Name == "documentation" && o87.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o87.LocalName == "documentation" && o87.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o87.WriteTo (Writer);
                                        WriteElementLiteral (o87, "", "", false, true);
@@ -2048,7 +2052,7 @@ namespace System.Web.Services.Description
                        if (ob.@DocumentationElement != null) {
                                XmlNode o88 = ob.@DocumentationElement;
                                if (o88 is XmlElement) {
-                               if ((o88.Name == "documentation" && o88.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
+                               if ((o88.LocalName == "documentation" && o88.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/")) {
                                        }
                                        else o88.WriteTo (Writer);
                                        WriteElementLiteral (o88, "", "", false, true);
index 8e4314a50fa11c51bc383405d43e627147507690..69e87d037ad04547118bdbab88a457725746c949 100644 (file)
@@ -1,5 +1,5 @@
-// It is automatically generated
 #if NET_2_0
+// It is automatically generated
 using System;
 using System.Xml;
 using System.Xml.Schema;
@@ -39,7 +39,7 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.ServiceDescription ();
+                       ob = (System.Web.Services.Description.ServiceDescription) Activator.CreateInstance(typeof(System.Web.Services.Description.ServiceDescription), true);
 
                        Reader.MoveToElement();
 
@@ -99,8 +99,9 @@ namespace System.Web.Services.Description
                        {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
                                {
-                                       if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b0) {
-                                               ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
+                                       if (Reader.LocalName == "types" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b2) {
+                                               b2 = true;
+                                               ob.@Types = ReadObject_Types (false, true);
                                        }
                                        else if (Reader.LocalName == "service" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b6) {
                                                if (((object)o16) == null)
@@ -114,6 +115,9 @@ namespace System.Web.Services.Description
                                                o10.Add (ReadObject_Message (false, true));
                                                n9++;
                                        }
+                                       else if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b0) {
+                                               ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
+                                       }
                                        else if (Reader.LocalName == "portType" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b4) {
                                                if (((object)o12) == null)
                                                        throw CreateReadOnlyCollectionException ("System.Web.Services.Description.PortTypeCollection");
@@ -132,10 +136,6 @@ namespace System.Web.Services.Description
                                                o14.Add (ReadObject_Binding (false, true));
                                                n13++;
                                        }
-                                       else if (Reader.LocalName == "types" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b2) {
-                                               b2 = true;
-                                               ob.@Types = ReadObject_Types (false, true);
-                                       }
                                        else {
                                                ServiceDescription.ReadExtension (Document, Reader, ob);
                                        }
@@ -152,9 +152,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.Service ReadObject_Service (bool isNullable, bool checkType)
+               public System.Web.Services.Description.Types ReadObject_Types (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.Service ob = null;
+                       System.Web.Services.Description.Types ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -162,11 +162,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "Service" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "Types" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Service ();
+                       ob = (System.Web.Services.Description.Types) Activator.CreateInstance(typeof(System.Web.Services.Description.Types), true);
 
                        Reader.MoveToElement();
 
@@ -174,10 +174,7 @@ namespace System.Web.Services.Description
                        System.Xml.XmlAttribute[] anyAttributeArray = null;
                        while (Reader.MoveToNextAttribute())
                        {
-                               if (Reader.LocalName == "name" && Reader.NamespaceURI == "") {
-                                       ob.@Name = Reader.Value;
-                               }
-                               else if (IsXmlnsAttribute (Reader.Name)) {
+                               if (IsXmlnsAttribute (Reader.Name)) {
                                        if (ob.@Namespaces == null) ob.@Namespaces = new XmlSerializerNamespaces ();
                                        if (Reader.Prefix == "xmlns")
                                                ob.@Namespaces.Add (Reader.LocalName, Reader.Value);
@@ -207,8 +204,8 @@ namespace System.Web.Services.Description
 
                        bool b17=false, b18=false;
 
-                       System.Web.Services.Description.PortCollection o20;
-                       o20 = ob.@Ports;
+                       System.Xml.Serialization.XmlSchemas o20;
+                       o20 = ob.@Schemas;
                        int n19=0;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
@@ -218,10 +215,10 @@ namespace System.Web.Services.Description
                                        if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b17) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
-                                       else if (Reader.LocalName == "port" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b18) {
+                                       else if (Reader.LocalName == "schema" && Reader.NamespaceURI == "http://www.w3.org/2001/XMLSchema" && !b18) {
                                                if (((object)o20) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.PortCollection");
-                                               o20.Add (ReadObject_Port (false, true));
+                                                       throw CreateReadOnlyCollectionException ("System.Xml.Serialization.XmlSchemas");
+                                               o20.Add (ReadObject_XmlSchema (false, true));
                                                n19++;
                                        }
                                        else {
@@ -240,9 +237,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.Message ReadObject_Message (bool isNullable, bool checkType)
+               public System.Web.Services.Description.Service ReadObject_Service (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.Message ob = null;
+                       System.Web.Services.Description.Service ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -250,11 +247,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "Message" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "Service" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Message ();
+                       ob = (System.Web.Services.Description.Service) Activator.CreateInstance(typeof(System.Web.Services.Description.Service), true);
 
                        Reader.MoveToElement();
 
@@ -295,8 +292,8 @@ namespace System.Web.Services.Description
 
                        bool b21=false, b22=false;
 
-                       System.Web.Services.Description.MessagePartCollection o24;
-                       o24 = ob.@Parts;
+                       System.Web.Services.Description.PortCollection o24;
+                       o24 = ob.@Ports;
                        int n23=0;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
@@ -306,10 +303,10 @@ namespace System.Web.Services.Description
                                        if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b21) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
-                                       else if (Reader.LocalName == "part" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b22) {
+                                       else if (Reader.LocalName == "port" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b22) {
                                                if (((object)o24) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.MessagePartCollection");
-                                               o24.Add (ReadObject_MessagePart (false, true));
+                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.PortCollection");
+                                               o24.Add (ReadObject_Port (false, true));
                                                n23++;
                                        }
                                        else {
@@ -328,9 +325,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.PortType ReadObject_PortType (bool isNullable, bool checkType)
+               public System.Web.Services.Description.Message ReadObject_Message (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.PortType ob = null;
+                       System.Web.Services.Description.Message ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -338,11 +335,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "PortType" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "Message" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.PortType ();
+                       ob = (System.Web.Services.Description.Message) Activator.CreateInstance(typeof(System.Web.Services.Description.Message), true);
 
                        Reader.MoveToElement();
 
@@ -383,8 +380,8 @@ namespace System.Web.Services.Description
 
                        bool b25=false, b26=false;
 
-                       System.Web.Services.Description.OperationCollection o28;
-                       o28 = ob.@Operations;
+                       System.Web.Services.Description.MessagePartCollection o28;
+                       o28 = ob.@Parts;
                        int n27=0;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
@@ -394,10 +391,10 @@ namespace System.Web.Services.Description
                                        if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b25) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
-                                       else if (Reader.LocalName == "operation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b26) {
+                                       else if (Reader.LocalName == "part" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b26) {
                                                if (((object)o28) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationCollection");
-                                               o28.Add (ReadObject_Operation (false, true));
+                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.MessagePartCollection");
+                                               o28.Add (ReadObject_MessagePart (false, true));
                                                n27++;
                                        }
                                        else {
@@ -416,9 +413,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.Import ReadObject_Import (bool isNullable, bool checkType)
+               public System.Web.Services.Description.PortType ReadObject_PortType (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.Import ob = null;
+                       System.Web.Services.Description.PortType ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -426,11 +423,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "Import" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "PortType" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Import ();
+                       ob = (System.Web.Services.Description.PortType) Activator.CreateInstance(typeof(System.Web.Services.Description.PortType), true);
 
                        Reader.MoveToElement();
 
@@ -438,11 +435,8 @@ namespace System.Web.Services.Description
                        System.Xml.XmlAttribute[] anyAttributeArray = null;
                        while (Reader.MoveToNextAttribute())
                        {
-                               if (Reader.LocalName == "location" && Reader.NamespaceURI == "") {
-                                       ob.@Location = Reader.Value;
-                               }
-                               else if (Reader.LocalName == "namespace" && Reader.NamespaceURI == "") {
-                                       ob.@Namespace = Reader.Value;
+                               if (Reader.LocalName == "name" && Reader.NamespaceURI == "") {
+                                       ob.@Name = Reader.Value;
                                }
                                else if (IsXmlnsAttribute (Reader.Name)) {
                                        if (ob.@Namespaces == null) ob.@Namespaces = new XmlSerializerNamespaces ();
@@ -472,7 +466,11 @@ namespace System.Web.Services.Description
                        Reader.ReadStartElement();
                        Reader.MoveToContent();
 
-                       bool b29=false;
+                       bool b29=false, b30=false;
+
+                       System.Web.Services.Description.OperationCollection o32;
+                       o32 = ob.@Operations;
+                       int n31=0;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
                        {
@@ -481,6 +479,12 @@ namespace System.Web.Services.Description
                                        if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b29) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
+                                       else if (Reader.LocalName == "operation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b30) {
+                                               if (((object)o32) == null)
+                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationCollection");
+                                               o32.Add (ReadObject_Operation (false, true));
+                                               n31++;
+                                       }
                                        else {
                                                ServiceDescription.ReadExtension (Document, Reader, ob);
                                        }
@@ -491,14 +495,15 @@ namespace System.Web.Services.Description
                                Reader.MoveToContent();
                        }
 
+
                        ReadEndElement();
 
                        return ob;
                }
 
-               public System.Web.Services.Description.Binding ReadObject_Binding (bool isNullable, bool checkType)
+               public System.Web.Services.Description.Import ReadObject_Import (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.Binding ob = null;
+                       System.Web.Services.Description.Import ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -506,11 +511,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "Binding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "Import" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Binding ();
+                       ob = (System.Web.Services.Description.Import) Activator.CreateInstance(typeof(System.Web.Services.Description.Import), true);
 
                        Reader.MoveToElement();
 
@@ -518,11 +523,11 @@ namespace System.Web.Services.Description
                        System.Xml.XmlAttribute[] anyAttributeArray = null;
                        while (Reader.MoveToNextAttribute())
                        {
-                               if (Reader.LocalName == "name" && Reader.NamespaceURI == "") {
-                                       ob.@Name = Reader.Value;
+                               if (Reader.LocalName == "location" && Reader.NamespaceURI == "") {
+                                       ob.@Location = Reader.Value;
                                }
-                               else if (Reader.LocalName == "type" && Reader.NamespaceURI == "") {
-                                       ob.@Type = ToXmlQualifiedName (Reader.Value);
+                               else if (Reader.LocalName == "namespace" && Reader.NamespaceURI == "") {
+                                       ob.@Namespace = Reader.Value;
                                }
                                else if (IsXmlnsAttribute (Reader.Name)) {
                                        if (ob.@Namespaces == null) ob.@Namespaces = new XmlSerializerNamespaces ();
@@ -552,25 +557,15 @@ namespace System.Web.Services.Description
                        Reader.ReadStartElement();
                        Reader.MoveToContent();
 
-                       bool b30=false, b31=false;
-
-                       System.Web.Services.Description.OperationBindingCollection o33;
-                       o33 = ob.@Operations;
-                       int n32=0;
+                       bool b33=false;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
                        {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
                                {
-                                       if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b30) {
+                                       if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b33) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
-                                       else if (Reader.LocalName == "operation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b31) {
-                                               if (((object)o33) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationBindingCollection");
-                                               o33.Add (ReadObject_OperationBinding (false, true));
-                                               n32++;
-                                       }
                                        else {
                                                ServiceDescription.ReadExtension (Document, Reader, ob);
                                        }
@@ -581,15 +576,14 @@ namespace System.Web.Services.Description
                                Reader.MoveToContent();
                        }
 
-
                        ReadEndElement();
 
                        return ob;
                }
 
-               public System.Web.Services.Description.Types ReadObject_Types (bool isNullable, bool checkType)
+               public System.Web.Services.Description.Binding ReadObject_Binding (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.Types ob = null;
+                       System.Web.Services.Description.Binding ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -597,11 +591,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "Types" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "Binding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Types ();
+                       ob = (System.Web.Services.Description.Binding) Activator.CreateInstance(typeof(System.Web.Services.Description.Binding), true);
 
                        Reader.MoveToElement();
 
@@ -609,7 +603,13 @@ namespace System.Web.Services.Description
                        System.Xml.XmlAttribute[] anyAttributeArray = null;
                        while (Reader.MoveToNextAttribute())
                        {
-                               if (IsXmlnsAttribute (Reader.Name)) {
+                               if (Reader.LocalName == "name" && Reader.NamespaceURI == "") {
+                                       ob.@Name = Reader.Value;
+                               }
+                               else if (Reader.LocalName == "type" && Reader.NamespaceURI == "") {
+                                       ob.@Type = ToXmlQualifiedName (Reader.Value);
+                               }
+                               else if (IsXmlnsAttribute (Reader.Name)) {
                                        if (ob.@Namespaces == null) ob.@Namespaces = new XmlSerializerNamespaces ();
                                        if (Reader.Prefix == "xmlns")
                                                ob.@Namespaces.Add (Reader.LocalName, Reader.Value);
@@ -639,8 +639,8 @@ namespace System.Web.Services.Description
 
                        bool b34=false, b35=false;
 
-                       System.Xml.Serialization.XmlSchemas o37;
-                       o37 = ob.@Schemas;
+                       System.Web.Services.Description.OperationBindingCollection o37;
+                       o37 = ob.@Operations;
                        int n36=0;
 
                        while (Reader.NodeType != System.Xml.XmlNodeType.EndElement) 
@@ -650,10 +650,10 @@ namespace System.Web.Services.Description
                                        if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b34) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
-                                       else if (Reader.LocalName == "schema" && Reader.NamespaceURI == "http://www.w3.org/2001/XMLSchema" && !b35) {
+                                       else if (Reader.LocalName == "operation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b35) {
                                                if (((object)o37) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Xml.Serialization.XmlSchemas");
-                                               o37.Add (ReadObject_XmlSchema (false, true));
+                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationBindingCollection");
+                                               o37.Add (ReadObject_OperationBinding (false, true));
                                                n36++;
                                        }
                                        else {
@@ -672,6 +672,13 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
+               public System.Xml.Schema.XmlSchema ReadObject_XmlSchema (bool isNullable, bool checkType)
+               {
+                       System.Xml.Schema.XmlSchema ob = null;
+                       ob = System.Xml.Schema.XmlSchema.Read (Reader, null); Reader.Read ();
+                       return ob;
+               }
+
                public System.Web.Services.Description.Port ReadObject_Port (bool isNullable, bool checkType)
                {
                        System.Web.Services.Description.Port ob = null;
@@ -686,7 +693,7 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Port ();
+                       ob = (System.Web.Services.Description.Port) Activator.CreateInstance(typeof(System.Web.Services.Description.Port), true);
 
                        Reader.MoveToElement();
 
@@ -766,7 +773,7 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.MessagePart ();
+                       ob = (System.Web.Services.Description.MessagePart) Activator.CreateInstance(typeof(System.Web.Services.Description.MessagePart), true);
 
                        Reader.MoveToElement();
 
@@ -849,11 +856,10 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.Operation ();
+                       ob = (System.Web.Services.Description.Operation) Activator.CreateInstance(typeof(System.Web.Services.Description.Operation), true);
 
                        Reader.MoveToElement();
 
-                       ob.@ParameterOrderString = "";
                        int anyAttributeIndex = 0;
                        System.Xml.XmlAttribute[] anyAttributeArray = null;
                        while (Reader.MoveToNextAttribute())
@@ -904,27 +910,27 @@ namespace System.Web.Services.Description
                        {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
                                {
-                                       if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b40) {
-                                               ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
-                                       }
-                                       else if (Reader.LocalName == "fault" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b41) {
-                                               if (((object)o44) == null)
-                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationFaultCollection");
-                                               o44.Add (ReadObject_OperationFault (false, true));
-                                               n43++;
-                                       }
-                                       else if (Reader.LocalName == "input" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b42) {
+                                       if (Reader.LocalName == "output" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b42) {
                                                if (((object)o46) == null)
                                                        throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationMessageCollection");
-                                               o46.Add (ReadObject_OperationInput (false, true));
+                                               o46.Add (ReadObject_OperationOutput (false, true));
                                                n45++;
                                        }
-                                       else if (Reader.LocalName == "output" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b42) {
+                                       else if (Reader.LocalName == "input" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b42) {
                                                if (((object)o46) == null)
                                                        throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationMessageCollection");
-                                               o46.Add (ReadObject_OperationOutput (false, true));
+                                               o46.Add (ReadObject_OperationInput (false, true));
                                                n45++;
                                        }
+                                       else if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b40) {
+                                               ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
+                                       }
+                                       else if (Reader.LocalName == "fault" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b41) {
+                                               if (((object)o44) == null)
+                                                       throw CreateReadOnlyCollectionException ("System.Web.Services.Description.OperationFaultCollection");
+                                               o44.Add (ReadObject_OperationFault (false, true));
+                                               n43++;
+                                       }
                                        else {
                                                ServiceDescription.ReadExtension (Document, Reader, ob);
                                        }
@@ -955,7 +961,7 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.OperationBinding ();
+                       ob = (System.Web.Services.Description.OperationBinding) Activator.CreateInstance(typeof(System.Web.Services.Description.OperationBinding), true);
 
                        Reader.MoveToElement();
 
@@ -1004,7 +1010,15 @@ namespace System.Web.Services.Description
                        {
                                if (Reader.NodeType == System.Xml.XmlNodeType.Element) 
                                {
-                                       if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b47) {
+                                       if (Reader.LocalName == "input" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b49) {
+                                               b49 = true;
+                                               ob.@Input = ReadObject_InputBinding (false, true);
+                                       }
+                                       else if (Reader.LocalName == "output" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b50) {
+                                               b50 = true;
+                                               ob.@Output = ReadObject_OutputBinding (false, true);
+                                       }
+                                       else if (Reader.LocalName == "documentation" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b47) {
                                                ob.@DocumentationElement = ((System.Xml.XmlElement) ReadXmlNode (false));
                                        }
                                        else if (Reader.LocalName == "fault" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b48) {
@@ -1013,14 +1027,6 @@ namespace System.Web.Services.Description
                                                o52.Add (ReadObject_FaultBinding (false, true));
                                                n51++;
                                        }
-                                       else if (Reader.LocalName == "input" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b49) {
-                                               b49 = true;
-                                               ob.@Input = ReadObject_InputBinding (false, true);
-                                       }
-                                       else if (Reader.LocalName == "output" && Reader.NamespaceURI == "http://schemas.xmlsoap.org/wsdl/" && !b50) {
-                                               b50 = true;
-                                               ob.@Output = ReadObject_OutputBinding (false, true);
-                                       }
                                        else {
                                                ServiceDescription.ReadExtension (Document, Reader, ob);
                                        }
@@ -1037,16 +1043,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Xml.Schema.XmlSchema ReadObject_XmlSchema (bool isNullable, bool checkType)
-               {
-                       System.Xml.Schema.XmlSchema ob = null;
-                       ob = System.Xml.Schema.XmlSchema.Read (Reader, null); Reader.Read ();
-                       return ob;
-               }
-
-               public System.Web.Services.Description.OperationFault ReadObject_OperationFault (bool isNullable, bool checkType)
+               public System.Web.Services.Description.OperationOutput ReadObject_OperationOutput (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.OperationFault ob = null;
+                       System.Web.Services.Description.OperationOutput ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -1054,11 +1053,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "OperationFault" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "OperationOutput" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.OperationFault ();
+                       ob = (System.Web.Services.Description.OperationOutput) Activator.CreateInstance(typeof(System.Web.Services.Description.OperationOutput), true);
 
                        Reader.MoveToElement();
 
@@ -1138,7 +1137,7 @@ namespace System.Web.Services.Description
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.OperationInput ();
+                       ob = (System.Web.Services.Description.OperationInput) Activator.CreateInstance(typeof(System.Web.Services.Description.OperationInput), true);
 
                        Reader.MoveToElement();
 
@@ -1204,9 +1203,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.OperationOutput ReadObject_OperationOutput (bool isNullable, bool checkType)
+               public System.Web.Services.Description.OperationFault ReadObject_OperationFault (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.OperationOutput ob = null;
+                       System.Web.Services.Description.OperationFault ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -1214,11 +1213,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "OperationOutput" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "OperationFault" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.OperationOutput ();
+                       ob = (System.Web.Services.Description.OperationFault) Activator.CreateInstance(typeof(System.Web.Services.Description.OperationFault), true);
 
                        Reader.MoveToElement();
 
@@ -1284,9 +1283,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.FaultBinding ReadObject_FaultBinding (bool isNullable, bool checkType)
+               public System.Web.Services.Description.InputBinding ReadObject_InputBinding (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.FaultBinding ob = null;
+                       System.Web.Services.Description.InputBinding ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -1294,11 +1293,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "FaultBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "InputBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.FaultBinding ();
+                       ob = (System.Web.Services.Description.InputBinding) Activator.CreateInstance(typeof(System.Web.Services.Description.InputBinding), true);
 
                        Reader.MoveToElement();
 
@@ -1361,9 +1360,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.InputBinding ReadObject_InputBinding (bool isNullable, bool checkType)
+               public System.Web.Services.Description.OutputBinding ReadObject_OutputBinding (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.InputBinding ob = null;
+                       System.Web.Services.Description.OutputBinding ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -1371,11 +1370,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "InputBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "OutputBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.InputBinding ();
+                       ob = (System.Web.Services.Description.OutputBinding) Activator.CreateInstance(typeof(System.Web.Services.Description.OutputBinding), true);
 
                        Reader.MoveToElement();
 
@@ -1438,9 +1437,9 @@ namespace System.Web.Services.Description
                        return ob;
                }
 
-               public System.Web.Services.Description.OutputBinding ReadObject_OutputBinding (bool isNullable, bool checkType)
+               public System.Web.Services.Description.FaultBinding ReadObject_FaultBinding (bool isNullable, bool checkType)
                {
-                       System.Web.Services.Description.OutputBinding ob = null;
+                       System.Web.Services.Description.FaultBinding ob = null;
                        if (isNullable && ReadNull()) return null;
 
                        if (checkType) 
@@ -1448,11 +1447,11 @@ namespace System.Web.Services.Description
                                System.Xml.XmlQualifiedName t = GetXsiType();
                                if (t == null)
                                { }
-                               else if (t.Name != "OutputBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
+                               else if (t.Name != "FaultBinding" || t.Namespace != "http://schemas.xmlsoap.org/wsdl/")
                                        throw CreateUnknownTypeException(t);
                        }
 
-                       ob = new System.Web.Services.Description.OutputBinding ();
+                       ob = (System.Web.Services.Description.FaultBinding) Activator.CreateInstance(typeof(System.Web.Services.Description.FaultBinding), true);
 
                        Reader.MoveToElement();
 
@@ -2040,12 +2039,12 @@ namespace System.Web.Services.Description
                        if (ob.@Messages != null) {
                                for (int n97 = 0; n97 < ob.@Messages.Count; n97++) {
                                        if (((object)ob.@Messages[n97]) == null) { }
-                                       else if (ob.@Messages[n97].GetType() == typeof(System.Web.Services.Description.OperationInput)) {
-                                               WriteObject_OperationInput (((System.Web.Services.Description.OperationInput) ob.@Messages[n97]), "input", "http://schemas.xmlsoap.org/wsdl/", false, false, true);
-                                       }
                                        else if (ob.@Messages[n97].GetType() == typeof(System.Web.Services.Description.OperationOutput)) {
                                                WriteObject_OperationOutput (((System.Web.Services.Description.OperationOutput) ob.@Messages[n97]), "output", "http://schemas.xmlsoap.org/wsdl/", false, false, true);
                                        }
+                                       else if (ob.@Messages[n97].GetType() == typeof(System.Web.Services.Description.OperationInput)) {
+                                               WriteObject_OperationInput (((System.Web.Services.Description.OperationInput) ob.@Messages[n97]), "input", "http://schemas.xmlsoap.org/wsdl/", false, false, true);
+                                       }
                                        else throw CreateUnknownTypeException (ob.@Messages[n97]);
                                }
                        }
@@ -2205,7 +2204,7 @@ namespace System.Web.Services.Description
                        if (writeWrappingElem) WriteEndElement (ob);
                }
 
-               void WriteObject_OperationInput (System.Web.Services.Description.OperationInput ob, string element, string namesp, bool isNullable, bool needType, bool writeWrappingElem)
+               void WriteObject_OperationOutput (System.Web.Services.Description.OperationOutput ob, string element, string namesp, bool isNullable, bool needType, bool writeWrappingElem)
                {
                        if (((object)ob) == null)
                        {
@@ -2215,7 +2214,7 @@ namespace System.Web.Services.Description
                        }
 
                        System.Type type = ob.GetType ();
-                       if (type == typeof(System.Web.Services.Description.OperationInput))
+                       if (type == typeof(System.Web.Services.Description.OperationOutput))
                        { }
                        else {
                                throw CreateUnknownTypeException (ob);
@@ -2225,7 +2224,7 @@ namespace System.Web.Services.Description
                                WriteStartElement (element, namesp, ob);
                        }
 
-                       if (needType) WriteXsiType("OperationInput", "http://schemas.xmlsoap.org/wsdl/");
+                       if (needType) WriteXsiType("OperationOutput", "http://schemas.xmlsoap.org/wsdl/");
 
                        WriteNamespaceDeclarations ((XmlSerializerNamespaces) ob.@Namespaces);
 
@@ -2254,7 +2253,7 @@ namespace System.Web.Services.Description
                        if (writeWrappingElem) WriteEndElement (ob);
                }
 
-               void WriteObject_OperationOutput (System.Web.Services.Description.OperationOutput ob, string element, string namesp, bool isNullable, bool needType, bool writeWrappingElem)
+               void WriteObject_OperationInput (System.Web.Services.Description.OperationInput ob, string element, string namesp, bool isNullable, bool needType, bool writeWrappingElem)
                {
                        if (((object)ob) == null)
                        {
@@ -2264,7 +2263,7 @@ namespace System.Web.Services.Description
                        }
 
                        System.Type type = ob.GetType ();
-                       if (type == typeof(System.Web.Services.Description.OperationOutput))
+                       if (type == typeof(System.Web.Services.Description.OperationInput))
                        { }
                        else {
                                throw CreateUnknownTypeException (ob);
@@ -2274,7 +2273,7 @@ namespace System.Web.Services.Description
                                WriteStartElement (element, namesp, ob);
                        }
 
-                       if (needType) WriteXsiType("OperationOutput", "http://schemas.xmlsoap.org/wsdl/");
+                       if (needType) WriteXsiType("OperationInput", "http://schemas.xmlsoap.org/wsdl/");
 
                        WriteNamespaceDeclarations ((XmlSerializerNamespaces) ob.@Namespaces);
 
@@ -2504,7 +2503,7 @@ namespace System.Web.Services.Description
                                lock (this) {
                                        if (readMethods == null) {
                                                readMethods = new System.Collections.Hashtable ();
-                                               readMethods.Add (@"", @"ReadRoot_ServiceDescription");
+                                               readMethods.Add (@"System.Web.Services.Description.ServiceDescription", @"ReadRoot_ServiceDescription");
                                        }
                                        return readMethods;
                                }
@@ -2516,7 +2515,7 @@ namespace System.Web.Services.Description
                                lock (this) {
                                        if (writeMethods == null) {
                                                writeMethods = new System.Collections.Hashtable ();
-                                               writeMethods.Add (@"", @"WriteRoot_ServiceDescription");
+                                               writeMethods.Add (@"System.Web.Services.Description.ServiceDescription", @"WriteRoot_ServiceDescription");
                                        }
                                        return writeMethods;
                                }
@@ -2528,7 +2527,7 @@ namespace System.Web.Services.Description
                                lock (this) {
                                        if (typedSerializers == null) {
                                                typedSerializers = new System.Collections.Hashtable ();
-                                               typedSerializers.Add (@"", new definitionsSerializer());
+                                               typedSerializers.Add (@"System.Web.Services.Description.ServiceDescription", new definitionsSerializer());
                                        }
                                        return typedSerializers;
                                }
@@ -2539,7 +2538,7 @@ namespace System.Web.Services.Description
                {
                        switch (type.FullName) {
                        case "System.Web.Services.Description.ServiceDescription":
-                               return (XmlSerializer) TypedSerializers [""];
+                               return (XmlSerializer) TypedSerializers ["System.Web.Services.Description.ServiceDescription"];
 
                        }
                        return base.GetSerializer (type);