corrade-vassal – Rev 1

Subversion Repositories:
Rev:
/*
 * Copyright (c) 2006-2014, openmetaverse.org
 * All rights reserved.
 *
 * - Redistribution and use in source and binary forms, with or without 
 *   modification, are permitted provided that the following conditions are met:
 *
 * - Redistributions of source code must retain the above copyright notice, this
 *   list of conditions and the following disclaimer.
 * - Neither the name of the openmetaverse.org nor the names 
 *   of its contributors may be used to endorse or promote products derived from
 *   this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 
 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 
 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 
 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 
 * POSSIBILITY OF SUCH DAMAGE.
 */

//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.34209
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

// THIS FILE WAS CHANGED IN COMMIT 3a59220 TO RESOLVE A MONO BUG.  PLEASE RE-INSERT THOSE CHANGES IF THIS FILE IS
// REGENERATED.

// 
// This source code was auto-generated by xsd, Version=4.0.30319.17929.
// 
namespace OpenMetaverse.ImportExport.Collada14
{
    using System.Xml.Serialization;
    using System.Text.RegularExpressions;

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class COLLADA
    {

        private asset assetField;

        private object[] itemsField;

        private COLLADAScene sceneField;

        private extra[] extraField;

        private VersionType versionField;

        private string baseField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("library_animation_clips", typeof(library_animation_clips))]
        [System.Xml.Serialization.XmlElementAttribute("library_animations", typeof(library_animations))]
        [System.Xml.Serialization.XmlElementAttribute("library_cameras", typeof(library_cameras))]
        [System.Xml.Serialization.XmlElementAttribute("library_controllers", typeof(library_controllers))]
        [System.Xml.Serialization.XmlElementAttribute("library_effects", typeof(library_effects))]
        [System.Xml.Serialization.XmlElementAttribute("library_force_fields", typeof(library_force_fields))]
        [System.Xml.Serialization.XmlElementAttribute("library_geometries", typeof(library_geometries))]
        [System.Xml.Serialization.XmlElementAttribute("library_images", typeof(library_images))]
        [System.Xml.Serialization.XmlElementAttribute("library_lights", typeof(library_lights))]
        [System.Xml.Serialization.XmlElementAttribute("library_materials", typeof(library_materials))]
        [System.Xml.Serialization.XmlElementAttribute("library_nodes", typeof(library_nodes))]
        [System.Xml.Serialization.XmlElementAttribute("library_physics_materials", typeof(library_physics_materials))]
        [System.Xml.Serialization.XmlElementAttribute("library_physics_models", typeof(library_physics_models))]
        [System.Xml.Serialization.XmlElementAttribute("library_physics_scenes", typeof(library_physics_scenes))]
        [System.Xml.Serialization.XmlElementAttribute("library_visual_scenes", typeof(library_visual_scenes))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        public COLLADAScene scene
        {
            get
            {
                return this.sceneField;
            }
            set
            {
                this.sceneField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public VersionType version
        {
            get
            {
                return this.versionField;
            }
            set
            {
                this.versionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(Form = System.Xml.Schema.XmlSchemaForm.Qualified, Namespace = "http://www.w3.org/XML/1998/namespace")]
        public string @base
        {
            get
            {
                return this.baseField;
            }
            set
            {
                this.baseField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class asset
    {

        private assetContributor[] contributorField;

        private System.DateTime createdField;

        private string keywordsField;

        private System.DateTime modifiedField;

        private string revisionField;

        private string subjectField;

        private string titleField;

        private assetUnit unitField;

        private UpAxisType up_axisField;

        public asset()
        {
            this.up_axisField = UpAxisType.Y_UP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("contributor")]
        public assetContributor[] contributor
        {
            get
            {
                return this.contributorField;
            }
            set
            {
                this.contributorField = value;
            }
        }

        /// <remarks/>
        public System.DateTime created
        {
            get
            {
                return this.createdField;
            }
            set
            {
                this.createdField = value;
            }
        }

        /// <remarks/>
        public string keywords
        {
            get
            {
                return this.keywordsField;
            }
            set
            {
                this.keywordsField = value;
            }
        }

        /// <remarks/>
        public System.DateTime modified
        {
            get
            {
                return this.modifiedField;
            }
            set
            {
                this.modifiedField = value;
            }
        }

        /// <remarks/>
        public string revision
        {
            get
            {
                return this.revisionField;
            }
            set
            {
                this.revisionField = value;
            }
        }

        /// <remarks/>
        public string subject
        {
            get
            {
                return this.subjectField;
            }
            set
            {
                this.subjectField = value;
            }
        }

        /// <remarks/>
        public string title
        {
            get
            {
                return this.titleField;
            }
            set
            {
                this.titleField = value;
            }
        }

        /// <remarks/>
        public assetUnit unit
        {
            get
            {
                return this.unitField;
            }
            set
            {
                this.unitField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(UpAxisType.Y_UP)]
        public UpAxisType up_axis
        {
            get
            {
                return this.up_axisField;
            }
            set
            {
                this.up_axisField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class assetContributor
    {

        private string authorField;

        private string authoring_toolField;

        private string commentsField;

        private string copyrightField;

        private string source_dataField;

        /// <remarks/>
        public string author
        {
            get
            {
                return this.authorField;
            }
            set
            {
                this.authorField = value;
            }
        }

        /// <remarks/>
        public string authoring_tool
        {
            get
            {
                return this.authoring_toolField;
            }
            set
            {
                this.authoring_toolField = value;
            }
        }

        /// <remarks/>
        public string comments
        {
            get
            {
                return this.commentsField;
            }
            set
            {
                this.commentsField = value;
            }
        }

        /// <remarks/>
        public string copyright
        {
            get
            {
                return this.copyrightField;
            }
            set
            {
                this.copyrightField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "anyURI")]
        public string source_data
        {
            get
            {
                return this.source_dataField;
            }
            set
            {
                this.source_dataField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_clearstencil_common
    {

        private string indexField;

        private sbyte valueField;

        public fx_clearstencil_common()
        {
            this.indexField = "0";
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public sbyte Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_cleardepth_common
    {

        private string indexField;

        private double valueField;

        public fx_cleardepth_common()
        {
            this.indexField = "0";
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public double Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_clearcolor_common
    {

        private string indexField;

        private double[] textField;

        public fx_clearcolor_common()
        {
            this.indexField = "0";
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertDoubleArray(value); }
        }
        /// <remarks/>
        [XmlIgnore]
        public double[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_stenciltarget_common
    {

        private string indexField;

        private fx_surface_face_enum faceField;

        private string mipField;

        private string sliceField;

        private string valueField;

        public fx_stenciltarget_common()
        {
            this.indexField = "0";
            this.faceField = fx_surface_face_enum.POSITIVE_X;
            this.mipField = "0";
            this.sliceField = "0";
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(fx_surface_face_enum.POSITIVE_X)]
        public fx_surface_face_enum face
        {
            get
            {
                return this.faceField;
            }
            set
            {
                this.faceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string mip
        {
            get
            {
                return this.mipField;
            }
            set
            {
                this.mipField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string slice
        {
            get
            {
                return this.sliceField;
            }
            set
            {
                this.sliceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "NCName")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum fx_surface_face_enum
    {

        /// <remarks/>
        POSITIVE_X,

        /// <remarks/>
        NEGATIVE_X,

        /// <remarks/>
        POSITIVE_Y,

        /// <remarks/>
        NEGATIVE_Y,

        /// <remarks/>
        POSITIVE_Z,

        /// <remarks/>
        NEGATIVE_Z,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_depthtarget_common
    {

        private string indexField;

        private fx_surface_face_enum faceField;

        private string mipField;

        private string sliceField;

        private string valueField;

        public fx_depthtarget_common()
        {
            this.indexField = "0";
            this.faceField = fx_surface_face_enum.POSITIVE_X;
            this.mipField = "0";
            this.sliceField = "0";
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(fx_surface_face_enum.POSITIVE_X)]
        public fx_surface_face_enum face
        {
            get
            {
                return this.faceField;
            }
            set
            {
                this.faceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string mip
        {
            get
            {
                return this.mipField;
            }
            set
            {
                this.mipField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string slice
        {
            get
            {
                return this.sliceField;
            }
            set
            {
                this.sliceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "NCName")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_colortarget_common
    {

        private string indexField;

        private fx_surface_face_enum faceField;

        private string mipField;

        private string sliceField;

        private string valueField;

        public fx_colortarget_common()
        {
            this.indexField = "0";
            this.faceField = fx_surface_face_enum.POSITIVE_X;
            this.mipField = "0";
            this.sliceField = "0";
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(fx_surface_face_enum.POSITIVE_X)]
        public fx_surface_face_enum face
        {
            get
            {
                return this.faceField;
            }
            set
            {
                this.faceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string mip
        {
            get
            {
                return this.mipField;
            }
            set
            {
                this.mipField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        [System.ComponentModel.DefaultValueAttribute("0")]
        public string slice
        {
            get
            {
                return this.sliceField;
            }
            set
            {
                this.sliceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "NCName")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_init_from_common
    {

        private uint mipField;

        private uint sliceField;

        private fx_surface_face_enum faceField;

        private string valueField;

        public fx_surface_init_from_common()
        {
            this.mipField = ((uint)(0));
            this.sliceField = ((uint)(0));
            this.faceField = fx_surface_face_enum.POSITIVE_X;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(uint), "0")]
        public uint mip
        {
            get
            {
                return this.mipField;
            }
            set
            {
                this.mipField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(uint), "0")]
        public uint slice
        {
            get
            {
                return this.sliceField;
            }
            set
            {
                this.sliceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(fx_surface_face_enum.POSITIVE_X)]
        public fx_surface_face_enum face
        {
            get
            {
                return this.faceField;
            }
            set
            {
                this.faceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "IDREF")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_newparam
    {

        private fx_annotate_common[] annotateField;

        private string semanticField;

        private fx_modifier_enum_common modifierField;

        private bool modifierFieldSpecified;

        private bool boolField;

        private string bool2Field;

        private string bool3Field;

        private string bool4Field;

        private long intField;

        private string int2Field;

        private string int3Field;

        private string int4Field;

        private double floatField;

        private string float2Field;

        private string float3Field;

        private string float4Field;

        private double float1x1Field;

        private string float1x2Field;

        private string float1x3Field;

        private string float1x4Field;

        private string float2x1Field;

        private string float2x2Field;

        private string float2x3Field;

        private string float2x4Field;

        private string float3x1Field;

        private string float3x2Field;

        private string float3x3Field;

        private string float3x4Field;

        private string float4x1Field;

        private string float4x2Field;

        private string float4x3Field;

        private string float4x4Field;

        private fx_surface_common surfaceField;

        private gles_texture_pipeline texture_pipelineField;

        private gles_sampler_state sampler_stateField;

        private gles_texture_unit texture_unitField;

        private string enumField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        public fx_modifier_enum_common modifier
        {
            get
            {
                return this.modifierField;
            }
            set
            {
                this.modifierField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool modifierSpecified
        {
            get
            {
                return this.modifierFieldSpecified;
            }
            set
            {
                this.modifierFieldSpecified = value;
            }
        }

        /// <remarks/>
        public bool @bool
        {
            get
            {
                return this.boolField;
            }
            set
            {
                this.boolField = value;
            }
        }

        /// <remarks/>
        public string bool2
        {
            get
            {
                return this.bool2Field;
            }
            set
            {
                this.bool2Field = value;
            }
        }

        /// <remarks/>
        public string bool3
        {
            get
            {
                return this.bool3Field;
            }
            set
            {
                this.bool3Field = value;
            }
        }

        /// <remarks/>
        public string bool4
        {
            get
            {
                return this.bool4Field;
            }
            set
            {
                this.bool4Field = value;
            }
        }

        /// <remarks/>
        public long @int
        {
            get
            {
                return this.intField;
            }
            set
            {
                this.intField = value;
            }
        }

        /// <remarks/>
        public string int2
        {
            get
            {
                return this.int2Field;
            }
            set
            {
                this.int2Field = value;
            }
        }

        /// <remarks/>
        public string int3
        {
            get
            {
                return this.int3Field;
            }
            set
            {
                this.int3Field = value;
            }
        }

        /// <remarks/>
        public string int4
        {
            get
            {
                return this.int4Field;
            }
            set
            {
                this.int4Field = value;
            }
        }

        /// <remarks/>
        public double @float
        {
            get
            {
                return this.floatField;
            }
            set
            {
                this.floatField = value;
            }
        }

        /// <remarks/>
        public string float2
        {
            get
            {
                return this.float2Field;
            }
            set
            {
                this.float2Field = value;
            }
        }

        /// <remarks/>
        public string float3
        {
            get
            {
                return this.float3Field;
            }
            set
            {
                this.float3Field = value;
            }
        }

        /// <remarks/>
        public string float4
        {
            get
            {
                return this.float4Field;
            }
            set
            {
                this.float4Field = value;
            }
        }

        /// <remarks/>
        public double float1x1
        {
            get
            {
                return this.float1x1Field;
            }
            set
            {
                this.float1x1Field = value;
            }
        }

        /// <remarks/>
        public string float1x2
        {
            get
            {
                return this.float1x2Field;
            }
            set
            {
                this.float1x2Field = value;
            }
        }

        /// <remarks/>
        public string float1x3
        {
            get
            {
                return this.float1x3Field;
            }
            set
            {
                this.float1x3Field = value;
            }
        }

        /// <remarks/>
        public string float1x4
        {
            get
            {
                return this.float1x4Field;
            }
            set
            {
                this.float1x4Field = value;
            }
        }

        /// <remarks/>
        public string float2x1
        {
            get
            {
                return this.float2x1Field;
            }
            set
            {
                this.float2x1Field = value;
            }
        }

        /// <remarks/>
        public string float2x2
        {
            get
            {
                return this.float2x2Field;
            }
            set
            {
                this.float2x2Field = value;
            }
        }

        /// <remarks/>
        public string float2x3
        {
            get
            {
                return this.float2x3Field;
            }
            set
            {
                this.float2x3Field = value;
            }
        }

        /// <remarks/>
        public string float2x4
        {
            get
            {
                return this.float2x4Field;
            }
            set
            {
                this.float2x4Field = value;
            }
        }

        /// <remarks/>
        public string float3x1
        {
            get
            {
                return this.float3x1Field;
            }
            set
            {
                this.float3x1Field = value;
            }
        }

        /// <remarks/>
        public string float3x2
        {
            get
            {
                return this.float3x2Field;
            }
            set
            {
                this.float3x2Field = value;
            }
        }

        /// <remarks/>
        public string float3x3
        {
            get
            {
                return this.float3x3Field;
            }
            set
            {
                this.float3x3Field = value;
            }
        }

        /// <remarks/>
        public string float3x4
        {
            get
            {
                return this.float3x4Field;
            }
            set
            {
                this.float3x4Field = value;
            }
        }

        /// <remarks/>
        public string float4x1
        {
            get
            {
                return this.float4x1Field;
            }
            set
            {
                this.float4x1Field = value;
            }
        }

        /// <remarks/>
        public string float4x2
        {
            get
            {
                return this.float4x2Field;
            }
            set
            {
                this.float4x2Field = value;
            }
        }

        /// <remarks/>
        public string float4x3
        {
            get
            {
                return this.float4x3Field;
            }
            set
            {
                this.float4x3Field = value;
            }
        }

        /// <remarks/>
        public string float4x4
        {
            get
            {
                return this.float4x4Field;
            }
            set
            {
                this.float4x4Field = value;
            }
        }

        /// <remarks/>
        public fx_surface_common surface
        {
            get
            {
                return this.surfaceField;
            }
            set
            {
                this.surfaceField = value;
            }
        }

        /// <remarks/>
        public gles_texture_pipeline texture_pipeline
        {
            get
            {
                return this.texture_pipelineField;
            }
            set
            {
                this.texture_pipelineField = value;
            }
        }

        /// <remarks/>
        public gles_sampler_state sampler_state
        {
            get
            {
                return this.sampler_stateField;
            }
            set
            {
                this.sampler_stateField = value;
            }
        }

        /// <remarks/>
        public gles_texture_unit texture_unit
        {
            get
            {
                return this.texture_unitField;
            }
            set
            {
                this.texture_unitField = value;
            }
        }

        /// <remarks/>
        public string @enum
        {
            get
            {
                return this.enumField;
            }
            set
            {
                this.enumField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_annotate_common
    {

        private bool boolField;

        private string bool2Field;

        private string bool3Field;

        private string bool4Field;

        private long intField;

        private string int2Field;

        private string int3Field;

        private string int4Field;

        private double floatField;

        private string float2Field;

        private string float3Field;

        private string float4Field;

        private string float2x2Field;

        private string float3x3Field;

        private string float4x4Field;

        private string stringField;

        private string nameField;

        /// <remarks/>
        public bool @bool
        {
            get
            {
                return this.boolField;
            }
            set
            {
                this.boolField = value;
            }
        }

        /// <remarks/>
        public string bool2
        {
            get
            {
                return this.bool2Field;
            }
            set
            {
                this.bool2Field = value;
            }
        }

        /// <remarks/>
        public string bool3
        {
            get
            {
                return this.bool3Field;
            }
            set
            {
                this.bool3Field = value;
            }
        }

        /// <remarks/>
        public string bool4
        {
            get
            {
                return this.bool4Field;
            }
            set
            {
                this.bool4Field = value;
            }
        }

        /// <remarks/>
        public long @int
        {
            get
            {
                return this.intField;
            }
            set
            {
                this.intField = value;
            }
        }

        /// <remarks/>
        public string int2
        {
            get
            {
                return this.int2Field;
            }
            set
            {
                this.int2Field = value;
            }
        }

        /// <remarks/>
        public string int3
        {
            get
            {
                return this.int3Field;
            }
            set
            {
                this.int3Field = value;
            }
        }

        /// <remarks/>
        public string int4
        {
            get
            {
                return this.int4Field;
            }
            set
            {
                this.int4Field = value;
            }
        }

        /// <remarks/>
        public double @float
        {
            get
            {
                return this.floatField;
            }
            set
            {
                this.floatField = value;
            }
        }

        /// <remarks/>
        public string float2
        {
            get
            {
                return this.float2Field;
            }
            set
            {
                this.float2Field = value;
            }
        }

        /// <remarks/>
        public string float3
        {
            get
            {
                return this.float3Field;
            }
            set
            {
                this.float3Field = value;
            }
        }

        /// <remarks/>
        public string float4
        {
            get
            {
                return this.float4Field;
            }
            set
            {
                this.float4Field = value;
            }
        }

        /// <remarks/>
        public string float2x2
        {
            get
            {
                return this.float2x2Field;
            }
            set
            {
                this.float2x2Field = value;
            }
        }

        /// <remarks/>
        public string float3x3
        {
            get
            {
                return this.float3x3Field;
            }
            set
            {
                this.float3x3Field = value;
            }
        }

        /// <remarks/>
        public string float4x4
        {
            get
            {
                return this.float4x4Field;
            }
            set
            {
                this.float4x4Field = value;
            }
        }

        /// <remarks/>
        public string @string
        {
            get
            {
                return this.stringField;
            }
            set
            {
                this.stringField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum fx_modifier_enum_common
    {

        /// <remarks/>
        CONST,

        /// <remarks/>
        UNIFORM,

        /// <remarks/>
        VARYING,

        /// <remarks/>
        STATIC,

        /// <remarks/>
        VOLATILE,

        /// <remarks/>
        EXTERN,

        /// <remarks/>
        SHARED,
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(cg_surface_type))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(glsl_surface_type))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_common
    {

        private object init_as_nullField;

        private object init_as_targetField;

        private fx_surface_init_cube_common init_cubeField;

        private fx_surface_init_volume_common init_volumeField;

        private fx_surface_init_planar_common init_planarField;

        private fx_surface_init_from_common[] init_fromField;

        private string formatField;

        private fx_surface_format_hint_common format_hintField;

        private object itemField;

        private uint mip_levelsField;

        private bool mipmap_generateField;

        private bool mipmap_generateFieldSpecified;

        private extra[] extraField;

        private fx_surface_type_enum typeField;

        public fx_surface_common()
        {
            this.mip_levelsField = ((uint)(0));
        }

        /// <remarks/>
        public object init_as_null
        {
            get
            {
                return this.init_as_nullField;
            }
            set
            {
                this.init_as_nullField = value;
            }
        }

        /// <remarks/>
        public object init_as_target
        {
            get
            {
                return this.init_as_targetField;
            }
            set
            {
                this.init_as_targetField = value;
            }
        }

        /// <remarks/>
        public fx_surface_init_cube_common init_cube
        {
            get
            {
                return this.init_cubeField;
            }
            set
            {
                this.init_cubeField = value;
            }
        }

        /// <remarks/>
        public fx_surface_init_volume_common init_volume
        {
            get
            {
                return this.init_volumeField;
            }
            set
            {
                this.init_volumeField = value;
            }
        }

        /// <remarks/>
        public fx_surface_init_planar_common init_planar
        {
            get
            {
                return this.init_planarField;
            }
            set
            {
                this.init_planarField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("init_from")]
        public fx_surface_init_from_common[] init_from
        {
            get
            {
                return this.init_fromField;
            }
            set
            {
                this.init_fromField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "token")]
        public string format
        {
            get
            {
                return this.formatField;
            }
            set
            {
                this.formatField = value;
            }
        }

        /// <remarks/>
        public fx_surface_format_hint_common format_hint
        {
            get
            {
                return this.format_hintField;
            }
            set
            {
                this.format_hintField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("size", typeof(long))]
        [System.Xml.Serialization.XmlElementAttribute("viewport_ratio", typeof(double))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(uint), "0")]
        public uint mip_levels
        {
            get
            {
                return this.mip_levelsField;
            }
            set
            {
                this.mip_levelsField = value;
            }
        }

        /// <remarks/>
        public bool mipmap_generate
        {
            get
            {
                return this.mipmap_generateField;
            }
            set
            {
                this.mipmap_generateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool mipmap_generateSpecified
        {
            get
            {
                return this.mipmap_generateFieldSpecified;
            }
            set
            {
                this.mipmap_generateFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public fx_surface_type_enum type
        {
            get
            {
                return this.typeField;
            }
            set
            {
                this.typeField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_init_cube_common
    {

        private object[] itemsField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("all", typeof(fx_surface_init_cube_commonAll))]
        [System.Xml.Serialization.XmlElementAttribute("face", typeof(fx_surface_init_cube_commonFace))]
        [System.Xml.Serialization.XmlElementAttribute("primary", typeof(fx_surface_init_cube_commonPrimary))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_init_cube_commonAll
    {

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "IDREF")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_init_cube_commonFace
    {

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "IDREF")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_init_cube_commonPrimary
    {

        private fx_surface_face_enum[] orderField;

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("order")]
        public fx_surface_face_enum[] order
        {
            get
            {
                return this.orderField;
            }
            set
            {
                this.orderField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "IDREF")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_init_volume_common
    {

        private object itemField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("all", typeof(fx_surface_init_volume_commonAll))]
        [System.Xml.Serialization.XmlElementAttribute("primary", typeof(fx_surface_init_volume_commonPrimary))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_init_volume_commonAll
    {

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "IDREF")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_init_volume_commonPrimary
    {

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "IDREF")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_init_planar_common
    {

        private fx_surface_init_planar_commonAll itemField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("all")]
        public fx_surface_init_planar_commonAll Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_init_planar_commonAll
    {

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "IDREF")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_surface_format_hint_common
    {

        private fx_surface_format_hint_channels_enum channelsField;

        private fx_surface_format_hint_range_enum rangeField;

        private fx_surface_format_hint_precision_enum precisionField;

        private bool precisionFieldSpecified;

        private fx_surface_format_hint_option_enum[] optionField;

        private extra[] extraField;

        /// <remarks/>
        public fx_surface_format_hint_channels_enum channels
        {
            get
            {
                return this.channelsField;
            }
            set
            {
                this.channelsField = value;
            }
        }

        /// <remarks/>
        public fx_surface_format_hint_range_enum range
        {
            get
            {
                return this.rangeField;
            }
            set
            {
                this.rangeField = value;
            }
        }

        /// <remarks/>
        public fx_surface_format_hint_precision_enum precision
        {
            get
            {
                return this.precisionField;
            }
            set
            {
                this.precisionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool precisionSpecified
        {
            get
            {
                return this.precisionFieldSpecified;
            }
            set
            {
                this.precisionFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("option")]
        public fx_surface_format_hint_option_enum[] option
        {
            get
            {
                return this.optionField;
            }
            set
            {
                this.optionField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum fx_surface_format_hint_channels_enum
    {

        /// <remarks/>
        RGB,

        /// <remarks/>
        RGBA,

        /// <remarks/>
        L,

        /// <remarks/>
        LA,

        /// <remarks/>
        D,

        /// <remarks/>
        XYZ,

        /// <remarks/>
        XYZW,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum fx_surface_format_hint_range_enum
    {

        /// <remarks/>
        SNORM,

        /// <remarks/>
        UNORM,

        /// <remarks/>
        SINT,

        /// <remarks/>
        UINT,

        /// <remarks/>
        FLOAT,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum fx_surface_format_hint_precision_enum
    {

        /// <remarks/>
        LOW,

        /// <remarks/>
        MID,

        /// <remarks/>
        HIGH,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum fx_surface_format_hint_option_enum
    {

        /// <remarks/>
        SRGB_GAMMA,

        /// <remarks/>
        NORMALIZED3,

        /// <remarks/>
        NORMALIZED4,

        /// <remarks/>
        COMPRESSABLE,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class extra
    {

        private asset assetField;

        private technique[] techniqueField;

        private string idField;

        private string nameField;

        private string typeField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NMTOKEN")]
        public string type
        {
            get
            {
                return this.typeField;
            }
            set
            {
                this.typeField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class technique
    {

        private System.Xml.XmlElement[] anyField;

        private string profileField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any
        {
            get
            {
                return this.anyField;
            }
            set
            {
                this.anyField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NMTOKEN")]
        public string profile
        {
            get
            {
                return this.profileField;
            }
            set
            {
                this.profileField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum fx_surface_type_enum
    {

        /// <remarks/>
        UNTYPED,

        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("1D")]
        Item1D,

        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("2D")]
        Item2D,

        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("3D")]
        Item3D,

        /// <remarks/>
        RECT,

        /// <remarks/>
        CUBE,

        /// <remarks/>
        DEPTH,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_surface_type : fx_surface_common
    {

        private cg_surface_typeGenerator generatorField;

        /// <remarks/>
        public cg_surface_typeGenerator generator
        {
            get
            {
                return this.generatorField;
            }
            set
            {
                this.generatorField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_surface_typeGenerator
    {

        private fx_annotate_common[] annotateField;

        private object[] itemsField;

        private cg_surface_typeGeneratorName nameField;

        private cg_setparam_simple[] setparamField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("code", typeof(fx_code_profile))]
        [System.Xml.Serialization.XmlElementAttribute("include", typeof(fx_include_common))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        public cg_surface_typeGeneratorName name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("setparam")]
        public cg_setparam_simple[] setparam
        {
            get
            {
                return this.setparamField;
            }
            set
            {
                this.setparamField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_code_profile
    {

        private string sidField;

        private string valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_include_common
    {

        private string sidField;

        private string urlField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string url
        {
            get
            {
                return this.urlField;
            }
            set
            {
                this.urlField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_surface_typeGeneratorName
    {

        private string sourceField;

        private string valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "NCName")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_setparam_simple
    {

        private fx_annotate_common[] annotateField;

        private bool boolField;

        private bool bool1Field;

        private string bool2Field;

        private string bool3Field;

        private string bool4Field;

        private string bool1x1Field;

        private string bool1x2Field;

        private string bool1x3Field;

        private string bool1x4Field;

        private string bool2x1Field;

        private string bool2x2Field;

        private string bool2x3Field;

        private string bool2x4Field;

        private string bool3x1Field;

        private string bool3x2Field;

        private string bool3x3Field;

        private string bool3x4Field;

        private string bool4x1Field;

        private string bool4x2Field;

        private string bool4x3Field;

        private string bool4x4Field;

        private float floatField;

        private float float1Field;

        private string float2Field;

        private string float3Field;

        private string float4Field;

        private string float1x1Field;

        private string float1x2Field;

        private string float1x3Field;

        private string float1x4Field;

        private string float2x1Field;

        private string float2x2Field;

        private string float2x3Field;

        private string float2x4Field;

        private string float3x1Field;

        private string float3x2Field;

        private string float3x3Field;

        private string float3x4Field;

        private string float4x1Field;

        private string float4x2Field;

        private string float4x3Field;

        private string float4x4Field;

        private int intField;

        private int int1Field;

        private string int2Field;

        private string int3Field;

        private string int4Field;

        private string int1x1Field;

        private string int1x2Field;

        private string int1x3Field;

        private string int1x4Field;

        private string int2x1Field;

        private string int2x2Field;

        private string int2x3Field;

        private string int2x4Field;

        private string int3x1Field;

        private string int3x2Field;

        private string int3x3Field;

        private string int3x4Field;

        private string int4x1Field;

        private string int4x2Field;

        private string int4x3Field;

        private string int4x4Field;

        private float halfField;

        private float half1Field;

        private string half2Field;

        private string half3Field;

        private string half4Field;

        private string half1x1Field;

        private string half1x2Field;

        private string half1x3Field;

        private string half1x4Field;

        private string half2x1Field;

        private string half2x2Field;

        private string half2x3Field;

        private string half2x4Field;

        private string half3x1Field;

        private string half3x2Field;

        private string half3x3Field;

        private string half3x4Field;

        private string half4x1Field;

        private string half4x2Field;

        private string half4x3Field;

        private string half4x4Field;

        private float fixedField;

        private float fixed1Field;

        private string fixed2Field;

        private string fixed3Field;

        private string fixed4Field;

        private string fixed1x1Field;

        private string fixed1x2Field;

        private string fixed1x3Field;

        private string fixed1x4Field;

        private string fixed2x1Field;

        private string fixed2x2Field;

        private string fixed2x3Field;

        private string fixed2x4Field;

        private string fixed3x1Field;

        private string fixed3x2Field;

        private string fixed3x3Field;

        private string fixed3x4Field;

        private string fixed4x1Field;

        private string fixed4x2Field;

        private string fixed4x3Field;

        private string fixed4x4Field;

        private cg_surface_type surfaceField;

        private cg_sampler1D sampler1DField;

        private cg_sampler2D sampler2DField;

        private cg_sampler3D sampler3DField;

        private cg_samplerRECT samplerRECTField;

        private cg_samplerCUBE samplerCUBEField;

        private cg_samplerDEPTH samplerDEPTHField;

        private string stringField;

        private string enumField;

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        public bool @bool
        {
            get
            {
                return this.boolField;
            }
            set
            {
                this.boolField = value;
            }
        }

        /// <remarks/>
        public bool bool1
        {
            get
            {
                return this.bool1Field;
            }
            set
            {
                this.bool1Field = value;
            }
        }

        /// <remarks/>
        public string bool2
        {
            get
            {
                return this.bool2Field;
            }
            set
            {
                this.bool2Field = value;
            }
        }

        /// <remarks/>
        public string bool3
        {
            get
            {
                return this.bool3Field;
            }
            set
            {
                this.bool3Field = value;
            }
        }

        /// <remarks/>
        public string bool4
        {
            get
            {
                return this.bool4Field;
            }
            set
            {
                this.bool4Field = value;
            }
        }

        /// <remarks/>
        public string bool1x1
        {
            get
            {
                return this.bool1x1Field;
            }
            set
            {
                this.bool1x1Field = value;
            }
        }

        /// <remarks/>
        public string bool1x2
        {
            get
            {
                return this.bool1x2Field;
            }
            set
            {
                this.bool1x2Field = value;
            }
        }

        /// <remarks/>
        public string bool1x3
        {
            get
            {
                return this.bool1x3Field;
            }
            set
            {
                this.bool1x3Field = value;
            }
        }

        /// <remarks/>
        public string bool1x4
        {
            get
            {
                return this.bool1x4Field;
            }
            set
            {
                this.bool1x4Field = value;
            }
        }

        /// <remarks/>
        public string bool2x1
        {
            get
            {
                return this.bool2x1Field;
            }
            set
            {
                this.bool2x1Field = value;
            }
        }

        /// <remarks/>
        public string bool2x2
        {
            get
            {
                return this.bool2x2Field;
            }
            set
            {
                this.bool2x2Field = value;
            }
        }

        /// <remarks/>
        public string bool2x3
        {
            get
            {
                return this.bool2x3Field;
            }
            set
            {
                this.bool2x3Field = value;
            }
        }

        /// <remarks/>
        public string bool2x4
        {
            get
            {
                return this.bool2x4Field;
            }
            set
            {
                this.bool2x4Field = value;
            }
        }

        /// <remarks/>
        public string bool3x1
        {
            get
            {
                return this.bool3x1Field;
            }
            set
            {
                this.bool3x1Field = value;
            }
        }

        /// <remarks/>
        public string bool3x2
        {
            get
            {
                return this.bool3x2Field;
            }
            set
            {
                this.bool3x2Field = value;
            }
        }

        /// <remarks/>
        public string bool3x3
        {
            get
            {
                return this.bool3x3Field;
            }
            set
            {
                this.bool3x3Field = value;
            }
        }

        /// <remarks/>
        public string bool3x4
        {
            get
            {
                return this.bool3x4Field;
            }
            set
            {
                this.bool3x4Field = value;
            }
        }

        /// <remarks/>
        public string bool4x1
        {
            get
            {
                return this.bool4x1Field;
            }
            set
            {
                this.bool4x1Field = value;
            }
        }

        /// <remarks/>
        public string bool4x2
        {
            get
            {
                return this.bool4x2Field;
            }
            set
            {
                this.bool4x2Field = value;
            }
        }

        /// <remarks/>
        public string bool4x3
        {
            get
            {
                return this.bool4x3Field;
            }
            set
            {
                this.bool4x3Field = value;
            }
        }

        /// <remarks/>
        public string bool4x4
        {
            get
            {
                return this.bool4x4Field;
            }
            set
            {
                this.bool4x4Field = value;
            }
        }

        /// <remarks/>
        public float @float
        {
            get
            {
                return this.floatField;
            }
            set
            {
                this.floatField = value;
            }
        }

        /// <remarks/>
        public float float1
        {
            get
            {
                return this.float1Field;
            }
            set
            {
                this.float1Field = value;
            }
        }

        /// <remarks/>
        public string float2
        {
            get
            {
                return this.float2Field;
            }
            set
            {
                this.float2Field = value;
            }
        }

        /// <remarks/>
        public string float3
        {
            get
            {
                return this.float3Field;
            }
            set
            {
                this.float3Field = value;
            }
        }

        /// <remarks/>
        public string float4
        {
            get
            {
                return this.float4Field;
            }
            set
            {
                this.float4Field = value;
            }
        }

        /// <remarks/>
        public string float1x1
        {
            get
            {
                return this.float1x1Field;
            }
            set
            {
                this.float1x1Field = value;
            }
        }

        /// <remarks/>
        public string float1x2
        {
            get
            {
                return this.float1x2Field;
            }
            set
            {
                this.float1x2Field = value;
            }
        }

        /// <remarks/>
        public string float1x3
        {
            get
            {
                return this.float1x3Field;
            }
            set
            {
                this.float1x3Field = value;
            }
        }

        /// <remarks/>
        public string float1x4
        {
            get
            {
                return this.float1x4Field;
            }
            set
            {
                this.float1x4Field = value;
            }
        }

        /// <remarks/>
        public string float2x1
        {
            get
            {
                return this.float2x1Field;
            }
            set
            {
                this.float2x1Field = value;
            }
        }

        /// <remarks/>
        public string float2x2
        {
            get
            {
                return this.float2x2Field;
            }
            set
            {
                this.float2x2Field = value;
            }
        }

        /// <remarks/>
        public string float2x3
        {
            get
            {
                return this.float2x3Field;
            }
            set
            {
                this.float2x3Field = value;
            }
        }

        /// <remarks/>
        public string float2x4
        {
            get
            {
                return this.float2x4Field;
            }
            set
            {
                this.float2x4Field = value;
            }
        }

        /// <remarks/>
        public string float3x1
        {
            get
            {
                return this.float3x1Field;
            }
            set
            {
                this.float3x1Field = value;
            }
        }

        /// <remarks/>
        public string float3x2
        {
            get
            {
                return this.float3x2Field;
            }
            set
            {
                this.float3x2Field = value;
            }
        }

        /// <remarks/>
        public string float3x3
        {
            get
            {
                return this.float3x3Field;
            }
            set
            {
                this.float3x3Field = value;
            }
        }

        /// <remarks/>
        public string float3x4
        {
            get
            {
                return this.float3x4Field;
            }
            set
            {
                this.float3x4Field = value;
            }
        }

        /// <remarks/>
        public string float4x1
        {
            get
            {
                return this.float4x1Field;
            }
            set
            {
                this.float4x1Field = value;
            }
        }

        /// <remarks/>
        public string float4x2
        {
            get
            {
                return this.float4x2Field;
            }
            set
            {
                this.float4x2Field = value;
            }
        }

        /// <remarks/>
        public string float4x3
        {
            get
            {
                return this.float4x3Field;
            }
            set
            {
                this.float4x3Field = value;
            }
        }

        /// <remarks/>
        public string float4x4
        {
            get
            {
                return this.float4x4Field;
            }
            set
            {
                this.float4x4Field = value;
            }
        }

        /// <remarks/>
        public int @int
        {
            get
            {
                return this.intField;
            }
            set
            {
                this.intField = value;
            }
        }

        /// <remarks/>
        public int int1
        {
            get
            {
                return this.int1Field;
            }
            set
            {
                this.int1Field = value;
            }
        }

        /// <remarks/>
        public string int2
        {
            get
            {
                return this.int2Field;
            }
            set
            {
                this.int2Field = value;
            }
        }

        /// <remarks/>
        public string int3
        {
            get
            {
                return this.int3Field;
            }
            set
            {
                this.int3Field = value;
            }
        }

        /// <remarks/>
        public string int4
        {
            get
            {
                return this.int4Field;
            }
            set
            {
                this.int4Field = value;
            }
        }

        /// <remarks/>
        public string int1x1
        {
            get
            {
                return this.int1x1Field;
            }
            set
            {
                this.int1x1Field = value;
            }
        }

        /// <remarks/>
        public string int1x2
        {
            get
            {
                return this.int1x2Field;
            }
            set
            {
                this.int1x2Field = value;
            }
        }

        /// <remarks/>
        public string int1x3
        {
            get
            {
                return this.int1x3Field;
            }
            set
            {
                this.int1x3Field = value;
            }
        }

        /// <remarks/>
        public string int1x4
        {
            get
            {
                return this.int1x4Field;
            }
            set
            {
                this.int1x4Field = value;
            }
        }

        /// <remarks/>
        public string int2x1
        {
            get
            {
                return this.int2x1Field;
            }
            set
            {
                this.int2x1Field = value;
            }
        }

        /// <remarks/>
        public string int2x2
        {
            get
            {
                return this.int2x2Field;
            }
            set
            {
                this.int2x2Field = value;
            }
        }

        /// <remarks/>
        public string int2x3
        {
            get
            {
                return this.int2x3Field;
            }
            set
            {
                this.int2x3Field = value;
            }
        }

        /// <remarks/>
        public string int2x4
        {
            get
            {
                return this.int2x4Field;
            }
            set
            {
                this.int2x4Field = value;
            }
        }

        /// <remarks/>
        public string int3x1
        {
            get
            {
                return this.int3x1Field;
            }
            set
            {
                this.int3x1Field = value;
            }
        }

        /// <remarks/>
        public string int3x2
        {
            get
            {
                return this.int3x2Field;
            }
            set
            {
                this.int3x2Field = value;
            }
        }

        /// <remarks/>
        public string int3x3
        {
            get
            {
                return this.int3x3Field;
            }
            set
            {
                this.int3x3Field = value;
            }
        }

        /// <remarks/>
        public string int3x4
        {
            get
            {
                return this.int3x4Field;
            }
            set
            {
                this.int3x4Field = value;
            }
        }

        /// <remarks/>
        public string int4x1
        {
            get
            {
                return this.int4x1Field;
            }
            set
            {
                this.int4x1Field = value;
            }
        }

        /// <remarks/>
        public string int4x2
        {
            get
            {
                return this.int4x2Field;
            }
            set
            {
                this.int4x2Field = value;
            }
        }

        /// <remarks/>
        public string int4x3
        {
            get
            {
                return this.int4x3Field;
            }
            set
            {
                this.int4x3Field = value;
            }
        }

        /// <remarks/>
        public string int4x4
        {
            get
            {
                return this.int4x4Field;
            }
            set
            {
                this.int4x4Field = value;
            }
        }

        /// <remarks/>
        public float half
        {
            get
            {
                return this.halfField;
            }
            set
            {
                this.halfField = value;
            }
        }

        /// <remarks/>
        public float half1
        {
            get
            {
                return this.half1Field;
            }
            set
            {
                this.half1Field = value;
            }
        }

        /// <remarks/>
        public string half2
        {
            get
            {
                return this.half2Field;
            }
            set
            {
                this.half2Field = value;
            }
        }

        /// <remarks/>
        public string half3
        {
            get
            {
                return this.half3Field;
            }
            set
            {
                this.half3Field = value;
            }
        }

        /// <remarks/>
        public string half4
        {
            get
            {
                return this.half4Field;
            }
            set
            {
                this.half4Field = value;
            }
        }

        /// <remarks/>
        public string half1x1
        {
            get
            {
                return this.half1x1Field;
            }
            set
            {
                this.half1x1Field = value;
            }
        }

        /// <remarks/>
        public string half1x2
        {
            get
            {
                return this.half1x2Field;
            }
            set
            {
                this.half1x2Field = value;
            }
        }

        /// <remarks/>
        public string half1x3
        {
            get
            {
                return this.half1x3Field;
            }
            set
            {
                this.half1x3Field = value;
            }
        }

        /// <remarks/>
        public string half1x4
        {
            get
            {
                return this.half1x4Field;
            }
            set
            {
                this.half1x4Field = value;
            }
        }

        /// <remarks/>
        public string half2x1
        {
            get
            {
                return this.half2x1Field;
            }
            set
            {
                this.half2x1Field = value;
            }
        }

        /// <remarks/>
        public string half2x2
        {
            get
            {
                return this.half2x2Field;
            }
            set
            {
                this.half2x2Field = value;
            }
        }

        /// <remarks/>
        public string half2x3
        {
            get
            {
                return this.half2x3Field;
            }
            set
            {
                this.half2x3Field = value;
            }
        }

        /// <remarks/>
        public string half2x4
        {
            get
            {
                return this.half2x4Field;
            }
            set
            {
                this.half2x4Field = value;
            }
        }

        /// <remarks/>
        public string half3x1
        {
            get
            {
                return this.half3x1Field;
            }
            set
            {
                this.half3x1Field = value;
            }
        }

        /// <remarks/>
        public string half3x2
        {
            get
            {
                return this.half3x2Field;
            }
            set
            {
                this.half3x2Field = value;
            }
        }

        /// <remarks/>
        public string half3x3
        {
            get
            {
                return this.half3x3Field;
            }
            set
            {
                this.half3x3Field = value;
            }
        }

        /// <remarks/>
        public string half3x4
        {
            get
            {
                return this.half3x4Field;
            }
            set
            {
                this.half3x4Field = value;
            }
        }

        /// <remarks/>
        public string half4x1
        {
            get
            {
                return this.half4x1Field;
            }
            set
            {
                this.half4x1Field = value;
            }
        }

        /// <remarks/>
        public string half4x2
        {
            get
            {
                return this.half4x2Field;
            }
            set
            {
                this.half4x2Field = value;
            }
        }

        /// <remarks/>
        public string half4x3
        {
            get
            {
                return this.half4x3Field;
            }
            set
            {
                this.half4x3Field = value;
            }
        }

        /// <remarks/>
        public string half4x4
        {
            get
            {
                return this.half4x4Field;
            }
            set
            {
                this.half4x4Field = value;
            }
        }

        /// <remarks/>
        public float @fixed
        {
            get
            {
                return this.fixedField;
            }
            set
            {
                this.fixedField = value;
            }
        }

        /// <remarks/>
        public float fixed1
        {
            get
            {
                return this.fixed1Field;
            }
            set
            {
                this.fixed1Field = value;
            }
        }

        /// <remarks/>
        public string fixed2
        {
            get
            {
                return this.fixed2Field;
            }
            set
            {
                this.fixed2Field = value;
            }
        }

        /// <remarks/>
        public string fixed3
        {
            get
            {
                return this.fixed3Field;
            }
            set
            {
                this.fixed3Field = value;
            }
        }

        /// <remarks/>
        public string fixed4
        {
            get
            {
                return this.fixed4Field;
            }
            set
            {
                this.fixed4Field = value;
            }
        }

        /// <remarks/>
        public string fixed1x1
        {
            get
            {
                return this.fixed1x1Field;
            }
            set
            {
                this.fixed1x1Field = value;
            }
        }

        /// <remarks/>
        public string fixed1x2
        {
            get
            {
                return this.fixed1x2Field;
            }
            set
            {
                this.fixed1x2Field = value;
            }
        }

        /// <remarks/>
        public string fixed1x3
        {
            get
            {
                return this.fixed1x3Field;
            }
            set
            {
                this.fixed1x3Field = value;
            }
        }

        /// <remarks/>
        public string fixed1x4
        {
            get
            {
                return this.fixed1x4Field;
            }
            set
            {
                this.fixed1x4Field = value;
            }
        }

        /// <remarks/>
        public string fixed2x1
        {
            get
            {
                return this.fixed2x1Field;
            }
            set
            {
                this.fixed2x1Field = value;
            }
        }

        /// <remarks/>
        public string fixed2x2
        {
            get
            {
                return this.fixed2x2Field;
            }
            set
            {
                this.fixed2x2Field = value;
            }
        }

        /// <remarks/>
        public string fixed2x3
        {
            get
            {
                return this.fixed2x3Field;
            }
            set
            {
                this.fixed2x3Field = value;
            }
        }

        /// <remarks/>
        public string fixed2x4
        {
            get
            {
                return this.fixed2x4Field;
            }
            set
            {
                this.fixed2x4Field = value;
            }
        }

        /// <remarks/>
        public string fixed3x1
        {
            get
            {
                return this.fixed3x1Field;
            }
            set
            {
                this.fixed3x1Field = value;
            }
        }

        /// <remarks/>
        public string fixed3x2
        {
            get
            {
                return this.fixed3x2Field;
            }
            set
            {
                this.fixed3x2Field = value;
            }
        }

        /// <remarks/>
        public string fixed3x3
        {
            get
            {
                return this.fixed3x3Field;
            }
            set
            {
                this.fixed3x3Field = value;
            }
        }

        /// <remarks/>
        public string fixed3x4
        {
            get
            {
                return this.fixed3x4Field;
            }
            set
            {
                this.fixed3x4Field = value;
            }
        }

        /// <remarks/>
        public string fixed4x1
        {
            get
            {
                return this.fixed4x1Field;
            }
            set
            {
                this.fixed4x1Field = value;
            }
        }

        /// <remarks/>
        public string fixed4x2
        {
            get
            {
                return this.fixed4x2Field;
            }
            set
            {
                this.fixed4x2Field = value;
            }
        }

        /// <remarks/>
        public string fixed4x3
        {
            get
            {
                return this.fixed4x3Field;
            }
            set
            {
                this.fixed4x3Field = value;
            }
        }

        /// <remarks/>
        public string fixed4x4
        {
            get
            {
                return this.fixed4x4Field;
            }
            set
            {
                this.fixed4x4Field = value;
            }
        }

        /// <remarks/>
        public cg_surface_type surface
        {
            get
            {
                return this.surfaceField;
            }
            set
            {
                this.surfaceField = value;
            }
        }

        /// <remarks/>
        public cg_sampler1D sampler1D
        {
            get
            {
                return this.sampler1DField;
            }
            set
            {
                this.sampler1DField = value;
            }
        }

        /// <remarks/>
        public cg_sampler2D sampler2D
        {
            get
            {
                return this.sampler2DField;
            }
            set
            {
                this.sampler2DField = value;
            }
        }

        /// <remarks/>
        public cg_sampler3D sampler3D
        {
            get
            {
                return this.sampler3DField;
            }
            set
            {
                this.sampler3DField = value;
            }
        }

        /// <remarks/>
        public cg_samplerRECT samplerRECT
        {
            get
            {
                return this.samplerRECTField;
            }
            set
            {
                this.samplerRECTField = value;
            }
        }

        /// <remarks/>
        public cg_samplerCUBE samplerCUBE
        {
            get
            {
                return this.samplerCUBEField;
            }
            set
            {
                this.samplerCUBEField = value;
            }
        }

        /// <remarks/>
        public cg_samplerDEPTH samplerDEPTH
        {
            get
            {
                return this.samplerDEPTHField;
            }
            set
            {
                this.samplerDEPTHField = value;
            }
        }

        /// <remarks/>
        public string @string
        {
            get
            {
                return this.stringField;
            }
            set
            {
                this.stringField = value;
            }
        }

        /// <remarks/>
        public string @enum
        {
            get
            {
                return this.enumField;
            }
            set
            {
                this.enumField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_sampler1D : fx_sampler1D_common
    {
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(cg_sampler1D))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(gl_sampler1D))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_sampler1D_common
    {

        private string sourceField;

        private fx_sampler_wrap_common wrap_sField;

        private fx_sampler_filter_common minfilterField;

        private fx_sampler_filter_common magfilterField;

        private fx_sampler_filter_common mipfilterField;

        private string border_colorField;

        private byte mipmap_maxlevelField;

        private float mipmap_biasField;

        private extra[] extraField;

        public fx_sampler1D_common()
        {
            this.wrap_sField = fx_sampler_wrap_common.WRAP;
            this.minfilterField = fx_sampler_filter_common.NONE;
            this.magfilterField = fx_sampler_filter_common.NONE;
            this.mipfilterField = fx_sampler_filter_common.NONE;
            this.mipmap_maxlevelField = ((byte)(0));
            this.mipmap_biasField = ((float)(0F));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_s
        {
            get
            {
                return this.wrap_sField;
            }
            set
            {
                this.wrap_sField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common minfilter
        {
            get
            {
                return this.minfilterField;
            }
            set
            {
                this.minfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common magfilter
        {
            get
            {
                return this.magfilterField;
            }
            set
            {
                this.magfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common mipfilter
        {
            get
            {
                return this.mipfilterField;
            }
            set
            {
                this.mipfilterField = value;
            }
        }

        /// <remarks/>
        public string border_color
        {
            get
            {
                return this.border_colorField;
            }
            set
            {
                this.border_colorField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "0")]
        public byte mipmap_maxlevel
        {
            get
            {
                return this.mipmap_maxlevelField;
            }
            set
            {
                this.mipmap_maxlevelField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(float), "0")]
        public float mipmap_bias
        {
            get
            {
                return this.mipmap_biasField;
            }
            set
            {
                this.mipmap_biasField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum fx_sampler_wrap_common
    {

        /// <remarks/>
        NONE,

        /// <remarks/>
        WRAP,

        /// <remarks/>
        MIRROR,

        /// <remarks/>
        CLAMP,

        /// <remarks/>
        BORDER,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum fx_sampler_filter_common
    {

        /// <remarks/>
        NONE,

        /// <remarks/>
        NEAREST,

        /// <remarks/>
        LINEAR,

        /// <remarks/>
        NEAREST_MIPMAP_NEAREST,

        /// <remarks/>
        LINEAR_MIPMAP_NEAREST,

        /// <remarks/>
        NEAREST_MIPMAP_LINEAR,

        /// <remarks/>
        LINEAR_MIPMAP_LINEAR,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gl_sampler1D : fx_sampler1D_common
    {
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_sampler2D : fx_sampler2D_common
    {
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(cg_sampler2D))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(gl_sampler2D))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_sampler2D_common
    {

        private string sourceField;

        private fx_sampler_wrap_common wrap_sField;

        private fx_sampler_wrap_common wrap_tField;

        private fx_sampler_filter_common minfilterField;

        private fx_sampler_filter_common magfilterField;

        private fx_sampler_filter_common mipfilterField;

        private string border_colorField;

        private byte mipmap_maxlevelField;

        private float mipmap_biasField;

        private extra[] extraField;

        public fx_sampler2D_common()
        {
            this.wrap_sField = fx_sampler_wrap_common.WRAP;
            this.wrap_tField = fx_sampler_wrap_common.WRAP;
            this.minfilterField = fx_sampler_filter_common.NONE;
            this.magfilterField = fx_sampler_filter_common.NONE;
            this.mipfilterField = fx_sampler_filter_common.NONE;
            this.mipmap_maxlevelField = ((byte)(255));
            this.mipmap_biasField = ((float)(0F));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_s
        {
            get
            {
                return this.wrap_sField;
            }
            set
            {
                this.wrap_sField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_t
        {
            get
            {
                return this.wrap_tField;
            }
            set
            {
                this.wrap_tField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common minfilter
        {
            get
            {
                return this.minfilterField;
            }
            set
            {
                this.minfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common magfilter
        {
            get
            {
                return this.magfilterField;
            }
            set
            {
                this.magfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common mipfilter
        {
            get
            {
                return this.mipfilterField;
            }
            set
            {
                this.mipfilterField = value;
            }
        }

        /// <remarks/>
        public string border_color
        {
            get
            {
                return this.border_colorField;
            }
            set
            {
                this.border_colorField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "255")]
        public byte mipmap_maxlevel
        {
            get
            {
                return this.mipmap_maxlevelField;
            }
            set
            {
                this.mipmap_maxlevelField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(float), "0")]
        public float mipmap_bias
        {
            get
            {
                return this.mipmap_biasField;
            }
            set
            {
                this.mipmap_biasField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gl_sampler2D : fx_sampler2D_common
    {
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_sampler3D : fx_sampler3D_common
    {
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(cg_sampler3D))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(gl_sampler3D))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_sampler3D_common
    {

        private string sourceField;

        private fx_sampler_wrap_common wrap_sField;

        private fx_sampler_wrap_common wrap_tField;

        private fx_sampler_wrap_common wrap_pField;

        private fx_sampler_filter_common minfilterField;

        private fx_sampler_filter_common magfilterField;

        private fx_sampler_filter_common mipfilterField;

        private string border_colorField;

        private byte mipmap_maxlevelField;

        private float mipmap_biasField;

        private extra[] extraField;

        public fx_sampler3D_common()
        {
            this.wrap_sField = fx_sampler_wrap_common.WRAP;
            this.wrap_tField = fx_sampler_wrap_common.WRAP;
            this.wrap_pField = fx_sampler_wrap_common.WRAP;
            this.minfilterField = fx_sampler_filter_common.NONE;
            this.magfilterField = fx_sampler_filter_common.NONE;
            this.mipfilterField = fx_sampler_filter_common.NONE;
            this.mipmap_maxlevelField = ((byte)(255));
            this.mipmap_biasField = ((float)(0F));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_s
        {
            get
            {
                return this.wrap_sField;
            }
            set
            {
                this.wrap_sField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_t
        {
            get
            {
                return this.wrap_tField;
            }
            set
            {
                this.wrap_tField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_p
        {
            get
            {
                return this.wrap_pField;
            }
            set
            {
                this.wrap_pField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common minfilter
        {
            get
            {
                return this.minfilterField;
            }
            set
            {
                this.minfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common magfilter
        {
            get
            {
                return this.magfilterField;
            }
            set
            {
                this.magfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common mipfilter
        {
            get
            {
                return this.mipfilterField;
            }
            set
            {
                this.mipfilterField = value;
            }
        }

        /// <remarks/>
        public string border_color
        {
            get
            {
                return this.border_colorField;
            }
            set
            {
                this.border_colorField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "255")]
        public byte mipmap_maxlevel
        {
            get
            {
                return this.mipmap_maxlevelField;
            }
            set
            {
                this.mipmap_maxlevelField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(float), "0")]
        public float mipmap_bias
        {
            get
            {
                return this.mipmap_biasField;
            }
            set
            {
                this.mipmap_biasField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gl_sampler3D : fx_sampler3D_common
    {
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_samplerRECT : fx_samplerRECT_common
    {
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(cg_samplerRECT))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(gl_samplerRECT))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_samplerRECT_common
    {

        private string sourceField;

        private fx_sampler_wrap_common wrap_sField;

        private fx_sampler_wrap_common wrap_tField;

        private fx_sampler_filter_common minfilterField;

        private fx_sampler_filter_common magfilterField;

        private fx_sampler_filter_common mipfilterField;

        private string border_colorField;

        private byte mipmap_maxlevelField;

        private float mipmap_biasField;

        private extra[] extraField;

        public fx_samplerRECT_common()
        {
            this.wrap_sField = fx_sampler_wrap_common.WRAP;
            this.wrap_tField = fx_sampler_wrap_common.WRAP;
            this.minfilterField = fx_sampler_filter_common.NONE;
            this.magfilterField = fx_sampler_filter_common.NONE;
            this.mipfilterField = fx_sampler_filter_common.NONE;
            this.mipmap_maxlevelField = ((byte)(255));
            this.mipmap_biasField = ((float)(0F));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_s
        {
            get
            {
                return this.wrap_sField;
            }
            set
            {
                this.wrap_sField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_t
        {
            get
            {
                return this.wrap_tField;
            }
            set
            {
                this.wrap_tField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common minfilter
        {
            get
            {
                return this.minfilterField;
            }
            set
            {
                this.minfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common magfilter
        {
            get
            {
                return this.magfilterField;
            }
            set
            {
                this.magfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common mipfilter
        {
            get
            {
                return this.mipfilterField;
            }
            set
            {
                this.mipfilterField = value;
            }
        }

        /// <remarks/>
        public string border_color
        {
            get
            {
                return this.border_colorField;
            }
            set
            {
                this.border_colorField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "255")]
        public byte mipmap_maxlevel
        {
            get
            {
                return this.mipmap_maxlevelField;
            }
            set
            {
                this.mipmap_maxlevelField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(float), "0")]
        public float mipmap_bias
        {
            get
            {
                return this.mipmap_biasField;
            }
            set
            {
                this.mipmap_biasField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gl_samplerRECT : fx_samplerRECT_common
    {
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_samplerCUBE : fx_samplerCUBE_common
    {
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(cg_samplerCUBE))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(gl_samplerCUBE))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_samplerCUBE_common
    {

        private string sourceField;

        private fx_sampler_wrap_common wrap_sField;

        private fx_sampler_wrap_common wrap_tField;

        private fx_sampler_wrap_common wrap_pField;

        private fx_sampler_filter_common minfilterField;

        private fx_sampler_filter_common magfilterField;

        private fx_sampler_filter_common mipfilterField;

        private string border_colorField;

        private byte mipmap_maxlevelField;

        private float mipmap_biasField;

        private extra[] extraField;

        public fx_samplerCUBE_common()
        {
            this.wrap_sField = fx_sampler_wrap_common.WRAP;
            this.wrap_tField = fx_sampler_wrap_common.WRAP;
            this.wrap_pField = fx_sampler_wrap_common.WRAP;
            this.minfilterField = fx_sampler_filter_common.NONE;
            this.magfilterField = fx_sampler_filter_common.NONE;
            this.mipfilterField = fx_sampler_filter_common.NONE;
            this.mipmap_maxlevelField = ((byte)(255));
            this.mipmap_biasField = ((float)(0F));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_s
        {
            get
            {
                return this.wrap_sField;
            }
            set
            {
                this.wrap_sField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_t
        {
            get
            {
                return this.wrap_tField;
            }
            set
            {
                this.wrap_tField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_p
        {
            get
            {
                return this.wrap_pField;
            }
            set
            {
                this.wrap_pField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common minfilter
        {
            get
            {
                return this.minfilterField;
            }
            set
            {
                this.minfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common magfilter
        {
            get
            {
                return this.magfilterField;
            }
            set
            {
                this.magfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common mipfilter
        {
            get
            {
                return this.mipfilterField;
            }
            set
            {
                this.mipfilterField = value;
            }
        }

        /// <remarks/>
        public string border_color
        {
            get
            {
                return this.border_colorField;
            }
            set
            {
                this.border_colorField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "255")]
        public byte mipmap_maxlevel
        {
            get
            {
                return this.mipmap_maxlevelField;
            }
            set
            {
                this.mipmap_maxlevelField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(float), "0")]
        public float mipmap_bias
        {
            get
            {
                return this.mipmap_biasField;
            }
            set
            {
                this.mipmap_biasField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gl_samplerCUBE : fx_samplerCUBE_common
    {
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_samplerDEPTH : fx_samplerDEPTH_common
    {
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(cg_samplerDEPTH))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(gl_samplerDEPTH))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_samplerDEPTH_common
    {

        private string sourceField;

        private fx_sampler_wrap_common wrap_sField;

        private fx_sampler_wrap_common wrap_tField;

        private fx_sampler_filter_common minfilterField;

        private fx_sampler_filter_common magfilterField;

        private extra[] extraField;

        public fx_samplerDEPTH_common()
        {
            this.wrap_sField = fx_sampler_wrap_common.WRAP;
            this.wrap_tField = fx_sampler_wrap_common.WRAP;
            this.minfilterField = fx_sampler_filter_common.NONE;
            this.magfilterField = fx_sampler_filter_common.NONE;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_s
        {
            get
            {
                return this.wrap_sField;
            }
            set
            {
                this.wrap_sField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_wrap_common.WRAP)]
        public fx_sampler_wrap_common wrap_t
        {
            get
            {
                return this.wrap_tField;
            }
            set
            {
                this.wrap_tField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common minfilter
        {
            get
            {
                return this.minfilterField;
            }
            set
            {
                this.minfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common magfilter
        {
            get
            {
                return this.magfilterField;
            }
            set
            {
                this.magfilterField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gl_samplerDEPTH : fx_samplerDEPTH_common
    {
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class glsl_surface_type : fx_surface_common
    {

        private glsl_surface_typeGenerator generatorField;

        /// <remarks/>
        public glsl_surface_typeGenerator generator
        {
            get
            {
                return this.generatorField;
            }
            set
            {
                this.generatorField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class glsl_surface_typeGenerator
    {

        private fx_annotate_common[] annotateField;

        private object[] itemsField;

        private glsl_surface_typeGeneratorName nameField;

        private glsl_setparam_simple[] setparamField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("code", typeof(fx_code_profile))]
        [System.Xml.Serialization.XmlElementAttribute("include", typeof(fx_include_common))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        public glsl_surface_typeGeneratorName name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("setparam")]
        public glsl_setparam_simple[] setparam
        {
            get
            {
                return this.setparamField;
            }
            set
            {
                this.setparamField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class glsl_surface_typeGeneratorName
    {

        private string sourceField;

        private string valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "NCName")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class glsl_setparam_simple
    {

        private fx_annotate_common[] annotateField;

        private bool boolField;

        private string bool2Field;

        private string bool3Field;

        private string bool4Field;

        private float floatField;

        private string float2Field;

        private string float3Field;

        private string float4Field;

        private string float2x2Field;

        private string float3x3Field;

        private string float4x4Field;

        private int intField;

        private string int2Field;

        private string int3Field;

        private string int4Field;

        private glsl_surface_type surfaceField;

        private gl_sampler1D sampler1DField;

        private gl_sampler2D sampler2DField;

        private gl_sampler3D sampler3DField;

        private gl_samplerCUBE samplerCUBEField;

        private gl_samplerRECT samplerRECTField;

        private gl_samplerDEPTH samplerDEPTHField;

        private string enumField;

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        public bool @bool
        {
            get
            {
                return this.boolField;
            }
            set
            {
                this.boolField = value;
            }
        }

        /// <remarks/>
        public string bool2
        {
            get
            {
                return this.bool2Field;
            }
            set
            {
                this.bool2Field = value;
            }
        }

        /// <remarks/>
        public string bool3
        {
            get
            {
                return this.bool3Field;
            }
            set
            {
                this.bool3Field = value;
            }
        }

        /// <remarks/>
        public string bool4
        {
            get
            {
                return this.bool4Field;
            }
            set
            {
                this.bool4Field = value;
            }
        }

        /// <remarks/>
        public float @float
        {
            get
            {
                return this.floatField;
            }
            set
            {
                this.floatField = value;
            }
        }

        /// <remarks/>
        public string float2
        {
            get
            {
                return this.float2Field;
            }
            set
            {
                this.float2Field = value;
            }
        }

        /// <remarks/>
        public string float3
        {
            get
            {
                return this.float3Field;
            }
            set
            {
                this.float3Field = value;
            }
        }

        /// <remarks/>
        public string float4
        {
            get
            {
                return this.float4Field;
            }
            set
            {
                this.float4Field = value;
            }
        }

        /// <remarks/>
        public string float2x2
        {
            get
            {
                return this.float2x2Field;
            }
            set
            {
                this.float2x2Field = value;
            }
        }

        /// <remarks/>
        public string float3x3
        {
            get
            {
                return this.float3x3Field;
            }
            set
            {
                this.float3x3Field = value;
            }
        }

        /// <remarks/>
        public string float4x4
        {
            get
            {
                return this.float4x4Field;
            }
            set
            {
                this.float4x4Field = value;
            }
        }

        /// <remarks/>
        public int @int
        {
            get
            {
                return this.intField;
            }
            set
            {
                this.intField = value;
            }
        }

        /// <remarks/>
        public string int2
        {
            get
            {
                return this.int2Field;
            }
            set
            {
                this.int2Field = value;
            }
        }

        /// <remarks/>
        public string int3
        {
            get
            {
                return this.int3Field;
            }
            set
            {
                this.int3Field = value;
            }
        }

        /// <remarks/>
        public string int4
        {
            get
            {
                return this.int4Field;
            }
            set
            {
                this.int4Field = value;
            }
        }

        /// <remarks/>
        public glsl_surface_type surface
        {
            get
            {
                return this.surfaceField;
            }
            set
            {
                this.surfaceField = value;
            }
        }

        /// <remarks/>
        public gl_sampler1D sampler1D
        {
            get
            {
                return this.sampler1DField;
            }
            set
            {
                this.sampler1DField = value;
            }
        }

        /// <remarks/>
        public gl_sampler2D sampler2D
        {
            get
            {
                return this.sampler2DField;
            }
            set
            {
                this.sampler2DField = value;
            }
        }

        /// <remarks/>
        public gl_sampler3D sampler3D
        {
            get
            {
                return this.sampler3DField;
            }
            set
            {
                this.sampler3DField = value;
            }
        }

        /// <remarks/>
        public gl_samplerCUBE samplerCUBE
        {
            get
            {
                return this.samplerCUBEField;
            }
            set
            {
                this.samplerCUBEField = value;
            }
        }

        /// <remarks/>
        public gl_samplerRECT samplerRECT
        {
            get
            {
                return this.samplerRECTField;
            }
            set
            {
                this.samplerRECTField = value;
            }
        }

        /// <remarks/>
        public gl_samplerDEPTH samplerDEPTH
        {
            get
            {
                return this.samplerDEPTHField;
            }
            set
            {
                this.samplerDEPTHField = value;
            }
        }

        /// <remarks/>
        public string @enum
        {
            get
            {
                return this.enumField;
            }
            set
            {
                this.enumField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_texture_pipeline
    {

        private object[] itemsField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra", typeof(extra))]
        [System.Xml.Serialization.XmlElementAttribute("texcombiner", typeof(gles_texcombiner_command_type))]
        [System.Xml.Serialization.XmlElementAttribute("texenv", typeof(gles_texenv_command_type))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_texcombiner_command_type
    {

        private gles_texture_constant_type constantField;

        private gles_texcombiner_commandRGB_type rGBField;

        private gles_texcombiner_commandAlpha_type alphaField;

        /// <remarks/>
        public gles_texture_constant_type constant
        {
            get
            {
                return this.constantField;
            }
            set
            {
                this.constantField = value;
            }
        }

        /// <remarks/>
        public gles_texcombiner_commandRGB_type RGB
        {
            get
            {
                return this.rGBField;
            }
            set
            {
                this.rGBField = value;
            }
        }

        /// <remarks/>
        public gles_texcombiner_commandAlpha_type alpha
        {
            get
            {
                return this.alphaField;
            }
            set
            {
                this.alphaField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_texture_constant_type
    {

        private double[] valueField;

        private string paramField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_texcombiner_commandRGB_type
    {

        private gles_texcombiner_argumentRGB_type[] argumentField;

        private gles_texcombiner_operatorRGB_enums operatorField;

        private bool operatorFieldSpecified;

        private float scaleField;

        private bool scaleFieldSpecified;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("argument")]
        public gles_texcombiner_argumentRGB_type[] argument
        {
            get
            {
                return this.argumentField;
            }
            set
            {
                this.argumentField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public gles_texcombiner_operatorRGB_enums @operator
        {
            get
            {
                return this.operatorField;
            }
            set
            {
                this.operatorField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool operatorSpecified
        {
            get
            {
                return this.operatorFieldSpecified;
            }
            set
            {
                this.operatorFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public float scale
        {
            get
            {
                return this.scaleField;
            }
            set
            {
                this.scaleField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool scaleSpecified
        {
            get
            {
                return this.scaleFieldSpecified;
            }
            set
            {
                this.scaleFieldSpecified = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_texcombiner_argumentRGB_type
    {

        private gles_texcombiner_source_enums sourceField;

        private bool sourceFieldSpecified;

        private gles_texcombiner_operandRGB_enums operandField;

        private string unitField;

        public gles_texcombiner_argumentRGB_type()
        {
            this.operandField = gles_texcombiner_operandRGB_enums.SRC_COLOR;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public gles_texcombiner_source_enums source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool sourceSpecified
        {
            get
            {
                return this.sourceFieldSpecified;
            }
            set
            {
                this.sourceFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gles_texcombiner_operandRGB_enums.SRC_COLOR)]
        public gles_texcombiner_operandRGB_enums operand
        {
            get
            {
                return this.operandField;
            }
            set
            {
                this.operandField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string unit
        {
            get
            {
                return this.unitField;
            }
            set
            {
                this.unitField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gles_texcombiner_source_enums
    {

        /// <remarks/>
        TEXTURE,

        /// <remarks/>
        CONSTANT,

        /// <remarks/>
        PRIMARY,

        /// <remarks/>
        PREVIOUS,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gles_texcombiner_operandRGB_enums
    {

        /// <remarks/>
        SRC_COLOR,

        /// <remarks/>
        ONE_MINUS_SRC_COLOR,

        /// <remarks/>
        SRC_ALPHA,

        /// <remarks/>
        ONE_MINUS_SRC_ALPHA,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gles_texcombiner_operatorRGB_enums
    {

        /// <remarks/>
        REPLACE,

        /// <remarks/>
        MODULATE,

        /// <remarks/>
        ADD,

        /// <remarks/>
        ADD_SIGNED,

        /// <remarks/>
        INTERPOLATE,

        /// <remarks/>
        SUBTRACT,

        /// <remarks/>
        DOT3_RGB,

        /// <remarks/>
        DOT3_RGBA,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_texcombiner_commandAlpha_type
    {

        private gles_texcombiner_argumentAlpha_type[] argumentField;

        private gles_texcombiner_operatorAlpha_enums operatorField;

        private bool operatorFieldSpecified;

        private float scaleField;

        private bool scaleFieldSpecified;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("argument")]
        public gles_texcombiner_argumentAlpha_type[] argument
        {
            get
            {
                return this.argumentField;
            }
            set
            {
                this.argumentField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public gles_texcombiner_operatorAlpha_enums @operator
        {
            get
            {
                return this.operatorField;
            }
            set
            {
                this.operatorField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool operatorSpecified
        {
            get
            {
                return this.operatorFieldSpecified;
            }
            set
            {
                this.operatorFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public float scale
        {
            get
            {
                return this.scaleField;
            }
            set
            {
                this.scaleField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool scaleSpecified
        {
            get
            {
                return this.scaleFieldSpecified;
            }
            set
            {
                this.scaleFieldSpecified = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_texcombiner_argumentAlpha_type
    {

        private gles_texcombiner_source_enums sourceField;

        private bool sourceFieldSpecified;

        private gles_texcombiner_operandAlpha_enums operandField;

        private string unitField;

        public gles_texcombiner_argumentAlpha_type()
        {
            this.operandField = gles_texcombiner_operandAlpha_enums.SRC_ALPHA;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public gles_texcombiner_source_enums source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool sourceSpecified
        {
            get
            {
                return this.sourceFieldSpecified;
            }
            set
            {
                this.sourceFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gles_texcombiner_operandAlpha_enums.SRC_ALPHA)]
        public gles_texcombiner_operandAlpha_enums operand
        {
            get
            {
                return this.operandField;
            }
            set
            {
                this.operandField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string unit
        {
            get
            {
                return this.unitField;
            }
            set
            {
                this.unitField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gles_texcombiner_operandAlpha_enums
    {

        /// <remarks/>
        SRC_ALPHA,

        /// <remarks/>
        ONE_MINUS_SRC_ALPHA,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gles_texcombiner_operatorAlpha_enums
    {

        /// <remarks/>
        REPLACE,

        /// <remarks/>
        MODULATE,

        /// <remarks/>
        ADD,

        /// <remarks/>
        ADD_SIGNED,

        /// <remarks/>
        INTERPOLATE,

        /// <remarks/>
        SUBTRACT,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_texenv_command_type
    {

        private gles_texture_constant_type constantField;

        private gles_texenv_mode_enums operatorField;

        private bool operatorFieldSpecified;

        private string unitField;

        /// <remarks/>
        public gles_texture_constant_type constant
        {
            get
            {
                return this.constantField;
            }
            set
            {
                this.constantField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public gles_texenv_mode_enums @operator
        {
            get
            {
                return this.operatorField;
            }
            set
            {
                this.operatorField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool operatorSpecified
        {
            get
            {
                return this.operatorFieldSpecified;
            }
            set
            {
                this.operatorFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string unit
        {
            get
            {
                return this.unitField;
            }
            set
            {
                this.unitField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gles_texenv_mode_enums
    {

        /// <remarks/>
        REPLACE,

        /// <remarks/>
        MODULATE,

        /// <remarks/>
        DECAL,

        /// <remarks/>
        BLEND,

        /// <remarks/>
        ADD,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_sampler_state
    {

        private gles_sampler_wrap wrap_sField;

        private gles_sampler_wrap wrap_tField;

        private fx_sampler_filter_common minfilterField;

        private fx_sampler_filter_common magfilterField;

        private fx_sampler_filter_common mipfilterField;

        private byte mipmap_maxlevelField;

        private float mipmap_biasField;

        private extra[] extraField;

        private string sidField;

        public gles_sampler_state()
        {
            this.wrap_sField = gles_sampler_wrap.REPEAT;
            this.wrap_tField = gles_sampler_wrap.REPEAT;
            this.minfilterField = fx_sampler_filter_common.NONE;
            this.magfilterField = fx_sampler_filter_common.NONE;
            this.mipfilterField = fx_sampler_filter_common.NONE;
            this.mipmap_maxlevelField = ((byte)(255));
            this.mipmap_biasField = ((float)(0F));
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(gles_sampler_wrap.REPEAT)]
        public gles_sampler_wrap wrap_s
        {
            get
            {
                return this.wrap_sField;
            }
            set
            {
                this.wrap_sField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(gles_sampler_wrap.REPEAT)]
        public gles_sampler_wrap wrap_t
        {
            get
            {
                return this.wrap_tField;
            }
            set
            {
                this.wrap_tField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common minfilter
        {
            get
            {
                return this.minfilterField;
            }
            set
            {
                this.minfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common magfilter
        {
            get
            {
                return this.magfilterField;
            }
            set
            {
                this.magfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(fx_sampler_filter_common.NONE)]
        public fx_sampler_filter_common mipfilter
        {
            get
            {
                return this.mipfilterField;
            }
            set
            {
                this.mipfilterField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "255")]
        public byte mipmap_maxlevel
        {
            get
            {
                return this.mipmap_maxlevelField;
            }
            set
            {
                this.mipmap_maxlevelField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute(typeof(float), "0")]
        public float mipmap_bias
        {
            get
            {
                return this.mipmap_biasField;
            }
            set
            {
                this.mipmap_biasField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gles_sampler_wrap
    {

        /// <remarks/>
        REPEAT,

        /// <remarks/>
        CLAMP,

        /// <remarks/>
        CLAMP_TO_EDGE,

        /// <remarks/>
        MIRRORED_REPEAT,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_texture_unit
    {

        private string surfaceField;

        private string sampler_stateField;

        private gles_texture_unitTexcoord texcoordField;

        private extra[] extraField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string surface
        {
            get
            {
                return this.surfaceField;
            }
            set
            {
                this.surfaceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string sampler_state
        {
            get
            {
                return this.sampler_stateField;
            }
            set
            {
                this.sampler_stateField = value;
            }
        }

        /// <remarks/>
        public gles_texture_unitTexcoord texcoord
        {
            get
            {
                return this.texcoordField;
            }
            set
            {
                this.texcoordField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class gles_texture_unitTexcoord
    {

        private string semanticField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_newparam
    {

        private fx_annotate_common[] annotateField;

        private string semanticField;

        private fx_modifier_enum_common modifierField;

        private bool modifierFieldSpecified;

        private object itemField;

        private ItemChoiceType4 itemElementNameField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        public fx_modifier_enum_common modifier
        {
            get
            {
                return this.modifierField;
            }
            set
            {
                this.modifierField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool modifierSpecified
        {
            get
            {
                return this.modifierFieldSpecified;
            }
            set
            {
                this.modifierFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("array", typeof(cg_newarray_type))]
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("fixed", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(cg_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(cg_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(cg_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(cg_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(cg_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(cg_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("string", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(cg_surface_type))]
        [System.Xml.Serialization.XmlElementAttribute("usertype", typeof(cg_setuser_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemChoiceType4 ItemElementName
        {
            get
            {
                return this.itemElementNameField;
            }
            set
            {
                this.itemElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_newarray_type
    {

        private object[] itemsField;

        private ItemsChoiceType6[] itemsElementNameField;

        private string lengthField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("array", typeof(cg_newarray_type))]
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("connect_param", typeof(cg_connect_param))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("fixed", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(cg_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(cg_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(cg_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(cg_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(cg_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(cg_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("string", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(cg_surface_type))]
        [System.Xml.Serialization.XmlElementAttribute("usertype", typeof(cg_setuser_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName")]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType6[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "positiveInteger")]
        public string length
        {
            get
            {
                return this.lengthField;
            }
            set
            {
                this.lengthField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_connect_param
    {

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_setuser_type
    {

        private object[] itemsField;

        private ItemsChoiceType5[] itemsElementNameField;

        private string nameField;

        private string sourceField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("array", typeof(cg_setarray_type))]
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("connect_param", typeof(cg_connect_param))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("fixed", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(cg_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(cg_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(cg_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(cg_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(cg_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(cg_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("setparam", typeof(cg_setparam))]
        [System.Xml.Serialization.XmlElementAttribute("string", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(cg_surface_type))]
        [System.Xml.Serialization.XmlElementAttribute("usertype", typeof(cg_setuser_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName")]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType5[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_setarray_type
    {

        private object[] itemsField;

        private ItemsChoiceType4[] itemsElementNameField;

        private string lengthField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("array", typeof(cg_setarray_type))]
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("fixed", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(cg_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(cg_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(cg_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(cg_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(cg_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(cg_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("string", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(cg_surface_type))]
        [System.Xml.Serialization.XmlElementAttribute("usertype", typeof(cg_setuser_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName")]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType4[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "positiveInteger")]
        public string length
        {
            get
            {
                return this.lengthField;
            }
            set
            {
                this.lengthField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemsChoiceType4
    {

        /// <remarks/>
        array,

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool1,

        /// <remarks/>
        bool1x1,

        /// <remarks/>
        bool1x2,

        /// <remarks/>
        bool1x3,

        /// <remarks/>
        bool1x4,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool2x1,

        /// <remarks/>
        bool2x2,

        /// <remarks/>
        bool2x3,

        /// <remarks/>
        bool2x4,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool3x1,

        /// <remarks/>
        bool3x2,

        /// <remarks/>
        bool3x3,

        /// <remarks/>
        bool3x4,

        /// <remarks/>
        bool4,

        /// <remarks/>
        bool4x1,

        /// <remarks/>
        bool4x2,

        /// <remarks/>
        bool4x3,

        /// <remarks/>
        bool4x4,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @fixed,

        /// <remarks/>
        fixed1,

        /// <remarks/>
        fixed1x1,

        /// <remarks/>
        fixed1x2,

        /// <remarks/>
        fixed1x3,

        /// <remarks/>
        fixed1x4,

        /// <remarks/>
        fixed2,

        /// <remarks/>
        fixed2x1,

        /// <remarks/>
        fixed2x2,

        /// <remarks/>
        fixed2x3,

        /// <remarks/>
        fixed2x4,

        /// <remarks/>
        fixed3,

        /// <remarks/>
        fixed3x1,

        /// <remarks/>
        fixed3x2,

        /// <remarks/>
        fixed3x3,

        /// <remarks/>
        fixed3x4,

        /// <remarks/>
        fixed4,

        /// <remarks/>
        fixed4x1,

        /// <remarks/>
        fixed4x2,

        /// <remarks/>
        fixed4x3,

        /// <remarks/>
        fixed4x4,

        /// <remarks/>
        @float,

        /// <remarks/>
        float1,

        /// <remarks/>
        float1x1,

        /// <remarks/>
        float1x2,

        /// <remarks/>
        float1x3,

        /// <remarks/>
        float1x4,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x1,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float2x3,

        /// <remarks/>
        float2x4,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x1,

        /// <remarks/>
        float3x2,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float3x4,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x1,

        /// <remarks/>
        float4x2,

        /// <remarks/>
        float4x3,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        half,

        /// <remarks/>
        half1,

        /// <remarks/>
        half1x1,

        /// <remarks/>
        half1x2,

        /// <remarks/>
        half1x3,

        /// <remarks/>
        half1x4,

        /// <remarks/>
        half2,

        /// <remarks/>
        half2x1,

        /// <remarks/>
        half2x2,

        /// <remarks/>
        half2x3,

        /// <remarks/>
        half2x4,

        /// <remarks/>
        half3,

        /// <remarks/>
        half3x1,

        /// <remarks/>
        half3x2,

        /// <remarks/>
        half3x3,

        /// <remarks/>
        half3x4,

        /// <remarks/>
        half4,

        /// <remarks/>
        half4x1,

        /// <remarks/>
        half4x2,

        /// <remarks/>
        half4x3,

        /// <remarks/>
        half4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int1,

        /// <remarks/>
        int1x1,

        /// <remarks/>
        int1x2,

        /// <remarks/>
        int1x3,

        /// <remarks/>
        int1x4,

        /// <remarks/>
        int2,

        /// <remarks/>
        int2x1,

        /// <remarks/>
        int2x2,

        /// <remarks/>
        int2x3,

        /// <remarks/>
        int2x4,

        /// <remarks/>
        int3,

        /// <remarks/>
        int3x1,

        /// <remarks/>
        int3x2,

        /// <remarks/>
        int3x3,

        /// <remarks/>
        int3x4,

        /// <remarks/>
        int4,

        /// <remarks/>
        int4x1,

        /// <remarks/>
        int4x2,

        /// <remarks/>
        int4x3,

        /// <remarks/>
        int4x4,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        @string,

        /// <remarks/>
        surface,

        /// <remarks/>
        usertype,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cg_setparam
    {

        private object itemField;

        private ItemChoiceType3 itemElementNameField;

        private string refField;

        private string programField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("array", typeof(cg_setarray_type))]
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("connect_param", typeof(cg_connect_param))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("fixed", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(cg_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(cg_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(cg_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(cg_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(cg_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(cg_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("string", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(cg_surface_type))]
        [System.Xml.Serialization.XmlElementAttribute("usertype", typeof(cg_setuser_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemChoiceType3 ItemElementName
        {
            get
            {
                return this.itemElementNameField;
            }
            set
            {
                this.itemElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string program
        {
            get
            {
                return this.programField;
            }
            set
            {
                this.programField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemChoiceType3
    {

        /// <remarks/>
        array,

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool1,

        /// <remarks/>
        bool1x1,

        /// <remarks/>
        bool1x2,

        /// <remarks/>
        bool1x3,

        /// <remarks/>
        bool1x4,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool2x1,

        /// <remarks/>
        bool2x2,

        /// <remarks/>
        bool2x3,

        /// <remarks/>
        bool2x4,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool3x1,

        /// <remarks/>
        bool3x2,

        /// <remarks/>
        bool3x3,

        /// <remarks/>
        bool3x4,

        /// <remarks/>
        bool4,

        /// <remarks/>
        bool4x1,

        /// <remarks/>
        bool4x2,

        /// <remarks/>
        bool4x3,

        /// <remarks/>
        bool4x4,

        /// <remarks/>
        connect_param,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @fixed,

        /// <remarks/>
        fixed1,

        /// <remarks/>
        fixed1x1,

        /// <remarks/>
        fixed1x2,

        /// <remarks/>
        fixed1x3,

        /// <remarks/>
        fixed1x4,

        /// <remarks/>
        fixed2,

        /// <remarks/>
        fixed2x1,

        /// <remarks/>
        fixed2x2,

        /// <remarks/>
        fixed2x3,

        /// <remarks/>
        fixed2x4,

        /// <remarks/>
        fixed3,

        /// <remarks/>
        fixed3x1,

        /// <remarks/>
        fixed3x2,

        /// <remarks/>
        fixed3x3,

        /// <remarks/>
        fixed3x4,

        /// <remarks/>
        fixed4,

        /// <remarks/>
        fixed4x1,

        /// <remarks/>
        fixed4x2,

        /// <remarks/>
        fixed4x3,

        /// <remarks/>
        fixed4x4,

        /// <remarks/>
        @float,

        /// <remarks/>
        float1,

        /// <remarks/>
        float1x1,

        /// <remarks/>
        float1x2,

        /// <remarks/>
        float1x3,

        /// <remarks/>
        float1x4,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x1,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float2x3,

        /// <remarks/>
        float2x4,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x1,

        /// <remarks/>
        float3x2,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float3x4,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x1,

        /// <remarks/>
        float4x2,

        /// <remarks/>
        float4x3,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        half,

        /// <remarks/>
        half1,

        /// <remarks/>
        half1x1,

        /// <remarks/>
        half1x2,

        /// <remarks/>
        half1x3,

        /// <remarks/>
        half1x4,

        /// <remarks/>
        half2,

        /// <remarks/>
        half2x1,

        /// <remarks/>
        half2x2,

        /// <remarks/>
        half2x3,

        /// <remarks/>
        half2x4,

        /// <remarks/>
        half3,

        /// <remarks/>
        half3x1,

        /// <remarks/>
        half3x2,

        /// <remarks/>
        half3x3,

        /// <remarks/>
        half3x4,

        /// <remarks/>
        half4,

        /// <remarks/>
        half4x1,

        /// <remarks/>
        half4x2,

        /// <remarks/>
        half4x3,

        /// <remarks/>
        half4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int1,

        /// <remarks/>
        int1x1,

        /// <remarks/>
        int1x2,

        /// <remarks/>
        int1x3,

        /// <remarks/>
        int1x4,

        /// <remarks/>
        int2,

        /// <remarks/>
        int2x1,

        /// <remarks/>
        int2x2,

        /// <remarks/>
        int2x3,

        /// <remarks/>
        int2x4,

        /// <remarks/>
        int3,

        /// <remarks/>
        int3x1,

        /// <remarks/>
        int3x2,

        /// <remarks/>
        int3x3,

        /// <remarks/>
        int3x4,

        /// <remarks/>
        int4,

        /// <remarks/>
        int4x1,

        /// <remarks/>
        int4x2,

        /// <remarks/>
        int4x3,

        /// <remarks/>
        int4x4,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        @string,

        /// <remarks/>
        surface,

        /// <remarks/>
        usertype,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemsChoiceType5
    {

        /// <remarks/>
        array,

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool1,

        /// <remarks/>
        bool1x1,

        /// <remarks/>
        bool1x2,

        /// <remarks/>
        bool1x3,

        /// <remarks/>
        bool1x4,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool2x1,

        /// <remarks/>
        bool2x2,

        /// <remarks/>
        bool2x3,

        /// <remarks/>
        bool2x4,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool3x1,

        /// <remarks/>
        bool3x2,

        /// <remarks/>
        bool3x3,

        /// <remarks/>
        bool3x4,

        /// <remarks/>
        bool4,

        /// <remarks/>
        bool4x1,

        /// <remarks/>
        bool4x2,

        /// <remarks/>
        bool4x3,

        /// <remarks/>
        bool4x4,

        /// <remarks/>
        connect_param,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @fixed,

        /// <remarks/>
        fixed1,

        /// <remarks/>
        fixed1x1,

        /// <remarks/>
        fixed1x2,

        /// <remarks/>
        fixed1x3,

        /// <remarks/>
        fixed1x4,

        /// <remarks/>
        fixed2,

        /// <remarks/>
        fixed2x1,

        /// <remarks/>
        fixed2x2,

        /// <remarks/>
        fixed2x3,

        /// <remarks/>
        fixed2x4,

        /// <remarks/>
        fixed3,

        /// <remarks/>
        fixed3x1,

        /// <remarks/>
        fixed3x2,

        /// <remarks/>
        fixed3x3,

        /// <remarks/>
        fixed3x4,

        /// <remarks/>
        fixed4,

        /// <remarks/>
        fixed4x1,

        /// <remarks/>
        fixed4x2,

        /// <remarks/>
        fixed4x3,

        /// <remarks/>
        fixed4x4,

        /// <remarks/>
        @float,

        /// <remarks/>
        float1,

        /// <remarks/>
        float1x1,

        /// <remarks/>
        float1x2,

        /// <remarks/>
        float1x3,

        /// <remarks/>
        float1x4,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x1,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float2x3,

        /// <remarks/>
        float2x4,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x1,

        /// <remarks/>
        float3x2,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float3x4,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x1,

        /// <remarks/>
        float4x2,

        /// <remarks/>
        float4x3,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        half,

        /// <remarks/>
        half1,

        /// <remarks/>
        half1x1,

        /// <remarks/>
        half1x2,

        /// <remarks/>
        half1x3,

        /// <remarks/>
        half1x4,

        /// <remarks/>
        half2,

        /// <remarks/>
        half2x1,

        /// <remarks/>
        half2x2,

        /// <remarks/>
        half2x3,

        /// <remarks/>
        half2x4,

        /// <remarks/>
        half3,

        /// <remarks/>
        half3x1,

        /// <remarks/>
        half3x2,

        /// <remarks/>
        half3x3,

        /// <remarks/>
        half3x4,

        /// <remarks/>
        half4,

        /// <remarks/>
        half4x1,

        /// <remarks/>
        half4x2,

        /// <remarks/>
        half4x3,

        /// <remarks/>
        half4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int1,

        /// <remarks/>
        int1x1,

        /// <remarks/>
        int1x2,

        /// <remarks/>
        int1x3,

        /// <remarks/>
        int1x4,

        /// <remarks/>
        int2,

        /// <remarks/>
        int2x1,

        /// <remarks/>
        int2x2,

        /// <remarks/>
        int2x3,

        /// <remarks/>
        int2x4,

        /// <remarks/>
        int3,

        /// <remarks/>
        int3x1,

        /// <remarks/>
        int3x2,

        /// <remarks/>
        int3x3,

        /// <remarks/>
        int3x4,

        /// <remarks/>
        int4,

        /// <remarks/>
        int4x1,

        /// <remarks/>
        int4x2,

        /// <remarks/>
        int4x3,

        /// <remarks/>
        int4x4,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        setparam,

        /// <remarks/>
        @string,

        /// <remarks/>
        surface,

        /// <remarks/>
        usertype,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemsChoiceType6
    {

        /// <remarks/>
        array,

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool1,

        /// <remarks/>
        bool1x1,

        /// <remarks/>
        bool1x2,

        /// <remarks/>
        bool1x3,

        /// <remarks/>
        bool1x4,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool2x1,

        /// <remarks/>
        bool2x2,

        /// <remarks/>
        bool2x3,

        /// <remarks/>
        bool2x4,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool3x1,

        /// <remarks/>
        bool3x2,

        /// <remarks/>
        bool3x3,

        /// <remarks/>
        bool3x4,

        /// <remarks/>
        bool4,

        /// <remarks/>
        bool4x1,

        /// <remarks/>
        bool4x2,

        /// <remarks/>
        bool4x3,

        /// <remarks/>
        bool4x4,

        /// <remarks/>
        connect_param,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @fixed,

        /// <remarks/>
        fixed1,

        /// <remarks/>
        fixed1x1,

        /// <remarks/>
        fixed1x2,

        /// <remarks/>
        fixed1x3,

        /// <remarks/>
        fixed1x4,

        /// <remarks/>
        fixed2,

        /// <remarks/>
        fixed2x1,

        /// <remarks/>
        fixed2x2,

        /// <remarks/>
        fixed2x3,

        /// <remarks/>
        fixed2x4,

        /// <remarks/>
        fixed3,

        /// <remarks/>
        fixed3x1,

        /// <remarks/>
        fixed3x2,

        /// <remarks/>
        fixed3x3,

        /// <remarks/>
        fixed3x4,

        /// <remarks/>
        fixed4,

        /// <remarks/>
        fixed4x1,

        /// <remarks/>
        fixed4x2,

        /// <remarks/>
        fixed4x3,

        /// <remarks/>
        fixed4x4,

        /// <remarks/>
        @float,

        /// <remarks/>
        float1,

        /// <remarks/>
        float1x1,

        /// <remarks/>
        float1x2,

        /// <remarks/>
        float1x3,

        /// <remarks/>
        float1x4,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x1,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float2x3,

        /// <remarks/>
        float2x4,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x1,

        /// <remarks/>
        float3x2,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float3x4,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x1,

        /// <remarks/>
        float4x2,

        /// <remarks/>
        float4x3,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        half,

        /// <remarks/>
        half1,

        /// <remarks/>
        half1x1,

        /// <remarks/>
        half1x2,

        /// <remarks/>
        half1x3,

        /// <remarks/>
        half1x4,

        /// <remarks/>
        half2,

        /// <remarks/>
        half2x1,

        /// <remarks/>
        half2x2,

        /// <remarks/>
        half2x3,

        /// <remarks/>
        half2x4,

        /// <remarks/>
        half3,

        /// <remarks/>
        half3x1,

        /// <remarks/>
        half3x2,

        /// <remarks/>
        half3x3,

        /// <remarks/>
        half3x4,

        /// <remarks/>
        half4,

        /// <remarks/>
        half4x1,

        /// <remarks/>
        half4x2,

        /// <remarks/>
        half4x3,

        /// <remarks/>
        half4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int1,

        /// <remarks/>
        int1x1,

        /// <remarks/>
        int1x2,

        /// <remarks/>
        int1x3,

        /// <remarks/>
        int1x4,

        /// <remarks/>
        int2,

        /// <remarks/>
        int2x1,

        /// <remarks/>
        int2x2,

        /// <remarks/>
        int2x3,

        /// <remarks/>
        int2x4,

        /// <remarks/>
        int3,

        /// <remarks/>
        int3x1,

        /// <remarks/>
        int3x2,

        /// <remarks/>
        int3x3,

        /// <remarks/>
        int3x4,

        /// <remarks/>
        int4,

        /// <remarks/>
        int4x1,

        /// <remarks/>
        int4x2,

        /// <remarks/>
        int4x3,

        /// <remarks/>
        int4x4,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        @string,

        /// <remarks/>
        surface,

        /// <remarks/>
        usertype,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemChoiceType4
    {

        /// <remarks/>
        array,

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool1,

        /// <remarks/>
        bool1x1,

        /// <remarks/>
        bool1x2,

        /// <remarks/>
        bool1x3,

        /// <remarks/>
        bool1x4,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool2x1,

        /// <remarks/>
        bool2x2,

        /// <remarks/>
        bool2x3,

        /// <remarks/>
        bool2x4,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool3x1,

        /// <remarks/>
        bool3x2,

        /// <remarks/>
        bool3x3,

        /// <remarks/>
        bool3x4,

        /// <remarks/>
        bool4,

        /// <remarks/>
        bool4x1,

        /// <remarks/>
        bool4x2,

        /// <remarks/>
        bool4x3,

        /// <remarks/>
        bool4x4,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @fixed,

        /// <remarks/>
        fixed1,

        /// <remarks/>
        fixed1x1,

        /// <remarks/>
        fixed1x2,

        /// <remarks/>
        fixed1x3,

        /// <remarks/>
        fixed1x4,

        /// <remarks/>
        fixed2,

        /// <remarks/>
        fixed2x1,

        /// <remarks/>
        fixed2x2,

        /// <remarks/>
        fixed2x3,

        /// <remarks/>
        fixed2x4,

        /// <remarks/>
        fixed3,

        /// <remarks/>
        fixed3x1,

        /// <remarks/>
        fixed3x2,

        /// <remarks/>
        fixed3x3,

        /// <remarks/>
        fixed3x4,

        /// <remarks/>
        fixed4,

        /// <remarks/>
        fixed4x1,

        /// <remarks/>
        fixed4x2,

        /// <remarks/>
        fixed4x3,

        /// <remarks/>
        fixed4x4,

        /// <remarks/>
        @float,

        /// <remarks/>
        float1,

        /// <remarks/>
        float1x1,

        /// <remarks/>
        float1x2,

        /// <remarks/>
        float1x3,

        /// <remarks/>
        float1x4,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x1,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float2x3,

        /// <remarks/>
        float2x4,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x1,

        /// <remarks/>
        float3x2,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float3x4,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x1,

        /// <remarks/>
        float4x2,

        /// <remarks/>
        float4x3,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        half,

        /// <remarks/>
        half1,

        /// <remarks/>
        half1x1,

        /// <remarks/>
        half1x2,

        /// <remarks/>
        half1x3,

        /// <remarks/>
        half1x4,

        /// <remarks/>
        half2,

        /// <remarks/>
        half2x1,

        /// <remarks/>
        half2x2,

        /// <remarks/>
        half2x3,

        /// <remarks/>
        half2x4,

        /// <remarks/>
        half3,

        /// <remarks/>
        half3x1,

        /// <remarks/>
        half3x2,

        /// <remarks/>
        half3x3,

        /// <remarks/>
        half3x4,

        /// <remarks/>
        half4,

        /// <remarks/>
        half4x1,

        /// <remarks/>
        half4x2,

        /// <remarks/>
        half4x3,

        /// <remarks/>
        half4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int1,

        /// <remarks/>
        int1x1,

        /// <remarks/>
        int1x2,

        /// <remarks/>
        int1x3,

        /// <remarks/>
        int1x4,

        /// <remarks/>
        int2,

        /// <remarks/>
        int2x1,

        /// <remarks/>
        int2x2,

        /// <remarks/>
        int2x3,

        /// <remarks/>
        int2x4,

        /// <remarks/>
        int3,

        /// <remarks/>
        int3x1,

        /// <remarks/>
        int3x2,

        /// <remarks/>
        int3x3,

        /// <remarks/>
        int3x4,

        /// <remarks/>
        int4,

        /// <remarks/>
        int4x1,

        /// <remarks/>
        int4x2,

        /// <remarks/>
        int4x3,

        /// <remarks/>
        int4x4,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        @string,

        /// <remarks/>
        surface,

        /// <remarks/>
        usertype,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class common_newparam_type
    {

        private string semanticField;

        private object itemField;

        private ItemChoiceType2 itemElementNameField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(double))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(double))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(double))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(double))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(fx_sampler2D_common))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(fx_surface_common))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemChoiceType2 ItemElementName
        {
            get
            {
                return this.itemElementNameField;
            }
            set
            {
                this.itemElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemChoiceType2
    {

        /// <remarks/>
        @float,

        /// <remarks/>
        float2,

        /// <remarks/>
        float3,

        /// <remarks/>
        float4,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        surface,
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(common_transparent_type))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class common_color_or_texture_type
    {

        private object itemField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("color", typeof(common_color_or_texture_typeColor))]
        [System.Xml.Serialization.XmlElementAttribute("param", typeof(common_color_or_texture_typeParam))]
        [System.Xml.Serialization.XmlElementAttribute("texture", typeof(common_color_or_texture_typeTexture))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class common_color_or_texture_typeColor
    {

        private string sidField;

        private double[] textField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertDoubleArray(value); }
        }
        /// <remarks/>
        [XmlIgnore]
        public double[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class common_color_or_texture_typeParam
    {

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class common_color_or_texture_typeTexture
    {

        private extra extraField;

        private string textureField;

        private string texcoordField;

        /// <remarks/>
        public extra extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string texture
        {
            get
            {
                return this.textureField;
            }
            set
            {
                this.textureField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string texcoord
        {
            get
            {
                return this.texcoordField;
            }
            set
            {
                this.texcoordField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class common_transparent_type : common_color_or_texture_type
    {

        private fx_opaque_enum opaqueField;

        public common_transparent_type()
        {
            this.opaqueField = fx_opaque_enum.A_ONE;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(fx_opaque_enum.A_ONE)]
        public fx_opaque_enum opaque
        {
            get
            {
                return this.opaqueField;
            }
            set
            {
                this.opaqueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum fx_opaque_enum
    {

        /// <remarks/>
        A_ONE,

        /// <remarks/>
        RGB_ZERO,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class common_float_or_param_type
    {

        private object itemField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(common_float_or_param_typeFloat))]
        [System.Xml.Serialization.XmlElementAttribute("param", typeof(common_float_or_param_typeParam))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class common_float_or_param_typeFloat
    {

        private string sidField;

        private double valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public double Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class common_float_or_param_typeParam
    {

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class glsl_setparam
    {

        private fx_annotate_common[] annotateField;

        private object itemField;

        private ItemChoiceType1 itemElementNameField;

        private string refField;

        private string programField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("array", typeof(glsl_setarray_type))]
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(gl_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(gl_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(gl_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(gl_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(gl_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(gl_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(glsl_surface_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemChoiceType1 ItemElementName
        {
            get
            {
                return this.itemElementNameField;
            }
            set
            {
                this.itemElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string program
        {
            get
            {
                return this.programField;
            }
            set
            {
                this.programField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class glsl_setarray_type
    {

        private object[] itemsField;

        private ItemsChoiceType3[] itemsElementNameField;

        private string lengthField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("array", typeof(glsl_setarray_type))]
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(gl_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(gl_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(gl_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(gl_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(gl_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(gl_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(glsl_surface_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName")]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType3[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "positiveInteger")]
        public string length
        {
            get
            {
                return this.lengthField;
            }
            set
            {
                this.lengthField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemsChoiceType3
    {

        /// <remarks/>
        array,

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool4,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @float,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int2,

        /// <remarks/>
        int3,

        /// <remarks/>
        int4,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        surface,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemChoiceType1
    {

        /// <remarks/>
        array,

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool4,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @float,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int2,

        /// <remarks/>
        int3,

        /// <remarks/>
        int4,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        surface,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class glsl_newparam
    {

        private fx_annotate_common[] annotateField;

        private string semanticField;

        private fx_modifier_enum_common modifierField;

        private bool modifierFieldSpecified;

        private object itemField;

        private ItemChoiceType itemElementNameField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        public fx_modifier_enum_common modifier
        {
            get
            {
                return this.modifierField;
            }
            set
            {
                this.modifierField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool modifierSpecified
        {
            get
            {
                return this.modifierFieldSpecified;
            }
            set
            {
                this.modifierFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("array", typeof(glsl_newarray_type))]
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(gl_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(gl_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(gl_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(gl_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(gl_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(gl_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(glsl_surface_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemChoiceType ItemElementName
        {
            get
            {
                return this.itemElementNameField;
            }
            set
            {
                this.itemElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class glsl_newarray_type
    {

        private object[] itemsField;

        private ItemsChoiceType2[] itemsElementNameField;

        private string lengthField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("array", typeof(glsl_newarray_type))]
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(gl_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(gl_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(gl_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(gl_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(gl_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(gl_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(glsl_surface_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName")]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType2[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "positiveInteger")]
        public string length
        {
            get
            {
                return this.lengthField;
            }
            set
            {
                this.lengthField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemsChoiceType2
    {

        /// <remarks/>
        array,

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool4,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @float,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int2,

        /// <remarks/>
        int3,

        /// <remarks/>
        int4,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        surface,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemChoiceType
    {

        /// <remarks/>
        array,

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool4,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @float,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int2,

        /// <remarks/>
        int3,

        /// <remarks/>
        int4,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        surface,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class InputGlobal
    {

        private string semanticField;

        private string sourceField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NMTOKEN")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class fx_newparam_common
    {

        private fx_annotate_common[] annotateField;

        private string semanticField;

        private fx_modifier_enum_common modifierField;

        private bool modifierFieldSpecified;

        private bool boolField;

        private string bool2Field;

        private string bool3Field;

        private string bool4Field;

        private long intField;

        private string int2Field;

        private string int3Field;

        private string int4Field;

        private double floatField;

        private string float2Field;

        private string float3Field;

        private string float4Field;

        private double float1x1Field;

        private string float1x2Field;

        private string float1x3Field;

        private string float1x4Field;

        private string float2x1Field;

        private string float2x2Field;

        private string float2x3Field;

        private string float2x4Field;

        private string float3x1Field;

        private string float3x2Field;

        private string float3x3Field;

        private string float3x4Field;

        private string float4x1Field;

        private string float4x2Field;

        private string float4x3Field;

        private string float4x4Field;

        private fx_surface_common surfaceField;

        private fx_sampler1D_common sampler1DField;

        private fx_sampler2D_common sampler2DField;

        private fx_sampler3D_common sampler3DField;

        private fx_samplerCUBE_common samplerCUBEField;

        private fx_samplerRECT_common samplerRECTField;

        private fx_samplerDEPTH_common samplerDEPTHField;

        private string enumField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        public fx_modifier_enum_common modifier
        {
            get
            {
                return this.modifierField;
            }
            set
            {
                this.modifierField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool modifierSpecified
        {
            get
            {
                return this.modifierFieldSpecified;
            }
            set
            {
                this.modifierFieldSpecified = value;
            }
        }

        /// <remarks/>
        public bool @bool
        {
            get
            {
                return this.boolField;
            }
            set
            {
                this.boolField = value;
            }
        }

        /// <remarks/>
        public string bool2
        {
            get
            {
                return this.bool2Field;
            }
            set
            {
                this.bool2Field = value;
            }
        }

        /// <remarks/>
        public string bool3
        {
            get
            {
                return this.bool3Field;
            }
            set
            {
                this.bool3Field = value;
            }
        }

        /// <remarks/>
        public string bool4
        {
            get
            {
                return this.bool4Field;
            }
            set
            {
                this.bool4Field = value;
            }
        }

        /// <remarks/>
        public long @int
        {
            get
            {
                return this.intField;
            }
            set
            {
                this.intField = value;
            }
        }

        /// <remarks/>
        public string int2
        {
            get
            {
                return this.int2Field;
            }
            set
            {
                this.int2Field = value;
            }
        }

        /// <remarks/>
        public string int3
        {
            get
            {
                return this.int3Field;
            }
            set
            {
                this.int3Field = value;
            }
        }

        /// <remarks/>
        public string int4
        {
            get
            {
                return this.int4Field;
            }
            set
            {
                this.int4Field = value;
            }
        }

        /// <remarks/>
        public double @float
        {
            get
            {
                return this.floatField;
            }
            set
            {
                this.floatField = value;
            }
        }

        /// <remarks/>
        public string float2
        {
            get
            {
                return this.float2Field;
            }
            set
            {
                this.float2Field = value;
            }
        }

        /// <remarks/>
        public string float3
        {
            get
            {
                return this.float3Field;
            }
            set
            {
                this.float3Field = value;
            }
        }

        /// <remarks/>
        public string float4
        {
            get
            {
                return this.float4Field;
            }
            set
            {
                this.float4Field = value;
            }
        }

        /// <remarks/>
        public double float1x1
        {
            get
            {
                return this.float1x1Field;
            }
            set
            {
                this.float1x1Field = value;
            }
        }

        /// <remarks/>
        public string float1x2
        {
            get
            {
                return this.float1x2Field;
            }
            set
            {
                this.float1x2Field = value;
            }
        }

        /// <remarks/>
        public string float1x3
        {
            get
            {
                return this.float1x3Field;
            }
            set
            {
                this.float1x3Field = value;
            }
        }

        /// <remarks/>
        public string float1x4
        {
            get
            {
                return this.float1x4Field;
            }
            set
            {
                this.float1x4Field = value;
            }
        }

        /// <remarks/>
        public string float2x1
        {
            get
            {
                return this.float2x1Field;
            }
            set
            {
                this.float2x1Field = value;
            }
        }

        /// <remarks/>
        public string float2x2
        {
            get
            {
                return this.float2x2Field;
            }
            set
            {
                this.float2x2Field = value;
            }
        }

        /// <remarks/>
        public string float2x3
        {
            get
            {
                return this.float2x3Field;
            }
            set
            {
                this.float2x3Field = value;
            }
        }

        /// <remarks/>
        public string float2x4
        {
            get
            {
                return this.float2x4Field;
            }
            set
            {
                this.float2x4Field = value;
            }
        }

        /// <remarks/>
        public string float3x1
        {
            get
            {
                return this.float3x1Field;
            }
            set
            {
                this.float3x1Field = value;
            }
        }

        /// <remarks/>
        public string float3x2
        {
            get
            {
                return this.float3x2Field;
            }
            set
            {
                this.float3x2Field = value;
            }
        }

        /// <remarks/>
        public string float3x3
        {
            get
            {
                return this.float3x3Field;
            }
            set
            {
                this.float3x3Field = value;
            }
        }

        /// <remarks/>
        public string float3x4
        {
            get
            {
                return this.float3x4Field;
            }
            set
            {
                this.float3x4Field = value;
            }
        }

        /// <remarks/>
        public string float4x1
        {
            get
            {
                return this.float4x1Field;
            }
            set
            {
                this.float4x1Field = value;
            }
        }

        /// <remarks/>
        public string float4x2
        {
            get
            {
                return this.float4x2Field;
            }
            set
            {
                this.float4x2Field = value;
            }
        }

        /// <remarks/>
        public string float4x3
        {
            get
            {
                return this.float4x3Field;
            }
            set
            {
                this.float4x3Field = value;
            }
        }

        /// <remarks/>
        public string float4x4
        {
            get
            {
                return this.float4x4Field;
            }
            set
            {
                this.float4x4Field = value;
            }
        }

        /// <remarks/>
        public fx_surface_common surface
        {
            get
            {
                return this.surfaceField;
            }
            set
            {
                this.surfaceField = value;
            }
        }

        /// <remarks/>
        public fx_sampler1D_common sampler1D
        {
            get
            {
                return this.sampler1DField;
            }
            set
            {
                this.sampler1DField = value;
            }
        }

        /// <remarks/>
        public fx_sampler2D_common sampler2D
        {
            get
            {
                return this.sampler2DField;
            }
            set
            {
                this.sampler2DField = value;
            }
        }

        /// <remarks/>
        public fx_sampler3D_common sampler3D
        {
            get
            {
                return this.sampler3DField;
            }
            set
            {
                this.sampler3DField = value;
            }
        }

        /// <remarks/>
        public fx_samplerCUBE_common samplerCUBE
        {
            get
            {
                return this.samplerCUBEField;
            }
            set
            {
                this.samplerCUBEField = value;
            }
        }

        /// <remarks/>
        public fx_samplerRECT_common samplerRECT
        {
            get
            {
                return this.samplerRECTField;
            }
            set
            {
                this.samplerRECTField = value;
            }
        }

        /// <remarks/>
        public fx_samplerDEPTH_common samplerDEPTH
        {
            get
            {
                return this.samplerDEPTHField;
            }
            set
            {
                this.samplerDEPTHField = value;
            }
        }

        /// <remarks/>
        public string @enum
        {
            get
            {
                return this.enumField;
            }
            set
            {
                this.enumField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class InputLocalOffset
    {

        private ulong offsetField;

        private string semanticField;

        private string sourceField;

        private ulong setField;

        private bool setFieldSpecified;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong offset
        {
            get
            {
                return this.offsetField;
            }
            set
            {
                this.offsetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NMTOKEN")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong set
        {
            get
            {
                return this.setField;
            }
            set
            {
                this.setField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool setSpecified
        {
            get
            {
                return this.setFieldSpecified;
            }
            set
            {
                this.setFieldSpecified = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class TargetableFloat
    {

        private string sidField;

        private double valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public double Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class InputLocal
    {

        private string semanticField;

        private string sourceField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NMTOKEN")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class instance_material
    {

        private instance_materialBind[] bindField;

        private instance_materialBind_vertex_input[] bind_vertex_inputField;

        private extra[] extraField;

        private string symbolField;

        private string targetField;

        private string sidField;

        private string nameField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("bind")]
        public instance_materialBind[] bind
        {
            get
            {
                return this.bindField;
            }
            set
            {
                this.bindField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("bind_vertex_input")]
        public instance_materialBind_vertex_input[] bind_vertex_input
        {
            get
            {
                return this.bind_vertex_inputField;
            }
            set
            {
                this.bind_vertex_inputField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string symbol
        {
            get
            {
                return this.symbolField;
            }
            set
            {
                this.symbolField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string target
        {
            get
            {
                return this.targetField;
            }
            set
            {
                this.targetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class instance_materialBind
    {

        private string semanticField;

        private string targetField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string target
        {
            get
            {
                return this.targetField;
            }
            set
            {
                this.targetField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class instance_materialBind_vertex_input
    {

        private string semanticField;

        private string input_semanticField;

        private ulong input_setField;

        private bool input_setFieldSpecified;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string input_semantic
        {
            get
            {
                return this.input_semanticField;
            }
            set
            {
                this.input_semanticField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong input_set
        {
            get
            {
                return this.input_setField;
            }
            set
            {
                this.input_setField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool input_setSpecified
        {
            get
            {
                return this.input_setFieldSpecified;
            }
            set
            {
                this.input_setFieldSpecified = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class assetUnit
    {

        private double meterField;

        private string nameField;

        public assetUnit()
        {
            this.meterField = 1D;
            this.nameField = "meter";
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double meter
        {
            get
            {
                return this.meterField;
            }
            set
            {
                this.meterField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NMTOKEN")]
        [System.ComponentModel.DefaultValueAttribute("meter")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum UpAxisType
    {

        /// <remarks/>
        X_UP,

        /// <remarks/>
        Y_UP,

        /// <remarks/>
        Z_UP,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_animation_clips
    {

        private asset assetField;

        private animation_clip[] animation_clipField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("animation_clip")]
        public animation_clip[] animation_clip
        {
            get
            {
                return this.animation_clipField;
            }
            set
            {
                this.animation_clipField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class animation_clip
    {

        private asset assetField;

        private InstanceWithExtra[] instance_animationField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        private double startField;

        private double endField;

        private bool endFieldSpecified;

        public animation_clip()
        {
            this.startField = 0D;
        }

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_animation")]
        public InstanceWithExtra[] instance_animation
        {
            get
            {
                return this.instance_animationField;
            }
            set
            {
                this.instance_animationField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double start
        {
            get
            {
                return this.startField;
            }
            set
            {
                this.startField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double end
        {
            get
            {
                return this.endField;
            }
            set
            {
                this.endField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool endSpecified
        {
            get
            {
                return this.endFieldSpecified;
            }
            set
            {
                this.endFieldSpecified = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute("instance_camera", Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class InstanceWithExtra
    {

        private extra[] extraField;

        private string urlField;

        private string sidField;

        private string nameField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string url
        {
            get
            {
                return this.urlField;
            }
            set
            {
                this.urlField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_animations
    {

        private asset assetField;

        private animation[] animationField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("animation")]
        public animation[] animation
        {
            get
            {
                return this.animationField;
            }
            set
            {
                this.animationField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class animation
    {

        private asset assetField;

        private object[] itemsField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("animation", typeof(animation))]
        [System.Xml.Serialization.XmlElementAttribute("channel", typeof(channel))]
        [System.Xml.Serialization.XmlElementAttribute("sampler", typeof(sampler))]
        [System.Xml.Serialization.XmlElementAttribute("source", typeof(source))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class channel
    {

        private string sourceField;

        private string targetField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string target
        {
            get
            {
                return this.targetField;
            }
            set
            {
                this.targetField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class sampler
    {

        private InputLocal[] inputField;

        private string idField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocal[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class source
    {

        private asset assetField;

        private object itemField;

        private sourceTechnique_common technique_commonField;

        private technique[] techniqueField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("IDREF_array", typeof(IDREF_array))]
        [System.Xml.Serialization.XmlElementAttribute("Name_array", typeof(Name_array))]
        [System.Xml.Serialization.XmlElementAttribute("bool_array", typeof(bool_array))]
        [System.Xml.Serialization.XmlElementAttribute("float_array", typeof(float_array))]
        [System.Xml.Serialization.XmlElementAttribute("int_array", typeof(int_array))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        public sourceTechnique_common technique_common
        {
            get
            {
                return this.technique_commonField;
            }
            set
            {
                this.technique_commonField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class IDREF_array
    {

        private string idField;

        private string nameField;

        private ulong countField;

        private string valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "IDREFS")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class Name_array
    {

        private string idField;

        private string nameField;

        private ulong countField;

        private string[] textField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertNameArray(value); }
        }

        /// <remarks/>
        [XmlIgnore]
        public string[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class bool_array
    {

        private string idField;

        private string nameField;

        private ulong countField;

        private bool[] textField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertBoolArray(value); }
        }

        /// <remarks/>
        [XmlIgnore]
        public bool[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class float_array
    {

        private string idField;

        private string nameField;

        private ulong countField;

        private short digitsField;

        private short magnitudeField;

        private double[] textField;

        public float_array()
        {
            this.digitsField = ((short)(6));
            this.magnitudeField = ((short)(38));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(short), "6")]
        public short digits
        {
            get
            {
                return this.digitsField;
            }
            set
            {
                this.digitsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(short), "38")]
        public short magnitude
        {
            get
            {
                return this.magnitudeField;
            }
            set
            {
                this.magnitudeField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertDoubleArray(value); }
        }
        /// <remarks/>
        [XmlIgnore]
        public double[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class int_array
    {

        private string idField;

        private string nameField;

        private ulong countField;

        private string minInclusiveField;

        private string maxInclusiveField;

        private long[] textField;

        public int_array()
        {
            this.minInclusiveField = "-2147483648";
            this.maxInclusiveField = "2147483647";
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "integer")]
        [System.ComponentModel.DefaultValueAttribute("-2147483648")]
        public string minInclusive
        {
            get
            {
                return this.minInclusiveField;
            }
            set
            {
                this.minInclusiveField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "integer")]
        [System.ComponentModel.DefaultValueAttribute("2147483647")]
        public string maxInclusive
        {
            get
            {
                return this.maxInclusiveField;
            }
            set
            {
                this.maxInclusiveField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertLongArray(value); }
        }

        /// <remarks/>
        [XmlIgnore]
        public long[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class sourceTechnique_common
    {

        private accessor accessorField;

        /// <remarks/>
        public accessor accessor
        {
            get
            {
                return this.accessorField;
            }
            set
            {
                this.accessorField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class accessor
    {

        private param[] paramField;

        private ulong countField;

        private ulong offsetField;

        private string sourceField;

        private ulong strideField;

        public accessor()
        {
            this.offsetField = ((ulong)(0m));
            this.strideField = ((ulong)(1m));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("param")]
        public param[] param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(ulong), "0")]
        public ulong offset
        {
            get
            {
                return this.offsetField;
            }
            set
            {
                this.offsetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(ulong), "1")]
        public ulong stride
        {
            get
            {
                return this.strideField;
            }
            set
            {
                this.strideField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class param
    {

        private string nameField;

        private string sidField;

        private string semanticField;

        private string typeField;

        private string valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NMTOKEN")]
        public string semantic
        {
            get
            {
                return this.semanticField;
            }
            set
            {
                this.semanticField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NMTOKEN")]
        public string type
        {
            get
            {
                return this.typeField;
            }
            set
            {
                this.typeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_cameras
    {

        private asset assetField;

        private camera[] cameraField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("camera")]
        public camera[] camera
        {
            get
            {
                return this.cameraField;
            }
            set
            {
                this.cameraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class camera
    {

        private asset assetField;

        private cameraOptics opticsField;

        private cameraImager imagerField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        public cameraOptics optics
        {
            get
            {
                return this.opticsField;
            }
            set
            {
                this.opticsField = value;
            }
        }

        /// <remarks/>
        public cameraImager imager
        {
            get
            {
                return this.imagerField;
            }
            set
            {
                this.imagerField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cameraOptics
    {

        private cameraOpticsTechnique_common technique_commonField;

        private technique[] techniqueField;

        private extra[] extraField;

        /// <remarks/>
        public cameraOpticsTechnique_common technique_common
        {
            get
            {
                return this.technique_commonField;
            }
            set
            {
                this.technique_commonField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cameraOpticsTechnique_common
    {

        private object itemField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("orthographic", typeof(cameraOpticsTechnique_commonOrthographic))]
        [System.Xml.Serialization.XmlElementAttribute("perspective", typeof(cameraOpticsTechnique_commonPerspective))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cameraOpticsTechnique_commonOrthographic
    {

        private TargetableFloat[] itemsField;

        private ItemsChoiceType[] itemsElementNameField;

        private TargetableFloat znearField;

        private TargetableFloat zfarField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("aspect_ratio", typeof(TargetableFloat))]
        [System.Xml.Serialization.XmlElementAttribute("xmag", typeof(TargetableFloat))]
        [System.Xml.Serialization.XmlElementAttribute("ymag", typeof(TargetableFloat))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public TargetableFloat[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName")]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat znear
        {
            get
            {
                return this.znearField;
            }
            set
            {
                this.znearField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat zfar
        {
            get
            {
                return this.zfarField;
            }
            set
            {
                this.zfarField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemsChoiceType
    {

        /// <remarks/>
        aspect_ratio,

        /// <remarks/>
        xmag,

        /// <remarks/>
        ymag,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cameraOpticsTechnique_commonPerspective
    {

        private TargetableFloat[] itemsField;

        private ItemsChoiceType1[] itemsElementNameField;

        private TargetableFloat znearField;

        private TargetableFloat zfarField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("aspect_ratio", typeof(TargetableFloat))]
        [System.Xml.Serialization.XmlElementAttribute("xfov", typeof(TargetableFloat))]
        [System.Xml.Serialization.XmlElementAttribute("yfov", typeof(TargetableFloat))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public TargetableFloat[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName")]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType1[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat znear
        {
            get
            {
                return this.znearField;
            }
            set
            {
                this.znearField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat zfar
        {
            get
            {
                return this.zfarField;
            }
            set
            {
                this.zfarField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemsChoiceType1
    {

        /// <remarks/>
        aspect_ratio,

        /// <remarks/>
        xfov,

        /// <remarks/>
        yfov,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class cameraImager
    {

        private technique[] techniqueField;

        private extra[] extraField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_controllers
    {

        private asset assetField;

        private controller[] controllerField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("controller")]
        public controller[] controller
        {
            get
            {
                return this.controllerField;
            }
            set
            {
                this.controllerField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class controller
    {

        private asset assetField;

        private object itemField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("morph", typeof(morph))]
        [System.Xml.Serialization.XmlElementAttribute("skin", typeof(skin))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class morph
    {

        private source[] sourceField;

        private morphTargets targetsField;

        private extra[] extraField;

        private MorphMethodType methodField;

        private string source1Field;

        public morph()
        {
            this.methodField = MorphMethodType.NORMALIZED;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("source")]
        public source[] source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        public morphTargets targets
        {
            get
            {
                return this.targetsField;
            }
            set
            {
                this.targetsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(MorphMethodType.NORMALIZED)]
        public MorphMethodType method
        {
            get
            {
                return this.methodField;
            }
            set
            {
                this.methodField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("source", DataType = "anyURI")]
        public string source1
        {
            get
            {
                return this.source1Field;
            }
            set
            {
                this.source1Field = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class morphTargets
    {

        private InputLocal[] inputField;

        private extra[] extraField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocal[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum MorphMethodType
    {

        /// <remarks/>
        NORMALIZED,

        /// <remarks/>
        RELATIVE,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class skin
    {

        private string bind_shape_matrixField;

        private source[] sourceField;

        private skinJoints jointsField;

        private skinVertex_weights vertex_weightsField;

        private extra[] extraField;

        private string source1Field;

        /// <remarks/>
        public string bind_shape_matrix
        {
            get
            {
                return this.bind_shape_matrixField;
            }
            set
            {
                this.bind_shape_matrixField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("source")]
        public source[] source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        public skinJoints joints
        {
            get
            {
                return this.jointsField;
            }
            set
            {
                this.jointsField = value;
            }
        }

        /// <remarks/>
        public skinVertex_weights vertex_weights
        {
            get
            {
                return this.vertex_weightsField;
            }
            set
            {
                this.vertex_weightsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute("source", DataType = "anyURI")]
        public string source1
        {
            get
            {
                return this.source1Field;
            }
            set
            {
                this.source1Field = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class skinJoints
    {

        private InputLocal[] inputField;

        private extra[] extraField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocal[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class skinVertex_weights
    {

        private InputLocalOffset[] inputField;

        private string vcountField;

        private string vField;

        private extra[] extraField;

        private ulong countField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocalOffset[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        public string vcount
        {
            get
            {
                return this.vcountField;
            }
            set
            {
                this.vcountField = value;
            }
        }

        /// <remarks/>
        public string v
        {
            get
            {
                return this.vField;
            }
            set
            {
                this.vField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_effects
    {

        private asset assetField;

        private effect[] effectField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("effect")]
        public effect[] effect
        {
            get
            {
                return this.effectField;
            }
            set
            {
                this.effectField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class effect
    {

        private asset assetField;

        private fx_annotate_common[] annotateField;

        private image[] imageField;

        private fx_newparam_common[] newparamField;

        private object[] itemsField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("image")]
        public image[] image
        {
            get
            {
                return this.imageField;
            }
            set
            {
                this.imageField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("newparam")]
        public fx_newparam_common[] newparam
        {
            get
            {
                return this.newparamField;
            }
            set
            {
                this.newparamField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("profile_CG", typeof(effectFx_profile_abstractProfile_CG))]
        [System.Xml.Serialization.XmlElementAttribute("profile_COMMON", typeof(effectFx_profile_abstractProfile_COMMON))]
        [System.Xml.Serialization.XmlElementAttribute("profile_GLES", typeof(effectFx_profile_abstractProfile_GLES))]
        [System.Xml.Serialization.XmlElementAttribute("profile_GLSL", typeof(effectFx_profile_abstractProfile_GLSL))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class image
    {

        private asset assetField;

        private object itemField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        private string formatField;

        private ulong heightField;

        private bool heightFieldSpecified;

        private ulong widthField;

        private bool widthFieldSpecified;

        private ulong depthField;

        public image()
        {
            this.depthField = ((ulong)(1m));
        }

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("data", typeof(byte[]), DataType = "hexBinary")]
        [System.Xml.Serialization.XmlElementAttribute("init_from", typeof(string), DataType = "anyURI")]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string format
        {
            get
            {
                return this.formatField;
            }
            set
            {
                this.formatField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong height
        {
            get
            {
                return this.heightField;
            }
            set
            {
                this.heightField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool heightSpecified
        {
            get
            {
                return this.heightFieldSpecified;
            }
            set
            {
                this.heightFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong width
        {
            get
            {
                return this.widthField;
            }
            set
            {
                this.widthField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool widthSpecified
        {
            get
            {
                return this.widthFieldSpecified;
            }
            set
            {
                this.widthFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(ulong), "1")]
        public ulong depth
        {
            get
            {
                return this.depthField;
            }
            set
            {
                this.depthField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute("profile_CG", Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class effectFx_profile_abstractProfile_CG
    {

        private asset assetField;

        private object[] itemsField;

        private object[] items1Field;

        private effectFx_profile_abstractProfile_CGTechnique[] techniqueField;

        private extra[] extraField;

        private string idField;

        private string platformField;

        public effectFx_profile_abstractProfile_CG()
        {
            this.platformField = "PC";
        }

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("code", typeof(fx_code_profile))]
        [System.Xml.Serialization.XmlElementAttribute("include", typeof(fx_include_common))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("image", typeof(image))]
        [System.Xml.Serialization.XmlElementAttribute("newparam", typeof(cg_newparam))]
        public object[] Items1
        {
            get
            {
                return this.items1Field;
            }
            set
            {
                this.items1Field = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public effectFx_profile_abstractProfile_CGTechnique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        [System.ComponentModel.DefaultValueAttribute("PC")]
        public string platform
        {
            get
            {
                return this.platformField;
            }
            set
            {
                this.platformField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_CGTechnique
    {

        private asset assetField;

        private fx_annotate_common[] annotateField;

        private object[] itemsField;

        private object[] items1Field;

        private effectFx_profile_abstractProfile_CGTechniquePass[] passField;

        private extra[] extraField;

        private string idField;

        private string sidField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("code", typeof(fx_code_profile))]
        [System.Xml.Serialization.XmlElementAttribute("include", typeof(fx_include_common))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("image", typeof(image))]
        [System.Xml.Serialization.XmlElementAttribute("newparam", typeof(cg_newparam))]
        [System.Xml.Serialization.XmlElementAttribute("setparam", typeof(cg_setparam))]
        public object[] Items1
        {
            get
            {
                return this.items1Field;
            }
            set
            {
                this.items1Field = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("pass")]
        public effectFx_profile_abstractProfile_CGTechniquePass[] pass
        {
            get
            {
                return this.passField;
            }
            set
            {
                this.passField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_CGTechniquePass
    {

        private fx_annotate_common[] annotateField;

        private fx_colortarget_common[] color_targetField;

        private fx_depthtarget_common[] depth_targetField;

        private fx_stenciltarget_common[] stencil_targetField;

        private fx_clearcolor_common[] color_clearField;

        private fx_cleardepth_common[] depth_clearField;

        private fx_clearstencil_common[] stencil_clearField;

        private string drawField;

        private object[] itemsField;

        private extra[] extraField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("color_target")]
        public fx_colortarget_common[] color_target
        {
            get
            {
                return this.color_targetField;
            }
            set
            {
                this.color_targetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("depth_target")]
        public fx_depthtarget_common[] depth_target
        {
            get
            {
                return this.depth_targetField;
            }
            set
            {
                this.depth_targetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("stencil_target")]
        public fx_stenciltarget_common[] stencil_target
        {
            get
            {
                return this.stencil_targetField;
            }
            set
            {
                this.stencil_targetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("color_clear")]
        public fx_clearcolor_common[] color_clear
        {
            get
            {
                return this.color_clearField;
            }
            set
            {
                this.color_clearField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("depth_clear")]
        public fx_cleardepth_common[] depth_clear
        {
            get
            {
                return this.depth_clearField;
            }
            set
            {
                this.depth_clearField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("stencil_clear")]
        public fx_clearstencil_common[] stencil_clear
        {
            get
            {
                return this.stencil_clearField;
            }
            set
            {
                this.stencil_clearField = value;
            }
        }

        /// <remarks/>
        public string draw
        {
            get
            {
                return this.drawField;
            }
            set
            {
                this.drawField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("alpha_func", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_func))]
        [System.Xml.Serialization.XmlElementAttribute("alpha_test_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("auto_normal_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassAuto_normal_enable))]
        [System.Xml.Serialization.XmlElementAttribute("blend_color", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_color))]
        [System.Xml.Serialization.XmlElementAttribute("blend_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_enable))]
        [System.Xml.Serialization.XmlElementAttribute("blend_equation", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation))]
        [System.Xml.Serialization.XmlElementAttribute("blend_equation_separate", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separate))]
        [System.Xml.Serialization.XmlElementAttribute("blend_func", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func))]
        [System.Xml.Serialization.XmlElementAttribute("blend_func_separate", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separate))]
        [System.Xml.Serialization.XmlElementAttribute("clear_color", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassClear_color))]
        [System.Xml.Serialization.XmlElementAttribute("clear_depth", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassClear_depth))]
        [System.Xml.Serialization.XmlElementAttribute("clear_stencil", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassClear_stencil))]
        [System.Xml.Serialization.XmlElementAttribute("clip_plane", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassClip_plane))]
        [System.Xml.Serialization.XmlElementAttribute("clip_plane_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassClip_plane_enable))]
        [System.Xml.Serialization.XmlElementAttribute("color_logic_op_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassColor_logic_op_enable))]
        [System.Xml.Serialization.XmlElementAttribute("color_mask", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassColor_mask))]
        [System.Xml.Serialization.XmlElementAttribute("color_material", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassColor_material))]
        [System.Xml.Serialization.XmlElementAttribute("color_material_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassColor_material_enable))]
        [System.Xml.Serialization.XmlElementAttribute("cull_face", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassCull_face))]
        [System.Xml.Serialization.XmlElementAttribute("cull_face_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassCull_face_enable))]
        [System.Xml.Serialization.XmlElementAttribute("depth_bounds", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_bounds))]
        [System.Xml.Serialization.XmlElementAttribute("depth_bounds_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_bounds_enable))]
        [System.Xml.Serialization.XmlElementAttribute("depth_clamp_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_clamp_enable))]
        [System.Xml.Serialization.XmlElementAttribute("depth_func", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_func))]
        [System.Xml.Serialization.XmlElementAttribute("depth_mask", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_mask))]
        [System.Xml.Serialization.XmlElementAttribute("depth_range", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_range))]
        [System.Xml.Serialization.XmlElementAttribute("depth_test_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("dither_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDither_enable))]
        [System.Xml.Serialization.XmlElementAttribute("fog_color", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_color))]
        [System.Xml.Serialization.XmlElementAttribute("fog_coord_src", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_coord_src))]
        [System.Xml.Serialization.XmlElementAttribute("fog_density", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_density))]
        [System.Xml.Serialization.XmlElementAttribute("fog_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_enable))]
        [System.Xml.Serialization.XmlElementAttribute("fog_end", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_end))]
        [System.Xml.Serialization.XmlElementAttribute("fog_mode", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_mode))]
        [System.Xml.Serialization.XmlElementAttribute("fog_start", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_start))]
        [System.Xml.Serialization.XmlElementAttribute("front_face", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFront_face))]
        [System.Xml.Serialization.XmlElementAttribute("gl_hook_abstract", typeof(object))]
        [System.Xml.Serialization.XmlElementAttribute("light_ambient", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_ambient))]
        [System.Xml.Serialization.XmlElementAttribute("light_constant_attenuation", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_constant_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("light_diffuse", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_diffuse))]
        [System.Xml.Serialization.XmlElementAttribute("light_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_enable))]
        [System.Xml.Serialization.XmlElementAttribute("light_linear_attenuation", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_linear_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("light_model_ambient", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_ambient))]
        [System.Xml.Serialization.XmlElementAttribute("light_model_color_control", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_color_control))]
        [System.Xml.Serialization.XmlElementAttribute("light_model_local_viewer_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_local_viewer_enable))]
        [System.Xml.Serialization.XmlElementAttribute("light_model_two_side_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_two_side_enable))]
        [System.Xml.Serialization.XmlElementAttribute("light_position", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_position))]
        [System.Xml.Serialization.XmlElementAttribute("light_quadratic_attenuation", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_quadratic_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("light_specular", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_specular))]
        [System.Xml.Serialization.XmlElementAttribute("light_spot_cutoff", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_cutoff))]
        [System.Xml.Serialization.XmlElementAttribute("light_spot_direction", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_direction))]
        [System.Xml.Serialization.XmlElementAttribute("light_spot_exponent", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_exponent))]
        [System.Xml.Serialization.XmlElementAttribute("lighting_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLighting_enable))]
        [System.Xml.Serialization.XmlElementAttribute("line_smooth_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLine_smooth_enable))]
        [System.Xml.Serialization.XmlElementAttribute("line_stipple", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLine_stipple))]
        [System.Xml.Serialization.XmlElementAttribute("line_stipple_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLine_stipple_enable))]
        [System.Xml.Serialization.XmlElementAttribute("line_width", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLine_width))]
        [System.Xml.Serialization.XmlElementAttribute("logic_op", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLogic_op))]
        [System.Xml.Serialization.XmlElementAttribute("logic_op_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLogic_op_enable))]
        [System.Xml.Serialization.XmlElementAttribute("material_ambient", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_ambient))]
        [System.Xml.Serialization.XmlElementAttribute("material_diffuse", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_diffuse))]
        [System.Xml.Serialization.XmlElementAttribute("material_emission", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_emission))]
        [System.Xml.Serialization.XmlElementAttribute("material_shininess", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_shininess))]
        [System.Xml.Serialization.XmlElementAttribute("material_specular", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_specular))]
        [System.Xml.Serialization.XmlElementAttribute("model_view_matrix", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassModel_view_matrix))]
        [System.Xml.Serialization.XmlElementAttribute("multisample_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMultisample_enable))]
        [System.Xml.Serialization.XmlElementAttribute("normalize_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassNormalize_enable))]
        [System.Xml.Serialization.XmlElementAttribute("point_distance_attenuation", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_distance_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("point_fade_threshold_size", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_fade_threshold_size))]
        [System.Xml.Serialization.XmlElementAttribute("point_size", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size))]
        [System.Xml.Serialization.XmlElementAttribute("point_size_max", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size_max))]
        [System.Xml.Serialization.XmlElementAttribute("point_size_min", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size_min))]
        [System.Xml.Serialization.XmlElementAttribute("point_smooth_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_smooth_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_mode", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_mode))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_offset", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_offset_fill_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_fill_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_offset_line_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_line_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_offset_point_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_point_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_smooth_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_smooth_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_stipple_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_stipple_enable))]
        [System.Xml.Serialization.XmlElementAttribute("projection_matrix", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassProjection_matrix))]
        [System.Xml.Serialization.XmlElementAttribute("rescale_normal_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassRescale_normal_enable))]
        [System.Xml.Serialization.XmlElementAttribute("sample_alpha_to_coverage_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassSample_alpha_to_coverage_enable))]
        [System.Xml.Serialization.XmlElementAttribute("sample_alpha_to_one_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassSample_alpha_to_one_enable))]
        [System.Xml.Serialization.XmlElementAttribute("sample_coverage_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassSample_coverage_enable))]
        [System.Xml.Serialization.XmlElementAttribute("scissor", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassScissor))]
        [System.Xml.Serialization.XmlElementAttribute("scissor_test_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassScissor_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("shade_model", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassShade_model))]
        [System.Xml.Serialization.XmlElementAttribute("shader", typeof(effectFx_profile_abstractProfile_CGTechniquePassShader))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_func", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_func_separate", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separate))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_mask", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_mask_separate", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separate))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_op", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_op_separate", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separate))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_test_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("texture1D", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture1D))]
        [System.Xml.Serialization.XmlElementAttribute("texture1D_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture1D_enable))]
        [System.Xml.Serialization.XmlElementAttribute("texture2D", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture2D))]
        [System.Xml.Serialization.XmlElementAttribute("texture2D_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture2D_enable))]
        [System.Xml.Serialization.XmlElementAttribute("texture3D", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture3D))]
        [System.Xml.Serialization.XmlElementAttribute("texture3D_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture3D_enable))]
        [System.Xml.Serialization.XmlElementAttribute("textureCUBE", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("textureCUBE_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureCUBE_enable))]
        [System.Xml.Serialization.XmlElementAttribute("textureDEPTH", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("textureDEPTH_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureDEPTH_enable))]
        [System.Xml.Serialization.XmlElementAttribute("textureRECT", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureRECT))]
        [System.Xml.Serialization.XmlElementAttribute("textureRECT_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureRECT_enable))]
        [System.Xml.Serialization.XmlElementAttribute("texture_env_color", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture_env_color))]
        [System.Xml.Serialization.XmlElementAttribute("texture_env_mode", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture_env_mode))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_func
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_funcFunc funcField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_funcValue valueField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_funcFunc func
        {
            get
            {
                return this.funcField;
            }
            set
            {
                this.funcField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_funcValue value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_funcFunc
    {

        private gl_func_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_funcFunc()
        {
            this.valueField = gl_func_type.ALWAYS;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_func_type.ALWAYS)]
        public gl_func_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_func_type
    {

        /// <remarks/>
        NEVER,

        /// <remarks/>
        LESS,

        /// <remarks/>
        LEQUAL,

        /// <remarks/>
        EQUAL,

        /// <remarks/>
        GREATER,

        /// <remarks/>
        NOTEQUAL,

        /// <remarks/>
        GEQUAL,

        /// <remarks/>
        ALWAYS,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_funcValue
    {

        private float valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_funcValue()
        {
            this.valueField = ((float)(0F));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(float), "0")]
        public float value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_test_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_test_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassAuto_normal_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassAuto_normal_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_color
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_color()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation
    {

        private gl_blend_equation_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation()
        {
            this.valueField = gl_blend_equation_type.FUNC_ADD;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_equation_type.FUNC_ADD)]
        public gl_blend_equation_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_blend_equation_type
    {

        /// <remarks/>
        FUNC_ADD,

        /// <remarks/>
        FUNC_SUBTRACT,

        /// <remarks/>
        FUNC_REVERSE_SUBTRACT,

        /// <remarks/>
        MIN,

        /// <remarks/>
        MAX,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separate
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separateRgb rgbField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separateAlpha alphaField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separateRgb rgb
        {
            get
            {
                return this.rgbField;
            }
            set
            {
                this.rgbField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separateAlpha alpha
        {
            get
            {
                return this.alphaField;
            }
            set
            {
                this.alphaField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separateRgb
    {

        private gl_blend_equation_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separateRgb()
        {
            this.valueField = gl_blend_equation_type.FUNC_ADD;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_equation_type.FUNC_ADD)]
        public gl_blend_equation_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separateAlpha
    {

        private gl_blend_equation_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separateAlpha()
        {
            this.valueField = gl_blend_equation_type.FUNC_ADD;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_equation_type.FUNC_ADD)]
        public gl_blend_equation_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassBlend_funcSrc srcField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassBlend_funcDest destField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_funcSrc src
        {
            get
            {
                return this.srcField;
            }
            set
            {
                this.srcField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_funcDest dest
        {
            get
            {
                return this.destField;
            }
            set
            {
                this.destField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_funcSrc
    {

        private gl_blend_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_funcSrc()
        {
            this.valueField = gl_blend_type.ONE;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_type.ONE)]
        public gl_blend_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_blend_type
    {

        /// <remarks/>
        ZERO,

        /// <remarks/>
        ONE,

        /// <remarks/>
        SRC_COLOR,

        /// <remarks/>
        ONE_MINUS_SRC_COLOR,

        /// <remarks/>
        DEST_COLOR,

        /// <remarks/>
        ONE_MINUS_DEST_COLOR,

        /// <remarks/>
        SRC_ALPHA,

        /// <remarks/>
        ONE_MINUS_SRC_ALPHA,

        /// <remarks/>
        DST_ALPHA,

        /// <remarks/>
        ONE_MINUS_DST_ALPHA,

        /// <remarks/>
        CONSTANT_COLOR,

        /// <remarks/>
        ONE_MINUS_CONSTANT_COLOR,

        /// <remarks/>
        CONSTANT_ALPHA,

        /// <remarks/>
        ONE_MINUS_CONSTANT_ALPHA,

        /// <remarks/>
        SRC_ALPHA_SATURATE,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_funcDest
    {

        private gl_blend_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_funcDest()
        {
            this.valueField = gl_blend_type.ZERO;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_type.ZERO)]
        public gl_blend_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separate
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateSrc_rgb src_rgbField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateDest_rgb dest_rgbField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateSrc_alpha src_alphaField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateDest_alpha dest_alphaField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateSrc_rgb src_rgb
        {
            get
            {
                return this.src_rgbField;
            }
            set
            {
                this.src_rgbField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateDest_rgb dest_rgb
        {
            get
            {
                return this.dest_rgbField;
            }
            set
            {
                this.dest_rgbField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateSrc_alpha src_alpha
        {
            get
            {
                return this.src_alphaField;
            }
            set
            {
                this.src_alphaField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateDest_alpha dest_alpha
        {
            get
            {
                return this.dest_alphaField;
            }
            set
            {
                this.dest_alphaField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateSrc_rgb
    {

        private gl_blend_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateSrc_rgb()
        {
            this.valueField = gl_blend_type.ONE;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_type.ONE)]
        public gl_blend_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateDest_rgb
    {

        private gl_blend_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateDest_rgb()
        {
            this.valueField = gl_blend_type.ZERO;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_type.ZERO)]
        public gl_blend_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateSrc_alpha
    {

        private gl_blend_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateSrc_alpha()
        {
            this.valueField = gl_blend_type.ONE;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_type.ONE)]
        public gl_blend_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateDest_alpha
    {

        private gl_blend_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separateDest_alpha()
        {
            this.valueField = gl_blend_type.ZERO;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_type.ZERO)]
        public gl_blend_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassClear_color
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassClear_color()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassClear_depth
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassClear_depth()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassClear_stencil
    {

        private long valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassClear_stencil()
        {
            this.valueField = ((long)(0));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(long), "0")]
        public long value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassClip_plane
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassClip_plane()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassClip_plane_enable
    {

        private bool valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassClip_plane_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassColor_logic_op_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassColor_logic_op_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassColor_mask
    {

        private bool[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassColor_mask()
        {
            this.valueField = new bool[] {
                    true,
                    true,
                    true,
                    true};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Boolean[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassColor_material
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassColor_materialFace faceField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassColor_materialMode modeField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassColor_materialFace face
        {
            get
            {
                return this.faceField;
            }
            set
            {
                this.faceField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassColor_materialMode mode
        {
            get
            {
                return this.modeField;
            }
            set
            {
                this.modeField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassColor_materialFace
    {

        private gl_face_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassColor_materialFace()
        {
            this.valueField = gl_face_type.FRONT_AND_BACK;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_face_type.FRONT_AND_BACK)]
        public gl_face_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_face_type
    {

        /// <remarks/>
        FRONT,

        /// <remarks/>
        BACK,

        /// <remarks/>
        FRONT_AND_BACK,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassColor_materialMode
    {

        private gl_material_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassColor_materialMode()
        {
            this.valueField = gl_material_type.AMBIENT_AND_DIFFUSE;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_material_type.AMBIENT_AND_DIFFUSE)]
        public gl_material_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_material_type
    {

        /// <remarks/>
        EMISSION,

        /// <remarks/>
        AMBIENT,

        /// <remarks/>
        DIFFUSE,

        /// <remarks/>
        SPECULAR,

        /// <remarks/>
        AMBIENT_AND_DIFFUSE,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassColor_material_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassColor_material_enable()
        {
            this.valueField = true;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(true)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassCull_face
    {

        private gl_face_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassCull_face()
        {
            this.valueField = gl_face_type.BACK;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_face_type.BACK)]
        public gl_face_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassCull_face_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassCull_face_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassDepth_bounds
    {

        private double[] valueField;

        private string paramField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassDepth_bounds_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassDepth_bounds_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassDepth_clamp_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassDepth_clamp_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassDepth_func
    {

        private gl_func_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassDepth_func()
        {
            this.valueField = gl_func_type.ALWAYS;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_func_type.ALWAYS)]
        public gl_func_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassDepth_mask
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassDepth_mask()
        {
            this.valueField = true;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(true)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassDepth_range
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassDepth_range()
        {
            this.valueField = new double[] {
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassDepth_test_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassDepth_test_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassDither_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassDither_enable()
        {
            this.valueField = true;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(true)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassFog_color
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassFog_color()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassFog_coord_src
    {

        private gl_fog_coord_src_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassFog_coord_src()
        {
            this.valueField = gl_fog_coord_src_type.FOG_COORDINATE;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_fog_coord_src_type.FOG_COORDINATE)]
        public gl_fog_coord_src_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_fog_coord_src_type
    {

        /// <remarks/>
        FOG_COORDINATE,

        /// <remarks/>
        FRAGMENT_DEPTH,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassFog_density
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassFog_density()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassFog_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassFog_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassFog_end
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassFog_end()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassFog_mode
    {

        private gl_fog_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassFog_mode()
        {
            this.valueField = gl_fog_type.EXP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_fog_type.EXP)]
        public gl_fog_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_fog_type
    {

        /// <remarks/>
        LINEAR,

        /// <remarks/>
        EXP,

        /// <remarks/>
        EXP2,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassFog_start
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassFog_start()
        {
            this.valueField = 0D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassFront_face
    {

        private gl_front_face_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassFront_face()
        {
            this.valueField = gl_front_face_type.CCW;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_front_face_type.CCW)]
        public gl_front_face_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_front_face_type
    {

        /// <remarks/>
        CW,

        /// <remarks/>
        CCW,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_ambient
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_ambient()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_constant_attenuation
    {

        private double valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_constant_attenuation()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_diffuse
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_diffuse()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_enable
    {

        private bool valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_linear_attenuation
    {

        private double valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_linear_attenuation()
        {
            this.valueField = 0D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_ambient
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_ambient()
        {
            this.valueField = new double[] {
                    0.2D,
                    0.2D,
                    0.2D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_color_control
    {

        private gl_light_model_color_control_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_color_control()
        {
            this.valueField = gl_light_model_color_control_type.SINGLE_COLOR;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_light_model_color_control_type.SINGLE_COLOR)]
        public gl_light_model_color_control_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_light_model_color_control_type
    {

        /// <remarks/>
        SINGLE_COLOR,

        /// <remarks/>
        SEPARATE_SPECULAR_COLOR,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_local_viewer_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_local_viewer_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_two_side_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_two_side_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_position
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_position()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    1D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_quadratic_attenuation
    {

        private double valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_quadratic_attenuation()
        {
            this.valueField = 0D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_specular
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_specular()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_cutoff
    {

        private double valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_cutoff()
        {
            this.valueField = 180D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(180D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_direction
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_direction()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    -1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_exponent
    {

        private double valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_exponent()
        {
            this.valueField = 0D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLighting_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLighting_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLine_smooth_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLine_smooth_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLine_stipple
    {

        private long[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLine_stipple()
        {
            this.valueField = new long[] {
                    ((long)(1)),
                    ((long)(65536))};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Int64[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public long[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLine_stipple_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLine_stipple_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLine_width
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLine_width()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLogic_op
    {

        private gl_logic_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLogic_op()
        {
            this.valueField = gl_logic_op_type.COPY;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_logic_op_type.COPY)]
        public gl_logic_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_logic_op_type
    {

        /// <remarks/>
        CLEAR,

        /// <remarks/>
        AND,

        /// <remarks/>
        AND_REVERSE,

        /// <remarks/>
        COPY,

        /// <remarks/>
        AND_INVERTED,

        /// <remarks/>
        NOOP,

        /// <remarks/>
        XOR,

        /// <remarks/>
        OR,

        /// <remarks/>
        NOR,

        /// <remarks/>
        EQUIV,

        /// <remarks/>
        INVERT,

        /// <remarks/>
        OR_REVERSE,

        /// <remarks/>
        COPY_INVERTED,

        /// <remarks/>
        NAND,

        /// <remarks/>
        SET,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassLogic_op_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassLogic_op_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_ambient
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_ambient()
        {
            this.valueField = new double[] {
                    0.2D,
                    0.2D,
                    0.2D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_diffuse
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_diffuse()
        {
            this.valueField = new double[] {
                    0.8D,
                    0.8D,
                    0.8D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_emission
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_emission()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_shininess
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_shininess()
        {
            this.valueField = 0D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_specular
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_specular()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassModel_view_matrix
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassModel_view_matrix()
        {
            this.valueField = new double[] {
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassMultisample_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassMultisample_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassNormalize_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassNormalize_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPoint_distance_attenuation
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPoint_distance_attenuation()
        {
            this.valueField = new double[] {
                    1D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPoint_fade_threshold_size
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPoint_fade_threshold_size()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size_max
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size_max()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size_min
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size_min()
        {
            this.valueField = 0D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPoint_smooth_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPoint_smooth_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_mode
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_modeFace faceField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_modeMode modeField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_modeFace face
        {
            get
            {
                return this.faceField;
            }
            set
            {
                this.faceField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_modeMode mode
        {
            get
            {
                return this.modeField;
            }
            set
            {
                this.modeField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_modeFace
    {

        private gl_face_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_modeFace()
        {
            this.valueField = gl_face_type.FRONT_AND_BACK;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_face_type.FRONT_AND_BACK)]
        public gl_face_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_modeMode
    {

        private gl_polygon_mode_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_modeMode()
        {
            this.valueField = gl_polygon_mode_type.FILL;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_polygon_mode_type.FILL)]
        public gl_polygon_mode_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_polygon_mode_type
    {

        /// <remarks/>
        POINT,

        /// <remarks/>
        LINE,

        /// <remarks/>
        FILL,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset()
        {
            this.valueField = new double[] {
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_fill_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_fill_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_line_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_line_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_point_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_point_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_smooth_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_smooth_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_stipple_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_stipple_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassProjection_matrix
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassProjection_matrix()
        {
            this.valueField = new double[] {
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassRescale_normal_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassRescale_normal_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassSample_alpha_to_coverage_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassSample_alpha_to_coverage_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassSample_alpha_to_one_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassSample_alpha_to_one_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassSample_coverage_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassSample_coverage_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassScissor
    {

        private long[] valueField;

        private string paramField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public long[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassScissor_test_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassScissor_test_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassShade_model
    {

        private gl_shade_model_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassShade_model()
        {
            this.valueField = gl_shade_model_type.SMOOTH;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_shade_model_type.SMOOTH)]
        public gl_shade_model_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_shade_model_type
    {

        /// <remarks/>
        FLAT,

        /// <remarks/>
        SMOOTH,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_CGTechniquePassShader
    {

        private fx_annotate_common[] annotateField;

        private effectFx_profile_abstractProfile_CGTechniquePassShaderCompiler_target compiler_targetField;

        private string compiler_optionsField;

        private effectFx_profile_abstractProfile_CGTechniquePassShaderName nameField;

        private effectFx_profile_abstractProfile_CGTechniquePassShaderBind[] bindField;

        private cg_pipeline_stage stageField;

        private bool stageFieldSpecified;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_CGTechniquePassShaderCompiler_target compiler_target
        {
            get
            {
                return this.compiler_targetField;
            }
            set
            {
                this.compiler_targetField = value;
            }
        }

        /// <remarks/>
        public string compiler_options
        {
            get
            {
                return this.compiler_optionsField;
            }
            set
            {
                this.compiler_optionsField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_CGTechniquePassShaderName name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("bind")]
        public effectFx_profile_abstractProfile_CGTechniquePassShaderBind[] bind
        {
            get
            {
                return this.bindField;
            }
            set
            {
                this.bindField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public cg_pipeline_stage stage
        {
            get
            {
                return this.stageField;
            }
            set
            {
                this.stageField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool stageSpecified
        {
            get
            {
                return this.stageFieldSpecified;
            }
            set
            {
                this.stageFieldSpecified = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_CGTechniquePassShaderCompiler_target
    {

        private string valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "NMTOKEN")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_CGTechniquePassShaderName
    {

        private string sourceField;

        private string valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "NCName")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_CGTechniquePassShaderBind
    {

        private object itemField;

        private ItemChoiceType6 itemElementNameField;

        private string symbolField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool1x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x1", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4x4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("fixed", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("fixed4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half1x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half2x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half3x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x1", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("half4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int1x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x1", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4x4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("param", typeof(effectFx_profile_abstractProfile_CGTechniquePassShaderBindParam))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(cg_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(cg_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(cg_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(cg_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(cg_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(cg_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("string", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(cg_surface_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemChoiceType6 ItemElementName
        {
            get
            {
                return this.itemElementNameField;
            }
            set
            {
                this.itemElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string symbol
        {
            get
            {
                return this.symbolField;
            }
            set
            {
                this.symbolField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_CGTechniquePassShaderBindParam
    {

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemChoiceType6
    {

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool1,

        /// <remarks/>
        bool1x1,

        /// <remarks/>
        bool1x2,

        /// <remarks/>
        bool1x3,

        /// <remarks/>
        bool1x4,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool2x1,

        /// <remarks/>
        bool2x2,

        /// <remarks/>
        bool2x3,

        /// <remarks/>
        bool2x4,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool3x1,

        /// <remarks/>
        bool3x2,

        /// <remarks/>
        bool3x3,

        /// <remarks/>
        bool3x4,

        /// <remarks/>
        bool4,

        /// <remarks/>
        bool4x1,

        /// <remarks/>
        bool4x2,

        /// <remarks/>
        bool4x3,

        /// <remarks/>
        bool4x4,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @fixed,

        /// <remarks/>
        fixed1,

        /// <remarks/>
        fixed1x1,

        /// <remarks/>
        fixed1x2,

        /// <remarks/>
        fixed1x3,

        /// <remarks/>
        fixed1x4,

        /// <remarks/>
        fixed2,

        /// <remarks/>
        fixed2x1,

        /// <remarks/>
        fixed2x2,

        /// <remarks/>
        fixed2x3,

        /// <remarks/>
        fixed2x4,

        /// <remarks/>
        fixed3,

        /// <remarks/>
        fixed3x1,

        /// <remarks/>
        fixed3x2,

        /// <remarks/>
        fixed3x3,

        /// <remarks/>
        fixed3x4,

        /// <remarks/>
        fixed4,

        /// <remarks/>
        fixed4x1,

        /// <remarks/>
        fixed4x2,

        /// <remarks/>
        fixed4x3,

        /// <remarks/>
        fixed4x4,

        /// <remarks/>
        @float,

        /// <remarks/>
        float1,

        /// <remarks/>
        float1x1,

        /// <remarks/>
        float1x2,

        /// <remarks/>
        float1x3,

        /// <remarks/>
        float1x4,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x1,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float2x3,

        /// <remarks/>
        float2x4,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x1,

        /// <remarks/>
        float3x2,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float3x4,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x1,

        /// <remarks/>
        float4x2,

        /// <remarks/>
        float4x3,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        half,

        /// <remarks/>
        half1,

        /// <remarks/>
        half1x1,

        /// <remarks/>
        half1x2,

        /// <remarks/>
        half1x3,

        /// <remarks/>
        half1x4,

        /// <remarks/>
        half2,

        /// <remarks/>
        half2x1,

        /// <remarks/>
        half2x2,

        /// <remarks/>
        half2x3,

        /// <remarks/>
        half2x4,

        /// <remarks/>
        half3,

        /// <remarks/>
        half3x1,

        /// <remarks/>
        half3x2,

        /// <remarks/>
        half3x3,

        /// <remarks/>
        half3x4,

        /// <remarks/>
        half4,

        /// <remarks/>
        half4x1,

        /// <remarks/>
        half4x2,

        /// <remarks/>
        half4x3,

        /// <remarks/>
        half4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int1,

        /// <remarks/>
        int1x1,

        /// <remarks/>
        int1x2,

        /// <remarks/>
        int1x3,

        /// <remarks/>
        int1x4,

        /// <remarks/>
        int2,

        /// <remarks/>
        int2x1,

        /// <remarks/>
        int2x2,

        /// <remarks/>
        int2x3,

        /// <remarks/>
        int2x4,

        /// <remarks/>
        int3,

        /// <remarks/>
        int3x1,

        /// <remarks/>
        int3x2,

        /// <remarks/>
        int3x3,

        /// <remarks/>
        int3x4,

        /// <remarks/>
        int4,

        /// <remarks/>
        int4x1,

        /// <remarks/>
        int4x2,

        /// <remarks/>
        int4x3,

        /// <remarks/>
        int4x4,

        /// <remarks/>
        param,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        @string,

        /// <remarks/>
        surface,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum cg_pipeline_stage
    {

        /// <remarks/>
        VERTEX,

        /// <remarks/>
        FRAGMENT,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcFunc funcField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcRef refField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcMask maskField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcFunc func
        {
            get
            {
                return this.funcField;
            }
            set
            {
                this.funcField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcRef @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcMask mask
        {
            get
            {
                return this.maskField;
            }
            set
            {
                this.maskField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcFunc
    {

        private gl_func_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcFunc()
        {
            this.valueField = gl_func_type.ALWAYS;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_func_type.ALWAYS)]
        public gl_func_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcRef
    {

        private byte valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcRef()
        {
            this.valueField = ((byte)(0));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "0")]
        public byte value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcMask
    {

        private byte valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_funcMask()
        {
            this.valueField = ((byte)(255));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "255")]
        public byte value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separate
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateFront frontField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateBack backField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateRef refField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateMask maskField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateFront front
        {
            get
            {
                return this.frontField;
            }
            set
            {
                this.frontField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateBack back
        {
            get
            {
                return this.backField;
            }
            set
            {
                this.backField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateRef @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateMask mask
        {
            get
            {
                return this.maskField;
            }
            set
            {
                this.maskField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateFront
    {

        private gl_func_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateFront()
        {
            this.valueField = gl_func_type.ALWAYS;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_func_type.ALWAYS)]
        public gl_func_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateBack
    {

        private gl_func_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateBack()
        {
            this.valueField = gl_func_type.ALWAYS;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_func_type.ALWAYS)]
        public gl_func_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateRef
    {

        private byte valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateRef()
        {
            this.valueField = ((byte)(0));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "0")]
        public byte value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateMask
    {

        private byte valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separateMask()
        {
            this.valueField = ((byte)(255));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "255")]
        public byte value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask
    {

        private long valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask()
        {
            this.valueField = ((long)(4294967295));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(long), "4294967295")]
        public long value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separate
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separateFace faceField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separateMask maskField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separateFace face
        {
            get
            {
                return this.faceField;
            }
            set
            {
                this.faceField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separateMask mask
        {
            get
            {
                return this.maskField;
            }
            set
            {
                this.maskField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separateFace
    {

        private gl_face_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separateFace()
        {
            this.valueField = gl_face_type.FRONT_AND_BACK;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_face_type.FRONT_AND_BACK)]
        public gl_face_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separateMask
    {

        private byte valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separateMask()
        {
            this.valueField = ((byte)(255));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "255")]
        public byte value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opFail failField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opZfail zfailField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opZpass zpassField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opFail fail
        {
            get
            {
                return this.failField;
            }
            set
            {
                this.failField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opZfail zfail
        {
            get
            {
                return this.zfailField;
            }
            set
            {
                this.zfailField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opZpass zpass
        {
            get
            {
                return this.zpassField;
            }
            set
            {
                this.zpassField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opFail
    {

        private gl_stencil_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opFail()
        {
            this.valueField = gl_stencil_op_type.KEEP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_stencil_op_type.KEEP)]
        public gl_stencil_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gl_stencil_op_type
    {

        /// <remarks/>
        KEEP,

        /// <remarks/>
        ZERO,

        /// <remarks/>
        REPLACE,

        /// <remarks/>
        INCR,

        /// <remarks/>
        DECR,

        /// <remarks/>
        INVERT,

        /// <remarks/>
        INCR_WRAP,

        /// <remarks/>
        DECR_WRAP,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opZfail
    {

        private gl_stencil_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opZfail()
        {
            this.valueField = gl_stencil_op_type.KEEP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_stencil_op_type.KEEP)]
        public gl_stencil_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opZpass
    {

        private gl_stencil_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_opZpass()
        {
            this.valueField = gl_stencil_op_type.KEEP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_stencil_op_type.KEEP)]
        public gl_stencil_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separate
    {

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateFace faceField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateFail failField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateZfail zfailField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateZpass zpassField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateFace face
        {
            get
            {
                return this.faceField;
            }
            set
            {
                this.faceField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateFail fail
        {
            get
            {
                return this.failField;
            }
            set
            {
                this.failField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateZfail zfail
        {
            get
            {
                return this.zfailField;
            }
            set
            {
                this.zfailField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateZpass zpass
        {
            get
            {
                return this.zpassField;
            }
            set
            {
                this.zpassField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateFace
    {

        private gl_face_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateFace()
        {
            this.valueField = gl_face_type.FRONT_AND_BACK;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_face_type.FRONT_AND_BACK)]
        public gl_face_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateFail
    {

        private gl_stencil_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateFail()
        {
            this.valueField = gl_stencil_op_type.KEEP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_stencil_op_type.KEEP)]
        public gl_stencil_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateZfail
    {

        private gl_stencil_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateZfail()
        {
            this.valueField = gl_stencil_op_type.KEEP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_stencil_op_type.KEEP)]
        public gl_stencil_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateZpass
    {

        private gl_stencil_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separateZpass()
        {
            this.valueField = gl_stencil_op_type.KEEP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_stencil_op_type.KEEP)]
        public gl_stencil_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassStencil_test_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassStencil_test_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTexture1D
    {

        private object itemField;

        private string indexField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("param", typeof(string), DataType = "NCName")]
        [System.Xml.Serialization.XmlElementAttribute("value", typeof(gl_sampler1D))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTexture1D_enable
    {

        private bool valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassTexture1D_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTexture2D
    {

        private object itemField;

        private string indexField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("param", typeof(string), DataType = "NCName")]
        [System.Xml.Serialization.XmlElementAttribute("value", typeof(gl_sampler2D))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTexture2D_enable
    {

        private bool valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassTexture2D_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTexture3D
    {

        private object itemField;

        private string indexField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("param", typeof(string), DataType = "NCName")]
        [System.Xml.Serialization.XmlElementAttribute("value", typeof(gl_sampler3D))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTexture3D_enable
    {

        private bool valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassTexture3D_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTextureCUBE
    {

        private object itemField;

        private string indexField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("param", typeof(string), DataType = "NCName")]
        [System.Xml.Serialization.XmlElementAttribute("value", typeof(gl_samplerCUBE))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTextureCUBE_enable
    {

        private bool valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassTextureCUBE_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTextureDEPTH
    {

        private object itemField;

        private string indexField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("param", typeof(string), DataType = "NCName")]
        [System.Xml.Serialization.XmlElementAttribute("value", typeof(gl_samplerDEPTH))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTextureDEPTH_enable
    {

        private bool valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassTextureDEPTH_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTextureRECT
    {

        private object itemField;

        private string indexField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("param", typeof(string), DataType = "NCName")]
        [System.Xml.Serialization.XmlElementAttribute("value", typeof(gl_samplerRECT))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTextureRECT_enable
    {

        private bool valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLSLTechniquePassTextureRECT_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTexture_env_color
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassTexture_env_mode
    {

        private string valueField;

        private string paramField;

        private string indexField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute("profile_COMMON", Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class effectFx_profile_abstractProfile_COMMON
    {

        private asset assetField;

        private object[] itemsField;

        private effectFx_profile_abstractProfile_COMMONTechnique techniqueField;

        private extra[] extraField;

        private string idField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("image", typeof(image))]
        [System.Xml.Serialization.XmlElementAttribute("newparam", typeof(common_newparam_type))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_COMMONTechnique technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_COMMONTechnique
    {

        private asset assetField;

        private object[] itemsField;

        private object itemField;

        private extra[] extraField;

        private string idField;

        private string sidField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("image", typeof(image))]
        [System.Xml.Serialization.XmlElementAttribute("newparam", typeof(common_newparam_type))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("blinn", typeof(effectFx_profile_abstractProfile_COMMONTechniqueBlinn))]
        [System.Xml.Serialization.XmlElementAttribute("constant", typeof(effectFx_profile_abstractProfile_COMMONTechniqueConstant))]
        [System.Xml.Serialization.XmlElementAttribute("lambert", typeof(effectFx_profile_abstractProfile_COMMONTechniqueLambert))]
        [System.Xml.Serialization.XmlElementAttribute("phong", typeof(effectFx_profile_abstractProfile_COMMONTechniquePhong))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_COMMONTechniqueBlinn
    {

        private common_color_or_texture_type emissionField;

        private common_color_or_texture_type ambientField;

        private common_color_or_texture_type diffuseField;

        private common_color_or_texture_type specularField;

        private common_float_or_param_type shininessField;

        private common_color_or_texture_type reflectiveField;

        private common_float_or_param_type reflectivityField;

        private common_transparent_type transparentField;

        private common_float_or_param_type transparencyField;

        private common_float_or_param_type index_of_refractionField;

        /// <remarks/>
        public common_color_or_texture_type emission
        {
            get
            {
                return this.emissionField;
            }
            set
            {
                this.emissionField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type ambient
        {
            get
            {
                return this.ambientField;
            }
            set
            {
                this.ambientField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type diffuse
        {
            get
            {
                return this.diffuseField;
            }
            set
            {
                this.diffuseField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type specular
        {
            get
            {
                return this.specularField;
            }
            set
            {
                this.specularField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type shininess
        {
            get
            {
                return this.shininessField;
            }
            set
            {
                this.shininessField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type reflective
        {
            get
            {
                return this.reflectiveField;
            }
            set
            {
                this.reflectiveField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type reflectivity
        {
            get
            {
                return this.reflectivityField;
            }
            set
            {
                this.reflectivityField = value;
            }
        }

        /// <remarks/>
        public common_transparent_type transparent
        {
            get
            {
                return this.transparentField;
            }
            set
            {
                this.transparentField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type transparency
        {
            get
            {
                return this.transparencyField;
            }
            set
            {
                this.transparencyField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type index_of_refraction
        {
            get
            {
                return this.index_of_refractionField;
            }
            set
            {
                this.index_of_refractionField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_COMMONTechniqueConstant
    {

        private common_color_or_texture_type emissionField;

        private common_color_or_texture_type reflectiveField;

        private common_float_or_param_type reflectivityField;

        private common_transparent_type transparentField;

        private common_float_or_param_type transparencyField;

        private common_float_or_param_type index_of_refractionField;

        /// <remarks/>
        public common_color_or_texture_type emission
        {
            get
            {
                return this.emissionField;
            }
            set
            {
                this.emissionField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type reflective
        {
            get
            {
                return this.reflectiveField;
            }
            set
            {
                this.reflectiveField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type reflectivity
        {
            get
            {
                return this.reflectivityField;
            }
            set
            {
                this.reflectivityField = value;
            }
        }

        /// <remarks/>
        public common_transparent_type transparent
        {
            get
            {
                return this.transparentField;
            }
            set
            {
                this.transparentField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type transparency
        {
            get
            {
                return this.transparencyField;
            }
            set
            {
                this.transparencyField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type index_of_refraction
        {
            get
            {
                return this.index_of_refractionField;
            }
            set
            {
                this.index_of_refractionField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_COMMONTechniqueLambert
    {

        private common_color_or_texture_type emissionField;

        private common_color_or_texture_type ambientField;

        private common_color_or_texture_type diffuseField;

        private common_color_or_texture_type reflectiveField;

        private common_float_or_param_type reflectivityField;

        private common_transparent_type transparentField;

        private common_float_or_param_type transparencyField;

        private common_float_or_param_type index_of_refractionField;

        /// <remarks/>
        public common_color_or_texture_type emission
        {
            get
            {
                return this.emissionField;
            }
            set
            {
                this.emissionField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type ambient
        {
            get
            {
                return this.ambientField;
            }
            set
            {
                this.ambientField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type diffuse
        {
            get
            {
                return this.diffuseField;
            }
            set
            {
                this.diffuseField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type reflective
        {
            get
            {
                return this.reflectiveField;
            }
            set
            {
                this.reflectiveField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type reflectivity
        {
            get
            {
                return this.reflectivityField;
            }
            set
            {
                this.reflectivityField = value;
            }
        }

        /// <remarks/>
        public common_transparent_type transparent
        {
            get
            {
                return this.transparentField;
            }
            set
            {
                this.transparentField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type transparency
        {
            get
            {
                return this.transparencyField;
            }
            set
            {
                this.transparencyField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type index_of_refraction
        {
            get
            {
                return this.index_of_refractionField;
            }
            set
            {
                this.index_of_refractionField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_COMMONTechniquePhong
    {

        private common_color_or_texture_type emissionField;

        private common_color_or_texture_type ambientField;

        private common_color_or_texture_type diffuseField;

        private common_color_or_texture_type specularField;

        private common_float_or_param_type shininessField;

        private common_color_or_texture_type reflectiveField;

        private common_float_or_param_type reflectivityField;

        private common_transparent_type transparentField;

        private common_float_or_param_type transparencyField;

        private common_float_or_param_type index_of_refractionField;

        /// <remarks/>
        public common_color_or_texture_type emission
        {
            get
            {
                return this.emissionField;
            }
            set
            {
                this.emissionField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type ambient
        {
            get
            {
                return this.ambientField;
            }
            set
            {
                this.ambientField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type diffuse
        {
            get
            {
                return this.diffuseField;
            }
            set
            {
                this.diffuseField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type specular
        {
            get
            {
                return this.specularField;
            }
            set
            {
                this.specularField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type shininess
        {
            get
            {
                return this.shininessField;
            }
            set
            {
                this.shininessField = value;
            }
        }

        /// <remarks/>
        public common_color_or_texture_type reflective
        {
            get
            {
                return this.reflectiveField;
            }
            set
            {
                this.reflectiveField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type reflectivity
        {
            get
            {
                return this.reflectivityField;
            }
            set
            {
                this.reflectivityField = value;
            }
        }

        /// <remarks/>
        public common_transparent_type transparent
        {
            get
            {
                return this.transparentField;
            }
            set
            {
                this.transparentField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type transparency
        {
            get
            {
                return this.transparencyField;
            }
            set
            {
                this.transparencyField = value;
            }
        }

        /// <remarks/>
        public common_float_or_param_type index_of_refraction
        {
            get
            {
                return this.index_of_refractionField;
            }
            set
            {
                this.index_of_refractionField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute("profile_GLES", Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class effectFx_profile_abstractProfile_GLES
    {

        private asset assetField;

        private object[] itemsField;

        private effectFx_profile_abstractProfile_GLESTechnique[] techniqueField;

        private extra[] extraField;

        private string idField;

        private string platformField;

        public effectFx_profile_abstractProfile_GLES()
        {
            this.platformField = "PC";
        }

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("image", typeof(image))]
        [System.Xml.Serialization.XmlElementAttribute("newparam", typeof(gles_newparam))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public effectFx_profile_abstractProfile_GLESTechnique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        [System.ComponentModel.DefaultValueAttribute("PC")]
        public string platform
        {
            get
            {
                return this.platformField;
            }
            set
            {
                this.platformField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechnique
    {

        private asset assetField;

        private fx_annotate_common[] annotateField;

        private object[] itemsField;

        private effectFx_profile_abstractProfile_GLESTechniquePass[] passField;

        private extra[] extraField;

        private string idField;

        private string sidField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("image", typeof(image))]
        [System.Xml.Serialization.XmlElementAttribute("newparam", typeof(gles_newparam))]
        [System.Xml.Serialization.XmlElementAttribute("setparam", typeof(effectFx_profile_abstractProfile_GLESTechniqueSetparam))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("pass")]
        public effectFx_profile_abstractProfile_GLESTechniquePass[] pass
        {
            get
            {
                return this.passField;
            }
            set
            {
                this.passField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniqueSetparam
    {

        private fx_annotate_common[] annotateField;

        private bool boolField;

        private string bool2Field;

        private string bool3Field;

        private string bool4Field;

        private long intField;

        private string int2Field;

        private string int3Field;

        private string int4Field;

        private double floatField;

        private string float2Field;

        private string float3Field;

        private string float4Field;

        private double float1x1Field;

        private string float1x2Field;

        private string float1x3Field;

        private string float1x4Field;

        private string float2x1Field;

        private string float2x2Field;

        private string float2x3Field;

        private string float2x4Field;

        private string float3x1Field;

        private string float3x2Field;

        private string float3x3Field;

        private string float3x4Field;

        private string float4x1Field;

        private string float4x2Field;

        private string float4x3Field;

        private string float4x4Field;

        private fx_surface_common surfaceField;

        private gles_texture_pipeline texture_pipelineField;

        private gles_sampler_state sampler_stateField;

        private gles_texture_unit texture_unitField;

        private string enumField;

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        public bool @bool
        {
            get
            {
                return this.boolField;
            }
            set
            {
                this.boolField = value;
            }
        }

        /// <remarks/>
        public string bool2
        {
            get
            {
                return this.bool2Field;
            }
            set
            {
                this.bool2Field = value;
            }
        }

        /// <remarks/>
        public string bool3
        {
            get
            {
                return this.bool3Field;
            }
            set
            {
                this.bool3Field = value;
            }
        }

        /// <remarks/>
        public string bool4
        {
            get
            {
                return this.bool4Field;
            }
            set
            {
                this.bool4Field = value;
            }
        }

        /// <remarks/>
        public long @int
        {
            get
            {
                return this.intField;
            }
            set
            {
                this.intField = value;
            }
        }

        /// <remarks/>
        public string int2
        {
            get
            {
                return this.int2Field;
            }
            set
            {
                this.int2Field = value;
            }
        }

        /// <remarks/>
        public string int3
        {
            get
            {
                return this.int3Field;
            }
            set
            {
                this.int3Field = value;
            }
        }

        /// <remarks/>
        public string int4
        {
            get
            {
                return this.int4Field;
            }
            set
            {
                this.int4Field = value;
            }
        }

        /// <remarks/>
        public double @float
        {
            get
            {
                return this.floatField;
            }
            set
            {
                this.floatField = value;
            }
        }

        /// <remarks/>
        public string float2
        {
            get
            {
                return this.float2Field;
            }
            set
            {
                this.float2Field = value;
            }
        }

        /// <remarks/>
        public string float3
        {
            get
            {
                return this.float3Field;
            }
            set
            {
                this.float3Field = value;
            }
        }

        /// <remarks/>
        public string float4
        {
            get
            {
                return this.float4Field;
            }
            set
            {
                this.float4Field = value;
            }
        }

        /// <remarks/>
        public double float1x1
        {
            get
            {
                return this.float1x1Field;
            }
            set
            {
                this.float1x1Field = value;
            }
        }

        /// <remarks/>
        public string float1x2
        {
            get
            {
                return this.float1x2Field;
            }
            set
            {
                this.float1x2Field = value;
            }
        }

        /// <remarks/>
        public string float1x3
        {
            get
            {
                return this.float1x3Field;
            }
            set
            {
                this.float1x3Field = value;
            }
        }

        /// <remarks/>
        public string float1x4
        {
            get
            {
                return this.float1x4Field;
            }
            set
            {
                this.float1x4Field = value;
            }
        }

        /// <remarks/>
        public string float2x1
        {
            get
            {
                return this.float2x1Field;
            }
            set
            {
                this.float2x1Field = value;
            }
        }

        /// <remarks/>
        public string float2x2
        {
            get
            {
                return this.float2x2Field;
            }
            set
            {
                this.float2x2Field = value;
            }
        }

        /// <remarks/>
        public string float2x3
        {
            get
            {
                return this.float2x3Field;
            }
            set
            {
                this.float2x3Field = value;
            }
        }

        /// <remarks/>
        public string float2x4
        {
            get
            {
                return this.float2x4Field;
            }
            set
            {
                this.float2x4Field = value;
            }
        }

        /// <remarks/>
        public string float3x1
        {
            get
            {
                return this.float3x1Field;
            }
            set
            {
                this.float3x1Field = value;
            }
        }

        /// <remarks/>
        public string float3x2
        {
            get
            {
                return this.float3x2Field;
            }
            set
            {
                this.float3x2Field = value;
            }
        }

        /// <remarks/>
        public string float3x3
        {
            get
            {
                return this.float3x3Field;
            }
            set
            {
                this.float3x3Field = value;
            }
        }

        /// <remarks/>
        public string float3x4
        {
            get
            {
                return this.float3x4Field;
            }
            set
            {
                this.float3x4Field = value;
            }
        }

        /// <remarks/>
        public string float4x1
        {
            get
            {
                return this.float4x1Field;
            }
            set
            {
                this.float4x1Field = value;
            }
        }

        /// <remarks/>
        public string float4x2
        {
            get
            {
                return this.float4x2Field;
            }
            set
            {
                this.float4x2Field = value;
            }
        }

        /// <remarks/>
        public string float4x3
        {
            get
            {
                return this.float4x3Field;
            }
            set
            {
                this.float4x3Field = value;
            }
        }

        /// <remarks/>
        public string float4x4
        {
            get
            {
                return this.float4x4Field;
            }
            set
            {
                this.float4x4Field = value;
            }
        }

        /// <remarks/>
        public fx_surface_common surface
        {
            get
            {
                return this.surfaceField;
            }
            set
            {
                this.surfaceField = value;
            }
        }

        /// <remarks/>
        public gles_texture_pipeline texture_pipeline
        {
            get
            {
                return this.texture_pipelineField;
            }
            set
            {
                this.texture_pipelineField = value;
            }
        }

        /// <remarks/>
        public gles_sampler_state sampler_state
        {
            get
            {
                return this.sampler_stateField;
            }
            set
            {
                this.sampler_stateField = value;
            }
        }

        /// <remarks/>
        public gles_texture_unit texture_unit
        {
            get
            {
                return this.texture_unitField;
            }
            set
            {
                this.texture_unitField = value;
            }
        }

        /// <remarks/>
        public string @enum
        {
            get
            {
                return this.enumField;
            }
            set
            {
                this.enumField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePass
    {

        private fx_annotate_common[] annotateField;

        private string color_targetField;

        private string depth_targetField;

        private string stencil_targetField;

        private string color_clearField;

        private double depth_clearField;

        private bool depth_clearFieldSpecified;

        private sbyte stencil_clearField;

        private bool stencil_clearFieldSpecified;

        private string drawField;

        private object[] itemsField;

        private extra[] extraField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string color_target
        {
            get
            {
                return this.color_targetField;
            }
            set
            {
                this.color_targetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string depth_target
        {
            get
            {
                return this.depth_targetField;
            }
            set
            {
                this.depth_targetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(DataType = "NCName")]
        public string stencil_target
        {
            get
            {
                return this.stencil_targetField;
            }
            set
            {
                this.stencil_targetField = value;
            }
        }

        /// <remarks/>
        public string color_clear
        {
            get
            {
                return this.color_clearField;
            }
            set
            {
                this.color_clearField = value;
            }
        }

        /// <remarks/>
        public double depth_clear
        {
            get
            {
                return this.depth_clearField;
            }
            set
            {
                this.depth_clearField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool depth_clearSpecified
        {
            get
            {
                return this.depth_clearFieldSpecified;
            }
            set
            {
                this.depth_clearFieldSpecified = value;
            }
        }

        /// <remarks/>
        public sbyte stencil_clear
        {
            get
            {
                return this.stencil_clearField;
            }
            set
            {
                this.stencil_clearField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool stencil_clearSpecified
        {
            get
            {
                return this.stencil_clearFieldSpecified;
            }
            set
            {
                this.stencil_clearFieldSpecified = value;
            }
        }

        /// <remarks/>
        public string draw
        {
            get
            {
                return this.drawField;
            }
            set
            {
                this.drawField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("alpha_func", typeof(effectFx_profile_abstractProfile_GLESTechniquePassAlpha_func))]
        [System.Xml.Serialization.XmlElementAttribute("alpha_test_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassAlpha_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("blend_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassBlend_enable))]
        [System.Xml.Serialization.XmlElementAttribute("blend_func", typeof(effectFx_profile_abstractProfile_GLESTechniquePassBlend_func))]
        [System.Xml.Serialization.XmlElementAttribute("clear_color", typeof(effectFx_profile_abstractProfile_GLESTechniquePassClear_color))]
        [System.Xml.Serialization.XmlElementAttribute("clear_depth", typeof(effectFx_profile_abstractProfile_GLESTechniquePassClear_depth))]
        [System.Xml.Serialization.XmlElementAttribute("clear_stencil", typeof(effectFx_profile_abstractProfile_GLESTechniquePassClear_stencil))]
        [System.Xml.Serialization.XmlElementAttribute("clip_plane", typeof(effectFx_profile_abstractProfile_GLESTechniquePassClip_plane))]
        [System.Xml.Serialization.XmlElementAttribute("clip_plane_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassClip_plane_enable))]
        [System.Xml.Serialization.XmlElementAttribute("color_logic_op_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassColor_logic_op_enable))]
        [System.Xml.Serialization.XmlElementAttribute("color_mask", typeof(effectFx_profile_abstractProfile_GLESTechniquePassColor_mask))]
        [System.Xml.Serialization.XmlElementAttribute("color_material_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassColor_material_enable))]
        [System.Xml.Serialization.XmlElementAttribute("cull_face", typeof(effectFx_profile_abstractProfile_GLESTechniquePassCull_face))]
        [System.Xml.Serialization.XmlElementAttribute("cull_face_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassCull_face_enable))]
        [System.Xml.Serialization.XmlElementAttribute("depth_func", typeof(effectFx_profile_abstractProfile_GLESTechniquePassDepth_func))]
        [System.Xml.Serialization.XmlElementAttribute("depth_mask", typeof(effectFx_profile_abstractProfile_GLESTechniquePassDepth_mask))]
        [System.Xml.Serialization.XmlElementAttribute("depth_range", typeof(effectFx_profile_abstractProfile_GLESTechniquePassDepth_range))]
        [System.Xml.Serialization.XmlElementAttribute("depth_test_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassDepth_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("dither_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassDither_enable))]
        [System.Xml.Serialization.XmlElementAttribute("fog_color", typeof(effectFx_profile_abstractProfile_GLESTechniquePassFog_color))]
        [System.Xml.Serialization.XmlElementAttribute("fog_density", typeof(effectFx_profile_abstractProfile_GLESTechniquePassFog_density))]
        [System.Xml.Serialization.XmlElementAttribute("fog_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassFog_enable))]
        [System.Xml.Serialization.XmlElementAttribute("fog_end", typeof(effectFx_profile_abstractProfile_GLESTechniquePassFog_end))]
        [System.Xml.Serialization.XmlElementAttribute("fog_mode", typeof(effectFx_profile_abstractProfile_GLESTechniquePassFog_mode))]
        [System.Xml.Serialization.XmlElementAttribute("fog_start", typeof(effectFx_profile_abstractProfile_GLESTechniquePassFog_start))]
        [System.Xml.Serialization.XmlElementAttribute("front_face", typeof(effectFx_profile_abstractProfile_GLESTechniquePassFront_face))]
        [System.Xml.Serialization.XmlElementAttribute("light_ambient", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_ambient))]
        [System.Xml.Serialization.XmlElementAttribute("light_constant_attenuation", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_constant_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("light_diffuse", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_diffuse))]
        [System.Xml.Serialization.XmlElementAttribute("light_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_enable))]
        [System.Xml.Serialization.XmlElementAttribute("light_linear_attenutation", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_linear_attenutation))]
        [System.Xml.Serialization.XmlElementAttribute("light_model_ambient", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_model_ambient))]
        [System.Xml.Serialization.XmlElementAttribute("light_model_two_side_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_model_two_side_enable))]
        [System.Xml.Serialization.XmlElementAttribute("light_position", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_position))]
        [System.Xml.Serialization.XmlElementAttribute("light_quadratic_attenuation", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_quadratic_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("light_specular", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_specular))]
        [System.Xml.Serialization.XmlElementAttribute("light_spot_cutoff", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_spot_cutoff))]
        [System.Xml.Serialization.XmlElementAttribute("light_spot_direction", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_spot_direction))]
        [System.Xml.Serialization.XmlElementAttribute("light_spot_exponent", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLight_spot_exponent))]
        [System.Xml.Serialization.XmlElementAttribute("lighting_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLighting_enable))]
        [System.Xml.Serialization.XmlElementAttribute("line_smooth_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLine_smooth_enable))]
        [System.Xml.Serialization.XmlElementAttribute("line_width", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLine_width))]
        [System.Xml.Serialization.XmlElementAttribute("logic_op", typeof(effectFx_profile_abstractProfile_GLESTechniquePassLogic_op))]
        [System.Xml.Serialization.XmlElementAttribute("material_ambient", typeof(effectFx_profile_abstractProfile_GLESTechniquePassMaterial_ambient))]
        [System.Xml.Serialization.XmlElementAttribute("material_diffuse", typeof(effectFx_profile_abstractProfile_GLESTechniquePassMaterial_diffuse))]
        [System.Xml.Serialization.XmlElementAttribute("material_emission", typeof(effectFx_profile_abstractProfile_GLESTechniquePassMaterial_emission))]
        [System.Xml.Serialization.XmlElementAttribute("material_shininess", typeof(effectFx_profile_abstractProfile_GLESTechniquePassMaterial_shininess))]
        [System.Xml.Serialization.XmlElementAttribute("material_specular", typeof(effectFx_profile_abstractProfile_GLESTechniquePassMaterial_specular))]
        [System.Xml.Serialization.XmlElementAttribute("model_view_matrix", typeof(effectFx_profile_abstractProfile_GLESTechniquePassModel_view_matrix))]
        [System.Xml.Serialization.XmlElementAttribute("multisample_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassMultisample_enable))]
        [System.Xml.Serialization.XmlElementAttribute("normalize_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassNormalize_enable))]
        [System.Xml.Serialization.XmlElementAttribute("point_distance_attenuation", typeof(effectFx_profile_abstractProfile_GLESTechniquePassPoint_distance_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("point_fade_threshold_size", typeof(effectFx_profile_abstractProfile_GLESTechniquePassPoint_fade_threshold_size))]
        [System.Xml.Serialization.XmlElementAttribute("point_size", typeof(effectFx_profile_abstractProfile_GLESTechniquePassPoint_size))]
        [System.Xml.Serialization.XmlElementAttribute("point_size_max", typeof(effectFx_profile_abstractProfile_GLESTechniquePassPoint_size_max))]
        [System.Xml.Serialization.XmlElementAttribute("point_size_min", typeof(effectFx_profile_abstractProfile_GLESTechniquePassPoint_size_min))]
        [System.Xml.Serialization.XmlElementAttribute("point_smooth_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassPoint_smooth_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_offset", typeof(effectFx_profile_abstractProfile_GLESTechniquePassPolygon_offset))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_offset_fill_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassPolygon_offset_fill_enable))]
        [System.Xml.Serialization.XmlElementAttribute("projection_matrix", typeof(effectFx_profile_abstractProfile_GLESTechniquePassProjection_matrix))]
        [System.Xml.Serialization.XmlElementAttribute("rescale_normal_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassRescale_normal_enable))]
        [System.Xml.Serialization.XmlElementAttribute("sample_alpha_to_coverage_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassSample_alpha_to_coverage_enable))]
        [System.Xml.Serialization.XmlElementAttribute("sample_alpha_to_one_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassSample_alpha_to_one_enable))]
        [System.Xml.Serialization.XmlElementAttribute("sample_coverage_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassSample_coverage_enable))]
        [System.Xml.Serialization.XmlElementAttribute("scissor", typeof(effectFx_profile_abstractProfile_GLESTechniquePassScissor))]
        [System.Xml.Serialization.XmlElementAttribute("scissor_test_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassScissor_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("shade_model", typeof(effectFx_profile_abstractProfile_GLESTechniquePassShade_model))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_func", typeof(effectFx_profile_abstractProfile_GLESTechniquePassStencil_func))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_mask", typeof(effectFx_profile_abstractProfile_GLESTechniquePassStencil_mask))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_op", typeof(effectFx_profile_abstractProfile_GLESTechniquePassStencil_op))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_test_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassStencil_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("texture_pipeline", typeof(effectFx_profile_abstractProfile_GLESTechniquePassTexture_pipeline))]
        [System.Xml.Serialization.XmlElementAttribute("texture_pipeline_enable", typeof(effectFx_profile_abstractProfile_GLESTechniquePassTexture_pipeline_enable))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassAlpha_func
    {

        private effectFx_profile_abstractProfile_GLESTechniquePassAlpha_funcFunc funcField;

        private effectFx_profile_abstractProfile_GLESTechniquePassAlpha_funcValue valueField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLESTechniquePassAlpha_funcFunc func
        {
            get
            {
                return this.funcField;
            }
            set
            {
                this.funcField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLESTechniquePassAlpha_funcValue value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassAlpha_funcFunc
    {

        private gl_func_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassAlpha_funcFunc()
        {
            this.valueField = gl_func_type.ALWAYS;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_func_type.ALWAYS)]
        public gl_func_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassAlpha_funcValue
    {

        private float valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassAlpha_funcValue()
        {
            this.valueField = ((float)(0F));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(float), "0")]
        public float value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassAlpha_test_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassAlpha_test_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassBlend_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassBlend_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassBlend_func
    {

        private effectFx_profile_abstractProfile_GLESTechniquePassBlend_funcSrc srcField;

        private effectFx_profile_abstractProfile_GLESTechniquePassBlend_funcDest destField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLESTechniquePassBlend_funcSrc src
        {
            get
            {
                return this.srcField;
            }
            set
            {
                this.srcField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLESTechniquePassBlend_funcDest dest
        {
            get
            {
                return this.destField;
            }
            set
            {
                this.destField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassBlend_funcSrc
    {

        private gl_blend_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassBlend_funcSrc()
        {
            this.valueField = gl_blend_type.ONE;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_type.ONE)]
        public gl_blend_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassBlend_funcDest
    {

        private gl_blend_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassBlend_funcDest()
        {
            this.valueField = gl_blend_type.ZERO;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_blend_type.ZERO)]
        public gl_blend_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassClear_color
    {

        private double[] valueField;

        private string paramField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassClear_depth
    {

        private double valueField;

        private bool valueFieldSpecified;

        private string paramField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool valueSpecified
        {
            get
            {
                return this.valueFieldSpecified;
            }
            set
            {
                this.valueFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassClear_stencil
    {

        private long valueField;

        private bool valueFieldSpecified;

        private string paramField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public long value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool valueSpecified
        {
            get
            {
                return this.valueFieldSpecified;
            }
            set
            {
                this.valueFieldSpecified = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassClip_plane
    {

        private bool[] valueField;

        private string paramField;

        private string indexField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassClip_plane_enable
    {

        private bool valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassClip_plane_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassColor_logic_op_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassColor_logic_op_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassColor_mask
    {

        private bool[] valueField;

        private string paramField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public bool[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassColor_material_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassColor_material_enable()
        {
            this.valueField = true;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(true)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassCull_face
    {

        private gl_face_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassCull_face()
        {
            this.valueField = gl_face_type.BACK;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_face_type.BACK)]
        public gl_face_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassCull_face_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassCull_face_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassDepth_func
    {

        private gl_func_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassDepth_func()
        {
            this.valueField = gl_func_type.ALWAYS;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_func_type.ALWAYS)]
        public gl_func_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassDepth_mask
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassDepth_mask()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassDepth_range
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassDepth_range()
        {
            this.valueField = new double[] {
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassDepth_test_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassDepth_test_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassDither_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassDither_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassFog_color
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassFog_color()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassFog_density
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassFog_density()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassFog_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassFog_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassFog_end
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassFog_end()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassFog_mode
    {

        private gl_fog_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassFog_mode()
        {
            this.valueField = gl_fog_type.EXP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_fog_type.EXP)]
        public gl_fog_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassFog_start
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassFog_start()
        {
            this.valueField = 0D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassFront_face
    {

        private gl_front_face_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassFront_face()
        {
            this.valueField = gl_front_face_type.CCW;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_front_face_type.CCW)]
        public gl_front_face_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_ambient
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_ambient()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_constant_attenuation
    {

        private double valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_constant_attenuation()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_diffuse
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_diffuse()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_enable
    {

        private bool valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_linear_attenutation
    {

        private double valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_linear_attenutation()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_model_ambient
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_model_ambient()
        {
            this.valueField = new double[] {
                    0.2D,
                    0.2D,
                    0.2D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_model_two_side_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_model_two_side_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_position
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_position()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    1D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_quadratic_attenuation
    {

        private double valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_quadratic_attenuation()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_specular
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_specular()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_spot_cutoff
    {

        private double valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_spot_cutoff()
        {
            this.valueField = 180D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(180D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_spot_direction
    {

        private double[] valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_spot_direction()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    -1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLight_spot_exponent
    {

        private double valueField;

        private string paramField;

        private string indexField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLight_spot_exponent()
        {
            this.valueField = 0D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "nonNegativeInteger")]
        public string index
        {
            get
            {
                return this.indexField;
            }
            set
            {
                this.indexField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLighting_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLighting_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLine_smooth_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLine_smooth_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLine_width
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLine_width()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassLogic_op
    {

        private gl_logic_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassLogic_op()
        {
            this.valueField = gl_logic_op_type.COPY;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_logic_op_type.COPY)]
        public gl_logic_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassMaterial_ambient
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassMaterial_ambient()
        {
            this.valueField = new double[] {
                    0.2D,
                    0.2D,
                    0.2D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassMaterial_diffuse
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassMaterial_diffuse()
        {
            this.valueField = new double[] {
                    0.8D,
                    0.8D,
                    0.8D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassMaterial_emission
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassMaterial_emission()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassMaterial_shininess
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassMaterial_shininess()
        {
            this.valueField = 0D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassMaterial_specular
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassMaterial_specular()
        {
            this.valueField = new double[] {
                    0D,
                    0D,
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassModel_view_matrix
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassModel_view_matrix()
        {
            this.valueField = new double[] {
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassMultisample_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassMultisample_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassNormalize_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassNormalize_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassPoint_distance_attenuation
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassPoint_distance_attenuation()
        {
            this.valueField = new double[] {
                    1D,
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassPoint_fade_threshold_size
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassPoint_fade_threshold_size()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassPoint_size
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassPoint_size()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassPoint_size_max
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassPoint_size_max()
        {
            this.valueField = 1D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(1D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassPoint_size_min
    {

        private double valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassPoint_size_min()
        {
            this.valueField = 0D;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0D)]
        public double value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassPoint_smooth_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassPoint_smooth_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassPolygon_offset
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassPolygon_offset()
        {
            this.valueField = new double[] {
                    0D,
                    0D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassPolygon_offset_fill_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassPolygon_offset_fill_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassProjection_matrix
    {

        private double[] valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassProjection_matrix()
        {
            this.valueField = new double[] {
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D,
                    0D,
                    0D,
                    0D,
                    0D,
                    1D};
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type System.Double[] is not supported in this version of the .Net Framework.
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public double[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassRescale_normal_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassRescale_normal_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassSample_alpha_to_coverage_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassSample_alpha_to_coverage_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassSample_alpha_to_one_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassSample_alpha_to_one_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassSample_coverage_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassSample_coverage_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassScissor
    {

        private long[] valueField;

        private string paramField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public long[] value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassScissor_test_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassScissor_test_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassShade_model
    {

        private gl_shade_model_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassShade_model()
        {
            this.valueField = gl_shade_model_type.SMOOTH;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_shade_model_type.SMOOTH)]
        public gl_shade_model_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassStencil_func
    {

        private effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcFunc funcField;

        private effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcRef refField;

        private effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcMask maskField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcFunc func
        {
            get
            {
                return this.funcField;
            }
            set
            {
                this.funcField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcRef @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcMask mask
        {
            get
            {
                return this.maskField;
            }
            set
            {
                this.maskField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcFunc
    {

        private gl_func_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcFunc()
        {
            this.valueField = gl_func_type.ALWAYS;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gl_func_type.ALWAYS)]
        public gl_func_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcRef
    {

        private byte valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcRef()
        {
            this.valueField = ((byte)(0));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "0")]
        public byte value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcMask
    {

        private byte valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_funcMask()
        {
            this.valueField = ((byte)(255));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(byte), "255")]
        public byte value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassStencil_mask
    {

        private long valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_mask()
        {
            this.valueField = ((long)(4294967295));
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(typeof(long), "4294967295")]
        public long value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassStencil_op
    {

        private effectFx_profile_abstractProfile_GLESTechniquePassStencil_opFail failField;

        private effectFx_profile_abstractProfile_GLESTechniquePassStencil_opZfail zfailField;

        private effectFx_profile_abstractProfile_GLESTechniquePassStencil_opZpass zpassField;

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_opFail fail
        {
            get
            {
                return this.failField;
            }
            set
            {
                this.failField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_opZfail zfail
        {
            get
            {
                return this.zfailField;
            }
            set
            {
                this.zfailField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_opZpass zpass
        {
            get
            {
                return this.zpassField;
            }
            set
            {
                this.zpassField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassStencil_opFail
    {

        private gles_stencil_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_opFail()
        {
            this.valueField = gles_stencil_op_type.KEEP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gles_stencil_op_type.KEEP)]
        public gles_stencil_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum gles_stencil_op_type
    {

        /// <remarks/>
        KEEP,

        /// <remarks/>
        ZERO,

        /// <remarks/>
        REPLACE,

        /// <remarks/>
        INCR,

        /// <remarks/>
        DECR,

        /// <remarks/>
        INVERT,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassStencil_opZfail
    {

        private gles_stencil_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_opZfail()
        {
            this.valueField = gles_stencil_op_type.KEEP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gles_stencil_op_type.KEEP)]
        public gles_stencil_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassStencil_opZpass
    {

        private gles_stencil_op_type valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_opZpass()
        {
            this.valueField = gles_stencil_op_type.KEEP;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(gles_stencil_op_type.KEEP)]
        public gles_stencil_op_type value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassStencil_test_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassStencil_test_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassTexture_pipeline
    {

        private gles_texture_pipeline valueField;

        private string paramField;

        /// <remarks/>
        public gles_texture_pipeline value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLESTechniquePassTexture_pipeline_enable
    {

        private bool valueField;

        private string paramField;

        public effectFx_profile_abstractProfile_GLESTechniquePassTexture_pipeline_enable()
        {
            this.valueField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute("profile_GLSL", Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class effectFx_profile_abstractProfile_GLSL
    {

        private asset assetField;

        private object[] itemsField;

        private object[] items1Field;

        private effectFx_profile_abstractProfile_GLSLTechnique[] techniqueField;

        private extra[] extraField;

        private string idField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("code", typeof(fx_code_profile))]
        [System.Xml.Serialization.XmlElementAttribute("include", typeof(fx_include_common))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("image", typeof(image))]
        [System.Xml.Serialization.XmlElementAttribute("newparam", typeof(glsl_newparam))]
        public object[] Items1
        {
            get
            {
                return this.items1Field;
            }
            set
            {
                this.items1Field = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public effectFx_profile_abstractProfile_GLSLTechnique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechnique
    {

        private fx_annotate_common[] annotateField;

        private object[] itemsField;

        private object[] items1Field;

        private effectFx_profile_abstractProfile_GLSLTechniquePass[] passField;

        private extra[] extraField;

        private string idField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("code", typeof(fx_code_profile))]
        [System.Xml.Serialization.XmlElementAttribute("include", typeof(fx_include_common))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("image", typeof(image))]
        [System.Xml.Serialization.XmlElementAttribute("newparam", typeof(glsl_newparam))]
        [System.Xml.Serialization.XmlElementAttribute("setparam", typeof(glsl_setparam))]
        public object[] Items1
        {
            get
            {
                return this.items1Field;
            }
            set
            {
                this.items1Field = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("pass")]
        public effectFx_profile_abstractProfile_GLSLTechniquePass[] pass
        {
            get
            {
                return this.passField;
            }
            set
            {
                this.passField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePass
    {

        private fx_annotate_common[] annotateField;

        private fx_colortarget_common[] color_targetField;

        private fx_depthtarget_common[] depth_targetField;

        private fx_stenciltarget_common[] stencil_targetField;

        private fx_clearcolor_common[] color_clearField;

        private fx_cleardepth_common[] depth_clearField;

        private fx_clearstencil_common[] stencil_clearField;

        private string drawField;

        private object[] itemsField;

        private extra[] extraField;

        private string sidField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("color_target")]
        public fx_colortarget_common[] color_target
        {
            get
            {
                return this.color_targetField;
            }
            set
            {
                this.color_targetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("depth_target")]
        public fx_depthtarget_common[] depth_target
        {
            get
            {
                return this.depth_targetField;
            }
            set
            {
                this.depth_targetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("stencil_target")]
        public fx_stenciltarget_common[] stencil_target
        {
            get
            {
                return this.stencil_targetField;
            }
            set
            {
                this.stencil_targetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("color_clear")]
        public fx_clearcolor_common[] color_clear
        {
            get
            {
                return this.color_clearField;
            }
            set
            {
                this.color_clearField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("depth_clear")]
        public fx_cleardepth_common[] depth_clear
        {
            get
            {
                return this.depth_clearField;
            }
            set
            {
                this.depth_clearField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("stencil_clear")]
        public fx_clearstencil_common[] stencil_clear
        {
            get
            {
                return this.stencil_clearField;
            }
            set
            {
                this.stencil_clearField = value;
            }
        }

        /// <remarks/>
        public string draw
        {
            get
            {
                return this.drawField;
            }
            set
            {
                this.drawField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("alpha_func", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_func))]
        [System.Xml.Serialization.XmlElementAttribute("alpha_test_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassAlpha_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("auto_normal_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassAuto_normal_enable))]
        [System.Xml.Serialization.XmlElementAttribute("blend_color", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_color))]
        [System.Xml.Serialization.XmlElementAttribute("blend_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_enable))]
        [System.Xml.Serialization.XmlElementAttribute("blend_equation", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation))]
        [System.Xml.Serialization.XmlElementAttribute("blend_equation_separate", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_equation_separate))]
        [System.Xml.Serialization.XmlElementAttribute("blend_func", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func))]
        [System.Xml.Serialization.XmlElementAttribute("blend_func_separate", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassBlend_func_separate))]
        [System.Xml.Serialization.XmlElementAttribute("clear_color", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassClear_color))]
        [System.Xml.Serialization.XmlElementAttribute("clear_depth", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassClear_depth))]
        [System.Xml.Serialization.XmlElementAttribute("clear_stencil", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassClear_stencil))]
        [System.Xml.Serialization.XmlElementAttribute("clip_plane", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassClip_plane))]
        [System.Xml.Serialization.XmlElementAttribute("clip_plane_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassClip_plane_enable))]
        [System.Xml.Serialization.XmlElementAttribute("color_logic_op_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassColor_logic_op_enable))]
        [System.Xml.Serialization.XmlElementAttribute("color_mask", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassColor_mask))]
        [System.Xml.Serialization.XmlElementAttribute("color_material", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassColor_material))]
        [System.Xml.Serialization.XmlElementAttribute("color_material_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassColor_material_enable))]
        [System.Xml.Serialization.XmlElementAttribute("cull_face", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassCull_face))]
        [System.Xml.Serialization.XmlElementAttribute("cull_face_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassCull_face_enable))]
        [System.Xml.Serialization.XmlElementAttribute("depth_bounds", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_bounds))]
        [System.Xml.Serialization.XmlElementAttribute("depth_bounds_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_bounds_enable))]
        [System.Xml.Serialization.XmlElementAttribute("depth_clamp_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_clamp_enable))]
        [System.Xml.Serialization.XmlElementAttribute("depth_func", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_func))]
        [System.Xml.Serialization.XmlElementAttribute("depth_mask", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_mask))]
        [System.Xml.Serialization.XmlElementAttribute("depth_range", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_range))]
        [System.Xml.Serialization.XmlElementAttribute("depth_test_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDepth_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("dither_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassDither_enable))]
        [System.Xml.Serialization.XmlElementAttribute("fog_color", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_color))]
        [System.Xml.Serialization.XmlElementAttribute("fog_coord_src", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_coord_src))]
        [System.Xml.Serialization.XmlElementAttribute("fog_density", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_density))]
        [System.Xml.Serialization.XmlElementAttribute("fog_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_enable))]
        [System.Xml.Serialization.XmlElementAttribute("fog_end", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_end))]
        [System.Xml.Serialization.XmlElementAttribute("fog_mode", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_mode))]
        [System.Xml.Serialization.XmlElementAttribute("fog_start", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFog_start))]
        [System.Xml.Serialization.XmlElementAttribute("front_face", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassFront_face))]
        [System.Xml.Serialization.XmlElementAttribute("gl_hook_abstract", typeof(object))]
        [System.Xml.Serialization.XmlElementAttribute("light_ambient", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_ambient))]
        [System.Xml.Serialization.XmlElementAttribute("light_constant_attenuation", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_constant_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("light_diffuse", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_diffuse))]
        [System.Xml.Serialization.XmlElementAttribute("light_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_enable))]
        [System.Xml.Serialization.XmlElementAttribute("light_linear_attenuation", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_linear_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("light_model_ambient", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_ambient))]
        [System.Xml.Serialization.XmlElementAttribute("light_model_color_control", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_color_control))]
        [System.Xml.Serialization.XmlElementAttribute("light_model_local_viewer_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_local_viewer_enable))]
        [System.Xml.Serialization.XmlElementAttribute("light_model_two_side_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_model_two_side_enable))]
        [System.Xml.Serialization.XmlElementAttribute("light_position", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_position))]
        [System.Xml.Serialization.XmlElementAttribute("light_quadratic_attenuation", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_quadratic_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("light_specular", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_specular))]
        [System.Xml.Serialization.XmlElementAttribute("light_spot_cutoff", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_cutoff))]
        [System.Xml.Serialization.XmlElementAttribute("light_spot_direction", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_direction))]
        [System.Xml.Serialization.XmlElementAttribute("light_spot_exponent", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLight_spot_exponent))]
        [System.Xml.Serialization.XmlElementAttribute("lighting_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLighting_enable))]
        [System.Xml.Serialization.XmlElementAttribute("line_smooth_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLine_smooth_enable))]
        [System.Xml.Serialization.XmlElementAttribute("line_stipple", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLine_stipple))]
        [System.Xml.Serialization.XmlElementAttribute("line_stipple_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLine_stipple_enable))]
        [System.Xml.Serialization.XmlElementAttribute("line_width", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLine_width))]
        [System.Xml.Serialization.XmlElementAttribute("logic_op", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLogic_op))]
        [System.Xml.Serialization.XmlElementAttribute("logic_op_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassLogic_op_enable))]
        [System.Xml.Serialization.XmlElementAttribute("material_ambient", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_ambient))]
        [System.Xml.Serialization.XmlElementAttribute("material_diffuse", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_diffuse))]
        [System.Xml.Serialization.XmlElementAttribute("material_emission", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_emission))]
        [System.Xml.Serialization.XmlElementAttribute("material_shininess", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_shininess))]
        [System.Xml.Serialization.XmlElementAttribute("material_specular", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMaterial_specular))]
        [System.Xml.Serialization.XmlElementAttribute("model_view_matrix", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassModel_view_matrix))]
        [System.Xml.Serialization.XmlElementAttribute("multisample_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassMultisample_enable))]
        [System.Xml.Serialization.XmlElementAttribute("normalize_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassNormalize_enable))]
        [System.Xml.Serialization.XmlElementAttribute("point_distance_attenuation", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_distance_attenuation))]
        [System.Xml.Serialization.XmlElementAttribute("point_fade_threshold_size", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_fade_threshold_size))]
        [System.Xml.Serialization.XmlElementAttribute("point_size", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size))]
        [System.Xml.Serialization.XmlElementAttribute("point_size_max", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size_max))]
        [System.Xml.Serialization.XmlElementAttribute("point_size_min", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_size_min))]
        [System.Xml.Serialization.XmlElementAttribute("point_smooth_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPoint_smooth_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_mode", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_mode))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_offset", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_offset_fill_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_fill_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_offset_line_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_line_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_offset_point_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_offset_point_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_smooth_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_smooth_enable))]
        [System.Xml.Serialization.XmlElementAttribute("polygon_stipple_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassPolygon_stipple_enable))]
        [System.Xml.Serialization.XmlElementAttribute("projection_matrix", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassProjection_matrix))]
        [System.Xml.Serialization.XmlElementAttribute("rescale_normal_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassRescale_normal_enable))]
        [System.Xml.Serialization.XmlElementAttribute("sample_alpha_to_coverage_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassSample_alpha_to_coverage_enable))]
        [System.Xml.Serialization.XmlElementAttribute("sample_alpha_to_one_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassSample_alpha_to_one_enable))]
        [System.Xml.Serialization.XmlElementAttribute("sample_coverage_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassSample_coverage_enable))]
        [System.Xml.Serialization.XmlElementAttribute("scissor", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassScissor))]
        [System.Xml.Serialization.XmlElementAttribute("scissor_test_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassScissor_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("shade_model", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassShade_model))]
        [System.Xml.Serialization.XmlElementAttribute("shader", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassShader))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_func", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_func_separate", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_func_separate))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_mask", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_mask_separate", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_mask_separate))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_op", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_op_separate", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_op_separate))]
        [System.Xml.Serialization.XmlElementAttribute("stencil_test_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassStencil_test_enable))]
        [System.Xml.Serialization.XmlElementAttribute("texture1D", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture1D))]
        [System.Xml.Serialization.XmlElementAttribute("texture1D_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture1D_enable))]
        [System.Xml.Serialization.XmlElementAttribute("texture2D", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture2D))]
        [System.Xml.Serialization.XmlElementAttribute("texture2D_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture2D_enable))]
        [System.Xml.Serialization.XmlElementAttribute("texture3D", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture3D))]
        [System.Xml.Serialization.XmlElementAttribute("texture3D_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture3D_enable))]
        [System.Xml.Serialization.XmlElementAttribute("textureCUBE", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("textureCUBE_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureCUBE_enable))]
        [System.Xml.Serialization.XmlElementAttribute("textureDEPTH", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("textureDEPTH_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureDEPTH_enable))]
        [System.Xml.Serialization.XmlElementAttribute("textureRECT", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureRECT))]
        [System.Xml.Serialization.XmlElementAttribute("textureRECT_enable", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTextureRECT_enable))]
        [System.Xml.Serialization.XmlElementAttribute("texture_env_color", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture_env_color))]
        [System.Xml.Serialization.XmlElementAttribute("texture_env_mode", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassTexture_env_mode))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassShader
    {

        private fx_annotate_common[] annotateField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassShaderCompiler_target compiler_targetField;

        private string compiler_optionsField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassShaderName nameField;

        private effectFx_profile_abstractProfile_GLSLTechniquePassShaderBind[] bindField;

        private glsl_pipeline_stage stageField;

        private bool stageFieldSpecified;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("annotate")]
        public fx_annotate_common[] annotate
        {
            get
            {
                return this.annotateField;
            }
            set
            {
                this.annotateField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassShaderCompiler_target compiler_target
        {
            get
            {
                return this.compiler_targetField;
            }
            set
            {
                this.compiler_targetField = value;
            }
        }

        /// <remarks/>
        public string compiler_options
        {
            get
            {
                return this.compiler_optionsField;
            }
            set
            {
                this.compiler_optionsField = value;
            }
        }

        /// <remarks/>
        public effectFx_profile_abstractProfile_GLSLTechniquePassShaderName name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("bind")]
        public effectFx_profile_abstractProfile_GLSLTechniquePassShaderBind[] bind
        {
            get
            {
                return this.bindField;
            }
            set
            {
                this.bindField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public glsl_pipeline_stage stage
        {
            get
            {
                return this.stageField;
            }
            set
            {
                this.stageField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool stageSpecified
        {
            get
            {
                return this.stageFieldSpecified;
            }
            set
            {
                this.stageFieldSpecified = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassShaderCompiler_target
    {

        private string valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "NMTOKEN")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassShaderName
    {

        private string sourceField;

        private string valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute(DataType = "NCName")]
        public string Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassShaderBind
    {

        private object itemField;

        private ItemChoiceType5 itemElementNameField;

        private string symbolField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("bool", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool2", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool3", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("bool4", typeof(bool))]
        [System.Xml.Serialization.XmlElementAttribute("enum", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("float", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float2x2", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float3x3", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("float4x4", typeof(float))]
        [System.Xml.Serialization.XmlElementAttribute("int", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int2", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int3", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("int4", typeof(int))]
        [System.Xml.Serialization.XmlElementAttribute("param", typeof(effectFx_profile_abstractProfile_GLSLTechniquePassShaderBindParam))]
        [System.Xml.Serialization.XmlElementAttribute("sampler1D", typeof(gl_sampler1D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler2D", typeof(gl_sampler2D))]
        [System.Xml.Serialization.XmlElementAttribute("sampler3D", typeof(gl_sampler3D))]
        [System.Xml.Serialization.XmlElementAttribute("samplerCUBE", typeof(gl_samplerCUBE))]
        [System.Xml.Serialization.XmlElementAttribute("samplerDEPTH", typeof(gl_samplerDEPTH))]
        [System.Xml.Serialization.XmlElementAttribute("samplerRECT", typeof(gl_samplerRECT))]
        [System.Xml.Serialization.XmlElementAttribute("surface", typeof(glsl_surface_type))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemChoiceType5 ItemElementName
        {
            get
            {
                return this.itemElementNameField;
            }
            set
            {
                this.itemElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string symbol
        {
            get
            {
                return this.symbolField;
            }
            set
            {
                this.symbolField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class effectFx_profile_abstractProfile_GLSLTechniquePassShaderBindParam
    {

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemChoiceType5
    {

        /// <remarks/>
        @bool,

        /// <remarks/>
        bool2,

        /// <remarks/>
        bool3,

        /// <remarks/>
        bool4,

        /// <remarks/>
        @enum,

        /// <remarks/>
        @float,

        /// <remarks/>
        float2,

        /// <remarks/>
        float2x2,

        /// <remarks/>
        float3,

        /// <remarks/>
        float3x3,

        /// <remarks/>
        float4,

        /// <remarks/>
        float4x4,

        /// <remarks/>
        @int,

        /// <remarks/>
        int2,

        /// <remarks/>
        int3,

        /// <remarks/>
        int4,

        /// <remarks/>
        param,

        /// <remarks/>
        sampler1D,

        /// <remarks/>
        sampler2D,

        /// <remarks/>
        sampler3D,

        /// <remarks/>
        samplerCUBE,

        /// <remarks/>
        samplerDEPTH,

        /// <remarks/>
        samplerRECT,

        /// <remarks/>
        surface,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum glsl_pipeline_stage
    {

        /// <remarks/>
        VERTEXPROGRAM,

        /// <remarks/>
        FRAGMENTPROGRAM,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_force_fields
    {

        private asset assetField;

        private force_field[] force_fieldField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("force_field")]
        public force_field[] force_field
        {
            get
            {
                return this.force_fieldField;
            }
            set
            {
                this.force_fieldField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class force_field
    {

        private asset assetField;

        private technique[] techniqueField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_geometries
    {

        private asset assetField;

        private geometry[] geometryField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("geometry")]
        public geometry[] geometry
        {
            get
            {
                return this.geometryField;
            }
            set
            {
                this.geometryField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class geometry
    {

        private asset assetField;

        private object itemField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("convex_mesh", typeof(convex_mesh))]
        [System.Xml.Serialization.XmlElementAttribute("mesh", typeof(mesh))]
        [System.Xml.Serialization.XmlElementAttribute("spline", typeof(spline))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class convex_mesh
    {

        private source[] sourceField;

        private vertices verticesField;

        private object[] itemsField;

        private extra[] extraField;

        private string convex_hull_ofField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("source")]
        public source[] source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        public vertices vertices
        {
            get
            {
                return this.verticesField;
            }
            set
            {
                this.verticesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("lines", typeof(lines))]
        [System.Xml.Serialization.XmlElementAttribute("linestrips", typeof(linestrips))]
        [System.Xml.Serialization.XmlElementAttribute("polygons", typeof(polygons))]
        [System.Xml.Serialization.XmlElementAttribute("polylist", typeof(polylist))]
        [System.Xml.Serialization.XmlElementAttribute("triangles", typeof(triangles))]
        [System.Xml.Serialization.XmlElementAttribute("trifans", typeof(trifans))]
        [System.Xml.Serialization.XmlElementAttribute("tristrips", typeof(tristrips))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string convex_hull_of
        {
            get
            {
                return this.convex_hull_ofField;
            }
            set
            {
                this.convex_hull_ofField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class vertices
    {

        private InputLocal[] inputField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocal[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class lines
    {

        private InputLocalOffset[] inputField;

        private string pField;

        private extra[] extraField;

        private string nameField;

        private ulong countField;

        private string materialField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocalOffset[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        public string p
        {
            get
            {
                return this.pField;
            }
            set
            {
                this.pField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string material
        {
            get
            {
                return this.materialField;
            }
            set
            {
                this.materialField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class linestrips
    {

        private InputLocalOffset[] inputField;

        private string[] pField;

        private extra[] extraField;

        private string nameField;

        private ulong countField;

        private string materialField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocalOffset[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("p")]
        public string[] p
        {
            get
            {
                return this.pField;
            }
            set
            {
                this.pField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string material
        {
            get
            {
                return this.materialField;
            }
            set
            {
                this.materialField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class polygons
    {

        private InputLocalOffset[] inputField;

        private object[] itemsField;

        private extra[] extraField;

        private string nameField;

        private ulong countField;

        private string materialField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocalOffset[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("p", typeof(string))]
        [System.Xml.Serialization.XmlElementAttribute("ph", typeof(polygonsPH))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string material
        {
            get
            {
                return this.materialField;
            }
            set
            {
                this.materialField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class polygonsPH
    {

        private string pField;

        private string[] hField;

        /// <remarks/>
        public string p
        {
            get
            {
                return this.pField;
            }
            set
            {
                this.pField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("h")]
        public string[] h
        {
            get
            {
                return this.hField;
            }
            set
            {
                this.hField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class polylist
    {

        private InputLocalOffset[] inputField;

        private string vcountField;

        private string pField;

        private extra[] extraField;

        private string nameField;

        private ulong countField;

        private string materialField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocalOffset[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        public string vcount
        {
            get
            {
                return this.vcountField;
            }
            set
            {
                this.vcountField = value;
            }
        }

        /// <remarks/>
        public string p
        {
            get
            {
                return this.pField;
            }
            set
            {
                this.pField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string material
        {
            get
            {
                return this.materialField;
            }
            set
            {
                this.materialField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class triangles
    {

        private InputLocalOffset[] inputField;

        private string pField;

        private extra[] extraField;

        private string nameField;

        private ulong countField;

        private string materialField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocalOffset[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        public string p
        {
            get
            {
                return this.pField;
            }
            set
            {
                this.pField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string material
        {
            get
            {
                return this.materialField;
            }
            set
            {
                this.materialField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class trifans
    {

        private InputLocalOffset[] inputField;

        private string[] pField;

        private extra[] extraField;

        private string nameField;

        private ulong countField;

        private string materialField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocalOffset[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("p")]
        public string[] p
        {
            get
            {
                return this.pField;
            }
            set
            {
                this.pField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string material
        {
            get
            {
                return this.materialField;
            }
            set
            {
                this.materialField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class tristrips
    {

        private InputLocalOffset[] inputField;

        private string[] pField;

        private extra[] extraField;

        private string nameField;

        private ulong countField;

        private string materialField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocalOffset[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("p")]
        public string[] p
        {
            get
            {
                return this.pField;
            }
            set
            {
                this.pField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public ulong count
        {
            get
            {
                return this.countField;
            }
            set
            {
                this.countField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string material
        {
            get
            {
                return this.materialField;
            }
            set
            {
                this.materialField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class mesh
    {

        private source[] sourceField;

        private vertices verticesField;

        private object[] itemsField;

        private extra[] extraField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("source")]
        public source[] source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        public vertices vertices
        {
            get
            {
                return this.verticesField;
            }
            set
            {
                this.verticesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("lines", typeof(lines))]
        [System.Xml.Serialization.XmlElementAttribute("linestrips", typeof(linestrips))]
        [System.Xml.Serialization.XmlElementAttribute("polygons", typeof(polygons))]
        [System.Xml.Serialization.XmlElementAttribute("polylist", typeof(polylist))]
        [System.Xml.Serialization.XmlElementAttribute("triangles", typeof(triangles))]
        [System.Xml.Serialization.XmlElementAttribute("trifans", typeof(trifans))]
        [System.Xml.Serialization.XmlElementAttribute("tristrips", typeof(tristrips))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class spline
    {

        private source[] sourceField;

        private splineControl_vertices control_verticesField;

        private extra[] extraField;

        private bool closedField;

        public spline()
        {
            this.closedField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("source")]
        public source[] source
        {
            get
            {
                return this.sourceField;
            }
            set
            {
                this.sourceField = value;
            }
        }

        /// <remarks/>
        public splineControl_vertices control_vertices
        {
            get
            {
                return this.control_verticesField;
            }
            set
            {
                this.control_verticesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool closed
        {
            get
            {
                return this.closedField;
            }
            set
            {
                this.closedField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class splineControl_vertices
    {

        private InputLocal[] inputField;

        private extra[] extraField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("input")]
        public InputLocal[] input
        {
            get
            {
                return this.inputField;
            }
            set
            {
                this.inputField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_images
    {

        private asset assetField;

        private image[] imageField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("image")]
        public image[] image
        {
            get
            {
                return this.imageField;
            }
            set
            {
                this.imageField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_lights
    {

        private asset assetField;

        private light[] lightField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("light")]
        public light[] light
        {
            get
            {
                return this.lightField;
            }
            set
            {
                this.lightField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class light
    {

        private asset assetField;

        private lightTechnique_common technique_commonField;

        private technique[] techniqueField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        public lightTechnique_common technique_common
        {
            get
            {
                return this.technique_commonField;
            }
            set
            {
                this.technique_commonField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class lightTechnique_common
    {

        private object itemField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ambient", typeof(lightTechnique_commonAmbient))]
        [System.Xml.Serialization.XmlElementAttribute("directional", typeof(lightTechnique_commonDirectional))]
        [System.Xml.Serialization.XmlElementAttribute("point", typeof(lightTechnique_commonPoint))]
        [System.Xml.Serialization.XmlElementAttribute("spot", typeof(lightTechnique_commonSpot))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class lightTechnique_commonAmbient
    {

        private TargetableFloat3 colorField;

        /// <remarks/>
        public TargetableFloat3 color
        {
            get
            {
                return this.colorField;
            }
            set
            {
                this.colorField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute("scale", Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class TargetableFloat3
    {

        private string sidField;

        private double[] textField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertDoubleArray(value); }
        }
        /// <remarks/>
        [XmlIgnore]
        public double[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class lightTechnique_commonDirectional
    {

        private TargetableFloat3 colorField;

        /// <remarks/>
        public TargetableFloat3 color
        {
            get
            {
                return this.colorField;
            }
            set
            {
                this.colorField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class lightTechnique_commonPoint
    {

        private TargetableFloat3 colorField;

        private TargetableFloat constant_attenuationField;

        private TargetableFloat linear_attenuationField;

        private TargetableFloat quadratic_attenuationField;

        /// <remarks/>
        public TargetableFloat3 color
        {
            get
            {
                return this.colorField;
            }
            set
            {
                this.colorField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='1.0' attribute.
        public TargetableFloat constant_attenuation
        {
            get
            {
                return this.constant_attenuationField;
            }
            set
            {
                this.constant_attenuationField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0' attribute.
        public TargetableFloat linear_attenuation
        {
            get
            {
                return this.linear_attenuationField;
            }
            set
            {
                this.linear_attenuationField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0' attribute.
        public TargetableFloat quadratic_attenuation
        {
            get
            {
                return this.quadratic_attenuationField;
            }
            set
            {
                this.quadratic_attenuationField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class lightTechnique_commonSpot
    {

        private TargetableFloat3 colorField;

        private TargetableFloat constant_attenuationField;

        private TargetableFloat linear_attenuationField;

        private TargetableFloat quadratic_attenuationField;

        private TargetableFloat falloff_angleField;

        private TargetableFloat falloff_exponentField;

        /// <remarks/>
        public TargetableFloat3 color
        {
            get
            {
                return this.colorField;
            }
            set
            {
                this.colorField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='1.0' attribute.
        public TargetableFloat constant_attenuation
        {
            get
            {
                return this.constant_attenuationField;
            }
            set
            {
                this.constant_attenuationField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0' attribute.
        public TargetableFloat linear_attenuation
        {
            get
            {
                return this.linear_attenuationField;
            }
            set
            {
                this.linear_attenuationField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0' attribute.
        public TargetableFloat quadratic_attenuation
        {
            get
            {
                return this.quadratic_attenuationField;
            }
            set
            {
                this.quadratic_attenuationField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='180.0' attribute.
        public TargetableFloat falloff_angle
        {
            get
            {
                return this.falloff_angleField;
            }
            set
            {
                this.falloff_angleField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0' attribute.
        public TargetableFloat falloff_exponent
        {
            get
            {
                return this.falloff_exponentField;
            }
            set
            {
                this.falloff_exponentField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_materials
    {

        private asset assetField;

        private material[] materialField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("material")]
        public material[] material
        {
            get
            {
                return this.materialField;
            }
            set
            {
                this.materialField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class material
    {

        private asset assetField;

        private instance_effect instance_effectField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        public instance_effect instance_effect
        {
            get
            {
                return this.instance_effectField;
            }
            set
            {
                this.instance_effectField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class instance_effect
    {

        private instance_effectTechnique_hint[] technique_hintField;

        private instance_effectSetparam[] setparamField;

        private extra[] extraField;

        private string urlField;

        private string sidField;

        private string nameField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique_hint")]
        public instance_effectTechnique_hint[] technique_hint
        {
            get
            {
                return this.technique_hintField;
            }
            set
            {
                this.technique_hintField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("setparam")]
        public instance_effectSetparam[] setparam
        {
            get
            {
                return this.setparamField;
            }
            set
            {
                this.setparamField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string url
        {
            get
            {
                return this.urlField;
            }
            set
            {
                this.urlField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class instance_effectTechnique_hint
    {

        private string platformField;

        private string profileField;

        private string refField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string platform
        {
            get
            {
                return this.platformField;
            }
            set
            {
                this.platformField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string profile
        {
            get
            {
                return this.profileField;
            }
            set
            {
                this.profileField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class instance_effectSetparam
    {

        private bool boolField;

        private string bool2Field;

        private string bool3Field;

        private string bool4Field;

        private long intField;

        private string int2Field;

        private string int3Field;

        private string int4Field;

        private double floatField;

        private string float2Field;

        private string float3Field;

        private string float4Field;

        private double float1x1Field;

        private string float1x2Field;

        private string float1x3Field;

        private string float1x4Field;

        private string float2x1Field;

        private string float2x2Field;

        private string float2x3Field;

        private string float2x4Field;

        private string float3x1Field;

        private string float3x2Field;

        private string float3x3Field;

        private string float3x4Field;

        private string float4x1Field;

        private string float4x2Field;

        private string float4x3Field;

        private string float4x4Field;

        private fx_surface_common surfaceField;

        private fx_sampler1D_common sampler1DField;

        private fx_sampler2D_common sampler2DField;

        private fx_sampler3D_common sampler3DField;

        private fx_samplerCUBE_common samplerCUBEField;

        private fx_samplerRECT_common samplerRECTField;

        private fx_samplerDEPTH_common samplerDEPTHField;

        private string enumField;

        private string refField;

        /// <remarks/>
        public bool @bool
        {
            get
            {
                return this.boolField;
            }
            set
            {
                this.boolField = value;
            }
        }

        /// <remarks/>
        public string bool2
        {
            get
            {
                return this.bool2Field;
            }
            set
            {
                this.bool2Field = value;
            }
        }

        /// <remarks/>
        public string bool3
        {
            get
            {
                return this.bool3Field;
            }
            set
            {
                this.bool3Field = value;
            }
        }

        /// <remarks/>
        public string bool4
        {
            get
            {
                return this.bool4Field;
            }
            set
            {
                this.bool4Field = value;
            }
        }

        /// <remarks/>
        public long @int
        {
            get
            {
                return this.intField;
            }
            set
            {
                this.intField = value;
            }
        }

        /// <remarks/>
        public string int2
        {
            get
            {
                return this.int2Field;
            }
            set
            {
                this.int2Field = value;
            }
        }

        /// <remarks/>
        public string int3
        {
            get
            {
                return this.int3Field;
            }
            set
            {
                this.int3Field = value;
            }
        }

        /// <remarks/>
        public string int4
        {
            get
            {
                return this.int4Field;
            }
            set
            {
                this.int4Field = value;
            }
        }

        /// <remarks/>
        public double @float
        {
            get
            {
                return this.floatField;
            }
            set
            {
                this.floatField = value;
            }
        }

        /// <remarks/>
        public string float2
        {
            get
            {
                return this.float2Field;
            }
            set
            {
                this.float2Field = value;
            }
        }

        /// <remarks/>
        public string float3
        {
            get
            {
                return this.float3Field;
            }
            set
            {
                this.float3Field = value;
            }
        }

        /// <remarks/>
        public string float4
        {
            get
            {
                return this.float4Field;
            }
            set
            {
                this.float4Field = value;
            }
        }

        /// <remarks/>
        public double float1x1
        {
            get
            {
                return this.float1x1Field;
            }
            set
            {
                this.float1x1Field = value;
            }
        }

        /// <remarks/>
        public string float1x2
        {
            get
            {
                return this.float1x2Field;
            }
            set
            {
                this.float1x2Field = value;
            }
        }

        /// <remarks/>
        public string float1x3
        {
            get
            {
                return this.float1x3Field;
            }
            set
            {
                this.float1x3Field = value;
            }
        }

        /// <remarks/>
        public string float1x4
        {
            get
            {
                return this.float1x4Field;
            }
            set
            {
                this.float1x4Field = value;
            }
        }

        /// <remarks/>
        public string float2x1
        {
            get
            {
                return this.float2x1Field;
            }
            set
            {
                this.float2x1Field = value;
            }
        }

        /// <remarks/>
        public string float2x2
        {
            get
            {
                return this.float2x2Field;
            }
            set
            {
                this.float2x2Field = value;
            }
        }

        /// <remarks/>
        public string float2x3
        {
            get
            {
                return this.float2x3Field;
            }
            set
            {
                this.float2x3Field = value;
            }
        }

        /// <remarks/>
        public string float2x4
        {
            get
            {
                return this.float2x4Field;
            }
            set
            {
                this.float2x4Field = value;
            }
        }

        /// <remarks/>
        public string float3x1
        {
            get
            {
                return this.float3x1Field;
            }
            set
            {
                this.float3x1Field = value;
            }
        }

        /// <remarks/>
        public string float3x2
        {
            get
            {
                return this.float3x2Field;
            }
            set
            {
                this.float3x2Field = value;
            }
        }

        /// <remarks/>
        public string float3x3
        {
            get
            {
                return this.float3x3Field;
            }
            set
            {
                this.float3x3Field = value;
            }
        }

        /// <remarks/>
        public string float3x4
        {
            get
            {
                return this.float3x4Field;
            }
            set
            {
                this.float3x4Field = value;
            }
        }

        /// <remarks/>
        public string float4x1
        {
            get
            {
                return this.float4x1Field;
            }
            set
            {
                this.float4x1Field = value;
            }
        }

        /// <remarks/>
        public string float4x2
        {
            get
            {
                return this.float4x2Field;
            }
            set
            {
                this.float4x2Field = value;
            }
        }

        /// <remarks/>
        public string float4x3
        {
            get
            {
                return this.float4x3Field;
            }
            set
            {
                this.float4x3Field = value;
            }
        }

        /// <remarks/>
        public string float4x4
        {
            get
            {
                return this.float4x4Field;
            }
            set
            {
                this.float4x4Field = value;
            }
        }

        /// <remarks/>
        public fx_surface_common surface
        {
            get
            {
                return this.surfaceField;
            }
            set
            {
                this.surfaceField = value;
            }
        }

        /// <remarks/>
        public fx_sampler1D_common sampler1D
        {
            get
            {
                return this.sampler1DField;
            }
            set
            {
                this.sampler1DField = value;
            }
        }

        /// <remarks/>
        public fx_sampler2D_common sampler2D
        {
            get
            {
                return this.sampler2DField;
            }
            set
            {
                this.sampler2DField = value;
            }
        }

        /// <remarks/>
        public fx_sampler3D_common sampler3D
        {
            get
            {
                return this.sampler3DField;
            }
            set
            {
                this.sampler3DField = value;
            }
        }

        /// <remarks/>
        public fx_samplerCUBE_common samplerCUBE
        {
            get
            {
                return this.samplerCUBEField;
            }
            set
            {
                this.samplerCUBEField = value;
            }
        }

        /// <remarks/>
        public fx_samplerRECT_common samplerRECT
        {
            get
            {
                return this.samplerRECTField;
            }
            set
            {
                this.samplerRECTField = value;
            }
        }

        /// <remarks/>
        public fx_samplerDEPTH_common samplerDEPTH
        {
            get
            {
                return this.samplerDEPTHField;
            }
            set
            {
                this.samplerDEPTHField = value;
            }
        }

        /// <remarks/>
        public string @enum
        {
            get
            {
                return this.enumField;
            }
            set
            {
                this.enumField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "token")]
        public string @ref
        {
            get
            {
                return this.refField;
            }
            set
            {
                this.refField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_nodes
    {

        private asset assetField;

        private node[] nodeField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("node")]
        public node[] node
        {
            get
            {
                return this.nodeField;
            }
            set
            {
                this.nodeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class node
    {

        private asset assetField;

        private object[] itemsField;

        private ItemsChoiceType7[] itemsElementNameField;

        private InstanceWithExtra[] instance_cameraField;

        private instance_controller[] instance_controllerField;

        private instance_geometry[] instance_geometryField;

        private InstanceWithExtra[] instance_lightField;

        private InstanceWithExtra[] instance_nodeField;

        private node[] node1Field;

        private extra[] extraField;

        private string idField;

        private string nameField;

        private string sidField;

        private NodeType typeField;

        private string[] layerField;

        public node()
        {
            this.typeField = NodeType.NODE;
        }

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("lookat", typeof(lookat))]
        [System.Xml.Serialization.XmlElementAttribute("matrix", typeof(matrix))]
        [System.Xml.Serialization.XmlElementAttribute("rotate", typeof(rotate))]
        [System.Xml.Serialization.XmlElementAttribute("scale", typeof(TargetableFloat3))]
        [System.Xml.Serialization.XmlElementAttribute("skew", typeof(skew))]
        [System.Xml.Serialization.XmlElementAttribute("translate", typeof(TargetableFloat3))]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemsElementName")]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ItemsElementName")]
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemsChoiceType7[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_camera")]
        public InstanceWithExtra[] instance_camera
        {
            get
            {
                return this.instance_cameraField;
            }
            set
            {
                this.instance_cameraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_controller")]
        public instance_controller[] instance_controller
        {
            get
            {
                return this.instance_controllerField;
            }
            set
            {
                this.instance_controllerField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_geometry")]
        public instance_geometry[] instance_geometry
        {
            get
            {
                return this.instance_geometryField;
            }
            set
            {
                this.instance_geometryField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_light")]
        public InstanceWithExtra[] instance_light
        {
            get
            {
                return this.instance_lightField;
            }
            set
            {
                this.instance_lightField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_node")]
        public InstanceWithExtra[] instance_node
        {
            get
            {
                return this.instance_nodeField;
            }
            set
            {
                this.instance_nodeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("node")]
        public node[] node1
        {
            get
            {
                return this.node1Field;
            }
            set
            {
                this.node1Field = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(NodeType.NODE)]
        public NodeType type
        {
            get
            {
                return this.typeField;
            }
            set
            {
                this.typeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "Name")]
        public string[] layer
        {
            get
            {
                return this.layerField;
            }
            set
            {
                this.layerField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class lookat
    {

        private string sidField;

        private double[] textField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertDoubleArray(value); }
        }
        /// <remarks/>
        [XmlIgnore]
        public double[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class matrix
    {

        private string sidField;

        private double[] textField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertDoubleArray(value); }
        }
        /// <remarks/>
        [XmlIgnore]
        public double[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class rotate
    {

        private string sidField;

        private double[] textField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertDoubleArray(value); }
        }
        /// <remarks/>
        [XmlIgnore]
        public double[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class skew
    {

        private string sidField;

        private double[] textField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        [XmlText]
        public string _Text_
        {
            get { return COLLADA.ConvertFromArray(textField); }
            set { textField = COLLADA.ConvertDoubleArray(value); }
        }
        /// <remarks/>
        [XmlIgnore]
        public double[] Values
        {
            get
            {
                return this.textField;
            }
            set
            {
                this.textField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IncludeInSchema = false)]
    public enum ItemsChoiceType7
    {

        /// <remarks/>
        lookat,

        /// <remarks/>
        matrix,

        /// <remarks/>
        rotate,

        /// <remarks/>
        scale,

        /// <remarks/>
        skew,

        /// <remarks/>
        translate,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class instance_controller
    {

        private string[] skeletonField;

        private bind_material bind_materialField;

        private extra[] extraField;

        private string urlField;

        private string sidField;

        private string nameField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("skeleton", DataType = "anyURI")]
        public string[] skeleton
        {
            get
            {
                return this.skeletonField;
            }
            set
            {
                this.skeletonField = value;
            }
        }

        /// <remarks/>
        public bind_material bind_material
        {
            get
            {
                return this.bind_materialField;
            }
            set
            {
                this.bind_materialField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string url
        {
            get
            {
                return this.urlField;
            }
            set
            {
                this.urlField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class bind_material
    {

        private param[] paramField;

        private instance_material[] technique_commonField;

        private technique[] techniqueField;

        private extra[] extraField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("param")]
        public param[] param
        {
            get
            {
                return this.paramField;
            }
            set
            {
                this.paramField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("instance_material", IsNullable = false)]
        public instance_material[] technique_common
        {
            get
            {
                return this.technique_commonField;
            }
            set
            {
                this.technique_commonField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class instance_geometry
    {

        private bind_material bind_materialField;

        private extra[] extraField;

        private string urlField;

        private string sidField;

        private string nameField;

        /// <remarks/>
        public bind_material bind_material
        {
            get
            {
                return this.bind_materialField;
            }
            set
            {
                this.bind_materialField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string url
        {
            get
            {
                return this.urlField;
            }
            set
            {
                this.urlField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum NodeType
    {

        /// <remarks/>
        JOINT,

        /// <remarks/>
        NODE,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_physics_materials
    {

        private asset assetField;

        private physics_material[] physics_materialField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("physics_material")]
        public physics_material[] physics_material
        {
            get
            {
                return this.physics_materialField;
            }
            set
            {
                this.physics_materialField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class physics_material
    {

        private asset assetField;

        private physics_materialTechnique_common technique_commonField;

        private technique[] techniqueField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        public physics_materialTechnique_common technique_common
        {
            get
            {
                return this.technique_commonField;
            }
            set
            {
                this.technique_commonField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class physics_materialTechnique_common
    {

        private TargetableFloat dynamic_frictionField;

        private TargetableFloat restitutionField;

        private TargetableFloat static_frictionField;

        /// <remarks/>
        public TargetableFloat dynamic_friction
        {
            get
            {
                return this.dynamic_frictionField;
            }
            set
            {
                this.dynamic_frictionField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat restitution
        {
            get
            {
                return this.restitutionField;
            }
            set
            {
                this.restitutionField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat static_friction
        {
            get
            {
                return this.static_frictionField;
            }
            set
            {
                this.static_frictionField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_physics_models
    {

        private asset assetField;

        private physics_model[] physics_modelField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("physics_model")]
        public physics_model[] physics_model
        {
            get
            {
                return this.physics_modelField;
            }
            set
            {
                this.physics_modelField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class physics_model
    {

        private asset assetField;

        private rigid_body[] rigid_bodyField;

        private rigid_constraint[] rigid_constraintField;

        private instance_physics_model[] instance_physics_modelField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("rigid_body")]
        public rigid_body[] rigid_body
        {
            get
            {
                return this.rigid_bodyField;
            }
            set
            {
                this.rigid_bodyField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("rigid_constraint")]
        public rigid_constraint[] rigid_constraint
        {
            get
            {
                return this.rigid_constraintField;
            }
            set
            {
                this.rigid_constraintField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_physics_model")]
        public instance_physics_model[] instance_physics_model
        {
            get
            {
                return this.instance_physics_modelField;
            }
            set
            {
                this.instance_physics_modelField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class rigid_body
    {

        private rigid_bodyTechnique_common technique_commonField;

        private technique[] techniqueField;

        private extra[] extraField;

        private string sidField;

        private string nameField;

        /// <remarks/>
        public rigid_bodyTechnique_common technique_common
        {
            get
            {
                return this.technique_commonField;
            }
            set
            {
                this.technique_commonField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_bodyTechnique_common
    {

        private rigid_bodyTechnique_commonDynamic dynamicField;

        private TargetableFloat massField;

        private object[] mass_frameField;

        private TargetableFloat3 inertiaField;

        private object itemField;

        private rigid_bodyTechnique_commonShape[] shapeField;

        /// <remarks/>
        public rigid_bodyTechnique_commonDynamic dynamic
        {
            get
            {
                return this.dynamicField;
            }
            set
            {
                this.dynamicField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat mass
        {
            get
            {
                return this.massField;
            }
            set
            {
                this.massField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("rotate", typeof(rotate), IsNullable = false)]
        [System.Xml.Serialization.XmlArrayItemAttribute("translate", typeof(TargetableFloat3), IsNullable = false)]
        public object[] mass_frame
        {
            get
            {
                return this.mass_frameField;
            }
            set
            {
                this.mass_frameField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat3 inertia
        {
            get
            {
                return this.inertiaField;
            }
            set
            {
                this.inertiaField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_physics_material", typeof(InstanceWithExtra))]
        [System.Xml.Serialization.XmlElementAttribute("physics_material", typeof(physics_material))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("shape")]
        public rigid_bodyTechnique_commonShape[] shape
        {
            get
            {
                return this.shapeField;
            }
            set
            {
                this.shapeField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_bodyTechnique_commonDynamic
    {

        private string sidField;

        private bool valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public bool Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_bodyTechnique_commonShape
    {

        private rigid_bodyTechnique_commonShapeHollow hollowField;

        private TargetableFloat massField;

        private TargetableFloat densityField;

        private object itemField;

        private object item1Field;

        private object[] itemsField;

        private extra[] extraField;

        /// <remarks/>
        public rigid_bodyTechnique_commonShapeHollow hollow
        {
            get
            {
                return this.hollowField;
            }
            set
            {
                this.hollowField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat mass
        {
            get
            {
                return this.massField;
            }
            set
            {
                this.massField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat density
        {
            get
            {
                return this.densityField;
            }
            set
            {
                this.densityField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_physics_material", typeof(InstanceWithExtra))]
        [System.Xml.Serialization.XmlElementAttribute("physics_material", typeof(physics_material))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("box", typeof(box))]
        [System.Xml.Serialization.XmlElementAttribute("capsule", typeof(capsule))]
        [System.Xml.Serialization.XmlElementAttribute("cylinder", typeof(cylinder))]
        [System.Xml.Serialization.XmlElementAttribute("instance_geometry", typeof(instance_geometry))]
        [System.Xml.Serialization.XmlElementAttribute("plane", typeof(plane))]
        [System.Xml.Serialization.XmlElementAttribute("sphere", typeof(sphere))]
        [System.Xml.Serialization.XmlElementAttribute("tapered_capsule", typeof(tapered_capsule))]
        [System.Xml.Serialization.XmlElementAttribute("tapered_cylinder", typeof(tapered_cylinder))]
        public object Item1
        {
            get
            {
                return this.item1Field;
            }
            set
            {
                this.item1Field = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("rotate", typeof(rotate))]
        [System.Xml.Serialization.XmlElementAttribute("translate", typeof(TargetableFloat3))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_bodyTechnique_commonShapeHollow
    {

        private string sidField;

        private bool valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public bool Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class box
    {

        private string half_extentsField;

        private extra[] extraField;

        /// <remarks/>
        public string half_extents
        {
            get
            {
                return this.half_extentsField;
            }
            set
            {
                this.half_extentsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class capsule
    {

        private double heightField;

        private string radiusField;

        private extra[] extraField;

        /// <remarks/>
        public double height
        {
            get
            {
                return this.heightField;
            }
            set
            {
                this.heightField = value;
            }
        }

        /// <remarks/>
        public string radius
        {
            get
            {
                return this.radiusField;
            }
            set
            {
                this.radiusField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class cylinder
    {

        private double heightField;

        private string radiusField;

        private extra[] extraField;

        /// <remarks/>
        public double height
        {
            get
            {
                return this.heightField;
            }
            set
            {
                this.heightField = value;
            }
        }

        /// <remarks/>
        public string radius
        {
            get
            {
                return this.radiusField;
            }
            set
            {
                this.radiusField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class plane
    {

        private string equationField;

        private extra[] extraField;

        /// <remarks/>
        public string equation
        {
            get
            {
                return this.equationField;
            }
            set
            {
                this.equationField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class sphere
    {

        private double radiusField;

        private extra[] extraField;

        /// <remarks/>
        public double radius
        {
            get
            {
                return this.radiusField;
            }
            set
            {
                this.radiusField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class tapered_capsule
    {

        private double heightField;

        private string radius1Field;

        private string radius2Field;

        private extra[] extraField;

        /// <remarks/>
        public double height
        {
            get
            {
                return this.heightField;
            }
            set
            {
                this.heightField = value;
            }
        }

        /// <remarks/>
        public string radius1
        {
            get
            {
                return this.radius1Field;
            }
            set
            {
                this.radius1Field = value;
            }
        }

        /// <remarks/>
        public string radius2
        {
            get
            {
                return this.radius2Field;
            }
            set
            {
                this.radius2Field = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class tapered_cylinder
    {

        private double heightField;

        private string radius1Field;

        private string radius2Field;

        private extra[] extraField;

        /// <remarks/>
        public double height
        {
            get
            {
                return this.heightField;
            }
            set
            {
                this.heightField = value;
            }
        }

        /// <remarks/>
        public string radius1
        {
            get
            {
                return this.radius1Field;
            }
            set
            {
                this.radius1Field = value;
            }
        }

        /// <remarks/>
        public string radius2
        {
            get
            {
                return this.radius2Field;
            }
            set
            {
                this.radius2Field = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class rigid_constraint
    {

        private rigid_constraintRef_attachment ref_attachmentField;

        private rigid_constraintAttachment attachmentField;

        private rigid_constraintTechnique_common technique_commonField;

        private technique[] techniqueField;

        private extra[] extraField;

        private string sidField;

        private string nameField;

        /// <remarks/>
        public rigid_constraintRef_attachment ref_attachment
        {
            get
            {
                return this.ref_attachmentField;
            }
            set
            {
                this.ref_attachmentField = value;
            }
        }

        /// <remarks/>
        public rigid_constraintAttachment attachment
        {
            get
            {
                return this.attachmentField;
            }
            set
            {
                this.attachmentField = value;
            }
        }

        /// <remarks/>
        public rigid_constraintTechnique_common technique_common
        {
            get
            {
                return this.technique_commonField;
            }
            set
            {
                this.technique_commonField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintRef_attachment
    {

        private object[] itemsField;

        private string rigid_bodyField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra", typeof(extra))]
        [System.Xml.Serialization.XmlElementAttribute("rotate", typeof(rotate))]
        [System.Xml.Serialization.XmlElementAttribute("translate", typeof(TargetableFloat3))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string rigid_body
        {
            get
            {
                return this.rigid_bodyField;
            }
            set
            {
                this.rigid_bodyField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintAttachment
    {

        private object[] itemsField;

        private string rigid_bodyField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra", typeof(extra))]
        [System.Xml.Serialization.XmlElementAttribute("rotate", typeof(rotate))]
        [System.Xml.Serialization.XmlElementAttribute("translate", typeof(TargetableFloat3))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string rigid_body
        {
            get
            {
                return this.rigid_bodyField;
            }
            set
            {
                this.rigid_bodyField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintTechnique_common
    {

        private rigid_constraintTechnique_commonEnabled enabledField;

        private rigid_constraintTechnique_commonInterpenetrate interpenetrateField;

        private rigid_constraintTechnique_commonLimits limitsField;

        private rigid_constraintTechnique_commonSpring springField;

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type rigid_constraintTechnique_commonEnabled is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='true' attribute.
        public rigid_constraintTechnique_commonEnabled enabled
        {
            get
            {
                return this.enabledField;
            }
            set
            {
                this.enabledField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type rigid_constraintTechnique_commonInterpenetrate is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='false' attribute.
        public rigid_constraintTechnique_commonInterpenetrate interpenetrate
        {
            get
            {
                return this.interpenetrateField;
            }
            set
            {
                this.interpenetrateField = value;
            }
        }

        /// <remarks/>
        public rigid_constraintTechnique_commonLimits limits
        {
            get
            {
                return this.limitsField;
            }
            set
            {
                this.limitsField = value;
            }
        }

        /// <remarks/>
        public rigid_constraintTechnique_commonSpring spring
        {
            get
            {
                return this.springField;
            }
            set
            {
                this.springField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintTechnique_commonEnabled
    {

        private string sidField;

        private bool valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public bool Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintTechnique_commonInterpenetrate
    {

        private string sidField;

        private bool valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public bool Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintTechnique_commonLimits
    {

        private rigid_constraintTechnique_commonLimitsSwing_cone_and_twist swing_cone_and_twistField;

        private rigid_constraintTechnique_commonLimitsLinear linearField;

        /// <remarks/>
        public rigid_constraintTechnique_commonLimitsSwing_cone_and_twist swing_cone_and_twist
        {
            get
            {
                return this.swing_cone_and_twistField;
            }
            set
            {
                this.swing_cone_and_twistField = value;
            }
        }

        /// <remarks/>
        public rigid_constraintTechnique_commonLimitsLinear linear
        {
            get
            {
                return this.linearField;
            }
            set
            {
                this.linearField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintTechnique_commonLimitsSwing_cone_and_twist
    {

        private TargetableFloat3 minField;

        private TargetableFloat3 maxField;

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat3 is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0 0.0 0.0' attribute.
        public TargetableFloat3 min
        {
            get
            {
                return this.minField;
            }
            set
            {
                this.minField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat3 is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0 0.0 0.0' attribute.
        public TargetableFloat3 max
        {
            get
            {
                return this.maxField;
            }
            set
            {
                this.maxField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintTechnique_commonLimitsLinear
    {

        private TargetableFloat3 minField;

        private TargetableFloat3 maxField;

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat3 is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0 0.0 0.0' attribute.
        public TargetableFloat3 min
        {
            get
            {
                return this.minField;
            }
            set
            {
                this.minField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat3 is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0 0.0 0.0' attribute.
        public TargetableFloat3 max
        {
            get
            {
                return this.maxField;
            }
            set
            {
                this.maxField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintTechnique_commonSpring
    {

        private rigid_constraintTechnique_commonSpringAngular angularField;

        private rigid_constraintTechnique_commonSpringLinear linearField;

        /// <remarks/>
        public rigid_constraintTechnique_commonSpringAngular angular
        {
            get
            {
                return this.angularField;
            }
            set
            {
                this.angularField = value;
            }
        }

        /// <remarks/>
        public rigid_constraintTechnique_commonSpringLinear linear
        {
            get
            {
                return this.linearField;
            }
            set
            {
                this.linearField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintTechnique_commonSpringAngular
    {

        private TargetableFloat stiffnessField;

        private TargetableFloat dampingField;

        private TargetableFloat target_valueField;

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='1.0' attribute.
        public TargetableFloat stiffness
        {
            get
            {
                return this.stiffnessField;
            }
            set
            {
                this.stiffnessField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0' attribute.
        public TargetableFloat damping
        {
            get
            {
                return this.dampingField;
            }
            set
            {
                this.dampingField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0' attribute.
        public TargetableFloat target_value
        {
            get
            {
                return this.target_valueField;
            }
            set
            {
                this.target_valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class rigid_constraintTechnique_commonSpringLinear
    {

        private TargetableFloat stiffnessField;

        private TargetableFloat dampingField;

        private TargetableFloat target_valueField;

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='1.0' attribute.
        public TargetableFloat stiffness
        {
            get
            {
                return this.stiffnessField;
            }
            set
            {
                this.stiffnessField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0' attribute.
        public TargetableFloat damping
        {
            get
            {
                return this.dampingField;
            }
            set
            {
                this.dampingField = value;
            }
        }

        /// <remarks/>
        // CODEGEN Warning: DefaultValue attribute on members of type TargetableFloat is not supported in this version of the .Net Framework.
        // CODEGEN Warning: 'default' attribute supported only for primitive types.  Ignoring default='0.0' attribute.
        public TargetableFloat target_value
        {
            get
            {
                return this.target_valueField;
            }
            set
            {
                this.target_valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class instance_physics_model
    {

        private InstanceWithExtra[] instance_force_fieldField;

        private instance_rigid_body[] instance_rigid_bodyField;

        private instance_rigid_constraint[] instance_rigid_constraintField;

        private extra[] extraField;

        private string urlField;

        private string sidField;

        private string nameField;

        private string parentField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_force_field")]
        public InstanceWithExtra[] instance_force_field
        {
            get
            {
                return this.instance_force_fieldField;
            }
            set
            {
                this.instance_force_fieldField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_rigid_body")]
        public instance_rigid_body[] instance_rigid_body
        {
            get
            {
                return this.instance_rigid_bodyField;
            }
            set
            {
                this.instance_rigid_bodyField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_rigid_constraint")]
        public instance_rigid_constraint[] instance_rigid_constraint
        {
            get
            {
                return this.instance_rigid_constraintField;
            }
            set
            {
                this.instance_rigid_constraintField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string url
        {
            get
            {
                return this.urlField;
            }
            set
            {
                this.urlField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string parent
        {
            get
            {
                return this.parentField;
            }
            set
            {
                this.parentField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class instance_rigid_body
    {

        private instance_rigid_bodyTechnique_common technique_commonField;

        private technique[] techniqueField;

        private extra[] extraField;

        private string bodyField;

        private string sidField;

        private string nameField;

        private string targetField;

        /// <remarks/>
        public instance_rigid_bodyTechnique_common technique_common
        {
            get
            {
                return this.technique_commonField;
            }
            set
            {
                this.technique_commonField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string body
        {
            get
            {
                return this.bodyField;
            }
            set
            {
                this.bodyField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string target
        {
            get
            {
                return this.targetField;
            }
            set
            {
                this.targetField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class instance_rigid_bodyTechnique_common
    {

        private string angular_velocityField;

        private string velocityField;

        private instance_rigid_bodyTechnique_commonDynamic dynamicField;

        private TargetableFloat massField;

        private object[] mass_frameField;

        private TargetableFloat3 inertiaField;

        private object itemField;

        private instance_rigid_bodyTechnique_commonShape[] shapeField;

        public instance_rigid_bodyTechnique_common()
        {
            this.angular_velocityField = "0.0 0.0 0.0";
            this.velocityField = "0.0 0.0 0.0";
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute("0.0 0.0 0.0")]
        public string angular_velocity
        {
            get
            {
                return this.angular_velocityField;
            }
            set
            {
                this.angular_velocityField = value;
            }
        }

        /// <remarks/>
        [System.ComponentModel.DefaultValueAttribute("0.0 0.0 0.0")]
        public string velocity
        {
            get
            {
                return this.velocityField;
            }
            set
            {
                this.velocityField = value;
            }
        }

        /// <remarks/>
        public instance_rigid_bodyTechnique_commonDynamic dynamic
        {
            get
            {
                return this.dynamicField;
            }
            set
            {
                this.dynamicField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat mass
        {
            get
            {
                return this.massField;
            }
            set
            {
                this.massField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("rotate", typeof(rotate), IsNullable = false)]
        [System.Xml.Serialization.XmlArrayItemAttribute("translate", typeof(TargetableFloat3), IsNullable = false)]
        public object[] mass_frame
        {
            get
            {
                return this.mass_frameField;
            }
            set
            {
                this.mass_frameField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat3 inertia
        {
            get
            {
                return this.inertiaField;
            }
            set
            {
                this.inertiaField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_physics_material", typeof(InstanceWithExtra))]
        [System.Xml.Serialization.XmlElementAttribute("physics_material", typeof(physics_material))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("shape")]
        public instance_rigid_bodyTechnique_commonShape[] shape
        {
            get
            {
                return this.shapeField;
            }
            set
            {
                this.shapeField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class instance_rigid_bodyTechnique_commonDynamic
    {

        private string sidField;

        private bool valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public bool Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class instance_rigid_bodyTechnique_commonShape
    {

        private instance_rigid_bodyTechnique_commonShapeHollow hollowField;

        private TargetableFloat massField;

        private TargetableFloat densityField;

        private object itemField;

        private object item1Field;

        private object[] itemsField;

        private extra[] extraField;

        /// <remarks/>
        public instance_rigid_bodyTechnique_commonShapeHollow hollow
        {
            get
            {
                return this.hollowField;
            }
            set
            {
                this.hollowField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat mass
        {
            get
            {
                return this.massField;
            }
            set
            {
                this.massField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat density
        {
            get
            {
                return this.densityField;
            }
            set
            {
                this.densityField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_physics_material", typeof(InstanceWithExtra))]
        [System.Xml.Serialization.XmlElementAttribute("physics_material", typeof(physics_material))]
        public object Item
        {
            get
            {
                return this.itemField;
            }
            set
            {
                this.itemField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("box", typeof(box))]
        [System.Xml.Serialization.XmlElementAttribute("capsule", typeof(capsule))]
        [System.Xml.Serialization.XmlElementAttribute("cylinder", typeof(cylinder))]
        [System.Xml.Serialization.XmlElementAttribute("instance_geometry", typeof(instance_geometry))]
        [System.Xml.Serialization.XmlElementAttribute("plane", typeof(plane))]
        [System.Xml.Serialization.XmlElementAttribute("sphere", typeof(sphere))]
        [System.Xml.Serialization.XmlElementAttribute("tapered_capsule", typeof(tapered_capsule))]
        [System.Xml.Serialization.XmlElementAttribute("tapered_cylinder", typeof(tapered_cylinder))]
        public object Item1
        {
            get
            {
                return this.item1Field;
            }
            set
            {
                this.item1Field = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("rotate", typeof(rotate))]
        [System.Xml.Serialization.XmlElementAttribute("translate", typeof(TargetableFloat3))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class instance_rigid_bodyTechnique_commonShapeHollow
    {

        private string sidField;

        private bool valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlTextAttribute()]
        public bool Value
        {
            get
            {
                return this.valueField;
            }
            set
            {
                this.valueField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class instance_rigid_constraint
    {

        private extra[] extraField;

        private string constraintField;

        private string sidField;

        private string nameField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string constraint
        {
            get
            {
                return this.constraintField;
            }
            set
            {
                this.constraintField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string sid
        {
            get
            {
                return this.sidField;
            }
            set
            {
                this.sidField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_physics_scenes
    {

        private asset assetField;

        private physics_scene[] physics_sceneField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("physics_scene")]
        public physics_scene[] physics_scene
        {
            get
            {
                return this.physics_sceneField;
            }
            set
            {
                this.physics_sceneField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class physics_scene
    {

        private asset assetField;

        private InstanceWithExtra[] instance_force_fieldField;

        private instance_physics_model[] instance_physics_modelField;

        private physics_sceneTechnique_common technique_commonField;

        private technique[] techniqueField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_force_field")]
        public InstanceWithExtra[] instance_force_field
        {
            get
            {
                return this.instance_force_fieldField;
            }
            set
            {
                this.instance_force_fieldField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_physics_model")]
        public instance_physics_model[] instance_physics_model
        {
            get
            {
                return this.instance_physics_modelField;
            }
            set
            {
                this.instance_physics_modelField = value;
            }
        }

        /// <remarks/>
        public physics_sceneTechnique_common technique_common
        {
            get
            {
                return this.technique_commonField;
            }
            set
            {
                this.technique_commonField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("technique")]
        public technique[] technique
        {
            get
            {
                return this.techniqueField;
            }
            set
            {
                this.techniqueField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class physics_sceneTechnique_common
    {

        private TargetableFloat3 gravityField;

        private TargetableFloat time_stepField;

        /// <remarks/>
        public TargetableFloat3 gravity
        {
            get
            {
                return this.gravityField;
            }
            set
            {
                this.gravityField = value;
            }
        }

        /// <remarks/>
        public TargetableFloat time_step
        {
            get
            {
                return this.time_stepField;
            }
            set
            {
                this.time_stepField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class library_visual_scenes
    {

        private asset assetField;

        private visual_scene[] visual_sceneField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("visual_scene")]
        public visual_scene[] visual_scene
        {
            get
            {
                return this.visual_sceneField;
            }
            set
            {
                this.visual_sceneField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class visual_scene
    {

        private asset assetField;

        private node[] nodeField;

        private visual_sceneEvaluate_scene[] evaluate_sceneField;

        private extra[] extraField;

        private string idField;

        private string nameField;

        /// <remarks/>
        public asset asset
        {
            get
            {
                return this.assetField;
            }
            set
            {
                this.assetField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("node")]
        public node[] node
        {
            get
            {
                return this.nodeField;
            }
            set
            {
                this.nodeField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("evaluate_scene")]
        public visual_sceneEvaluate_scene[] evaluate_scene
        {
            get
            {
                return this.evaluate_sceneField;
            }
            set
            {
                this.evaluate_sceneField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "ID")]
        public string id
        {
            get
            {
                return this.idField;
            }
            set
            {
                this.idField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class visual_sceneEvaluate_scene
    {

        private visual_sceneEvaluate_sceneRender[] renderField;

        private string nameField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("render")]
        public visual_sceneEvaluate_sceneRender[] render
        {
            get
            {
                return this.renderField;
            }
            set
            {
                this.renderField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "NCName")]
        public string name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class visual_sceneEvaluate_sceneRender
    {

        private string[] layerField;

        private instance_effect instance_effectField;

        private string camera_nodeField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("layer", DataType = "NCName")]
        public string[] layer
        {
            get
            {
                return this.layerField;
            }
            set
            {
                this.layerField = value;
            }
        }

        /// <remarks/>
        public instance_effect instance_effect
        {
            get
            {
                return this.instance_effectField;
            }
            set
            {
                this.instance_effectField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute(DataType = "anyURI")]
        public string camera_node
        {
            get
            {
                return this.camera_nodeField;
            }
            set
            {
                this.camera_nodeField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public partial class COLLADAScene
    {

        private InstanceWithExtra[] instance_physics_sceneField;

        private InstanceWithExtra instance_visual_sceneField;

        private extra[] extraField;

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("instance_physics_scene")]
        public InstanceWithExtra[] instance_physics_scene
        {
            get
            {
                return this.instance_physics_sceneField;
            }
            set
            {
                this.instance_physics_sceneField = value;
            }
        }

        /// <remarks/>
        public InstanceWithExtra instance_visual_scene
        {
            get
            {
                return this.instance_visual_sceneField;
            }
            set
            {
                this.instance_visual_sceneField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("extra")]
        public extra[] extra
        {
            get
            {
                return this.extraField;
            }
            set
            {
                this.extraField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    public enum VersionType
    {

        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("1.4.0")]
        Item140,

        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("1.4.1")]
        Item141,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.17929")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true, Namespace = "http://www.collada.org/2005/11/COLLADASchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace = "http://www.collada.org/2005/11/COLLADASchema", IsNullable = false)]
    public partial class ellipsoid
    {

        private string sizeField;

        /// <remarks/>
        public string size
        {
            get
            {
                return this.sizeField;
            }
            set
            {
                this.sizeField = value;
            }
        }
    }

    public partial class COLLADA
    {
        public static string ConvertFromArray(double[] values)
        {
            if (values == null) return string.Empty;
            string[] tmp = new string[values.Length];
            for (int i = 0; i < values.Length; i++)
            {
                tmp[i] = values[i].ToString(System.Globalization.CultureInfo.InvariantCulture);
            }
            return string.Join(" ", tmp);
        }

        public static string ConvertFromArray(long[] values)
        {
            if (values == null) return string.Empty;
            string[] tmp = new string[values.Length];
            for (int i = 0; i < values.Length; i++)
            {
                tmp[i] = values[i].ToString(System.Globalization.CultureInfo.InvariantCulture);
            }
            return string.Join(" ", tmp);
        }

        public static string ConvertFromArray(bool[] values)
        {
            if (values == null) return string.Empty;
            string[] tmp = new string[values.Length];
            for (int i = 0; i < values.Length; i++)
            {
                tmp[i] = values[i] ? "true" : "false";
            }
            return string.Join(" ", tmp);
        }

        public static string ConvertFromArray(string[] values)
        {
            if (values == null) return string.Empty;
            return string.Join(" ", values);
        }

        public static double[] ConvertDoubleArray(string val)
        {
            string[] vals = Regex.Split(val, @"\s+");
            double[] ret = new double[vals.Length];
            for (int i = 0; i < vals.Length; i++)
            {
                double.TryParse(vals[i], System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out ret[i]);
            }
            return ret;
        }

        public static long[] ConvertLongArray(string val)
        {
            string[] vals = Regex.Split(val, @"\s+");
            long[] ret = new long[vals.Length];
            for (int i = 0; i < vals.Length; i++)
            {
                long.TryParse(vals[i], System.Globalization.NumberStyles.Any, System.Globalization.CultureInfo.InvariantCulture, out ret[i]);
            }
            return ret;
        }

        public static bool[] ConvertBoolArray(string val)
        {
            string[] vals = Regex.Split(val, @"\s+");
            var ret = new bool[vals.Length];
            for (int i = 0; i < vals.Length; i++)
            {
                ret[i] = vals[i] == "true";
            }
            return ret;
        }

        public static string[] ConvertNameArray(string val)
        {
            return Regex.Split(val, @"\s+");
        }
    }
}