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

//
// This source code was auto-generated by xsd, Version=4.0.30319.33440.
//
namespace OfficeDevPnP.Core.Framework.Provisioning.Providers.Xml.V201505 {
    using System.Xml.Serialization;

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema", IsNullable=false)]
    public partial class Provisioning {

        private Preferences preferencesField;

        private Templates[] templatesField;

        private Sequence[] sequenceField;

        private ImportSequence[] importSequenceField;

        /// <remarks/>
        public Preferences Preferences {
            get {
                return this.preferencesField;
            }
            set {
                this.preferencesField = value;
            }
        }

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

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class Preferences {

        private PreferencesParameter[] parametersField;

        private string versionField;

        private string authorField;

        private string generatorField;

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("Parameter", IsNullable=false)]
        public PreferencesParameter[] Parameters {
            get {
                return this.parametersField;
            }
            set {
                this.parametersField = value;
            }
        }

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

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class PreferencesParameter {

        private string keyField;

        private bool requiredField;

        private string[] textField;

        public PreferencesParameter() {
            this.requiredField = false;
        }

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Required {
            get {
                return this.requiredField;
            }
            set {
                this.requiredField = value;
            }
        }

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ImportSequence {

        private string fileField;

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class TermStore {

        private TermGroup[] termGroupField;

        private TermStoreScope scopeField;

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class TermGroup : TaxonomyItem {

        private TermSet[] termSetsField;

        private string descriptionField;

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public TermSet[] TermSets {
            get {
                return this.termSetsField;
            }
            set {
                this.termSetsField = value;
            }
        }

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class TermSet : TermSetItem {

        private StringDictionaryItem[] customPropertiesField;

        private Term[] termsField;

        private int languageField;

        private bool languageFieldSpecified;

        private bool isOpenForTermCreationField;

        public TermSet() {
            this.isOpenForTermCreationField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("Property", IsNullable=false)]
        public StringDictionaryItem[] CustomProperties {
            get {
                return this.customPropertiesField;
            }
            set {
                this.customPropertiesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public Term[] Terms {
            get {
                return this.termsField;
            }
            set {
                this.termsField = value;
            }
        }

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool IsOpenForTermCreation {
            get {
                return this.isOpenForTermCreationField;
            }
            set {
                this.isOpenForTermCreationField = value;
            }
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(PropertyBagEntry))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class StringDictionaryItem {

        private string keyField;

        private string valueField;

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class PropertyBagEntry : StringDictionaryItem {

        private bool indexedField;

        public PropertyBagEntry() {
            this.indexedField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Indexed {
            get {
                return this.indexedField;
            }
            set {
                this.indexedField = value;
        }
    }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class Term : TermSetItem {

        private TermTerms termsField;

        private TermLabelsLabel[] labelsField;

        private StringDictionaryItem[] customPropertiesField;

        private StringDictionaryItem[] localCustomPropertiesField;

        private int languageField;

        private bool languageFieldSpecified;

        private int customSortOrderField;

        public Term() {
            this.customSortOrderField = 0;
        }

        /// <remarks/>
        public TermTerms Terms {
            get {
                return this.termsField;
            }
            set {
                this.termsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("Label", IsNullable=false)]
        public TermLabelsLabel[] Labels {
            get {
                return this.labelsField;
            }
            set {
                this.labelsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("Property", IsNullable=false)]
        public StringDictionaryItem[] CustomProperties {
            get {
                return this.customPropertiesField;
            }
            set {
                this.customPropertiesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("Property", IsNullable=false)]
        public StringDictionaryItem[] LocalCustomProperties {
            get {
                return this.localCustomPropertiesField;
            }
            set {
                this.localCustomPropertiesField = value;
            }
        }

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(0)]
        public int CustomSortOrder {
            get {
                return this.customSortOrderField;
            }
            set {
                this.customSortOrderField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class TermTerms {

        private Term[] itemsField;

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class TermLabelsLabel {

        private int languageField;

        private string valueField;

        private bool isDefaultForLanguageField;

        public TermLabelsLabel() {
            this.isDefaultForLanguageField = false;
        }

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool IsDefaultForLanguage {
            get {
                return this.isDefaultForLanguageField;
            }
            set {
                this.isDefaultForLanguageField = value;
            }
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(Term))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(TermSet))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class TermSetItem : TaxonomyItem {

        private string ownerField;

        private string descriptionField;

        private bool isAvailableForTaggingField;

        public TermSetItem() {
            this.isAvailableForTaggingField = true;
        }

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(true)]
        public bool IsAvailableForTagging {
            get {
                return this.isAvailableForTaggingField;
            }
            set {
                this.isAvailableForTaggingField = value;
            }
        }
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(TermSetItem))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(Term))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(TermSet))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(TermGroup))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class TaxonomyItem {

        private string nameField;

        private string idField;

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public enum TermStoreScope {

        /// <remarks/>
        Default,

        /// <remarks/>
        Current,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class Site {

        private Templates templatesField;

        private string titleField;

        private string customJSUrlField;

        private bool quickLaunchEnabledField;

        private bool quickLaunchEnabledFieldSpecified;

        private string alternateCssUrlField;

        private string languageField;

        private bool allowDesignerField;

        private bool allowDesignerFieldSpecified;

        private bool membersCanShareField;

        private bool membersCanShareFieldSpecified;

        private string timeZoneField;

        private bool useSamePermissionsAsParentSiteField;

        private bool useSamePermissionsAsParentSiteFieldSpecified;

        private string urlField;

        /// <remarks/>
        public Templates Templates {
            get {
                return this.templatesField;
            }
            set {
                this.templatesField = value;
            }
        }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class Templates {

        private ProvisioningTemplateFile[] provisioningTemplateFileField;

        private ProvisioningTemplateReference[] provisioningTemplateReferenceField;

        private ProvisioningTemplate[] provisioningTemplateField;

        private string idField;

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("ProvisioningTemplate")]
        public ProvisioningTemplate[] ProvisioningTemplate {
            get {
                return this.provisioningTemplateField;
            }
            set {
                this.provisioningTemplateField = 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.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ProvisioningTemplateFile {

        private string fileField;

        private string idField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string File {
            get {
                return this.fileField;
            }
            set {
                this.fileField = 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.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ProvisioningTemplateReference {

        private string idField;

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    [System.Xml.Serialization.XmlRootAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema", IsNullable=false)]
    public partial class ProvisioningTemplate {

        private string sitePolicyField;

        private PropertyBagEntry[] propertyBagEntriesField;

        private ProvisioningTemplateSecurity securityField;

        private ProvisioningTemplateSiteFields siteFieldsField;

        private ContentType[] contentTypesField;

        private ListInstance[] listsField;

        private ProvisioningTemplateFeatures featuresField;

        private ProvisioningTemplateCustomActions customActionsField;

        private File[] filesField;

        private Page[] pagesField;

        private TermGroup[] termGroupsField;

        private ComposedLook composedLookField;

        private Provider[] providersField;

        private string idField;

        private decimal versionField;

        private bool versionFieldSpecified;

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

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public PropertyBagEntry[] PropertyBagEntries {
            get {
                return this.propertyBagEntriesField;
            }
            set {
                this.propertyBagEntriesField = value;
            }
        }

        /// <remarks/>
        public ProvisioningTemplateSecurity Security {
            get {
                return this.securityField;
            }
            set {
                this.securityField = value;
            }
        }

        /// <remarks/>
        public ProvisioningTemplateSiteFields SiteFields {
            get {
                return this.siteFieldsField;
            }
            set {
                this.siteFieldsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public ContentType[] ContentTypes {
            get {
                return this.contentTypesField;
            }
            set {
                this.contentTypesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public ListInstance[] Lists {
            get {
                return this.listsField;
            }
            set {
                this.listsField = value;
            }
        }

        /// <remarks/>
        public ProvisioningTemplateFeatures Features {
            get {
                return this.featuresField;
            }
            set {
                this.featuresField = value;
            }
        }

        /// <remarks/>
        public ProvisioningTemplateCustomActions CustomActions {
            get {
                return this.customActionsField;
            }
            set {
                this.customActionsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public File[] Files {
            get {
                return this.filesField;
            }
            set {
                this.filesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public Page[] Pages {
            get {
                return this.pagesField;
            }
            set {
                this.pagesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public TermGroup[] TermGroups {
            get {
                return this.termGroupsField;
            }
            set {
                this.termGroupsField = value;
            }
        }

        /// <remarks/>
        public ComposedLook ComposedLook {
            get {
                return this.composedLookField;
            }
            set {
                this.composedLookField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public Provider[] Providers {
            get {
                return this.providersField;
            }
            set {
                this.providersField = value;
            }
        }

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

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ProvisioningTemplateSecurity {

        private User[] additionalAdministratorsField;

        private User[] additionalOwnersField;

        private User[] additionalMembersField;

        private User[] additionalVisitorsField;

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public User[] AdditionalAdministrators {
            get {
                return this.additionalAdministratorsField;
            }
            set {
                this.additionalAdministratorsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public User[] AdditionalOwners {
            get {
                return this.additionalOwnersField;
            }
            set {
                this.additionalOwnersField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public User[] AdditionalMembers {
            get {
                return this.additionalMembersField;
            }
            set {
                this.additionalMembersField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public User[] AdditionalVisitors {
            get {
                return this.additionalVisitorsField;
            }
            set {
                this.additionalVisitorsField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class User {

        private string nameField;

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ProvisioningTemplateSiteFields {

        private System.Xml.XmlElement[] anyField;

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ContentType {

        private ContentTypeFieldRef[] fieldRefsField;

        private ContentTypeDocumentTemplate documentTemplateField;

        private string idField;

        private string nameField;

        private string descriptionField;

        private string groupField;

        private bool hiddenField;

        private bool sealedField;

        private bool readOnlyField;

        private bool overwriteField;

        private System.Xml.XmlAttribute[] anyAttrField;

        public ContentType() {
            this.hiddenField = false;
            this.sealedField = false;
            this.readOnlyField = false;
            this.overwriteField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("FieldRef", IsNullable=false)]
        public ContentTypeFieldRef[] FieldRefs {
            get {
                return this.fieldRefsField;
            }
            set {
                this.fieldRefsField = value;
            }
        }

        /// <remarks/>
        public ContentTypeDocumentTemplate DocumentTemplate {
            get {
                return this.documentTemplateField;
            }
            set {
                this.documentTemplateField = value;
            }
        }

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

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

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Hidden {
            get {
                return this.hiddenField;
            }
            set {
                this.hiddenField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Sealed {
            get {
                return this.sealedField;
            }
            set {
                this.sealedField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool ReadOnly {
            get {
                return this.readOnlyField;
            }
            set {
                this.readOnlyField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Overwrite {
            get {
                return this.overwriteField;
            }
            set {
                this.overwriteField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAnyAttributeAttribute()]
        public System.Xml.XmlAttribute[] AnyAttr {
            get {
                return this.anyAttrField;
            }
            set {
                this.anyAttrField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ContentTypeFieldRef : FieldRefBase {
    }

    /// <remarks/>
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(ContentTypeFieldRef))]
    [System.Xml.Serialization.XmlIncludeAttribute(typeof(ListInstanceFieldRef))]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class FieldRefBase {

        private string idField;

        private string nameField;

        private bool requiredField;

        private bool hiddenField;

        public FieldRefBase() {
            this.requiredField = false;
            this.hiddenField = false;
        }

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Required {
            get {
                return this.requiredField;
            }
            set {
                this.requiredField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Hidden {
            get {
                return this.hiddenField;
            }
            set {
                this.hiddenField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ListInstanceFieldRef : FieldRefBase {

        private string displayNameField;

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ContentTypeDocumentTemplate {

        private string targetNameField;

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ListInstance {

        private ContentTypeBinding[] contentTypeBindingsField;

        private ListInstanceViews viewsField;

        private ListInstanceFields fieldsField;

        private ListInstanceFieldRef[] fieldRefsField;

        private DataValue[][] dataRowsField;

        private string titleField;

        private string descriptionField;

        private string documentTemplateField;

        private bool onQuickLaunchField;

        private int templateTypeField;

        private string urlField;

        private bool enableVersioningField;

        private bool enableMinorVersionsField;

        private bool enableModerationField;

        private int minorVersionLimitField;

        private bool minorVersionLimitFieldSpecified;

        private int maxVersionLimitField;

        private bool maxVersionLimitFieldSpecified;

        private int draftVersionVisibilityField;

        private bool draftVersionVisibilityFieldSpecified;

        private bool removeExistingContentTypesField;

        private string templateFeatureIDField;

        private bool contentTypesEnabledField;

        private bool hiddenField;

        private bool enableAttachmentsField;

        private bool enableFolderCreationField;

        public ListInstance() {
            this.onQuickLaunchField = false;
            this.enableVersioningField = false;
            this.enableMinorVersionsField = false;
            this.enableModerationField = false;
            this.removeExistingContentTypesField = false;
            this.contentTypesEnabledField = false;
            this.hiddenField = false;
            this.enableAttachmentsField = true;
            this.enableFolderCreationField = true;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public ContentTypeBinding[] ContentTypeBindings {
            get {
                return this.contentTypeBindingsField;
            }
            set {
                this.contentTypeBindingsField = value;
            }
        }

        /// <remarks/>
        public ListInstanceViews Views {
            get {
                return this.viewsField;
            }
            set {
                this.viewsField = value;
            }
        }

        /// <remarks/>
        public ListInstanceFields Fields {
            get {
                return this.fieldsField;
            }
            set {
                this.fieldsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("FieldRef", IsNullable=false)]
        public ListInstanceFieldRef[] FieldRefs {
            get {
                return this.fieldRefsField;
            }
            set {
                this.fieldRefsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("DataRow", IsNullable=false)]
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false, NestingLevel=1)]
        public DataValue[][] DataRows {
            get {
                return this.dataRowsField;
            }
            set {
                this.dataRowsField = value;
            }
        }

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

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool OnQuickLaunch {
            get {
                return this.onQuickLaunchField;
            }
            set {
                this.onQuickLaunchField = value;
            }
        }

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool EnableVersioning {
            get {
                return this.enableVersioningField;
            }
            set {
                this.enableVersioningField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool EnableMinorVersions {
            get {
                return this.enableMinorVersionsField;
            }
            set {
                this.enableMinorVersionsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool EnableModeration {
            get {
                return this.enableModerationField;
            }
            set {
                this.enableModerationField = value;
            }
        }

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

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

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

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

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool RemoveExistingContentTypes {
            get {
                return this.removeExistingContentTypesField;
            }
            set {
                this.removeExistingContentTypesField = value;
            }
        }

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool ContentTypesEnabled {
            get {
                return this.contentTypesEnabledField;
            }
            set {
                this.contentTypesEnabledField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Hidden {
            get {
                return this.hiddenField;
            }
            set {
                this.hiddenField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(true)]
        public bool EnableAttachments {
            get {
                return this.enableAttachmentsField;
            }
            set {
                this.enableAttachmentsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(true)]
        public bool EnableFolderCreation {
            get {
                return this.enableFolderCreationField;
            }
            set {
                this.enableFolderCreationField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ContentTypeBinding {

        private string contentTypeIDField;

        private bool defaultField;

        public ContentTypeBinding() {
            this.defaultField = false;
        }

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Default {
            get {
                return this.defaultField;
            }
            set {
                this.defaultField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ListInstanceViews {

        private System.Xml.XmlElement[] anyField;

        private bool removeExistingViewsField;

        public ListInstanceViews() {
            this.removeExistingViewsField = false;
        }

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool RemoveExistingViews {
            get {
                return this.removeExistingViewsField;
            }
            set {
                this.removeExistingViewsField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ListInstanceFields {

        private System.Xml.XmlElement[] anyField;

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class DataValue {

        private string fieldNameField;

        private string valueField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string FieldName {
            get {
                return this.fieldNameField;
            }
            set {
                this.fieldNameField = 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.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ProvisioningTemplateFeatures {

        private Feature[] siteFeaturesField;

        private Feature[] webFeaturesField;

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public Feature[] SiteFeatures {
            get {
                return this.siteFeaturesField;
            }
            set {
                this.siteFeaturesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public Feature[] WebFeatures {
            get {
                return this.webFeaturesField;
            }
            set {
                this.webFeaturesField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class Feature {

        private string idField;

        private bool deactivateField;

        private string descriptionField;

        public Feature() {
            this.deactivateField = false;
        }

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Deactivate {
            get {
                return this.deactivateField;
            }
            set {
                this.deactivateField = value;
            }
        }

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ProvisioningTemplateCustomActions {

        private CustomAction[] siteCustomActionsField;

        private CustomAction[] webCustomActionsField;

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public CustomAction[] SiteCustomActions {
            get {
                return this.siteCustomActionsField;
            }
            set {
                this.siteCustomActionsField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute(IsNullable=false)]
        public CustomAction[] WebCustomActions {
            get {
                return this.webCustomActionsField;
            }
            set {
                this.webCustomActionsField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class CustomAction {

        private string nameField;

        private string descriptionField;

        private string groupField;

        private string locationField;

        private string titleField;

        private int sequenceField;

        private bool sequenceFieldSpecified;

        private int rightsField;

        private bool rightsFieldSpecified;

        private string urlField;

        private bool enabledField;

        private string scriptBlockField;

        private string imageUrlField;

        private string scriptSrcField;

        public CustomAction() {
            this.enabledField = true;
        }

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

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

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

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

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

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

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

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

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(true)]
        public bool Enabled {
            get {
                return this.enabledField;
            }
            set {
                this.enabledField = value;
            }
        }

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

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class File {

        private StringDictionaryItem[] propertiesField;

        private WebPartPageWebPart[] webPartsField;

        private string srcField;

        private string folderField;

        private bool overwriteField;

        public File() {
            this.overwriteField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("Property", IsNullable=false)]
        public StringDictionaryItem[] Properties {
            get {
                return this.propertiesField;
            }
            set {
                this.propertiesField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("WebPart", IsNullable=false)]
        public WebPartPageWebPart[] WebParts {
            get {
                return this.webPartsField;
            }
            set {
                this.webPartsField = value;
            }
        }

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Overwrite {
            get {
                return this.overwriteField;
            }
            set {
                this.overwriteField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class WebPartPageWebPart {

        private string contentsField;

        private string titleField;

        private string zoneField;

        private int orderField;

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

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

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class Page {

        private WikiPageWebPart[] webPartsField;

        private string urlField;

        private bool overwriteField;

        private WikiPageLayout layoutField;

        private bool welcomePageField;

        public Page() {
            this.overwriteField = false;
            this.welcomePageField = false;
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlArrayItemAttribute("WebPart", IsNullable=false)]
        public WikiPageWebPart[] WebParts {
            get {
                return this.webPartsField;
            }
            set {
                this.webPartsField = value;
            }
        }

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Overwrite {
            get {
                return this.overwriteField;
            }
            set {
                this.overwriteField = value;
            }
        }

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool WelcomePage {
            get {
                return this.welcomePageField;
            }
            set {
                this.welcomePageField = value;
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class WikiPageWebPart {

        private string contentsField;

        private string titleField;

        private int rowField;

        private int columnField;

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

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

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public enum WikiPageLayout {

        /// <remarks/>
        OneColumn,

        /// <remarks/>
        OneColumnSidebar,

        /// <remarks/>
        TwoColumns,

        /// <remarks/>
        TwoColumnsHeader,

        /// <remarks/>
        TwoColumnsHeaderFooter,

        /// <remarks/>
        ThreeColumns,

        /// <remarks/>
        ThreeColumnsHeader,

        /// <remarks/>
        ThreeColumnsHeaderFooter,
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class ComposedLook {

        private string nameField;

        private string colorFileField;

        private string fontFileField;

        private string backgroundFileField;

        private string masterPageField;

        private string siteLogoField;

        private string alternateCSSField;

        private int versionField;

        private bool versionFieldSpecified;

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

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

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

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

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

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

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

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class Provider {

        private System.Xml.XmlNode configurationField;

        private bool enabledField;

        private string handlerTypeField;

        public Provider() {
            this.enabledField = false;
        }

        /// <remarks/>
        public System.Xml.XmlNode Configuration {
            get {
                return this.configurationField;
            }
            set {
                this.configurationField = value;
            }
        }

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(false)]
        public bool Enabled {
            get {
                return this.enabledField;
            }
            set {
                this.enabledField = value;
            }
        }

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class SiteCollection {

        private Templates templatesField;

        private string storageMaximumLevelField;

        private string storageWarningLevelField;

        private string userCodeMaximumLevelField;

        private string userCodeWarningLevelField;

        private string primarySiteCollectionAdminField;

        private string secondarySiteCollectionAdminField;

        private string titleField;

        private string customJSUrlField;

        private bool quickLaunchEnabledField;

        private bool quickLaunchEnabledFieldSpecified;

        private string alternateCssUrlField;

        private string languageField;

        private bool allowDesignerField;

        private bool allowDesignerFieldSpecified;

        private bool membersCanShareField;

        private bool membersCanShareFieldSpecified;

        private string timeZoneField;

        private string urlField;

        /// <remarks/>
        public Templates Templates {
            get {
                return this.templatesField;
            }
            set {
                this.templatesField = value;
            }
        }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.33440")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public partial class Sequence {

        private SiteCollection[] siteCollectionField;

        private Site[] siteField;

        private TermStore[] termStoreField;

        private System.Xml.XmlElement[] extensionsField;

        private SequenceSequenceType sequenceTypeField;

        private string idField;

        public Sequence() {
            this.sequenceTypeField = SequenceSequenceType.Synchronous;
        }

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

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

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

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

        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        [System.ComponentModel.DefaultValueAttribute(SequenceSequenceType.Synchronous)]
        public SequenceSequenceType SequenceType {
            get {
                return this.sequenceTypeField;
            }
            set {
                this.sequenceTypeField = 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.33440")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://schemas.dev.office.com/PnP/2015/05/ProvisioningSchema")]
    public enum SequenceSequenceType {

        /// <remarks/>
        Synchronous,

        /// <remarks/>
        Asynchronous,
    }
}


text:
@implementation UISearchBar (NUI)

- (void)initNUI
{
    if (!self.nuiClass) {
        self.nuiClass = @"SearchBar";
    }
}

- (void)applyNUI
{
    [self initNUI];
    if (![self.nuiClass isEqualToString:@"none"]) {
        [NUIRenderer renderSearchBar:self withClass:self.nuiClass];
    }
    self.nuiIsApplied = [NSNumber numberWithBool:YES];
}

- (void)override_didMoveToWindow
{
    if (!self.nuiIsApplied) {
        [self applyNUI];
    }

    if (self.window) {
        [NUIObserver addObserverTo:self forKeyPath:@"frame" selector:@selector(applyNUI)];
    } else {
        [NUIObserver removeObserverFrom:self forKeyPath:@"frame" selector:@selector(applyNUI)];
    }

    [self override_didMoveToWindow];
}

@end

redpajama_set_name: RedPajamaGithub