From b740bae395364af1e96310c2b09a78f4104fe1c4 Mon Sep 17 00:00:00 2001 From: Hannan Azam Khan Date: Tue, 26 Apr 2016 21:18:41 +0500 Subject: [PATCH 01/18] External Media (oEmbed) Export/Import Issue Fixes #5417 --- .../Drivers/OEmbedPartDriver.cs | 49 +++++++++++++++---- 1 file changed, 39 insertions(+), 10 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.MediaLibrary/Drivers/OEmbedPartDriver.cs b/src/Orchard.Web/Modules/Orchard.MediaLibrary/Drivers/OEmbedPartDriver.cs index ccb637186..76f7d920e 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaLibrary/Drivers/OEmbedPartDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.MediaLibrary/Drivers/OEmbedPartDriver.cs @@ -1,7 +1,12 @@ -using Orchard.ContentManagement.Drivers; +using Orchard.ContentManagement; +using Orchard.ContentManagement.Drivers; +using Orchard.ContentManagement.FieldStorage.InfosetStorage; using Orchard.MediaLibrary.Models; +using System.Xml; +using System.Xml.Linq; -namespace Orchard.MediaLibrary.Drivers { +namespace Orchard.MediaLibrary.Drivers +{ public class OEmbedPartDriver : ContentPartDriver { protected override DriverResult Display(OEmbedPart part, string displayType, dynamic shapeHelper) { return Combined( @@ -13,18 +18,42 @@ namespace Orchard.MediaLibrary.Drivers { } protected override void Exporting(OEmbedPart part, ContentManagement.Handlers.ExportContentContext context) { - context.Element(part.PartDefinition.Name).SetAttributeValue("Source", part.Source); + var partName = XmlConvert.EncodeName(typeof(OEmbedPart).Name); + + var infosetPart = part.As(); + if (infosetPart != null) { + // OEmbedPart is not versionable thats why using Infoset.Element instead of VersionInfoset.Element + var element = infosetPart.Infoset.Element; + + var partElement = element.Element(partName); + if (partElement == null) + return; + + context.Element(partName).Add(partElement.Elements()); + } } protected override void Importing(OEmbedPart part, ContentManagement.Handlers.ImportContentContext context) { - // Don't do anything if the tag is not specified. - if (context.Data.Element(part.PartDefinition.Name) == null) { - return; - } + var partName = XmlConvert.EncodeName(typeof(OEmbedPart).Name); - context.ImportAttribute(part.PartDefinition.Name, "Source", source => - part.Source = source - ); + // Don't do anything if the tag is not specified. + var xmlElement = context.Data.Element(partName); + if (xmlElement == null) + return; + + var infosetPart = part.As(); + if (infosetPart != null) { + // OEmbedPart is not versionable thats why using Infoset.Element instead of VersionInfoset.Element + var element = infosetPart.Infoset.Element; + + var partElement = element.Element(partName); + if (partElement != null) + partElement.Remove(); + + partElement = new XElement(partName); + element.Add(partElement); + partElement.Add(xmlElement.Elements()); + } } } } \ No newline at end of file From 8c97c894147302c5d885253b41ab991ab6f6d209 Mon Sep 17 00:00:00 2001 From: jtkech Date: Tue, 26 Apr 2016 18:50:02 +0200 Subject: [PATCH 02/18] Field default value as a proposed value on first edition when creating. --- src/Orchard.Specs/Boolean.feature | 30 +-- src/Orchard.Specs/Boolean.feature.cs | 83 +----- src/Orchard.Specs/DateTime.feature | 53 +--- src/Orchard.Specs/DateTime.feature.cs | 237 +++++------------- src/Orchard.Specs/Enumeration.feature | 69 +---- src/Orchard.Specs/Enumeration.feature.cs | 173 ++----------- src/Orchard.Specs/Input.feature | 43 +--- src/Orchard.Specs/Input.feature.cs | 101 ++------ src/Orchard.Specs/Link.feature | 47 +--- src/Orchard.Specs/Link.feature.cs | 129 ++-------- src/Orchard.Specs/Numeric.feature | 81 +----- src/Orchard.Specs/Numeric.feature.cs | 213 +++------------- src/Orchard.Specs/Text.feature | 53 ++-- src/Orchard.Specs/Text.feature.cs | 103 ++------ .../Core/Common/Drivers/TextFieldDriver.cs | 11 +- .../TextFieldDefaultValueEditor.cshtml | 4 +- .../Fields.Common.Text.Edit.cshtml | 11 +- .../Drivers/BooleanFieldDriver.cs | 22 +- .../Drivers/DateTimeFieldDriver.cs | 36 +-- .../Drivers/EnumerationFieldDriver.cs | 19 +- .../Drivers/InputFieldDriver.cs | 18 +- .../Orchard.Fields/Drivers/LinkFieldDriver.cs | 22 +- .../Drivers/NumericFieldDriver.cs | 18 +- .../Orchard.Fields/Drivers/TextFieldDriver.cs | 37 --- .../Orchard.Fields/Orchard.Fields.csproj | 4 - .../ViewModels/DateTimeFieldViewModel.cs | 1 - .../DateTimeFieldSettings.cshtml | 2 +- .../EnumerationFieldSettings.cshtml | 5 +- .../InputFieldSettings.cshtml | 5 +- .../LinkFieldSettings.cshtml | 8 +- .../NumericFieldSettings.cshtml | 4 +- .../TextFieldDefaultValueEditor.cshtml | 7 - .../Fields/DateTime.Edit.cshtml | 3 - .../Fields/Enumeration.Edit.cshtml | 12 +- .../EditorTemplates/Fields/Input.Edit.cshtml | 9 +- .../EditorTemplates/Fields/Link.Edit.cshtml | 21 +- .../Fields/Numeric.Edit.cshtml | 10 +- .../ContentManagement/ContentExtensions.cs | 3 + 38 files changed, 313 insertions(+), 1394 deletions(-) delete mode 100644 src/Orchard.Web/Modules/Orchard.Fields/Drivers/TextFieldDriver.cs delete mode 100644 src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/TextFieldDefaultValueEditor.cshtml diff --git a/src/Orchard.Specs/Boolean.feature b/src/Orchard.Specs/Boolean.feature index 9104dc5a3..5335a953f 100644 --- a/src/Orchard.Specs/Boolean.feature +++ b/src/Orchard.Specs/Boolean.feature @@ -53,7 +53,7 @@ Scenario: Creating and using Boolean fields And I go to "Admin/Contents/Create/Event" Then I should see "Check if the event is active" - # The default value should be used on creation + # The default value should be proposed on creation When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | @@ -63,40 +63,14 @@ Scenario: Creating and using Boolean fields Then I should see "checked=\"checked\"" # The value should be required - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].BooleanFieldSettings.Optional | false | - | Fields[0].BooleanFieldSettings.DefaultValue | Neutral | - And I fill in - | name | value | - | Fields[0].BooleanFieldSettings.NotSetLabel | May be | - And I fill in - | name | value | - | Fields[0].BooleanFieldSettings.SelectionMode | Radiobutton | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.Active.Value | | - And I hit "Save" - Then I should see "The field Active is mandatory." - - # If required and no value, the default value should be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | | Fields[0].BooleanFieldSettings.Optional | false | - | Fields[0].BooleanFieldSettings.DefaultValue | True | - And I fill in - | name | value | - | Fields[0].BooleanFieldSettings.SelectionMode | Dropdown list | And I hit "Save" And I go to "Admin/Contents/Create/Event" And I fill in | name | value | | Event.Active.Value | | And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - And I should see "selected=\"selected\" value=\"true\"" \ No newline at end of file + Then I should see "The field Active is mandatory." \ No newline at end of file diff --git a/src/Orchard.Specs/Boolean.feature.cs b/src/Orchard.Specs/Boolean.feature.cs index 5eddd627f..937fa3e32 100644 --- a/src/Orchard.Specs/Boolean.feature.cs +++ b/src/Orchard.Specs/Boolean.feature.cs @@ -193,90 +193,25 @@ this.ScenarioSetup(scenarioInfo); table6.AddRow(new string[] { "Fields[0].BooleanFieldSettings.Optional", "false"}); - table6.AddRow(new string[] { - "Fields[0].BooleanFieldSettings.DefaultValue", - "Neutral"}); #line 67 testRunner.And("I fill in", ((string)(null)), table6, "And "); +#line 70 + testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 71 + testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table7 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); table7.AddRow(new string[] { - "Fields[0].BooleanFieldSettings.NotSetLabel", - "May be"}); -#line 71 + "Event.Active.Value", + ""}); +#line 72 testRunner.And("I fill in", ((string)(null)), table7, "And "); -#line hidden - TechTalk.SpecFlow.Table table8 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table8.AddRow(new string[] { - "Fields[0].BooleanFieldSettings.SelectionMode", - "Radiobutton"}); -#line 74 - testRunner.And("I fill in", ((string)(null)), table8, "And "); -#line 77 +#line 75 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 78 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line hidden - TechTalk.SpecFlow.Table table9 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table9.AddRow(new string[] { - "Event.Active.Value", - ""}); -#line 79 - testRunner.And("I fill in", ((string)(null)), table9, "And "); -#line 82 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 83 +#line 76 testRunner.Then("I should see \"The field Active is mandatory.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 86 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table10 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table10.AddRow(new string[] { - "Fields[0].BooleanFieldSettings.Optional", - "false"}); - table10.AddRow(new string[] { - "Fields[0].BooleanFieldSettings.DefaultValue", - "True"}); -#line 87 - testRunner.And("I fill in", ((string)(null)), table10, "And "); -#line hidden - TechTalk.SpecFlow.Table table11 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table11.AddRow(new string[] { - "Fields[0].BooleanFieldSettings.SelectionMode", - "Dropdown list"}); -#line 91 - testRunner.And("I fill in", ((string)(null)), table11, "And "); -#line 94 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 95 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line hidden - TechTalk.SpecFlow.Table table12 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table12.AddRow(new string[] { - "Event.Active.Value", - ""}); -#line 96 - testRunner.And("I fill in", ((string)(null)), table12, "And "); -#line 99 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 100 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 101 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 102 - testRunner.And("I should see \"selected=\\\"selected\\\" value=\\\"true\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden this.ScenarioCleanup(); } diff --git a/src/Orchard.Specs/DateTime.feature b/src/Orchard.Specs/DateTime.feature index 00c848706..d5861da70 100644 --- a/src/Orchard.Specs/DateTime.feature +++ b/src/Orchard.Specs/DateTime.feature @@ -139,67 +139,22 @@ Scenario: Creating and using Date fields When I hit "Save" Then I should see "Date of the event is required." - # If not required and no value, the default value should be used + # The default value should be proposed on creation When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | | Fields[0].DateTimeFieldSettings.Display | DateAndTime | - | Fields[0].DateTimeFieldSettings.Required | false | - | Fields[0].DateTimeFieldSettings.Editor.Date | 01/31/2012 | - | Fields[0].DateTimeFieldSettings.Editor.Time | 11:00 AM | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - Then I should see "Event.EventDate.Editor.Date" - When I fill in - | name | value | - | Event.EventDate.Editor.Date | | - | Event.EventDate.Editor.Time | | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - When I go to "Admin/Contents/List" - Then I should see "Date of the event" - And I should see "1/31/2012 11:00" - - # If required and no value, the default value should be used - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].DateTimeFieldSettings.Display | DateAndTime | - | Fields[0].DateTimeFieldSettings.Required | true | - | Fields[0].DateTimeFieldSettings.Editor.Date | 01/31/2012 | + | Fields[0].DateTimeFieldSettings.Editor.Date | 01/31/2016 | | Fields[0].DateTimeFieldSettings.Editor.Time | 10:00 AM | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should see "Event.EventDate.Editor.Date" - When I fill in - | name | value | - | Event.EventDate.Editor.Date | | - | Event.EventDate.Editor.Time | | - And I hit "Save" + When I hit "Save" And I am redirected Then I should see "Your Event has been created." When I go to "Admin/Contents/List" Then I should see "Date of the event" - And I should see "1/31/2012 10:00" - - # If required and the default value is incomplete, the value should be required - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].DateTimeFieldSettings.Display | DateAndTime | - | Fields[0].DateTimeFieldSettings.Required | true | - | Fields[0].DateTimeFieldSettings.Editor.Date | | - | Fields[0].DateTimeFieldSettings.Editor.Time | 12:00 AM | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - Then I should see "Event.EventDate.Editor.Date" - When I fill in - | name | value | - | Event.EventDate.Editor.Date | | - | Event.EventDate.Editor.Time | | - And I hit "Save" - Then I should see "Date of the event is required." + And I should see "1/31/2016 10:00" Scenario: Creating and using date time fields in another culture diff --git a/src/Orchard.Specs/DateTime.feature.cs b/src/Orchard.Specs/DateTime.feature.cs index 00e9c93ea..120475091 100644 --- a/src/Orchard.Specs/DateTime.feature.cs +++ b/src/Orchard.Specs/DateTime.feature.cs @@ -359,139 +359,32 @@ this.ScenarioSetup(scenarioInfo); table15.AddRow(new string[] { "Fields[0].DateTimeFieldSettings.Display", "DateAndTime"}); - table15.AddRow(new string[] { - "Fields[0].DateTimeFieldSettings.Required", - "false"}); table15.AddRow(new string[] { "Fields[0].DateTimeFieldSettings.Editor.Date", - "01/31/2012"}); + "01/31/2016"}); table15.AddRow(new string[] { - "Fields[0].DateTimeFieldSettings.Editor.Time", - "11:00 AM"}); -#line 144 - testRunner.And("I fill in", ((string)(null)), table15, "And "); -#line 150 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 151 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 152 - testRunner.Then("I should see \"Event.EventDate.Editor.Date\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line hidden - TechTalk.SpecFlow.Table table16 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table16.AddRow(new string[] { - "Event.EventDate.Editor.Date", - ""}); - table16.AddRow(new string[] { - "Event.EventDate.Editor.Time", - ""}); -#line 153 - testRunner.When("I fill in", ((string)(null)), table16, "When "); -#line 157 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 158 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 159 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 160 - testRunner.When("I go to \"Admin/Contents/List\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 161 - testRunner.Then("I should see \"Date of the event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 162 - testRunner.And("I should see \"1/31/2012 11:00\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 165 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table17 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table17.AddRow(new string[] { - "Fields[0].DateTimeFieldSettings.Display", - "DateAndTime"}); - table17.AddRow(new string[] { - "Fields[0].DateTimeFieldSettings.Required", - "true"}); - table17.AddRow(new string[] { - "Fields[0].DateTimeFieldSettings.Editor.Date", - "01/31/2012"}); - table17.AddRow(new string[] { "Fields[0].DateTimeFieldSettings.Editor.Time", "10:00 AM"}); -#line 166 - testRunner.And("I fill in", ((string)(null)), table17, "And "); -#line 172 +#line 144 + testRunner.And("I fill in", ((string)(null)), table15, "And "); +#line 149 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 173 +#line 150 testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 174 +#line 151 testRunner.Then("I should see \"Event.EventDate.Editor.Date\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line hidden - TechTalk.SpecFlow.Table table18 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table18.AddRow(new string[] { - "Event.EventDate.Editor.Date", - ""}); - table18.AddRow(new string[] { - "Event.EventDate.Editor.Time", - ""}); -#line 175 - testRunner.When("I fill in", ((string)(null)), table18, "When "); -#line 179 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 180 +#line 152 + testRunner.When("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); +#line 153 testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 181 +#line 154 testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 182 +#line 155 testRunner.When("I go to \"Admin/Contents/List\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 183 +#line 156 testRunner.Then("I should see \"Date of the event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 184 - testRunner.And("I should see \"1/31/2012 10:00\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 187 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table19 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table19.AddRow(new string[] { - "Fields[0].DateTimeFieldSettings.Display", - "DateAndTime"}); - table19.AddRow(new string[] { - "Fields[0].DateTimeFieldSettings.Required", - "true"}); - table19.AddRow(new string[] { - "Fields[0].DateTimeFieldSettings.Editor.Date", - ""}); - table19.AddRow(new string[] { - "Fields[0].DateTimeFieldSettings.Editor.Time", - "12:00 AM"}); -#line 188 - testRunner.And("I fill in", ((string)(null)), table19, "And "); -#line 194 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 195 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 196 - testRunner.Then("I should see \"Event.EventDate.Editor.Date\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line hidden - TechTalk.SpecFlow.Table table20 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table20.AddRow(new string[] { - "Event.EventDate.Editor.Date", - ""}); - table20.AddRow(new string[] { - "Event.EventDate.Editor.Time", - ""}); -#line 197 - testRunner.When("I fill in", ((string)(null)), table20, "When "); -#line 201 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 202 - testRunner.Then("I should see \"Date of the event is required.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 157 + testRunner.And("I should see \"1/31/2016 10:00\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden this.ScenarioCleanup(); } @@ -501,119 +394,119 @@ this.ScenarioSetup(scenarioInfo); public virtual void CreatingAndUsingDateTimeFieldsInAnotherCulture() { TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("Creating and using date time fields in another culture", ((string[])(null))); -#line 204 +#line 159 this.ScenarioSetup(scenarioInfo); -#line 207 +#line 162 testRunner.Given("I have installed Orchard", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Given "); -#line 208 +#line 163 testRunner.And("I have installed \"Orchard.Fields\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 209 +#line 164 testRunner.And("I have the file \"Content\\orchard.core.po\" in \"Core\\App_Data\\Localization\\fr-FR\\or" + "chard.core.po\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 210 +#line 165 testRunner.When("I go to \"Admin/ContentTypes\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 211 +#line 166 testRunner.Then("I should see \"]*>.*?Create new type\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 212 +#line 167 testRunner.When("I go to \"Admin/ContentTypes/Create\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden - TechTalk.SpecFlow.Table table21 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table16 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); - table21.AddRow(new string[] { + table16.AddRow(new string[] { "DisplayName", "Event"}); - table21.AddRow(new string[] { + table16.AddRow(new string[] { "Name", "Event"}); -#line 213 - testRunner.And("I fill in", ((string)(null)), table21, "And "); -#line 217 +#line 168 + testRunner.And("I fill in", ((string)(null)), table16, "And "); +#line 172 testRunner.And("I hit \"Create\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 218 +#line 173 testRunner.And("I go to \"Admin/ContentTypes/\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 219 +#line 174 testRunner.Then("I should see \"Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 222 +#line 177 testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 223 +#line 178 testRunner.And("I follow \"Add Field\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table22 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table17 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); - table22.AddRow(new string[] { + table17.AddRow(new string[] { "DisplayName", "Date of the event"}); - table22.AddRow(new string[] { + table17.AddRow(new string[] { "Name", "EventDate"}); - table22.AddRow(new string[] { + table17.AddRow(new string[] { "FieldTypeName", "DateTimeField"}); -#line 224 - testRunner.And("I fill in", ((string)(null)), table22, "And "); -#line 229 +#line 179 + testRunner.And("I fill in", ((string)(null)), table17, "And "); +#line 184 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 230 +#line 185 testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 231 +#line 186 testRunner.Then("I should see \"The \\\"Date of the event\\\" field has been added.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 234 +#line 189 testRunner.When("I have \"fr-FR\" as the default culture", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 235 +#line 190 testRunner.And("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden - TechTalk.SpecFlow.Table table23 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table18 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); - table23.AddRow(new string[] { + table18.AddRow(new string[] { "Fields[0].DateTimeFieldSettings.Display", "DateAndTime"}); - table23.AddRow(new string[] { + table18.AddRow(new string[] { "Fields[0].DateTimeFieldSettings.Required", "true"}); -#line 236 - testRunner.And("I fill in", ((string)(null)), table23, "And "); -#line 240 +#line 191 + testRunner.And("I fill in", ((string)(null)), table18, "And "); +#line 195 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 241 +#line 196 testRunner.When("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden - TechTalk.SpecFlow.Table table24 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table19 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); - table24.AddRow(new string[] { + table19.AddRow(new string[] { "Event.EventDate.Editor.Date", "01/31/2012"}); - table24.AddRow(new string[] { + table19.AddRow(new string[] { "Event.EventDate.Editor.Time", "12:00 AM"}); -#line 242 - testRunner.And("I fill in", ((string)(null)), table24, "And "); -#line 246 +#line 197 + testRunner.And("I fill in", ((string)(null)), table19, "And "); +#line 201 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 247 +#line 202 testRunner.Then("I should see \"Date of the event could not be parsed as a valid date and time\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 248 +#line 203 testRunner.When("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden - TechTalk.SpecFlow.Table table25 = new TechTalk.SpecFlow.Table(new string[] { + TechTalk.SpecFlow.Table table20 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); - table25.AddRow(new string[] { + table20.AddRow(new string[] { "Event.EventDate.Editor.Date", "31/01/2012"}); - table25.AddRow(new string[] { + table20.AddRow(new string[] { "Event.EventDate.Editor.Time", "18:00"}); -#line 249 - testRunner.And("I fill in", ((string)(null)), table25, "And "); -#line 253 +#line 204 + testRunner.And("I fill in", ((string)(null)), table20, "And "); +#line 208 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 254 +#line 209 testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 255 +#line 210 testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden this.ScenarioCleanup(); diff --git a/src/Orchard.Specs/Enumeration.feature b/src/Orchard.Specs/Enumeration.feature index 55b5efd3e..bee7b46ec 100644 --- a/src/Orchard.Specs/Enumeration.feature +++ b/src/Orchard.Specs/Enumeration.feature @@ -108,7 +108,7 @@ Scenario: Creating and using Enumeration fields And I hit "Save" Then I should see "The field Location is mandatory." - # The default value should be used on creation + # The default value should be proposed on creation When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | @@ -118,84 +118,23 @@ Scenario: Creating and using Enumeration fields And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should see "selected=\"selected">Seattle" - - # If not required and no value, the default value should be used - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].EnumerationFieldSettings.Required | false | - | Fields[0].EnumerationFieldSettings.Options | Boston | - | Fields[0].EnumerationFieldSettings.ListMode | Checkbox | - | Fields[0].EnumerationFieldSettings.DefaultValue | foo;Boston;bar | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - Then I should see "Location" - When I fill in - | name | value | - | Event.Location.SelectedValues | | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - When I go to "Admin/Contents/List" - Then I should see "Location:" - And I should see "Boston" - - # If required and no value, the default value should be used - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].EnumerationFieldSettings.Required | true | - | Fields[0].EnumerationFieldSettings.Options | Phoenix | - | Fields[0].EnumerationFieldSettings.ListMode | Checkbox | - | Fields[0].EnumerationFieldSettings.DefaultValue | foo;Phoenix;bar | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - Then I should see "Location" - When I fill in - | name | value | - | Event.Location.SelectedValues | | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - When I go to "Admin/Contents/List" - Then I should see "Location:" - And I should see "Phoenix" - - # If required and the default value is not valid, the value should be required - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].EnumerationFieldSettings.Required | true | - | Fields[0].EnumerationFieldSettings.Options | Phoenix | - | Fields[0].EnumerationFieldSettings.ListMode | Checkbox | - | Fields[0].EnumerationFieldSettings.DefaultValue | foo;bar | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - Then I should see "Location" - When I fill in - | name | value | - | Event.Location.SelectedValues | | - And I hit "Save" - Then I should see "The field Location is mandatory." - # If required and no default value, the list box should have the required attribute + # The required attribute should be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | | Fields[0].EnumerationFieldSettings.Required | true | | Fields[0].EnumerationFieldSettings.ListMode | Listbox | - | Fields[0].EnumerationFieldSettings.DefaultValue | | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should see "required=\"required\"" - # If required and a default value is set, the list box should not have the required attribute + # The required attribute should not be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | - | Fields[0].EnumerationFieldSettings.Required | true | + | Fields[0].EnumerationFieldSettings.Required | false | | Fields[0].EnumerationFieldSettings.ListMode | Listbox | - | Fields[0].EnumerationFieldSettings.DefaultValue | Phoenix | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should not see "required=\"required\"" diff --git a/src/Orchard.Specs/Enumeration.feature.cs b/src/Orchard.Specs/Enumeration.feature.cs index 5d8e0495d..6f62ed7f9 100644 --- a/src/Orchard.Specs/Enumeration.feature.cs +++ b/src/Orchard.Specs/Enumeration.feature.cs @@ -304,176 +304,37 @@ this.ScenarioSetup(scenarioInfo); "value"}); table12.AddRow(new string[] { "Fields[0].EnumerationFieldSettings.Required", - "false"}); - table12.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.Options", - "Boston"}); + "true"}); table12.AddRow(new string[] { "Fields[0].EnumerationFieldSettings.ListMode", - "Checkbox"}); - table12.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.DefaultValue", - "foo;Boston;bar"}); + "Listbox"}); #line 124 testRunner.And("I fill in", ((string)(null)), table12, "And "); -#line 130 +#line 128 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 131 +#line 129 testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 132 - testRunner.Then("I should see \"Location\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 130 + testRunner.Then("I should see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 133 + testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table13 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); table13.AddRow(new string[] { - "Event.Location.SelectedValues", - ""}); -#line 133 - testRunner.When("I fill in", ((string)(null)), table13, "When "); -#line 136 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 137 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); + "Fields[0].EnumerationFieldSettings.Required", + "false"}); + table13.AddRow(new string[] { + "Fields[0].EnumerationFieldSettings.ListMode", + "Listbox"}); +#line 134 + testRunner.And("I fill in", ((string)(null)), table13, "And "); #line 138 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); + testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 139 - testRunner.When("I go to \"Admin/Contents/List\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); + testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 140 - testRunner.Then("I should see \"Location:\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 141 - testRunner.And("I should see \"Boston\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 144 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table14 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table14.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.Required", - "true"}); - table14.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.Options", - "Phoenix"}); - table14.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.ListMode", - "Checkbox"}); - table14.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.DefaultValue", - "foo;Phoenix;bar"}); -#line 145 - testRunner.And("I fill in", ((string)(null)), table14, "And "); -#line 151 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 152 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 153 - testRunner.Then("I should see \"Location\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line hidden - TechTalk.SpecFlow.Table table15 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table15.AddRow(new string[] { - "Event.Location.SelectedValues", - ""}); -#line 154 - testRunner.When("I fill in", ((string)(null)), table15, "When "); -#line 157 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 158 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 159 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 160 - testRunner.When("I go to \"Admin/Contents/List\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 161 - testRunner.Then("I should see \"Location:\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 162 - testRunner.And("I should see \"Phoenix\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 165 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table16 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table16.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.Required", - "true"}); - table16.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.Options", - "Phoenix"}); - table16.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.ListMode", - "Checkbox"}); - table16.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.DefaultValue", - "foo;bar"}); -#line 166 - testRunner.And("I fill in", ((string)(null)), table16, "And "); -#line 172 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 173 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 174 - testRunner.Then("I should see \"Location\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line hidden - TechTalk.SpecFlow.Table table17 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table17.AddRow(new string[] { - "Event.Location.SelectedValues", - ""}); -#line 175 - testRunner.When("I fill in", ((string)(null)), table17, "When "); -#line 178 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 179 - testRunner.Then("I should see \"The field Location is mandatory.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 182 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table18 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table18.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.Required", - "true"}); - table18.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.ListMode", - "Listbox"}); - table18.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.DefaultValue", - ""}); -#line 183 - testRunner.And("I fill in", ((string)(null)), table18, "And "); -#line 188 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 189 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 190 - testRunner.Then("I should see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 193 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table19 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table19.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.Required", - "true"}); - table19.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.ListMode", - "Listbox"}); - table19.AddRow(new string[] { - "Fields[0].EnumerationFieldSettings.DefaultValue", - "Phoenix"}); -#line 194 - testRunner.And("I fill in", ((string)(null)), table19, "And "); -#line 199 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 200 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 201 testRunner.Then("I should not see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden this.ScenarioCleanup(); diff --git a/src/Orchard.Specs/Input.feature b/src/Orchard.Specs/Input.feature index 54af4f43a..2db7cb2c2 100644 --- a/src/Orchard.Specs/Input.feature +++ b/src/Orchard.Specs/Input.feature @@ -129,58 +129,29 @@ Scenario: Creating and using Input fields Then I should see "Contact:" And I should see "contact@orchardproject.net" - # If not required and no value, the default value should be used + # The default value should be proposed on creation When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | - | Fields[0].InputFieldSettings.Required | false | - | Fields[0].InputFieldSettings.DefaultValue | contact1@orchardproject.net | + | Fields[0].InputFieldSettings.DefaultValue | contact@orchardproject.net | And I hit "Save" And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.Contact.Value | | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - When I go to "Admin/Contents/List" - Then I should see "Contact:" - And I should see "contact1@orchardproject.net" + Then I should see "value=\"contact@orchardproject.net\"" - # If required and no value, the default value should be used - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].InputFieldSettings.Required | true | - | Fields[0].InputFieldSettings.DefaultValue | contact2@orchardproject.net | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.Contact.Value | | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - When I go to "Admin/Contents/List" - Then I should see "Contact:" - And I should see "contact2@orchardproject.net" - - # If required and no default value, the required attribute should be used + # The required attribute should be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | | Fields[0].InputFieldSettings.Required | true | - | Fields[0].InputFieldSettings.DefaultValue | | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should see "required=\"required\"" - # If required and a default value is set, the required attribute should not be used + # The required attribute should not be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in - | name | value | - | Fields[0].InputFieldSettings.Required | true | - | Fields[0].InputFieldSettings.DefaultValue | contact@orchardproject.net | + | name | value | + | Fields[0].InputFieldSettings.Required | false | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should not see "required=\"required\"" \ No newline at end of file diff --git a/src/Orchard.Specs/Input.feature.cs b/src/Orchard.Specs/Input.feature.cs index 0f7c48698..7d3df6de0 100644 --- a/src/Orchard.Specs/Input.feature.cs +++ b/src/Orchard.Specs/Input.feature.cs @@ -303,39 +303,34 @@ this.ScenarioSetup(scenarioInfo); TechTalk.SpecFlow.Table table13 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); - table13.AddRow(new string[] { - "Fields[0].InputFieldSettings.Required", - "false"}); table13.AddRow(new string[] { "Fields[0].InputFieldSettings.DefaultValue", - "contact1@orchardproject.net"}); + "contact@orchardproject.net"}); #line 134 testRunner.And("I fill in", ((string)(null)), table13, "And "); -#line 138 +#line 137 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 139 +#line 138 testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 139 + testRunner.Then("I should see \"value=\\\"contact@orchardproject.net\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 142 + testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table14 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); table14.AddRow(new string[] { - "Event.Contact.Value", - ""}); -#line 140 - testRunner.And("I fill in", ((string)(null)), table14, "And "); + "Fields[0].InputFieldSettings.Required", + "true"}); #line 143 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 144 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 145 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); + testRunner.And("I fill in", ((string)(null)), table14, "And "); #line 146 - testRunner.When("I go to \"Admin/Contents/List\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); + testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 147 - testRunner.Then("I should see \"Contact:\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); + testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 148 - testRunner.And("I should see \"contact1@orchardproject.net\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); + testRunner.Then("I should see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line 151 testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden @@ -344,76 +339,14 @@ this.ScenarioSetup(scenarioInfo); "value"}); table15.AddRow(new string[] { "Fields[0].InputFieldSettings.Required", - "true"}); - table15.AddRow(new string[] { - "Fields[0].InputFieldSettings.DefaultValue", - "contact2@orchardproject.net"}); + "false"}); #line 152 testRunner.And("I fill in", ((string)(null)), table15, "And "); +#line 155 + testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 156 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); + testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 157 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line hidden - TechTalk.SpecFlow.Table table16 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table16.AddRow(new string[] { - "Event.Contact.Value", - ""}); -#line 158 - testRunner.And("I fill in", ((string)(null)), table16, "And "); -#line 161 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 162 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 163 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 164 - testRunner.When("I go to \"Admin/Contents/List\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 165 - testRunner.Then("I should see \"Contact:\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 166 - testRunner.And("I should see \"contact2@orchardproject.net\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 169 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table17 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table17.AddRow(new string[] { - "Fields[0].InputFieldSettings.Required", - "true"}); - table17.AddRow(new string[] { - "Fields[0].InputFieldSettings.DefaultValue", - ""}); -#line 170 - testRunner.And("I fill in", ((string)(null)), table17, "And "); -#line 174 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 175 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 176 - testRunner.Then("I should see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 179 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table18 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table18.AddRow(new string[] { - "Fields[0].InputFieldSettings.Required", - "true"}); - table18.AddRow(new string[] { - "Fields[0].InputFieldSettings.DefaultValue", - "contact@orchardproject.net"}); -#line 180 - testRunner.And("I fill in", ((string)(null)), table18, "And "); -#line 184 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 185 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 186 testRunner.Then("I should not see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden this.ScenarioCleanup(); diff --git a/src/Orchard.Specs/Link.feature b/src/Orchard.Specs/Link.feature index d190a6f27..2916a0a05 100644 --- a/src/Orchard.Specs/Link.feature +++ b/src/Orchard.Specs/Link.feature @@ -69,64 +69,29 @@ Scenario: Creating and using Link fields And I hit "Save" Then I should see "Url is required for Site Url." - # If not required and no value, the default value should be used + # The default value should be proposed on creation When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | - | Fields[0].LinkFieldSettings.Required | false | | Fields[0].LinkFieldSettings.DefaultValue | http://www.orchardproject.net | And I hit "Save" And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.SiteUrl.Value | | - And I fill in - | name | value | - | Event.SiteUrl.Text | Orchard1 | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - When I go to "Admin/Contents/List" - Then I should see "Site Url:" - And I should see "Orchard1" + Then I should see "value=\"http://www.orchardproject.net\"" - # If required and no value, the default value should be used - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].LinkFieldSettings.Required | true | - | Fields[0].LinkFieldSettings.DefaultValue | http://www.orchardproject.net | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.SiteUrl.Value | | - And I fill in - | name | value | - | Event.SiteUrl.Text | Orchard2 | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - When I go to "Admin/Contents/List" - Then I should see "Site Url:" - And I should see "Orchard2" - - # If required and no default value, the required attribute should be used + # The required attribute should be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | | Fields[0].LinkFieldSettings.Required | true | - | Fields[0].LinkFieldSettings.DefaultValue | | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should see "required=\"required\"" - # If required and a default value is set, the required attribute should not be used + # The required attribute should not be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in - | name | value | - | Fields[0].LinkFieldSettings.Required | true | - | Fields[0].LinkFieldSettings.DefaultValue | http://www.orchardproject.net | + | name | value | + | Fields[0].LinkFieldSettings.Required | false | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should not see "required=\"required\"" \ No newline at end of file diff --git a/src/Orchard.Specs/Link.feature.cs b/src/Orchard.Specs/Link.feature.cs index 28570e144..6f3b58a63 100644 --- a/src/Orchard.Specs/Link.feature.cs +++ b/src/Orchard.Specs/Link.feature.cs @@ -210,135 +210,50 @@ this.ScenarioSetup(scenarioInfo); TechTalk.SpecFlow.Table table8 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); - table8.AddRow(new string[] { - "Fields[0].LinkFieldSettings.Required", - "false"}); table8.AddRow(new string[] { "Fields[0].LinkFieldSettings.DefaultValue", "http://www.orchardproject.net"}); #line 74 testRunner.And("I fill in", ((string)(null)), table8, "And "); -#line 78 +#line 77 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 79 +#line 78 testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 79 + testRunner.Then("I should see \"value=\\\"http://www.orchardproject.net\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 82 + testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table9 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); table9.AddRow(new string[] { - "Event.SiteUrl.Value", - ""}); -#line 80 + "Fields[0].LinkFieldSettings.Required", + "true"}); +#line 83 testRunner.And("I fill in", ((string)(null)), table9, "And "); +#line 86 + testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 87 + testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 88 + testRunner.Then("I should see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 91 + testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table10 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); table10.AddRow(new string[] { - "Event.SiteUrl.Text", - "Orchard1"}); -#line 83 + "Fields[0].LinkFieldSettings.Required", + "false"}); +#line 92 testRunner.And("I fill in", ((string)(null)), table10, "And "); -#line 86 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 87 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 88 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 89 - testRunner.When("I go to \"Admin/Contents/List\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 90 - testRunner.Then("I should see \"Site Url:\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 91 - testRunner.And("I should see \"Orchard1\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 94 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table11 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table11.AddRow(new string[] { - "Fields[0].LinkFieldSettings.Required", - "true"}); - table11.AddRow(new string[] { - "Fields[0].LinkFieldSettings.DefaultValue", - "http://www.orchardproject.net"}); #line 95 - testRunner.And("I fill in", ((string)(null)), table11, "And "); -#line 99 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 100 +#line 96 testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line hidden - TechTalk.SpecFlow.Table table12 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table12.AddRow(new string[] { - "Event.SiteUrl.Value", - ""}); -#line 101 - testRunner.And("I fill in", ((string)(null)), table12, "And "); -#line hidden - TechTalk.SpecFlow.Table table13 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table13.AddRow(new string[] { - "Event.SiteUrl.Text", - "Orchard2"}); -#line 104 - testRunner.And("I fill in", ((string)(null)), table13, "And "); -#line 107 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 108 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 109 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 110 - testRunner.When("I go to \"Admin/Contents/List\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 111 - testRunner.Then("I should see \"Site Url:\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 112 - testRunner.And("I should see \"Orchard2\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 115 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table14 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table14.AddRow(new string[] { - "Fields[0].LinkFieldSettings.Required", - "true"}); - table14.AddRow(new string[] { - "Fields[0].LinkFieldSettings.DefaultValue", - ""}); -#line 116 - testRunner.And("I fill in", ((string)(null)), table14, "And "); -#line 120 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 121 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 122 - testRunner.Then("I should see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 125 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table15 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table15.AddRow(new string[] { - "Fields[0].LinkFieldSettings.Required", - "true"}); - table15.AddRow(new string[] { - "Fields[0].LinkFieldSettings.DefaultValue", - "http://www.orchardproject.net"}); -#line 126 - testRunner.And("I fill in", ((string)(null)), table15, "And "); -#line 130 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 131 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 132 +#line 97 testRunner.Then("I should not see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden this.ScenarioCleanup(); diff --git a/src/Orchard.Specs/Numeric.feature b/src/Orchard.Specs/Numeric.feature index 05f87e8f5..4e76bfd2f 100644 --- a/src/Orchard.Specs/Numeric.feature +++ b/src/Orchard.Specs/Numeric.feature @@ -99,101 +99,36 @@ Scenario: Creating and using numeric fields And I should see "The value 'b' is not valid for Maximum." # The value should be validated - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].NumericFieldSettings.Required | false | - | Fields[0].NumericFieldSettings.DefaultValue | 4 | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" + When I go to "Admin/Contents/Create/Event" And I fill in | name | value | | Event.Guests.Value | a | And I hit "Save" - Then I should see "Guests or its default value is an invalid number" + Then I should see "Guests is an invalid number" - # If not required and no value, the default value should be used + # The default value should be proposed on creation When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | - | Fields[0].NumericFieldSettings.Required | false | - | Fields[0].NumericFieldSettings.DefaultValue | 4 | + | Fields[0].NumericFieldSettings.DefaultValue | 1234 | And I hit "Save" And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.Guests.Value | | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - When I go to "Admin/Contents/List" - Then I should see "Guests:" - And I should see "4" + Then I should see "value=\"1234\"" - # If required and no value, the default value should be used + # The required attribute should be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | | Fields[0].NumericFieldSettings.Required | true | - | Fields[0].NumericFieldSettings.DefaultValue | 5 | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.Guests.Value | | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - When I go to "Admin/Contents/List" - Then I should see "Guests:" - And I should see "5" - - # The default value should be validated - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].NumericFieldSettings.Required | false | - | Fields[0].NumericFieldSettings.DefaultValue | a | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.Guests.Value | | - And I hit "Save" - Then I should see "Guests or its default value is an invalid number" - - # The default value should be bound - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].NumericFieldSettings.Required | false | - | Fields[0].NumericFieldSettings.Minimum | -10 | - | Fields[0].NumericFieldSettings.Maximum | 100 | - | Fields[0].NumericFieldSettings.DefaultValue | -20 | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.Guests.Value | | - And I hit "Save" - Then I should see "The value must be greater than -10" - - # If required and no default value, the required attribute should be used - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].NumericFieldSettings.Required | true | - | Fields[0].NumericFieldSettings.DefaultValue | | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should see "required=\"required\"" - # If required and a default value is set, the required attribute should not be used + # The required attribute should not be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | - | Fields[0].NumericFieldSettings.Required | true | - | Fields[0].NumericFieldSettings.DefaultValue | 6 | + | Fields[0].NumericFieldSettings.Required | false | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should not see "required=\"required\"" \ No newline at end of file diff --git a/src/Orchard.Specs/Numeric.feature.cs b/src/Orchard.Specs/Numeric.feature.cs index ba4bda9ce..4b7744a44 100644 --- a/src/Orchard.Specs/Numeric.feature.cs +++ b/src/Orchard.Specs/Numeric.feature.cs @@ -266,37 +266,38 @@ this.ScenarioSetup(scenarioInfo); #line 99 testRunner.And("I should see \"The value 'b' is not valid for Maximum.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 102 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); + testRunner.When("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table11 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); table11.AddRow(new string[] { - "Fields[0].NumericFieldSettings.Required", - "false"}); - table11.AddRow(new string[] { - "Fields[0].NumericFieldSettings.DefaultValue", - "4"}); + "Event.Guests.Value", + "a"}); #line 103 testRunner.And("I fill in", ((string)(null)), table11, "And "); -#line 107 +#line 106 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 108 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 107 + testRunner.Then("I should see \"Guests is an invalid number\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 110 + testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table12 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); table12.AddRow(new string[] { - "Event.Guests.Value", - "a"}); -#line 109 + "Fields[0].NumericFieldSettings.DefaultValue", + "1234"}); +#line 111 testRunner.And("I fill in", ((string)(null)), table12, "And "); -#line 112 +#line 114 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 113 - testRunner.Then("I should see \"Guests or its default value is an invalid number\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 115 + testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 116 + testRunner.Then("I should see \"value=\\\"1234\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 119 testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table13 = new TechTalk.SpecFlow.Table(new string[] { @@ -304,183 +305,31 @@ this.ScenarioSetup(scenarioInfo); "value"}); table13.AddRow(new string[] { "Fields[0].NumericFieldSettings.Required", - "false"}); - table13.AddRow(new string[] { - "Fields[0].NumericFieldSettings.DefaultValue", - "4"}); -#line 117 + "true"}); +#line 120 testRunner.And("I fill in", ((string)(null)), table13, "And "); -#line 121 +#line 123 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 122 +#line 124 testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 125 + testRunner.Then("I should see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 128 + testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table14 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); table14.AddRow(new string[] { - "Event.Guests.Value", - ""}); -#line 123 - testRunner.And("I fill in", ((string)(null)), table14, "And "); -#line 126 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 127 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 128 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); + "Fields[0].NumericFieldSettings.Required", + "false"}); #line 129 - testRunner.When("I go to \"Admin/Contents/List\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 130 - testRunner.Then("I should see \"Guests:\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 131 - testRunner.And("I should see \"4\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); + testRunner.And("I fill in", ((string)(null)), table14, "And "); +#line 132 + testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 133 + testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 134 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table15 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table15.AddRow(new string[] { - "Fields[0].NumericFieldSettings.Required", - "true"}); - table15.AddRow(new string[] { - "Fields[0].NumericFieldSettings.DefaultValue", - "5"}); -#line 135 - testRunner.And("I fill in", ((string)(null)), table15, "And "); -#line 139 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 140 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line hidden - TechTalk.SpecFlow.Table table16 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table16.AddRow(new string[] { - "Event.Guests.Value", - ""}); -#line 141 - testRunner.And("I fill in", ((string)(null)), table16, "And "); -#line 144 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 145 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 146 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 147 - testRunner.When("I go to \"Admin/Contents/List\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 148 - testRunner.Then("I should see \"Guests:\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 149 - testRunner.And("I should see \"5\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 152 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table17 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table17.AddRow(new string[] { - "Fields[0].NumericFieldSettings.Required", - "false"}); - table17.AddRow(new string[] { - "Fields[0].NumericFieldSettings.DefaultValue", - "a"}); -#line 153 - testRunner.And("I fill in", ((string)(null)), table17, "And "); -#line 157 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 158 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line hidden - TechTalk.SpecFlow.Table table18 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table18.AddRow(new string[] { - "Event.Guests.Value", - ""}); -#line 159 - testRunner.And("I fill in", ((string)(null)), table18, "And "); -#line 162 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 163 - testRunner.Then("I should see \"Guests or its default value is an invalid number\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 166 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table19 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table19.AddRow(new string[] { - "Fields[0].NumericFieldSettings.Required", - "false"}); - table19.AddRow(new string[] { - "Fields[0].NumericFieldSettings.Minimum", - "-10"}); - table19.AddRow(new string[] { - "Fields[0].NumericFieldSettings.Maximum", - "100"}); - table19.AddRow(new string[] { - "Fields[0].NumericFieldSettings.DefaultValue", - "-20"}); -#line 167 - testRunner.And("I fill in", ((string)(null)), table19, "And "); -#line 173 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 174 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line hidden - TechTalk.SpecFlow.Table table20 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table20.AddRow(new string[] { - "Event.Guests.Value", - ""}); -#line 175 - testRunner.And("I fill in", ((string)(null)), table20, "And "); -#line 178 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 179 - testRunner.Then("I should see \"The value must be greater than -10\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 182 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table21 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table21.AddRow(new string[] { - "Fields[0].NumericFieldSettings.Required", - "true"}); - table21.AddRow(new string[] { - "Fields[0].NumericFieldSettings.DefaultValue", - ""}); -#line 183 - testRunner.And("I fill in", ((string)(null)), table21, "And "); -#line 187 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 188 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 189 - testRunner.Then("I should see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 192 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table22 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table22.AddRow(new string[] { - "Fields[0].NumericFieldSettings.Required", - "true"}); - table22.AddRow(new string[] { - "Fields[0].NumericFieldSettings.DefaultValue", - "6"}); -#line 193 - testRunner.And("I fill in", ((string)(null)), table22, "And "); -#line 197 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 198 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 199 testRunner.Then("I should not see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden this.ScenarioCleanup(); diff --git a/src/Orchard.Specs/Text.feature b/src/Orchard.Specs/Text.feature index 3ddeaee99..0be4fc693 100644 --- a/src/Orchard.Specs/Text.feature +++ b/src/Orchard.Specs/Text.feature @@ -67,60 +67,35 @@ Scenario: Creating and using Text fields Then I should see "Subject" When I fill in | name | value | - | Event.Subject.Text | Orchard Harvest 2013 | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - And I should see "Orchard Harvest 2013" - - # If not required and no value, the default value should be used - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].TextFieldSettingsEventsViewModel.Settings.Required | false | - | Fields[0].TextFieldSettingsEventsViewModel.Settings.DefaultValue | Orchard Harvest 2014 | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.Subject.Text | | - And I hit "Save" - And I am redirected - Then I should see "Your Event has been created." - And I should see "Orchard Harvest 2014" - - # If required and no value, the default value should be used - When I go to "Admin/ContentTypes/Edit/Event" - And I fill in - | name | value | - | Fields[0].TextFieldSettingsEventsViewModel.Settings.Required | true | - | Fields[0].TextFieldSettingsEventsViewModel.Settings.DefaultValue | Orchard Harvest 2015 | - And I hit "Save" - And I go to "Admin/Contents/Create/Event" - And I fill in - | name | value | - | Event.Subject.Text | | + | Event.Subject.Text | Orchard Harvest 2015 | And I hit "Save" And I am redirected Then I should see "Your Event has been created." And I should see "Orchard Harvest 2015" - # If required and no default value, the required attribute should be used + # The default value should be proposed on creation + When I go to "Admin/ContentTypes/Edit/Event" + And I fill in + | name | value | + | Fields[0].TextFieldSettingsEventsViewModel.Settings.DefaultValue | Orchard Harvest 2016 | + And I hit "Save" + And I go to "Admin/Contents/Create/Event" + Then I should see "value=\"Orchard Harvest 2016\"" + + # The required attribute should be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in | name | value | | Fields[0].TextFieldSettingsEventsViewModel.Settings.Required | true | - | Fields[0].TextFieldSettingsEventsViewModel.Settings.DefaultValue | | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should see "required=\"required\"" - # If required and a default value is set, the required attribute should not be used + # The required attribute should not be used When I go to "Admin/ContentTypes/Edit/Event" And I fill in - | name | value | - | Fields[0].TextFieldSettingsEventsViewModel.Settings.Required | true | - | Fields[0].TextFieldSettingsEventsViewModel.Settings.DefaultValue | Orchard Harvest 2015 | + | name | value | + | Fields[0].TextFieldSettingsEventsViewModel.Settings.Required | false | And I hit "Save" And I go to "Admin/Contents/Create/Event" Then I should not see "required=\"required\"" \ No newline at end of file diff --git a/src/Orchard.Specs/Text.feature.cs b/src/Orchard.Specs/Text.feature.cs index bb37125eb..922a28491 100644 --- a/src/Orchard.Specs/Text.feature.cs +++ b/src/Orchard.Specs/Text.feature.cs @@ -197,7 +197,7 @@ this.ScenarioSetup(scenarioInfo); "value"}); table7.AddRow(new string[] { "Event.Subject.Text", - "Orchard Harvest 2013"}); + "Orchard Harvest 2015"}); #line 68 testRunner.When("I fill in", ((string)(null)), table7, "When "); #line 71 @@ -207,43 +207,42 @@ this.ScenarioSetup(scenarioInfo); #line 73 testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line 74 - testRunner.And("I should see \"Orchard Harvest 2013\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); + testRunner.And("I should see \"Orchard Harvest 2015\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 77 testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table8 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); - table8.AddRow(new string[] { - "Fields[0].TextFieldSettingsEventsViewModel.Settings.Required", - "false"}); table8.AddRow(new string[] { "Fields[0].TextFieldSettingsEventsViewModel.Settings.DefaultValue", - "Orchard Harvest 2014"}); + "Orchard Harvest 2016"}); #line 78 testRunner.And("I fill in", ((string)(null)), table8, "And "); -#line 82 +#line 81 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 83 +#line 82 testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 83 + testRunner.Then("I should see \"value=\\\"Orchard Harvest 2016\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 86 + testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table9 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); table9.AddRow(new string[] { - "Event.Subject.Text", - ""}); -#line 84 - testRunner.And("I fill in", ((string)(null)), table9, "And "); + "Fields[0].TextFieldSettingsEventsViewModel.Settings.Required", + "true"}); #line 87 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 88 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 89 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); + testRunner.And("I fill in", ((string)(null)), table9, "And "); #line 90 - testRunner.And("I should see \"Orchard Harvest 2014\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 93 + testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 91 + testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 92 + testRunner.Then("I should see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 95 testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table10 = new TechTalk.SpecFlow.Table(new string[] { @@ -251,72 +250,14 @@ this.ScenarioSetup(scenarioInfo); "value"}); table10.AddRow(new string[] { "Fields[0].TextFieldSettingsEventsViewModel.Settings.Required", - "true"}); - table10.AddRow(new string[] { - "Fields[0].TextFieldSettingsEventsViewModel.Settings.DefaultValue", - "Orchard Harvest 2015"}); -#line 94 + "false"}); +#line 96 testRunner.And("I fill in", ((string)(null)), table10, "And "); -#line 98 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 99 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line hidden - TechTalk.SpecFlow.Table table11 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table11.AddRow(new string[] { - "Event.Subject.Text", - ""}); + testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 100 - testRunner.And("I fill in", ((string)(null)), table11, "And "); -#line 103 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 104 - testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 105 - testRunner.Then("I should see \"Your Event has been created.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 106 - testRunner.And("I should see \"Orchard Harvest 2015\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 109 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table12 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table12.AddRow(new string[] { - "Fields[0].TextFieldSettingsEventsViewModel.Settings.Required", - "true"}); - table12.AddRow(new string[] { - "Fields[0].TextFieldSettingsEventsViewModel.Settings.DefaultValue", - ""}); -#line 110 - testRunner.And("I fill in", ((string)(null)), table12, "And "); -#line 114 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 115 testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 116 - testRunner.Then("I should see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 119 - testRunner.When("I go to \"Admin/ContentTypes/Edit/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line hidden - TechTalk.SpecFlow.Table table13 = new TechTalk.SpecFlow.Table(new string[] { - "name", - "value"}); - table13.AddRow(new string[] { - "Fields[0].TextFieldSettingsEventsViewModel.Settings.Required", - "true"}); - table13.AddRow(new string[] { - "Fields[0].TextFieldSettingsEventsViewModel.Settings.DefaultValue", - "Orchard Harvest 2015"}); -#line 120 - testRunner.And("I fill in", ((string)(null)), table13, "And "); -#line 124 - testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 125 - testRunner.And("I go to \"Admin/Contents/Create/Event\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 126 +#line 101 testRunner.Then("I should not see \"required=\\\"required\\\"\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden this.ScenarioCleanup(); diff --git a/src/Orchard.Web/Core/Common/Drivers/TextFieldDriver.cs b/src/Orchard.Web/Core/Common/Drivers/TextFieldDriver.cs index 24b455019..8b8b92abc 100644 --- a/src/Orchard.Web/Core/Common/Drivers/TextFieldDriver.cs +++ b/src/Orchard.Web/Core/Common/Drivers/TextFieldDriver.cs @@ -45,10 +45,13 @@ namespace Orchard.Core.Common.Drivers { protected override DriverResult Editor(ContentPart part, TextField field, dynamic shapeHelper) { return ContentShape("Fields_Common_Text_Edit", GetDifferentiator(field, part), () => { + var settings = field.PartFieldDefinition.Settings.GetModel(); + var text = part.IsNew() ? settings.DefaultValue : field.Value; + var viewModel = new TextFieldDriverViewModel { Field = field, - Text = field.Value, - Settings = field.PartFieldDefinition.Settings.GetModel(), + Text = text, + Settings = settings, ContentItem = part.ContentItem }; @@ -65,10 +68,6 @@ namespace Orchard.Core.Common.Drivers { field.Value = viewModel.Text; - if (String.IsNullOrWhiteSpace(field.Value) && !String.IsNullOrWhiteSpace(settings.DefaultValue)) { - field.Value = settings.DefaultValue; - } - if (settings.Required && String.IsNullOrWhiteSpace(field.Value)) { updater.AddModelError("Text", T("The field {0} is mandatory", T(field.DisplayName))); } diff --git a/src/Orchard.Web/Core/Common/Views/DefinitionTemplates/TextFieldDefaultValueEditor.cshtml b/src/Orchard.Web/Core/Common/Views/DefinitionTemplates/TextFieldDefaultValueEditor.cshtml index bbd84d350..01bdbffde 100644 --- a/src/Orchard.Web/Core/Common/Views/DefinitionTemplates/TextFieldDefaultValueEditor.cshtml +++ b/src/Orchard.Web/Core/Common/Views/DefinitionTemplates/TextFieldDefaultValueEditor.cshtml @@ -1,8 +1,6 @@ @model Orchard.Core.Common.ViewModels.TextFieldSettingsEventsViewModel -@* This is a token-less default value editor that can be overridden from features that can depend on Orchard.Tokens. *@ - @Html.TextBoxFor(m => m.Settings.DefaultValue, new { @class = "text large" }) -@T("Default value for the field. If there is no value given for the actual field, this will be filled in. (optional)") +@T("The default value proposed when creating a content item. (optional)") @Html.ValidationMessageFor(m => m.Settings.DefaultValue) \ No newline at end of file diff --git a/src/Orchard.Web/Core/Common/Views/EditorTemplates/Fields.Common.Text.Edit.cshtml b/src/Orchard.Web/Core/Common/Views/EditorTemplates/Fields.Common.Text.Edit.cshtml index ad7b3ea1f..833887b1a 100644 --- a/src/Orchard.Web/Core/Common/Views/EditorTemplates/Fields.Common.Text.Edit.cshtml +++ b/src/Orchard.Web/Core/Common/Views/EditorTemplates/Fields.Common.Text.Edit.cshtml @@ -1,20 +1,15 @@ @model Orchard.Core.Common.ViewModels.TextFieldDriverViewModel -@{ - var isRequired = Model.Settings.Required && String.IsNullOrWhiteSpace(Model.Settings.DefaultValue); -} +
@if (String.IsNullOrWhiteSpace(Model.Settings.Flavor)) { - @(isRequired ? Html.TextBoxFor(m => m.Text, new {@class = "text", required = "required"}) : Html.TextBoxFor(m => m.Text, new {@class = "text"})) + @(Model.Settings.Required ? Html.TextBoxFor(m => m.Text, new {@class = "text", required = "required"}) : Html.TextBoxFor(m => m.Text, new {@class = "text"})) @Html.ValidationMessageFor(m => m.Text) } else { - @Display.Body_Editor(Text: Model.Text, EditorFlavor: Model.Settings.Flavor, Required: isRequired, ContentItem: Model.ContentItem) + @Display.Body_Editor(Text: Model.Text, EditorFlavor: Model.Settings.Flavor, Required: Model.Settings.Required, ContentItem: Model.ContentItem) } @if (HasText(Model.Settings.Hint)) { @Model.Settings.Hint } - @if (!String.IsNullOrWhiteSpace(Model.Settings.DefaultValue)) { - @T("If the field is left empty then the default value will be used.") - }
\ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/BooleanFieldDriver.cs b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/BooleanFieldDriver.cs index 683e712e9..012009b37 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/BooleanFieldDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/BooleanFieldDriver.cs @@ -34,26 +34,22 @@ namespace Orchard.Fields.Drivers { } protected override DriverResult Editor(ContentPart part, BooleanField field, dynamic shapeHelper) { - // if the content item is new, assign the default value - if(!part.HasDraft() && !part.HasPublished()) { - var settings = field.PartFieldDefinition.Settings.GetModel(); - field.Value = settings.DefaultValue; - } - return ContentShape("Fields_Boolean_Edit", GetDifferentiator(field, part), - () => shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: field, Prefix: GetPrefix(field, part))); + () => { + if (part.IsNew()) { + var settings = field.PartFieldDefinition.Settings.GetModel(); + field.Value = settings.DefaultValue; + } + return shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: field, Prefix: GetPrefix(field, part)); + }); } protected override DriverResult Editor(ContentPart part, BooleanField field, IUpdateModel updater, dynamic shapeHelper) { if (updater.TryUpdateModel(field, GetPrefix(field, part), null, null)) { var settings = field.PartFieldDefinition.Settings.GetModel(); + if (!settings.Optional && !field.Value.HasValue) { - if (settings.DefaultValue.HasValue) { - field.Value = settings.DefaultValue; - } - else { - updater.AddModelError(field.Name, T("The field {0} is mandatory.", T(field.DisplayName))); - } + updater.AddModelError(field.Name, T("The field {0} is mandatory.", T(field.DisplayName))); } } diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/DateTimeFieldDriver.cs b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/DateTimeFieldDriver.cs index af36b27b3..b134a716f 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/DateTimeFieldDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/DateTimeFieldDriver.cs @@ -75,7 +75,7 @@ namespace Orchard.Fields.Drivers { protected override DriverResult Editor(ContentPart part, DateTimeField field, dynamic shapeHelper) { var settings = field.PartFieldDefinition.Settings.GetModel(); - var value = field.DateTime; + var value = part.IsNew() ? settings.DefaultValue : field.DateTime; var options = new DateLocalizationOptions(); // Don't do any time zone conversion if field is semantically a date-only field, because that might mutate the date component. @@ -96,7 +96,6 @@ namespace Orchard.Fields.Drivers { Name = field.DisplayName, Hint = settings.Hint, IsRequired = settings.Required, - HasDefaultValue = settings.DefaultValue.HasValue, Editor = new DateTimeEditor() { Date = showDate ? DateLocalizationServices.ConvertToLocalizedDateString(value, options) : null, Time = showTime ? DateLocalizationServices.ConvertToLocalizedTimeString(value, options) : null, @@ -133,37 +132,26 @@ namespace Orchard.Fields.Drivers { var showTime = settings.Display == DateTimeFieldDisplays.DateAndTime || settings.Display == DateTimeFieldDisplays.TimeOnly; DateTime? value = null; - var IsParseError = false; - // If required and one field is missing, don't try to parse data. - if (settings.Required && ((showDate && String.IsNullOrWhiteSpace(viewModel.Editor.Date)) || (showTime && String.IsNullOrWhiteSpace(viewModel.Editor.Time)))) { - // And use the default value only if all required fields are empty. - if (!showDate || !showTime || (String.IsNullOrWhiteSpace(viewModel.Editor.Date) && String.IsNullOrWhiteSpace(viewModel.Editor.Time))) { - value = settings.DefaultValue; - } - } - else { + // Try to parse data if not required or if there are no missing fields. + if (!settings.Required || ((!showDate || !String.IsNullOrWhiteSpace(viewModel.Editor.Date)) && (!showTime || !String.IsNullOrWhiteSpace(viewModel.Editor.Time)))) { try { - var utcDateTime = DateLocalizationServices.ConvertFromLocalizedString(viewModel.Editor.Date, viewModel.Editor.Time, options); - value = utcDateTime.HasValue ? utcDateTime : settings.DefaultValue; + value = DateLocalizationServices.ConvertFromLocalizedString(viewModel.Editor.Date, viewModel.Editor.Time, options); } catch { - IsParseError = true; updater.AddModelError(GetPrefix(field, part), T("{0} could not be parsed as a valid date and time.", field.DisplayName)); } } - if (!IsParseError) { - // Hackish workaround to make sure a time-only field with an entered time equivalent to - // 00:00 UTC doesn't get stored as a full DateTime.MinValue in the database, resulting - // in it being interpreted as an empty value when subsequently retrieved. - if (value.HasValue && settings.Display == DateTimeFieldDisplays.TimeOnly && value == DateTime.MinValue) { - value = value.Value.AddDays(1); - } + // Hackish workaround to make sure a time-only field with an entered time equivalent to + // 00:00 UTC doesn't get stored as a full DateTime.MinValue in the database, resulting + // in it being interpreted as an empty value when subsequently retrieved. + if (value.HasValue && settings.Display == DateTimeFieldDisplays.TimeOnly && value == DateTime.MinValue) { + value = value.Value.AddDays(1); + } - if (settings.Required && (!value.HasValue || (settings.Display != DateTimeFieldDisplays.TimeOnly && value.Value.Date == DateTime.MinValue))) { - updater.AddModelError(GetPrefix(field, part), T("{0} is required.", field.DisplayName)); - } + if (settings.Required && (!value.HasValue || (settings.Display != DateTimeFieldDisplays.TimeOnly && value.Value.Date == DateTime.MinValue))) { + updater.AddModelError(GetPrefix(field, part), T("{0} is required.", field.DisplayName)); } field.DateTime = value.HasValue ? value.Value : DateTime.MinValue; diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/EnumerationFieldDriver.cs b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/EnumerationFieldDriver.cs index 46082bf7a..3f5f379f6 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/EnumerationFieldDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/EnumerationFieldDriver.cs @@ -4,7 +4,6 @@ using Orchard.ContentManagement.Handlers; using Orchard.Fields.Fields; using Orchard.Fields.Settings; using Orchard.Localization; -using Orchard.Tokens; using System; using System.Collections.Generic; using System.Linq; @@ -13,11 +12,9 @@ namespace Orchard.Fields.Drivers { public class EnumerationFieldDriver : ContentFieldDriver { public IOrchardServices Services { get; set; } private const string TemplateName = "Fields/Enumeration.Edit"; - private readonly ITokenizer _tokenizer; - public EnumerationFieldDriver(IOrchardServices services, ITokenizer tokenizer) { + public EnumerationFieldDriver(IOrchardServices services) { Services = services; - _tokenizer = tokenizer; T = NullLocalizer.Instance; } @@ -39,13 +36,12 @@ namespace Orchard.Fields.Drivers { protected override DriverResult Editor(ContentPart part, EnumerationField field, dynamic shapeHelper) { return ContentShape("Fields_Enumeration_Edit", GetDifferentiator(field, part), () => { - if (field.Value == null) { + if (part.IsNew()) { var settings = field.PartFieldDefinition.Settings.GetModel(); if (!String.IsNullOrWhiteSpace(settings.DefaultValue)) { - field.Value = _tokenizer.Replace(settings.DefaultValue, new Dictionary { { "Content", part.ContentItem } }); + field.Value = settings.DefaultValue; } } - return shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: field, Prefix: GetPrefix(field, part)); }); } @@ -54,15 +50,6 @@ namespace Orchard.Fields.Drivers { if (updater.TryUpdateModel(field, GetPrefix(field, part), null, null)) { var settings = field.PartFieldDefinition.Settings.GetModel(); - if (field.SelectedValues.Length == 0 && !String.IsNullOrWhiteSpace(settings.DefaultValue) && !String.IsNullOrWhiteSpace(settings.Options)) { - field.Value = _tokenizer.Replace(settings.DefaultValue, new Dictionary { { "Content", part.ContentItem } }); - - string[] options = settings.Options.Split(new string[] { System.Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries); - var selectedValues = field.SelectedValues.ToList(); - selectedValues.RemoveAll(value => !options.Any(value.Equals)); - field.SelectedValues = selectedValues.ToArray(); - } - if (settings.Required && field.SelectedValues.Length == 0) { updater.AddModelError(field.Name, T("The field {0} is mandatory", T(field.DisplayName))); } diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/InputFieldDriver.cs b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/InputFieldDriver.cs index b56fdc79d..1300df8c1 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/InputFieldDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/InputFieldDriver.cs @@ -4,19 +4,15 @@ using Orchard.ContentManagement.Handlers; using Orchard.Fields.Fields; using Orchard.Fields.Settings; using Orchard.Localization; -using Orchard.Tokens; using System; -using System.Collections.Generic; namespace Orchard.Fields.Drivers { public class InputFieldDriver : ContentFieldDriver { public IOrchardServices Services { get; set; } private const string TemplateName = "Fields/Input.Edit"; - private readonly ITokenizer _tokenizer; - public InputFieldDriver(IOrchardServices services, ITokenizer tokenizer) { + public InputFieldDriver(IOrchardServices services) { Services = services; - _tokenizer = tokenizer; T = NullLocalizer.Instance; } @@ -39,17 +35,19 @@ namespace Orchard.Fields.Drivers { protected override DriverResult Editor(ContentPart part, InputField field, dynamic shapeHelper) { return ContentShape("Fields_Input_Edit", GetDifferentiator(field, part), - () => shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: field, Prefix: GetPrefix(field, part))); + () => { + if (part.IsNew()) { + var settings = field.PartFieldDefinition.Settings.GetModel(); + field.Value = settings.DefaultValue; + } + return shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: field, Prefix: GetPrefix(field, part)); + }); } protected override DriverResult Editor(ContentPart part, InputField field, IUpdateModel updater, dynamic shapeHelper) { if (updater.TryUpdateModel(field, GetPrefix(field, part), null, null)) { var settings = field.PartFieldDefinition.Settings.GetModel(); - if (String.IsNullOrWhiteSpace(field.Value) && !String.IsNullOrWhiteSpace(settings.DefaultValue)) { - field.Value = _tokenizer.Replace(settings.DefaultValue, new Dictionary { { "Content", part.ContentItem } }); - } - if (settings.Required && String.IsNullOrWhiteSpace(field.Value)) { updater.AddModelError(GetPrefix(field, part), T("The field {0} is mandatory.", T(field.DisplayName))); } diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/LinkFieldDriver.cs b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/LinkFieldDriver.cs index 0cf563921..554dee027 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/LinkFieldDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/LinkFieldDriver.cs @@ -4,7 +4,6 @@ using Orchard.ContentManagement.Handlers; using Orchard.Fields.Fields; using Orchard.Fields.Settings; using Orchard.Localization; -using Orchard.Tokens; using System; using System.Collections.Generic; @@ -12,11 +11,9 @@ namespace Orchard.Fields.Drivers { public class LinkFieldDriver : ContentFieldDriver { public IOrchardServices Services { get; set; } private const string TemplateName = "Fields/Link.Edit"; - private readonly ITokenizer _tokenizer; - public LinkFieldDriver(IOrchardServices services, ITokenizer tokenizer) { + public LinkFieldDriver(IOrchardServices services) { Services = services; - _tokenizer = tokenizer; T = NullLocalizer.Instance; } @@ -39,21 +36,20 @@ namespace Orchard.Fields.Drivers { protected override DriverResult Editor(ContentPart part, LinkField field, dynamic shapeHelper) { return ContentShape("Fields_Link_Edit", GetDifferentiator(field, part), - () => shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: field, Prefix: GetPrefix(field, part))); + () => { + if (part.IsNew()) { + var settings = field.PartFieldDefinition.Settings.GetModel(); + field.Value = settings.DefaultValue; + field.Text = settings.TextDefaultValue; + } + return shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: field, Prefix: GetPrefix(field, part)); + }); } protected override DriverResult Editor(ContentPart part, LinkField field, IUpdateModel updater, dynamic shapeHelper) { if (updater.TryUpdateModel(field, GetPrefix(field, part), null, null)) { var settings = field.PartFieldDefinition.Settings.GetModel(); - if (String.IsNullOrWhiteSpace(field.Value) && !String.IsNullOrWhiteSpace(settings.DefaultValue)) { - field.Value = _tokenizer.Replace(settings.DefaultValue, new Dictionary { { "Content", part.ContentItem } }); - } - - if(!String.IsNullOrWhiteSpace(settings.TextDefaultValue) && String.IsNullOrWhiteSpace(field.Text)) { - field.Text = _tokenizer.Replace(settings.TextDefaultValue, new Dictionary { { "Content", part.ContentItem } }); - } - if (settings.Required && String.IsNullOrWhiteSpace(field.Value)) { updater.AddModelError(GetPrefix(field, part), T("Url is required for {0}", field.DisplayName)); } diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/NumericFieldDriver.cs b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/NumericFieldDriver.cs index 22d1dbeef..583c225e6 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/NumericFieldDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/NumericFieldDriver.cs @@ -5,7 +5,6 @@ using Orchard.Fields.Fields; using Orchard.Fields.Settings; using Orchard.Fields.ViewModels; using Orchard.Localization; -using Orchard.Tokens; using System; using System.Collections.Generic; using System.Globalization; @@ -15,11 +14,9 @@ namespace Orchard.Fields.Drivers { public IOrchardServices Services { get; set; } private const string TemplateName = "Fields/Numeric.Edit"; private readonly Lazy _cultureInfo; - private readonly ITokenizer _tokenizer; - public NumericFieldDriver(IOrchardServices services, ITokenizer tokenizer) { + public NumericFieldDriver(IOrchardServices services) { Services = services; - _tokenizer = tokenizer; T = NullLocalizer.Instance; _cultureInfo = new Lazy(() => CultureInfo.GetCultureInfo(Services.WorkContext.CurrentCulture)); @@ -46,10 +43,13 @@ namespace Orchard.Fields.Drivers { protected override DriverResult Editor(ContentPart part, NumericField field, dynamic shapeHelper) { return ContentShape("Fields_Numeric_Edit", GetDifferentiator(field, part), () => { + var settings = field.PartFieldDefinition.Settings.GetModel(); + var value = part.IsNew() ? settings.DefaultValue : Convert.ToString(field.Value, _cultureInfo.Value); + var model = new NumericFieldViewModel { Field = field, - Settings = field.PartFieldDefinition.Settings.GetModel(), - Value = Convert.ToString(field.Value, _cultureInfo.Value) + Settings = settings, + Value = value }; return shapeHelper.EditorTemplate(TemplateName: TemplateName, Model: model, Prefix: GetPrefix(field, part)); @@ -64,10 +64,6 @@ namespace Orchard.Fields.Drivers { var settings = field.PartFieldDefinition.Settings.GetModel(); - if (String.IsNullOrWhiteSpace(viewModel.Value) && !String.IsNullOrWhiteSpace(settings.DefaultValue)) { - viewModel.Value = _tokenizer.Replace(settings.DefaultValue, new Dictionary { { "Content", part.ContentItem } }); - } - field.Value = null; if (String.IsNullOrWhiteSpace(viewModel.Value)) { @@ -76,7 +72,7 @@ namespace Orchard.Fields.Drivers { } } else if (!Decimal.TryParse(viewModel.Value, NumberStyles.Any, _cultureInfo.Value, out value)) { - updater.AddModelError(GetPrefix(field, part), T("{0} or its default value is an invalid number", field.DisplayName)); + updater.AddModelError(GetPrefix(field, part), T("{0} is an invalid number", field.DisplayName)); } else { diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/TextFieldDriver.cs b/src/Orchard.Web/Modules/Orchard.Fields/Drivers/TextFieldDriver.cs deleted file mode 100644 index dfb816aa4..000000000 --- a/src/Orchard.Web/Modules/Orchard.Fields/Drivers/TextFieldDriver.cs +++ /dev/null @@ -1,37 +0,0 @@ -using Orchard.ContentManagement; -using Orchard.ContentManagement.Drivers; -using Orchard.Core.Common.Fields; -using Orchard.Core.Common.Settings; -using Orchard.Localization; -using Orchard.Tokens; -using System; -using System.Collections.Generic; - -namespace Orchard.Fields.Drivers { - // The original driver of the TextField is in Orchard.Core, where tokenization can not be used. - // This driver was added so the default value of the TextField can be tokenized. - public class TextFieldDriver : ContentFieldDriver { - private readonly ITokenizer _tokenizer; - - public TextFieldDriver(ITokenizer tokenizer) { - _tokenizer = tokenizer; - T = NullLocalizer.Instance; - } - - public Localizer T { get; set; } - - protected override DriverResult Editor(ContentPart part, TextField field, IUpdateModel updater, dynamic shapeHelper) { - var settings = field.PartFieldDefinition.Settings.GetModel(); - - if (!String.IsNullOrWhiteSpace(settings.DefaultValue) && (String.IsNullOrWhiteSpace(field.Value) || field.Value.Equals(settings.DefaultValue))) { - field.Value = _tokenizer.Replace(settings.DefaultValue, new Dictionary { { "Content", part.ContentItem } }); - - if (settings.Required && String.IsNullOrWhiteSpace(field.Value)) { - updater.AddModelError("Text", T("The field {0} is mandatory", T(field.DisplayName))); - } - } - - return null; - } - } -} diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Orchard.Fields.csproj b/src/Orchard.Web/Modules/Orchard.Fields/Orchard.Fields.csproj index c910f9cfb..c3d876013 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Orchard.Fields.csproj +++ b/src/Orchard.Web/Modules/Orchard.Fields/Orchard.Fields.csproj @@ -100,7 +100,6 @@ - @@ -178,9 +177,6 @@ - - - diff --git a/src/Orchard.Web/Modules/Orchard.Fields/ViewModels/DateTimeFieldViewModel.cs b/src/Orchard.Web/Modules/Orchard.Fields/ViewModels/DateTimeFieldViewModel.cs index 5fea628c6..d140dcbd0 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/ViewModels/DateTimeFieldViewModel.cs +++ b/src/Orchard.Web/Modules/Orchard.Fields/ViewModels/DateTimeFieldViewModel.cs @@ -6,6 +6,5 @@ namespace Orchard.Fields.ViewModels { public string Hint { get; set; } public bool IsRequired { get; set; } public DateTimeEditor Editor { get; set; } - public bool HasDefaultValue { get; set; } } } \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/DateTimeFieldSettings.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/DateTimeFieldSettings.cshtml index b6b72d301..304fbce36 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/DateTimeFieldSettings.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/DateTimeFieldSettings.cshtml @@ -32,7 +32,7 @@
@Html.EditorFor(m => m.Editor) - @T("Pick a default date for the field. (optional)") + @T("Pick a default date to be proposed when creating a content item. (optional)") @Html.ValidationMessageFor(m => m.Editor)
diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/EnumerationFieldSettings.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/EnumerationFieldSettings.cshtml index ffd253bff..3bb5e88d2 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/EnumerationFieldSettings.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/EnumerationFieldSettings.cshtml @@ -31,8 +31,9 @@
- @Html.TextBoxFor(m => m.DefaultValue, new { @class = "text large tokenized ui-autocomplete-input" }) - @T("Enter a default option for the field. You can use tokens in this field. If there is no equivalent choice among Options, it will not be used. (optional)") + @Html.TextBoxFor(m => m.DefaultValue, new { @class = "text large" }) + @T("The default option proposed when creating a content item. If there is no equivalent choice among Options, it will not be used. (optional)") + @T("When using the Listbox or Checkbox List mode, you can define multiple options separated by a semicolon.") @Html.ValidationMessageFor(m => m.DefaultValue)
\ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/InputFieldSettings.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/InputFieldSettings.cshtml index 59ea5b344..34fbee18f 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/InputFieldSettings.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/InputFieldSettings.cshtml @@ -1,5 +1,4 @@ @model Orchard.Fields.Settings.InputFieldSettings -@using Orchard.Fields.Settings;
@@ -80,8 +79,8 @@
- @Html.TextBoxFor(m => m.DefaultValue, new { @class = "text large tokenized ui-autocomplete-input" }) - @T("Default value for the field. You can use tokens in this field. If there is no value given for the actual field, this will be filled in. (optional)") + @Html.TextBoxFor(m => m.DefaultValue, new { @class = "text large" }) + @T("The default value proposed when creating a content item. (optional)") @Html.ValidationMessageFor(m => m.DefaultValue)
diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/LinkFieldSettings.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/LinkFieldSettings.cshtml index 9dad8f7b7..452e6b905 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/LinkFieldSettings.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/LinkFieldSettings.cshtml @@ -47,16 +47,16 @@
- @Html.TextBoxFor(m => m.DefaultValue, new { @class = "text large tokenized ui-autocomplete-input" }) - @T("A valid url as a default value, i.e. http://orchardproject.net, /content/file.pdf ... You can use tokens in this field. (optional)") + @Html.TextBoxFor(m => m.DefaultValue, new { @class = "text large" }) + @T("A valid url proposed when creating a content item, i.e. http://orchardproject.net, /content/file.pdf, ... (optional)") @Html.ValidationMessageFor(m => m.DefaultValue)
- @Html.TextBoxFor(m => m.TextDefaultValue, new { @class = "text large tokenized ui-autocomplete-input" }) - @T("If the Link text is set to Optional or Required, a default value can be set for it. You can use tokens in this field. (optional)") + @Html.TextBoxFor(m => m.TextDefaultValue, new { @class = "text large" }) + @T("The default link text proposed when creating a content item. (optional)") @Html.ValidationMessageFor(m => m.TextDefaultValue)
\ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/NumericFieldSettings.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/NumericFieldSettings.cshtml index e98d3137a..6f49f4e13 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/NumericFieldSettings.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/NumericFieldSettings.cshtml @@ -42,8 +42,8 @@
- @Html.TextBoxFor(m => m.DefaultValue, new { @class = "text large tokenized ui-autocomplete-input" }) - @T("The default value for the field. It must be a number, and if not it will not be shown. Make sure to set the Scale property if the value is not an integer. You can use tokens in this field. (optional)") + @Html.TextBoxFor(m => m.DefaultValue, new { @class = "text large" }) + @T("A valid number proposed when creating a content item. Make sure to set the Scale property if the value is not an integer. (optional)") @Html.ValidationMessageFor(m => m.DefaultValue)
diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/TextFieldDefaultValueEditor.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/TextFieldDefaultValueEditor.cshtml deleted file mode 100644 index a35bea691..000000000 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/DefinitionTemplates/TextFieldDefaultValueEditor.cshtml +++ /dev/null @@ -1,7 +0,0 @@ -@model Orchard.Core.Common.ViewModels.TextFieldSettingsEventsViewModel -@* This override is here so that the token helper can be used on the default value's textbox, which can not be used in Orchard.Core. *@ - - -@Html.TextBoxFor(m => m.Settings.DefaultValue, new { @class = "text large tokenized ui-autocomplete-input" }) -@T("Default value for the field. You can use tokens in this field. If there is no value given for the actual field, this will be filled in. (optional)") -@Html.ValidationMessageFor(m => m.Settings.DefaultValue) \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/DateTime.Edit.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/DateTime.Edit.cshtml index 5c2d90e4b..999e87d9c 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/DateTime.Edit.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/DateTime.Edit.cshtml @@ -6,7 +6,4 @@ @if (HasText(Model.Hint)) { @Model.Hint } - @if (Model.HasDefaultValue) { - @T("If the field is left empty then the default value will be used if one is configured.") - }
diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Enumeration.Edit.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Enumeration.Edit.cshtml index 8c89ec5ab..1e2b07774 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Enumeration.Edit.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Enumeration.Edit.cshtml @@ -3,27 +3,26 @@ @{ var settings = Model.PartFieldDefinition.Settings.GetModel(); string[] options = (!String.IsNullOrWhiteSpace(settings.Options)) ? settings.Options.Split(new string[] { System.Environment.NewLine }, StringSplitOptions.None) : new string[] { T("Select an option").ToString() }; - var isRequired = settings.Required && String.IsNullOrWhiteSpace(settings.DefaultValue); }
@switch (settings.ListMode) { case ListMode.Dropdown: - @Html.DropDownListFor(m => m.Value, new SelectList(options, Model.Value), isRequired ? new { required = "required" } : null) + @Html.DropDownListFor(m => m.Value, new SelectList(options, Model.Value), settings.Required ? new { required = "required" } : null) break; case ListMode.Radiobutton: foreach (var option in options) { if (string.IsNullOrWhiteSpace(option)) { - } + } else { - } + } } break; case ListMode.Listbox: - @Html.ListBoxFor(m => m.SelectedValues, new MultiSelectList(options, Model.SelectedValues), isRequired ? new { required = "required" } : null) + @Html.ListBoxFor(m => m.SelectedValues, new MultiSelectList(options, Model.SelectedValues), settings.Required ? new { required = "required" } : null) break; case ListMode.Checkbox: @@ -45,7 +44,4 @@ @if (HasText(settings.Hint)) { @settings.Hint } - @if (!String.IsNullOrWhiteSpace(settings.DefaultValue)) { - @T("If no option is selected then the default value will be used.") - }
\ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Input.Edit.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Input.Edit.cshtml index bada13f3e..5cdfd1bbf 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Input.Edit.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Input.Edit.cshtml @@ -1,18 +1,13 @@ -@model Orchard.Fields.Fields.InputField -@using Orchard.Utility.Extensions; +@model InputField @using Orchard.Fields.Settings; @{ var settings = Model.PartFieldDefinition.Settings.GetModel(); - var isRequired = settings.Required && String.IsNullOrWhiteSpace(settings.DefaultValue); }
- title="@settings.Title" } value="@Model.Value" @if (isRequired) { required="required" } @if (settings.AutoFocus) { autofocus="autofocus" } @if (settings.AutoComplete) { autocomplete="on" } @if (!String.IsNullOrWhiteSpace(settings.Placeholder)) { placeholder="@settings.Placeholder" } @if (!String.IsNullOrWhiteSpace(settings.Pattern)) { pattern="@settings.Pattern" } @if (!String.IsNullOrWhiteSpace(settings.EditorCssClass)) { class="@settings.EditorCssClass" } else { class="text medium" } @if (settings.MaxLength > 1) { maxlength="@settings.MaxLength.ToString()" } /> + title="@settings.Title" } value="@Model.Value" @if (settings.Required) { required="required" } @if (settings.AutoFocus) { autofocus="autofocus" } @if (settings.AutoComplete) { autocomplete="on" } @if (!String.IsNullOrWhiteSpace(settings.Placeholder)) { placeholder="@settings.Placeholder" } @if (!String.IsNullOrWhiteSpace(settings.Pattern)) { pattern="@settings.Pattern" } @if (!String.IsNullOrWhiteSpace(settings.EditorCssClass)) { class="@settings.EditorCssClass" } else { class="text medium" } @if (settings.MaxLength > 1) { maxlength="@settings.MaxLength.ToString()" } /> @Html.ValidationMessageFor(m => m.Value) @if (HasText(settings.Hint)) { @settings.Hint } - @if (!String.IsNullOrWhiteSpace(settings.DefaultValue)) { - @T("If the field is left empty then the default value will be used.") - }
diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Link.Edit.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Link.Edit.cshtml index b81362d55..89bcbfdbf 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Link.Edit.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Link.Edit.cshtml @@ -14,9 +14,6 @@ target = "_top"; break; } - - var isRequired = settings.Required && String.IsNullOrWhiteSpace(settings.DefaultValue); - var isTextRequired = settings.LinkTextMode == LinkTextMode.Required && String.IsNullOrWhiteSpace(settings.TextDefaultValue); }
@@ -24,27 +21,19 @@ @settings.Hint }
- +
- @(isRequired ? Html.TextBoxFor(m => m.Value, new { @class = "text large", required = "required" }) : Html.TextBoxFor(m => m.Value, new { @class = "text large" })) + @(settings.Required ? Html.TextBoxFor(m => m.Value, new { @class = "text large", required = "required" }) : Html.TextBoxFor(m => m.Value, new { @class = "text large" })) @T("A valid url, i.e. http://orchardproject.net, /content/file.pdf, ...")
- @if (!String.IsNullOrWhiteSpace(settings.DefaultValue)) { - @T("If the field is left empty then the default value will be used.") - } @if (settings.LinkTextMode == LinkTextMode.Optional || settings.LinkTextMode == LinkTextMode.Required) {
- +
- @(isTextRequired ? Html.TextBoxFor(m => m.Text, new { @class = "text medium", required = "required" }) : Html.TextBoxFor(m => m.Text, new { @class = "text medium" })) - @if (!String.IsNullOrWhiteSpace(settings.TextDefaultValue)) { - @T("If the field is left empty then the default value will be used.") - } - else { - @T("The text of the link. If left empty, the url will be used instead.") - } + @(settings.LinkTextMode == LinkTextMode.Required ? Html.TextBoxFor(m => m.Text, new { @class = "text medium", required = "required" }) : Html.TextBoxFor(m => m.Text, new { @class = "text medium" })) + @T("The text of the link. If left empty, the url will be used instead.")
} diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Numeric.Edit.cshtml b/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Numeric.Edit.cshtml index 00106d60c..19dd7ac25 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Numeric.Edit.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Fields/Views/EditorTemplates/Fields/Numeric.Edit.cshtml @@ -3,20 +3,17 @@ @using Orchard.Fields.Settings; @{ - var isRequired = Model.Settings.Required && String.IsNullOrWhiteSpace(Model.Settings.DefaultValue); - var hasValue = !String.IsNullOrWhiteSpace(Model.Value); - var attributes = new Dictionary(); attributes.Add("class", "text-small"); attributes.Add("type", "text"); attributes.Add("min", Model.Settings.Minimum.HasValue ? Model.Settings.Minimum.Value : 0); attributes.Add("max", Model.Settings.Maximum.HasValue ? Model.Settings.Maximum.Value : 1000000); attributes.Add("step", Math.Pow(10, 0 - Model.Settings.Scale).ToString(CultureInfo.InvariantCulture)); - if (isRequired) { + if (Model.Settings.Required) { attributes.Add("required", "required"); } - if (hasValue) { + if (!String.IsNullOrWhiteSpace(Model.Value)) { attributes.Add("Value", Model.Value); } } @@ -28,7 +25,4 @@ @if (HasText(Model.Settings.Hint)) { @Model.Settings.Hint } - @if (!String.IsNullOrWhiteSpace(Model.Settings.DefaultValue)) { - @T("If the field is left empty then the default value will be used.") - }
\ No newline at end of file diff --git a/src/Orchard/ContentManagement/ContentExtensions.cs b/src/Orchard/ContentManagement/ContentExtensions.cs index 10bba53bb..5df164723 100644 --- a/src/Orchard/ContentManagement/ContentExtensions.cs +++ b/src/Orchard/ContentManagement/ContentExtensions.cs @@ -234,5 +234,8 @@ namespace Orchard.ContentManagement { public static bool HasPublished(this IContent content) { return content.IsPublished() || content.ContentItem.ContentManager.Get(content.ContentItem.Id, VersionOptions.Published) != null; } + public static bool IsNew(this IContent content) { + return content.ContentItem.VersionRecord == null; + } } } From e962410a72502fa50a7e2cd8ca48a0ae7c405143 Mon Sep 17 00:00:00 2001 From: Arjan Noordende Date: Tue, 26 Apr 2016 18:02:55 +0100 Subject: [PATCH 03/18] AssemblyInfo build action Compile instead of Content with CodeGen update Fixes #5143 --- .../Orchard.AuditTrail.csproj | 2 +- .../Orchard.Azure.MediaServices.csproj | 2 +- .../Orchard.Caching/Orchard.Caching.csproj | 2 +- .../CodeGenerationTemplates/ModuleCsProj.txt | 4 +- .../Commands/CodeGenerationCommands.cs | 44 ++++++++++++++----- .../Orchard.Conditions.csproj | 2 +- .../Orchard.Dashboards.csproj | 2 +- .../Orchard.DynamicForms.csproj | 2 +- .../Orchard.Layouts/Orchard.Layouts.csproj | 2 +- .../Orchard.MessageBus.csproj | 2 +- .../Orchard.OutputCache.csproj | 2 +- .../Orchard.Redis/Orchard.Redis.csproj | 2 +- .../Orchard.Resources.csproj | 2 +- .../Orchard.Templates.csproj | 2 +- .../Modules/Upgrade/Upgrade.csproj | 2 +- 15 files changed, 48 insertions(+), 26 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.AuditTrail/Orchard.AuditTrail.csproj b/src/Orchard.Web/Modules/Orchard.AuditTrail/Orchard.AuditTrail.csproj index 131b83f67..e5c0173b4 100644 --- a/src/Orchard.Web/Modules/Orchard.AuditTrail/Orchard.AuditTrail.csproj +++ b/src/Orchard.Web/Modules/Orchard.AuditTrail/Orchard.AuditTrail.csproj @@ -135,7 +135,7 @@
- + diff --git a/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Orchard.Azure.MediaServices.csproj b/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Orchard.Azure.MediaServices.csproj index ae43db858..520eff940 100644 --- a/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Orchard.Azure.MediaServices.csproj +++ b/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Orchard.Azure.MediaServices.csproj @@ -276,7 +276,7 @@ - + diff --git a/src/Orchard.Web/Modules/Orchard.Caching/Orchard.Caching.csproj b/src/Orchard.Web/Modules/Orchard.Caching/Orchard.Caching.csproj index f6ed91401..5ce025dc4 100644 --- a/src/Orchard.Web/Modules/Orchard.Caching/Orchard.Caching.csproj +++ b/src/Orchard.Web/Modules/Orchard.Caching/Orchard.Caching.csproj @@ -90,7 +90,7 @@ - + diff --git a/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleCsProj.txt b/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleCsProj.txt index 12138960a..e26dd842d 100644 --- a/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleCsProj.txt +++ b/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleCsProj.txt @@ -69,7 +69,9 @@ - $$FileIncludes$$ + $$CompileIncludes$$ + $$ContentIncludes$$ + $$OrchardReferences$$ diff --git a/src/Orchard.Web/Modules/Orchard.CodeGeneration/Commands/CodeGenerationCommands.cs b/src/Orchard.Web/Modules/Orchard.CodeGeneration/Commands/CodeGenerationCommands.cs index f4fe318d8..0be4e98ab 100644 --- a/src/Orchard.Web/Modules/Orchard.CodeGeneration/Commands/CodeGenerationCommands.cs +++ b/src/Orchard.Web/Modules/Orchard.CodeGeneration/Commands/CodeGenerationCommands.cs @@ -273,6 +273,7 @@ namespace Orchard.CodeGeneration.Commands { string propertiesPath = modulePath + "Properties"; var content = new HashSet(); var folders = new HashSet(); + var compile = new HashSet(); foreach (var folder in _moduleDirectories) { Directory.CreateDirectory(modulePath + folder); @@ -297,27 +298,29 @@ namespace Orchard.CodeGeneration.Commands { File.WriteAllText(modulePath + "Styles\\Web.config", File.ReadAllText(_codeGenTemplatePath + "StaticFilesWebConfig.txt")); content.Add(modulePath + "Styles\\Web.config"); - string templateText = File.ReadAllText(_codeGenTemplatePath + "ModuleAssemblyInfo.txt"); - templateText = templateText.Replace("$$ModuleName$$", moduleName); - templateText = templateText.Replace("$$ModuleTypeLibGuid$$", Guid.NewGuid().ToString()); - File.WriteAllText(propertiesPath + "\\AssemblyInfo.cs", templateText); - content.Add(propertiesPath + "\\AssemblyInfo.cs"); - - templateText = File.ReadAllText(_codeGenTemplatePath + "ModuleManifest.txt"); + string templateText = File.ReadAllText(_codeGenTemplatePath + "ModuleManifest.txt"); templateText = templateText.Replace("$$ModuleName$$", moduleName); File.WriteAllText(modulePath + "Module.txt", templateText, System.Text.Encoding.UTF8); content.Add(modulePath + "Module.txt"); - var itemGroup = CreateProjectItemGroup(modulePath, content, folders); + templateText = File.ReadAllText(_codeGenTemplatePath + "ModuleAssemblyInfo.txt"); + templateText = templateText.Replace("$$ModuleName$$", moduleName); + templateText = templateText.Replace("$$ModuleTypeLibGuid$$", Guid.NewGuid().ToString()); + File.WriteAllText(propertiesPath + "\\AssemblyInfo.cs", templateText); + compile.Add(propertiesPath + "\\AssemblyInfo.cs"); - File.WriteAllText(modulePath + moduleName + ".csproj", CreateCsProject(moduleName, projectGuid, itemGroup)); + var contentItemGroup = CreateProjectItemGroup(modulePath, content, folders); + var compileItemGroup = CreateCompileItemGroup(modulePath, compile); + + File.WriteAllText(modulePath + moduleName + ".csproj", CreateCsProject(moduleName, projectGuid, contentItemGroup, compileItemGroup)); } - private static string CreateCsProject(string projectName, string projectGuid, string itemGroup) { + private static string CreateCsProject(string projectName, string projectGuid, string contentItemGroup, string compileItemGroup) { string text = File.ReadAllText(_codeGenTemplatePath + "\\ModuleCsProj.txt"); text = text.Replace("$$ModuleName$$", projectName); text = text.Replace("$$ModuleProjectGuid$$", projectGuid); - text = text.Replace("$$FileIncludes$$", itemGroup ?? ""); + text = text.Replace("$$ContentIncludes$$", contentItemGroup ?? ""); + text = text.Replace("$$CompileIncludes$$", compileItemGroup ?? ""); text = text.Replace("$$OrchardReferences$$", GetOrchardReferences()); return text; } @@ -402,7 +405,7 @@ namespace Orchard.CodeGeneration.Commands { // create new csproj for the theme if (projectGuid != null) { var itemGroup = CreateProjectItemGroup(themePath, createdFiles, createdFolders); - string projectText = CreateCsProject(themeName, projectGuid, itemGroup); + string projectText = CreateCsProject(themeName, projectGuid, itemGroup, null); File.WriteAllText(themePath + "\\" + themeName + ".csproj", projectText); } @@ -464,6 +467,23 @@ namespace Orchard.CodeGeneration.Commands { return string.Format(CultureInfo.InvariantCulture, "\r\n{0}\r\n \r\n ", contentInclude); } + private static string CreateCompileItemGroup(string relativeFromPath, HashSet compile) { + var compileInclude = ""; + if (relativeFromPath != null && !relativeFromPath.EndsWith("\\", StringComparison.OrdinalIgnoreCase)) { + relativeFromPath += "\\"; + } + else if (relativeFromPath == null) { + relativeFromPath = ""; + } + + if (compile != null && compile.Count > 0) { + compileInclude = string.Join("\r\n", + from file in compile + select " "); + } + return string.Format(CultureInfo.InvariantCulture, "\r\n{0}\r\n \r\n ", compileInclude); + } + private void AddFilesToOrchardThemesProject(TextWriter output, string itemGroup) { if (!File.Exists(_orchardThemesProj)) { output.WriteLine(T("Warning: Orchard.Themes project file could not be found at {0}", _orchardThemesProj)); diff --git a/src/Orchard.Web/Modules/Orchard.Conditions/Orchard.Conditions.csproj b/src/Orchard.Web/Modules/Orchard.Conditions/Orchard.Conditions.csproj index 5aae5faa9..cdf31e39a 100644 --- a/src/Orchard.Web/Modules/Orchard.Conditions/Orchard.Conditions.csproj +++ b/src/Orchard.Web/Modules/Orchard.Conditions/Orchard.Conditions.csproj @@ -93,7 +93,7 @@ - + diff --git a/src/Orchard.Web/Modules/Orchard.Dashboards/Orchard.Dashboards.csproj b/src/Orchard.Web/Modules/Orchard.Dashboards/Orchard.Dashboards.csproj index d0653b952..c426b5143 100644 --- a/src/Orchard.Web/Modules/Orchard.Dashboards/Orchard.Dashboards.csproj +++ b/src/Orchard.Web/Modules/Orchard.Dashboards/Orchard.Dashboards.csproj @@ -99,7 +99,7 @@ - + diff --git a/src/Orchard.Web/Modules/Orchard.DynamicForms/Orchard.DynamicForms.csproj b/src/Orchard.Web/Modules/Orchard.DynamicForms/Orchard.DynamicForms.csproj index 9ad4ccfe6..e3133ef21 100644 --- a/src/Orchard.Web/Modules/Orchard.DynamicForms/Orchard.DynamicForms.csproj +++ b/src/Orchard.Web/Modules/Orchard.DynamicForms/Orchard.DynamicForms.csproj @@ -124,7 +124,7 @@ - + diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj b/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj index f210d1d4f..b661cd517 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj @@ -181,7 +181,7 @@ - + diff --git a/src/Orchard.Web/Modules/Orchard.MessageBus/Orchard.MessageBus.csproj b/src/Orchard.Web/Modules/Orchard.MessageBus/Orchard.MessageBus.csproj index 04858a91b..3c738d042 100644 --- a/src/Orchard.Web/Modules/Orchard.MessageBus/Orchard.MessageBus.csproj +++ b/src/Orchard.Web/Modules/Orchard.MessageBus/Orchard.MessageBus.csproj @@ -103,7 +103,7 @@ - + diff --git a/src/Orchard.Web/Modules/Orchard.OutputCache/Orchard.OutputCache.csproj b/src/Orchard.Web/Modules/Orchard.OutputCache/Orchard.OutputCache.csproj index 99aeafd55..a3a7fa74c 100644 --- a/src/Orchard.Web/Modules/Orchard.OutputCache/Orchard.OutputCache.csproj +++ b/src/Orchard.Web/Modules/Orchard.OutputCache/Orchard.OutputCache.csproj @@ -103,7 +103,7 @@ - + diff --git a/src/Orchard.Web/Modules/Orchard.Redis/Orchard.Redis.csproj b/src/Orchard.Web/Modules/Orchard.Redis/Orchard.Redis.csproj index 54a7c11f1..74b0a342e 100644 --- a/src/Orchard.Web/Modules/Orchard.Redis/Orchard.Redis.csproj +++ b/src/Orchard.Web/Modules/Orchard.Redis/Orchard.Redis.csproj @@ -81,7 +81,7 @@ - + diff --git a/src/Orchard.Web/Modules/Orchard.Resources/Orchard.Resources.csproj b/src/Orchard.Web/Modules/Orchard.Resources/Orchard.Resources.csproj index 3db39afca..0ec9c0b5c 100644 --- a/src/Orchard.Web/Modules/Orchard.Resources/Orchard.Resources.csproj +++ b/src/Orchard.Web/Modules/Orchard.Resources/Orchard.Resources.csproj @@ -829,7 +829,7 @@ - + diff --git a/src/Orchard.Web/Modules/Orchard.Templates/Orchard.Templates.csproj b/src/Orchard.Web/Modules/Orchard.Templates/Orchard.Templates.csproj index d8ebcb7be..6b0f6eae8 100644 --- a/src/Orchard.Web/Modules/Orchard.Templates/Orchard.Templates.csproj +++ b/src/Orchard.Web/Modules/Orchard.Templates/Orchard.Templates.csproj @@ -154,7 +154,7 @@ - + diff --git a/src/Orchard.Web/Modules/Upgrade/Upgrade.csproj b/src/Orchard.Web/Modules/Upgrade/Upgrade.csproj index 772800139..9d5640a46 100644 --- a/src/Orchard.Web/Modules/Upgrade/Upgrade.csproj +++ b/src/Orchard.Web/Modules/Upgrade/Upgrade.csproj @@ -118,7 +118,7 @@ - + From 2b3451cd138c8d60cce189d9a487e951fa63b4c8 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Tue, 26 Apr 2016 10:12:18 -0700 Subject: [PATCH 04/18] Updating version numbers to 1.10.1 --- src/Orchard.Core.Tests/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Profile/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Specs/Properties/AssemblyInfo.cs | 4 ++-- .../Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Tests/Properties/AssemblyInfo.cs | 4 ++-- .../Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web.Tests/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Core/Common/Module.txt | 2 +- src/Orchard.Web/Core/Containers/Module.txt | 2 +- src/Orchard.Web/Core/Contents/Module.txt | 2 +- src/Orchard.Web/Core/Dashboard/Module.txt | 2 +- src/Orchard.Web/Core/Feeds/Module.txt | 2 +- src/Orchard.Web/Core/Navigation/Module.txt | 2 +- src/Orchard.Web/Core/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Core/Reports/Module.txt | 2 +- src/Orchard.Web/Core/Scheduling/Module.txt | 2 +- src/Orchard.Web/Core/Settings/Module.txt | 2 +- src/Orchard.Web/Core/Shapes/Module.txt | 2 +- src/Orchard.Web/Core/Title/Module.txt | 2 +- src/Orchard.Web/Core/XmlRpc/Module.txt | 2 +- src/Orchard.Web/Modules/Lucene/Module.txt | 2 +- .../Modules/Lucene/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Markdown/Module.txt | 2 +- .../Modules/Markdown/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Alias/Module.txt | 2 +- .../Orchard.Alias/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.AntiSpam/Module.txt | 2 +- .../Orchard.AntiSpam/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.ArchiveLater/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.AuditTrail/Module.txt | 2 +- .../Orchard.AuditTrail/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Autoroute/Module.txt | 2 +- .../Orchard.Autoroute/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Azure.MediaServices/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Azure/Module.txt | 2 +- .../Orchard.Azure/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Blogs/Module.txt | 2 +- .../Orchard.Blogs/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Caching/Module.txt | 2 +- .../Orchard.Caching/Properties/AssemblyInfo.cs | 4 ++-- .../CodeGenerationTemplates/ModuleAssemblyInfo.txt | 4 ++-- .../Modules/Orchard.CodeGeneration/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Comments/Module.txt | 2 +- .../Orchard.Comments/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Conditions/Module.txt | 2 +- .../Orchard.Conditions/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.ContentPermissions/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.ContentPicker/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.ContentTypes/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.CustomForms/Module.txt | 2 +- .../Orchard.CustomForms/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Dashboards/Module.txt | 2 +- .../Orchard.Dashboards/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.DesignerTools/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.DynamicForms/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Email/Module.txt | 2 +- .../Orchard.Email/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Fields/Module.txt | 2 +- .../Orchard.Fields/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Forms/Module.txt | 2 +- .../Orchard.Forms/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.ImageEditor/Module.txt | 2 +- .../Orchard.ImageEditor/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.ImportExport/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Indexing/Module.txt | 2 +- .../Orchard.Indexing/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.JobsQueue/Module.txt | 2 +- .../Orchard.JobsQueue/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Layouts/Module.txt | 2 +- .../Orchard.Layouts/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Lists/Module.txt | 2 +- .../Orchard.Lists/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Localization/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Orchard.Media/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.MediaLibrary/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Orchard.MediaPicker/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.MediaProcessing/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.MessageBus/Module.txt | 2 +- .../Orchard.MessageBus/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Migrations/Module.txt | 2 +- .../Orchard.Migrations/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Modules/Module.txt | 2 +- .../Orchard.Modules/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.MultiTenancy/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.OutputCache/Module.txt | 2 +- .../Orchard.OutputCache/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Packaging/Module.txt | 2 +- .../Orchard.Packaging/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Pages/Module.txt | 2 +- .../Orchard.Pages/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Projections/Module.txt | 2 +- .../Orchard.Projections/Properties/AssemblyInfo.cs | 4 ++-- .../Tests/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.PublishLater/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Recipes/Module.txt | 2 +- .../Orchard.Recipes/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Redis/Module.txt | 2 +- .../Orchard.Redis/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Resources/Module.txt | 2 +- .../Orchard.Resources/Properties/AssemblyInfo.cs | 14 +++++++------- src/Orchard.Web/Modules/Orchard.Roles/Module.txt | 2 +- .../Orchard.Roles/Properties/AssemblyInfo.cs | 4 ++-- .../Orchard.Rules/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Scripting.CSharp/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Scripting.Dlr/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Scripting/Module.txt | 2 +- .../Orchard.Scripting/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Search/Module.txt | 2 +- .../Orchard.Search/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.SecureSocketsLayer/Module.txt | 2 +- .../Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Setup/Module.txt | 2 +- .../Orchard.Setup/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Tags/Module.txt | 2 +- .../Orchard.Tags/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.TaskLease/Module.txt | 2 +- .../Orchard.TaskLease/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Taxonomies/Module.txt | 2 +- .../Orchard.Taxonomies/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Templates/Module.txt | 2 +- .../Orchard.Templates/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Themes/Module.txt | 2 +- .../Orchard.Themes/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Tokens/Module.txt | 2 +- .../Orchard.Tokens/Properties/AssemblyInfo.cs | 4 ++-- .../Tests/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Users/Module.txt | 2 +- .../Orchard.Users/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Warmup/Module.txt | 2 +- .../Orchard.Warmup/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.Widgets/Module.txt | 2 +- .../Orchard.Widgets/Properties/AssemblyInfo.cs | 4 ++-- .../Modules/Orchard.Workflows/Module.txt | 2 +- .../Orchard.Workflows/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Orchard.jQuery/Module.txt | 2 +- .../Orchard.jQuery/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/SysCache/Module.txt | 2 +- .../Modules/SysCache/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/TinyMce/Module.txt | 2 +- .../Modules/TinyMce/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Modules/Upgrade/Module.txt | 2 +- .../Modules/Upgrade/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Themes/Properties/AssemblyInfo.cs | 4 ++-- src/Orchard.Web/Themes/SafeMode/Theme.txt | 2 +- src/Orchard.Web/Themes/TheAdmin/Theme.txt | 2 +- src/Orchard.Web/Themes/TheThemeMachine/Theme.txt | 2 +- src/Orchard/Properties/AssemblyInfo.cs | 4 ++-- .../Properties/AssemblyInfo.cs | 4 ++-- src/Tools/Orchard.Tests/Properties/AssemblyInfo.cs | 4 ++-- src/Tools/Orchard/Properties/AssemblyInfo.cs | 4 ++-- 167 files changed, 258 insertions(+), 258 deletions(-) diff --git a/src/Orchard.Core.Tests/Properties/AssemblyInfo.cs b/src/Orchard.Core.Tests/Properties/AssemblyInfo.cs index 2e3d2f714..1ce9e62ce 100644 --- a/src/Orchard.Core.Tests/Properties/AssemblyInfo.cs +++ b/src/Orchard.Core.Tests/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Profile/Properties/AssemblyInfo.cs b/src/Orchard.Profile/Properties/AssemblyInfo.cs index a420575c1..3e5c24634 100644 --- a/src/Orchard.Profile/Properties/AssemblyInfo.cs +++ b/src/Orchard.Profile/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Specs/Properties/AssemblyInfo.cs b/src/Orchard.Specs/Properties/AssemblyInfo.cs index 16d72e0d4..93ca9db20 100644 --- a/src/Orchard.Specs/Properties/AssemblyInfo.cs +++ b/src/Orchard.Specs/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Tests.Modules/Properties/AssemblyInfo.cs b/src/Orchard.Tests.Modules/Properties/AssemblyInfo.cs index a8924a7a7..942c0ba17 100644 --- a/src/Orchard.Tests.Modules/Properties/AssemblyInfo.cs +++ b/src/Orchard.Tests.Modules/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Tests/Properties/AssemblyInfo.cs b/src/Orchard.Tests/Properties/AssemblyInfo.cs index 02b2f097a..dc92960f1 100644 --- a/src/Orchard.Tests/Properties/AssemblyInfo.cs +++ b/src/Orchard.Tests/Properties/AssemblyInfo.cs @@ -33,5 +33,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.WarmupStarter/Properties/AssemblyInfo.cs b/src/Orchard.WarmupStarter/Properties/AssemblyInfo.cs index 409508a24..83166cb9b 100644 --- a/src/Orchard.WarmupStarter/Properties/AssemblyInfo.cs +++ b/src/Orchard.WarmupStarter/Properties/AssemblyInfo.cs @@ -32,8 +32,8 @@ using System.Security; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] // Enable web application to call this assembly in Full Trust [assembly: AllowPartiallyTrustedCallers] diff --git a/src/Orchard.Web.Tests/Properties/AssemblyInfo.cs b/src/Orchard.Web.Tests/Properties/AssemblyInfo.cs index 266bef2ae..203fbfe61 100644 --- a/src/Orchard.Web.Tests/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web.Tests/Properties/AssemblyInfo.cs @@ -33,5 +33,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Core/Common/Module.txt b/src/Orchard.Web/Core/Common/Module.txt index c22491d28..c2ed93b80 100644 --- a/src/Orchard.Web/Core/Common/Module.txt +++ b/src/Orchard.Web/Core/Common/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The common module introduces content parts that are going to be used by most content types (common, body, identity). FeatureDescription: Core content parts. diff --git a/src/Orchard.Web/Core/Containers/Module.txt b/src/Orchard.Web/Core/Containers/Module.txt index 123205ff2..5dd850798 100644 --- a/src/Orchard.Web/Core/Containers/Module.txt +++ b/src/Orchard.Web/Core/Containers/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The containers module introduces container and containable behaviors for content items. FeatureDescription: Container and containable parts to enable parent-child relationships between content items. diff --git a/src/Orchard.Web/Core/Contents/Module.txt b/src/Orchard.Web/Core/Contents/Module.txt index ae1fd1e0d..be6ee8d81 100644 --- a/src/Orchard.Web/Core/Contents/Module.txt +++ b/src/Orchard.Web/Core/Contents/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The contents module enables the creation of custom content types. Features: diff --git a/src/Orchard.Web/Core/Dashboard/Module.txt b/src/Orchard.Web/Core/Dashboard/Module.txt index 00c98816f..2af44b6bb 100644 --- a/src/Orchard.Web/Core/Dashboard/Module.txt +++ b/src/Orchard.Web/Core/Dashboard/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The dashboard module is providing the dashboard screen of the admininstration UI of the application. FeatureDescription: Standard admin dashboard. diff --git a/src/Orchard.Web/Core/Feeds/Module.txt b/src/Orchard.Web/Core/Feeds/Module.txt index 65940b478..864977bad 100644 --- a/src/Orchard.Web/Core/Feeds/Module.txt +++ b/src/Orchard.Web/Core/Feeds/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The Feeds module is providing RSS feeds to content items. FeatureDescription: RSS feeds for content items. diff --git a/src/Orchard.Web/Core/Navigation/Module.txt b/src/Orchard.Web/Core/Navigation/Module.txt index 080349f40..af528f625 100644 --- a/src/Orchard.Web/Core/Navigation/Module.txt +++ b/src/Orchard.Web/Core/Navigation/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The navigation module creates and manages a simple navigation menu for the front-end of the application and allows you to add content items to the admin menu. FeatureDescription: Menu management. diff --git a/src/Orchard.Web/Core/Properties/AssemblyInfo.cs b/src/Orchard.Web/Core/Properties/AssemblyInfo.cs index 3fc2fad1c..a5f74e88b 100644 --- a/src/Orchard.Web/Core/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Core/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Core/Reports/Module.txt b/src/Orchard.Web/Core/Reports/Module.txt index 0ecd0ca4e..7b9a61a21 100644 --- a/src/Orchard.Web/Core/Reports/Module.txt +++ b/src/Orchard.Web/Core/Reports/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The dashboard module is providing the reports screen of the application. FeatureDescription: Reports management. diff --git a/src/Orchard.Web/Core/Scheduling/Module.txt b/src/Orchard.Web/Core/Scheduling/Module.txt index 29c407af7..8ffc09edf 100644 --- a/src/Orchard.Web/Core/Scheduling/Module.txt +++ b/src/Orchard.Web/Core/Scheduling/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The scheduling module enables background task scheduling. FeatureDescription: Scheduled background tasks. diff --git a/src/Orchard.Web/Core/Settings/Module.txt b/src/Orchard.Web/Core/Settings/Module.txt index 335b6d45c..e02610c88 100644 --- a/src/Orchard.Web/Core/Settings/Module.txt +++ b/src/Orchard.Web/Core/Settings/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The settings module creates site settings that other modules can contribute to. FeatureDescription: Site settings. diff --git a/src/Orchard.Web/Core/Shapes/Module.txt b/src/Orchard.Web/Core/Shapes/Module.txt index 916048395..5254bf843 100644 --- a/src/Orchard.Web/Core/Shapes/Module.txt +++ b/src/Orchard.Web/Core/Shapes/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The shapes module contains core shape templates and display hooks. FeatureDescription: Core shape templates and display hooks. diff --git a/src/Orchard.Web/Core/Title/Module.txt b/src/Orchard.Web/Core/Title/Module.txt index d2817ffb3..7460786cf 100644 --- a/src/Orchard.Web/Core/Title/Module.txt +++ b/src/Orchard.Web/Core/Title/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The title module enables content items to have titles. FeatureDescription: Title content part. diff --git a/src/Orchard.Web/Core/XmlRpc/Module.txt b/src/Orchard.Web/Core/XmlRpc/Module.txt index 7ead9857d..79849d971 100644 --- a/src/Orchard.Web/Core/XmlRpc/Module.txt +++ b/src/Orchard.Web/Core/XmlRpc/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The XmlRpc module enables creation of contents from client applications such as LiveWriter. FeatureDescription: XML-RPC opt-in implementation. diff --git a/src/Orchard.Web/Modules/Lucene/Module.txt b/src/Orchard.Web/Modules/Lucene/Module.txt index f6788e527..c6ab9b0b4 100644 --- a/src/Orchard.Web/Modules/Lucene/Module.txt +++ b/src/Orchard.Web/Modules/Lucene/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The Lucene module enables the site to be indexed using Lucene.NET. The index generated by this module can then be used by the search module to provide an integrated full-text search experience to a web site. FeatureDescription: Lucene indexing services. diff --git a/src/Orchard.Web/Modules/Lucene/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Lucene/Properties/AssemblyInfo.cs index fa1a87479..a768a6035 100644 --- a/src/Orchard.Web/Modules/Lucene/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Lucene/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Markdown/Module.txt b/src/Orchard.Web/Modules/Markdown/Module.txt index 7c87c4b11..d30066988 100644 --- a/src/Orchard.Web/Modules/Markdown/Module.txt +++ b/src/Orchard.Web/Modules/Markdown/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The Markdown module enables rich text contents to be created using the Markdown syntax. FeatureDescription: Markdown editor. diff --git a/src/Orchard.Web/Modules/Markdown/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Markdown/Properties/AssemblyInfo.cs index 4d1397b67..8198dc111 100644 --- a/src/Orchard.Web/Modules/Markdown/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Markdown/Properties/AssemblyInfo.cs @@ -26,6 +26,6 @@ using System.Runtime.InteropServices; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Alias/Module.txt b/src/Orchard.Web/Modules/Orchard.Alias/Module.txt index 18be44593..3e91ce806 100644 --- a/src/Orchard.Web/Modules/Orchard.Alias/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Alias/Module.txt @@ -2,7 +2,7 @@ Name: Alias AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Maps friendly urls to specific module actions. FeatureDescription: Maps friendly urls to specific module actions. diff --git a/src/Orchard.Web/Modules/Orchard.Alias/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Alias/Properties/AssemblyInfo.cs index a5f749ed4..f0cc54271 100644 --- a/src/Orchard.Web/Modules/Orchard.Alias/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Alias/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.AntiSpam/Module.txt b/src/Orchard.Web/Modules/Orchard.AntiSpam/Module.txt index 047d98737..8e7dc25a2 100644 --- a/src/Orchard.Web/Modules/Orchard.AntiSpam/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.AntiSpam/Module.txt @@ -2,7 +2,7 @@ Name: AntiSpam AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides anti-spam services to protect your content from malicious submissions. Features: diff --git a/src/Orchard.Web/Modules/Orchard.AntiSpam/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.AntiSpam/Properties/AssemblyInfo.cs index a230f73b8..2e5c0e6cc 100644 --- a/src/Orchard.Web/Modules/Orchard.AntiSpam/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.AntiSpam/Properties/AssemblyInfo.cs @@ -29,6 +29,6 @@ using System.Runtime.InteropServices; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.ArchiveLater/Module.txt b/src/Orchard.Web/Modules/Orchard.ArchiveLater/Module.txt index e91fbab8c..e65c2eb14 100644 --- a/src/Orchard.Web/Modules/Orchard.ArchiveLater/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.ArchiveLater/Module.txt @@ -3,7 +3,7 @@ Path: ArchiveLater AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The ArchiveLater module introduces scheduled archiving functionality. FeatureDescription: Scheduled archiving. diff --git a/src/Orchard.Web/Modules/Orchard.ArchiveLater/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.ArchiveLater/Properties/AssemblyInfo.cs index 2d6d6067b..9e2a2fdc7 100644 --- a/src/Orchard.Web/Modules/Orchard.ArchiveLater/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.ArchiveLater/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.AuditTrail/Module.txt b/src/Orchard.Web/Modules/Orchard.AuditTrail/Module.txt index 177861dd8..7a897560f 100644 --- a/src/Orchard.Web/Modules/Orchard.AuditTrail/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.AuditTrail/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides a log for recording and viewing back-end changes. Features: diff --git a/src/Orchard.Web/Modules/Orchard.AuditTrail/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.AuditTrail/Properties/AssemblyInfo.cs index 0e187682b..fdf18925d 100644 --- a/src/Orchard.Web/Modules/Orchard.AuditTrail/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.AuditTrail/Properties/AssemblyInfo.cs @@ -32,6 +32,6 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Autoroute/Module.txt b/src/Orchard.Web/Modules/Orchard.Autoroute/Module.txt index 9a8bceb8d..cd073b38e 100644 --- a/src/Orchard.Web/Modules/Orchard.Autoroute/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Autoroute/Module.txt @@ -2,7 +2,7 @@ Name: Autoroute AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Description for the module Features: diff --git a/src/Orchard.Web/Modules/Orchard.Autoroute/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Autoroute/Properties/AssemblyInfo.cs index f7dd7c436..c8e79d52a 100644 --- a/src/Orchard.Web/Modules/Orchard.Autoroute/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Autoroute/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Module.txt b/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Module.txt index aad365bb4..581f7265c 100644 --- a/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: Microsoft Open Technologies, Inc Website: http://msopentech.com -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides integration of Microsoft Azure Media Services functionality into Orchard. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Properties/AssemblyInfo.cs index d290a4c70..074fbef69 100644 --- a/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Properties/AssemblyInfo.cs @@ -32,6 +32,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Azure/Module.txt b/src/Orchard.Web/Modules/Orchard.Azure/Module.txt index 6da671abd..deefb6ec4 100644 --- a/src/Orchard.Web/Modules/Orchard.Azure/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Azure/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides a set of Orchard service implementations targeting Microsoft Azure services. Category: Hosting diff --git a/src/Orchard.Web/Modules/Orchard.Azure/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Azure/Properties/AssemblyInfo.cs index 5b30a328b..ea8efe11c 100644 --- a/src/Orchard.Web/Modules/Orchard.Azure/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Azure/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Blogs/Module.txt b/src/Orchard.Web/Modules/Orchard.Blogs/Module.txt index 0d25339c4..9032044e6 100644 --- a/src/Orchard.Web/Modules/Orchard.Blogs/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Blogs/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The Orchard Blogs module is implementing basic blogging features. FeatureDescription: A simple web log. diff --git a/src/Orchard.Web/Modules/Orchard.Blogs/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Blogs/Properties/AssemblyInfo.cs index 31a22e9e6..ca21df01a 100644 --- a/src/Orchard.Web/Modules/Orchard.Blogs/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Blogs/Properties/AssemblyInfo.cs @@ -29,6 +29,6 @@ using System.Runtime.InteropServices; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Caching/Module.txt b/src/Orchard.Web/Modules/Orchard.Caching/Module.txt index 34aca464c..de0050dcb 100644 --- a/src/Orchard.Web/Modules/Orchard.Caching/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Caching/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: Sébastien Ros Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides an API to cache business data. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Caching/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Caching/Properties/AssemblyInfo.cs index 5996c63c3..86bf76f8b 100644 --- a/src/Orchard.Web/Modules/Orchard.Caching/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Caching/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleAssemblyInfo.txt b/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleAssemblyInfo.txt index 9496e115e..e493ab9bd 100644 --- a/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleAssemblyInfo.txt +++ b/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleAssemblyInfo.txt @@ -32,6 +32,6 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.CodeGeneration/Module.txt b/src/Orchard.Web/Modules/Orchard.CodeGeneration/Module.txt index e9433b3b5..864e6d3f7 100644 --- a/src/Orchard.Web/Modules/Orchard.CodeGeneration/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.CodeGeneration/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Tools to create Orchard components. FeatureDescription: Tools to create Orchard components. diff --git a/src/Orchard.Web/Modules/Orchard.CodeGeneration/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.CodeGeneration/Properties/AssemblyInfo.cs index 2add6a110..f6a7886d7 100644 --- a/src/Orchard.Web/Modules/Orchard.CodeGeneration/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.CodeGeneration/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Comments/Module.txt b/src/Orchard.Web/Modules/Orchard.Comments/Module.txt index 840e0a0ed..9614cd1bd 100644 --- a/src/Orchard.Web/Modules/Orchard.Comments/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Comments/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The comments system implemented by this module can be applied to arbitrary Orchard content types, such as blogs and pages. It includes comment validation and spam protection through the Akismet service. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Comments/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Comments/Properties/AssemblyInfo.cs index bb3597977..7f7fbd8d0 100644 --- a/src/Orchard.Web/Modules/Orchard.Comments/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Comments/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Conditions/Module.txt b/src/Orchard.Web/Modules/Orchard.Conditions/Module.txt index e9d38d0ad..0257f3f43 100644 --- a/src/Orchard.Web/Modules/Orchard.Conditions/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Conditions/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides a rules API that evaluate to true or false. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Conditions/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Conditions/Properties/AssemblyInfo.cs index a9dca2a32..2bd36dba7 100644 --- a/src/Orchard.Web/Modules/Orchard.Conditions/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Conditions/Properties/AssemblyInfo.cs @@ -32,6 +32,6 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.ContentPermissions/Module.txt b/src/Orchard.Web/Modules/Orchard.ContentPermissions/Module.txt index 2b7f988f6..e5c0d08b2 100644 --- a/src/Orchard.Web/Modules/Orchard.ContentPermissions/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.ContentPermissions/Module.txt @@ -2,7 +2,7 @@ Name: Orchard.ContentPermissions AntiForgery: enabled Author: Chris Pyle, Sébastien Ros Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Allows item-level front end view permissions. Features: diff --git a/src/Orchard.Web/Modules/Orchard.ContentPermissions/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.ContentPermissions/Properties/AssemblyInfo.cs index e604ced65..e3900b107 100644 --- a/src/Orchard.Web/Modules/Orchard.ContentPermissions/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.ContentPermissions/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.ContentPicker/Module.txt b/src/Orchard.Web/Modules/Orchard.ContentPicker/Module.txt index 11712fb1a..7bc8a95b7 100644 --- a/src/Orchard.Web/Modules/Orchard.ContentPicker/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.ContentPicker/Module.txt @@ -2,7 +2,7 @@ Name: Orchard.ContentPicker AntiForgery: enabled Author: The Orchard Team Website: https://github.com/OrchardCMS/Orchard -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: UI for selecting Content Items. Features: diff --git a/src/Orchard.Web/Modules/Orchard.ContentPicker/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.ContentPicker/Properties/AssemblyInfo.cs index 8b6f3b1dd..205432963 100644 --- a/src/Orchard.Web/Modules/Orchard.ContentPicker/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.ContentPicker/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.ContentTypes/Module.txt b/src/Orchard.Web/Modules/Orchard.ContentTypes/Module.txt index 2b6da95d1..3dac6a5f3 100644 --- a/src/Orchard.Web/Modules/Orchard.ContentTypes/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.ContentTypes/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: ContentTypes modules enables the creation and alteration of content types not based on code. Dependencies: Contents diff --git a/src/Orchard.Web/Modules/Orchard.ContentTypes/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.ContentTypes/Properties/AssemblyInfo.cs index a5612e54d..da7fddd76 100644 --- a/src/Orchard.Web/Modules/Orchard.ContentTypes/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.ContentTypes/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.CustomForms/Module.txt b/src/Orchard.Web/Modules/Orchard.CustomForms/Module.txt index 09d5fe538..b6ee88bf6 100644 --- a/src/Orchard.Web/Modules/Orchard.CustomForms/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.CustomForms/Module.txt @@ -2,7 +2,7 @@ Name: Custom Forms AntiForgery: enabled Author: The Orchard Team Website: https://github.com/OrchardCMS/Orchard -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 LifecycleStatus: Deprecated Description: Create custom forms like contact forms or content contributions. diff --git a/src/Orchard.Web/Modules/Orchard.CustomForms/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.CustomForms/Properties/AssemblyInfo.cs index 0265d0b40..8f1efd48c 100644 --- a/src/Orchard.Web/Modules/Orchard.CustomForms/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.CustomForms/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Dashboards/Module.txt b/src/Orchard.Web/Modules/Orchard.Dashboards/Module.txt index 933c37e12..c89dddb23 100644 --- a/src/Orchard.Web/Modules/Orchard.Dashboards/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Dashboards/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The Dashboards module enables administrators to customize the dashboard screen of the administration UI of the application. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Dashboards/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Dashboards/Properties/AssemblyInfo.cs index e0e3bd115..da4339c40 100644 --- a/src/Orchard.Web/Modules/Orchard.Dashboards/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Dashboards/Properties/AssemblyInfo.cs @@ -32,6 +32,6 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.DesignerTools/Module.txt b/src/Orchard.Web/Modules/Orchard.DesignerTools/Module.txt index 133880a70..fb1f8d6d4 100644 --- a/src/Orchard.Web/Modules/Orchard.DesignerTools/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.DesignerTools/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Contains designer tools to ease the Themes development process FeatureName: Shape Tracing diff --git a/src/Orchard.Web/Modules/Orchard.DesignerTools/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.DesignerTools/Properties/AssemblyInfo.cs index 727cdd933..26f564e4c 100644 --- a/src/Orchard.Web/Modules/Orchard.DesignerTools/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.DesignerTools/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.DynamicForms/Module.txt b/src/Orchard.Web/Modules/Orchard.DynamicForms/Module.txt index ba30a561f..766b597bc 100644 --- a/src/Orchard.Web/Modules/Orchard.DynamicForms/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.DynamicForms/Module.txt @@ -2,7 +2,7 @@ Name: Dynamic Forms AntiForgery: enabled Author: The Orchard Team Website: http://www.orchardproject.net/ -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Create custom forms like contact forms using layouts. Features: diff --git a/src/Orchard.Web/Modules/Orchard.DynamicForms/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.DynamicForms/Properties/AssemblyInfo.cs index 4d966749c..2bbf705d9 100644 --- a/src/Orchard.Web/Modules/Orchard.DynamicForms/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.DynamicForms/Properties/AssemblyInfo.cs @@ -32,6 +32,6 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Email/Module.txt b/src/Orchard.Web/Modules/Orchard.Email/Module.txt index 3561de0f2..259382133 100644 --- a/src/Orchard.Web/Modules/Orchard.Email/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Email/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The Email Messaging module adds Email sending functionalities. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Email/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Email/Properties/AssemblyInfo.cs index 458caaee6..09a8accf4 100644 --- a/src/Orchard.Web/Modules/Orchard.Email/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Email/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Module.txt b/src/Orchard.Web/Modules/Orchard.Fields/Module.txt index aefcf3a60..9fe4abbae 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Fields/Module.txt @@ -2,7 +2,7 @@ Name: Fields AntiForgery: enabled Author: Antoine Griffard, Sébastien Ros Website: https://github.com/OrchardCMS/Orchard -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Some content fields Features: diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Fields/Properties/AssemblyInfo.cs index f4c8472e3..1bea5f40b 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Fields/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Forms/Module.txt b/src/Orchard.Web/Modules/Orchard.Forms/Module.txt index c1fc658c1..4eb7c4788 100644 --- a/src/Orchard.Web/Modules/Orchard.Forms/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Forms/Module.txt @@ -2,7 +2,7 @@ Name: Forms AntiForgery: enabled Author: The Orchard Team Website: https://github.com/OrchardCMS/Orchard -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides a system to publish and alter html forms. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Forms/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Forms/Properties/AssemblyInfo.cs index 4c1be4e97..80ed8c3a1 100644 --- a/src/Orchard.Web/Modules/Orchard.Forms/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Forms/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.ImageEditor/Module.txt b/src/Orchard.Web/Modules/Orchard.ImageEditor/Module.txt index 599484252..1968cdfd4 100644 --- a/src/Orchard.Web/Modules/Orchard.ImageEditor/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.ImageEditor/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Adds a client side image editor for Media Library Features: diff --git a/src/Orchard.Web/Modules/Orchard.ImageEditor/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.ImageEditor/Properties/AssemblyInfo.cs index 4c1f31ff7..22804a3a1 100644 --- a/src/Orchard.Web/Modules/Orchard.ImageEditor/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.ImageEditor/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.ImportExport/Module.txt b/src/Orchard.Web/Modules/Orchard.ImportExport/Module.txt index 8c2f36639..29df8d1f6 100644 --- a/src/Orchard.Web/Modules/Orchard.ImportExport/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.ImportExport/Module.txt @@ -3,7 +3,7 @@ Path: ImportExport AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides content item data import and export capability. Features: diff --git a/src/Orchard.Web/Modules/Orchard.ImportExport/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.ImportExport/Properties/AssemblyInfo.cs index 5011fa7d0..24d90c209 100644 --- a/src/Orchard.Web/Modules/Orchard.ImportExport/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.ImportExport/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Indexing/Module.txt b/src/Orchard.Web/Modules/Orchard.Indexing/Module.txt index 1cefde7b3..8141f7adc 100644 --- a/src/Orchard.Web/Modules/Orchard.Indexing/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Indexing/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The Indexing module enables the site to be indexed. The index generated by this module can then be used by the search module to provide an integrated full-text search experience to a web site. FeatureDescription: Indexing infrastructure. Requires an index implementation like the Lucene module. diff --git a/src/Orchard.Web/Modules/Orchard.Indexing/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Indexing/Properties/AssemblyInfo.cs index 9ab131fb3..7ed563bac 100644 --- a/src/Orchard.Web/Modules/Orchard.Indexing/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Indexing/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.JobsQueue/Module.txt b/src/Orchard.Web/Modules/Orchard.JobsQueue/Module.txt index 478e242fb..b9dc23426 100644 --- a/src/Orchard.Web/Modules/Orchard.JobsQueue/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.JobsQueue/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: This module provides a jobs queue to process jobs asynchronously. Features: diff --git a/src/Orchard.Web/Modules/Orchard.JobsQueue/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.JobsQueue/Properties/AssemblyInfo.cs index 05c2b3d31..da7e0dad6 100644 --- a/src/Orchard.Web/Modules/Orchard.JobsQueue/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.JobsQueue/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Module.txt b/src/Orchard.Web/Modules/Orchard.Layouts/Module.txt index 85b344108..626a1a950 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Category: Layout Description: Provides tools to create layouts. diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Layouts/Properties/AssemblyInfo.cs index f36b142d2..d0e348a1e 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Properties/AssemblyInfo.cs @@ -32,6 +32,6 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Lists/Module.txt b/src/Orchard.Web/Modules/Orchard.Lists/Module.txt index 36bf71c00..a0945488f 100644 --- a/src/Orchard.Web/Modules/Orchard.Lists/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Lists/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Introduces a preconfigured container-enabled content type. FeatureDescription: A basic container-enabled content type. diff --git a/src/Orchard.Web/Modules/Orchard.Lists/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Lists/Properties/AssemblyInfo.cs index a1d0cae7e..8d5840445 100644 --- a/src/Orchard.Web/Modules/Orchard.Lists/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Lists/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Localization/Module.txt b/src/Orchard.Web/Modules/Orchard.Localization/Module.txt index 9f5438f2b..c1609d29f 100644 --- a/src/Orchard.Web/Modules/Orchard.Localization/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Localization/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The localization module enables the localization of content items. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Localization/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Localization/Properties/AssemblyInfo.cs index f9466e265..1c5548703 100644 --- a/src/Orchard.Web/Modules/Orchard.Localization/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Localization/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Media/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Media/Properties/AssemblyInfo.cs index 311b0a520..ddfa46ca1 100644 --- a/src/Orchard.Web/Modules/Orchard.Media/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Media/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.MediaLibrary/Module.txt b/src/Orchard.Web/Modules/Orchard.MediaLibrary/Module.txt index 8ff098ba9..fc93674f2 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaLibrary/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.MediaLibrary/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides enhanced Media management tools. Features: diff --git a/src/Orchard.Web/Modules/Orchard.MediaLibrary/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.MediaLibrary/Properties/AssemblyInfo.cs index cefee7537..69f64639a 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaLibrary/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.MediaLibrary/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.MediaPicker/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.MediaPicker/Properties/AssemblyInfo.cs index 6e5b144ec..dce5d9927 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaPicker/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.MediaPicker/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.MediaProcessing/Module.txt b/src/Orchard.Web/Modules/Orchard.MediaProcessing/Module.txt index 607348c05..eceed599f 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaProcessing/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.MediaProcessing/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: John Murdock, Sébastien Ros Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Module for processing Media e.g. image resizing Category: Media diff --git a/src/Orchard.Web/Modules/Orchard.MediaProcessing/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.MediaProcessing/Properties/AssemblyInfo.cs index 49bd80ecd..986ca9bfd 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaProcessing/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.MediaProcessing/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.MessageBus/Module.txt b/src/Orchard.Web/Modules/Orchard.MessageBus/Module.txt index 236ff7423..6d2e37019 100644 --- a/src/Orchard.Web/Modules/Orchard.MessageBus/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.MessageBus/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides communication APIs for server farms. Features: diff --git a/src/Orchard.Web/Modules/Orchard.MessageBus/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.MessageBus/Properties/AssemblyInfo.cs index 6e33d89bc..e6a05a8b2 100644 --- a/src/Orchard.Web/Modules/Orchard.MessageBus/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.MessageBus/Properties/AssemblyInfo.cs @@ -32,6 +32,6 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Migrations/Module.txt b/src/Orchard.Web/Modules/Orchard.Migrations/Module.txt index 75a969a1a..c7bd03f88 100644 --- a/src/Orchard.Web/Modules/Orchard.Migrations/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Migrations/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Data migration commands. FeatureDescription: Data migration commands. diff --git a/src/Orchard.Web/Modules/Orchard.Migrations/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Migrations/Properties/AssemblyInfo.cs index 7d6939291..55087798a 100644 --- a/src/Orchard.Web/Modules/Orchard.Migrations/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Migrations/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Modules/Module.txt b/src/Orchard.Web/Modules/Orchard.Modules/Module.txt index cab6a6325..9b55fe8bb 100644 --- a/src/Orchard.Web/Modules/Orchard.Modules/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Modules/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The Modules module enables the administrator of the site to manage the installed modules as well as activate and de-activate features. FeatureDescription: Standard module and feature management. diff --git a/src/Orchard.Web/Modules/Orchard.Modules/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Modules/Properties/AssemblyInfo.cs index 7cdccf8bf..97187fa59 100644 --- a/src/Orchard.Web/Modules/Orchard.Modules/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Modules/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.MultiTenancy/Module.txt b/src/Orchard.Web/Modules/Orchard.MultiTenancy/Module.txt index c7ce927d2..931152791 100644 --- a/src/Orchard.Web/Modules/Orchard.MultiTenancy/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.MultiTenancy/Module.txt @@ -3,7 +3,7 @@ Path: MultiTenancy AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The multi-tenancy module enables multiple Orchard sites to run in isolation inside of a single web application, improving site density on a single server or hosted account. FeatureDescription: Configure multiple site tenants. diff --git a/src/Orchard.Web/Modules/Orchard.MultiTenancy/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.MultiTenancy/Properties/AssemblyInfo.cs index 8ccd8dcdc..f22e644f3 100644 --- a/src/Orchard.Web/Modules/Orchard.MultiTenancy/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.MultiTenancy/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.OutputCache/Module.txt b/src/Orchard.Web/Modules/Orchard.OutputCache/Module.txt index d723805b5..d52174179 100644 --- a/src/Orchard.Web/Modules/Orchard.OutputCache/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.OutputCache/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net/ -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Adds output caching functionality Features: diff --git a/src/Orchard.Web/Modules/Orchard.OutputCache/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.OutputCache/Properties/AssemblyInfo.cs index b31edefd9..df6c2cd94 100644 --- a/src/Orchard.Web/Modules/Orchard.OutputCache/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.OutputCache/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Packaging/Module.txt b/src/Orchard.Web/Modules/Orchard.Packaging/Module.txt index 2c6d59f47..b9c46e08b 100644 --- a/src/Orchard.Web/Modules/Orchard.Packaging/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Packaging/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The packaging module enables packaging modules using the OPC format. FeatureDescription: Commands for creating/installing local modules. diff --git a/src/Orchard.Web/Modules/Orchard.Packaging/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Packaging/Properties/AssemblyInfo.cs index eaffe6f63..2bff8527d 100644 --- a/src/Orchard.Web/Modules/Orchard.Packaging/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Packaging/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Pages/Module.txt b/src/Orchard.Web/Modules/Orchard.Pages/Module.txt index 011563b52..d9ad93e1b 100644 --- a/src/Orchard.Web/Modules/Orchard.Pages/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Pages/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Introduces a preconfigured page content type. FeatureDescription: A basic page content type. diff --git a/src/Orchard.Web/Modules/Orchard.Pages/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Pages/Properties/AssemblyInfo.cs index 7ae67fa33..ed6b769e4 100644 --- a/src/Orchard.Web/Modules/Orchard.Pages/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Pages/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Projections/Module.txt b/src/Orchard.Web/Modules/Orchard.Projections/Module.txt index b32a676c7..eb3678aae 100644 --- a/src/Orchard.Web/Modules/Orchard.Projections/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Projections/Module.txt @@ -2,7 +2,7 @@ Name: Projector AntiForgery: enabled Author: The Orchard Team Website: https://github.com/OrchardCMS/Orchard -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides methods to control how lists of content items are filtered and displayed Category: Content diff --git a/src/Orchard.Web/Modules/Orchard.Projections/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Projections/Properties/AssemblyInfo.cs index a7dc2d95d..3858d071a 100644 --- a/src/Orchard.Web/Modules/Orchard.Projections/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Projections/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Projections/Tests/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Projections/Tests/Properties/AssemblyInfo.cs index 53e23f10f..4a94052c7 100644 --- a/src/Orchard.Web/Modules/Orchard.Projections/Tests/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Projections/Tests/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.PublishLater/Module.txt b/src/Orchard.Web/Modules/Orchard.PublishLater/Module.txt index 123a6584b..0395daac6 100644 --- a/src/Orchard.Web/Modules/Orchard.PublishLater/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.PublishLater/Module.txt @@ -3,7 +3,7 @@ Path: PublishLater AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The PublishLater module introduces draft creation and scheduled publishing functionality. FeatureDescription: Draft creation and scheduled publishing. diff --git a/src/Orchard.Web/Modules/Orchard.PublishLater/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.PublishLater/Properties/AssemblyInfo.cs index 16c675fee..31c1654e8 100644 --- a/src/Orchard.Web/Modules/Orchard.PublishLater/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.PublishLater/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Recipes/Module.txt b/src/Orchard.Web/Modules/Orchard.Recipes/Module.txt index bc1cf1d78..b8bfc062c 100644 --- a/src/Orchard.Web/Modules/Orchard.Recipes/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Recipes/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides Orchard Recipes. FeatureDescription: Implementation of Orchard recipes. diff --git a/src/Orchard.Web/Modules/Orchard.Recipes/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Recipes/Properties/AssemblyInfo.cs index ba1ed7509..1846dbf25 100644 --- a/src/Orchard.Web/Modules/Orchard.Recipes/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Recipes/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Redis/Module.txt b/src/Orchard.Web/Modules/Orchard.Redis/Module.txt index 0529c9fdb..ba0cc4050 100644 --- a/src/Orchard.Web/Modules/Orchard.Redis/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Redis/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides Redis integration with Orchard. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Redis/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Redis/Properties/AssemblyInfo.cs index cabbd8c22..a42476ab0 100644 --- a/src/Orchard.Web/Modules/Orchard.Redis/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Redis/Properties/AssemblyInfo.cs @@ -32,6 +32,6 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Resources/Module.txt b/src/Orchard.Web/Modules/Orchard.Resources/Module.txt index ab51554b6..5848059db 100644 --- a/src/Orchard.Web/Modules/Orchard.Resources/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Resources/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.10 Description: Provides a variety of third-party client-side libraries (stylesheets and scripts) used by other modules. Priority: 5 diff --git a/src/Orchard.Web/Modules/Orchard.Resources/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Resources/Properties/AssemblyInfo.cs index f32955ced..df2a2261e 100644 --- a/src/Orchard.Web/Modules/Orchard.Resources/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Resources/Properties/AssemblyInfo.cs @@ -3,7 +3,7 @@ using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Security; -// General Information about an assembly is controlled through the following +// General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. [assembly: AssemblyTitle("Orchard.Resources")] @@ -14,8 +14,8 @@ using System.Security; [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] @@ -25,13 +25,13 @@ using System.Security; // Version information for an assembly consists of the following four values: // // Major Version -// Minor Version +// Minor Version // Build Number // Revision // -// You can specify all the values or you can default the Revision and Build Numbers +// You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Roles/Module.txt b/src/Orchard.Web/Modules/Orchard.Roles/Module.txt index 1c2806af6..e663be50e 100644 --- a/src/Orchard.Web/Modules/Orchard.Roles/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Roles/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The roles module is adding the ability to assign roles to users. It's also providing a set of default roles for which other modules can define default permissions. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Roles/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Roles/Properties/AssemblyInfo.cs index 6bc130f16..20617e688 100644 --- a/src/Orchard.Web/Modules/Orchard.Roles/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Roles/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Rules/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Rules/Properties/AssemblyInfo.cs index 569e90f3f..7030c76ca 100644 --- a/src/Orchard.Web/Modules/Orchard.Rules/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Rules/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Module.txt b/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Module.txt index 42d953e21..8ecbde6f8 100644 --- a/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Description for the module Features: diff --git a/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Properties/AssemblyInfo.cs index b3b31ce3d..004d87a7d 100644 --- a/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Scripting.Dlr/Module.txt b/src/Orchard.Web/Modules/Orchard.Scripting.Dlr/Module.txt index de74a00a6..f5c8220db 100644 --- a/src/Orchard.Web/Modules/Orchard.Scripting.Dlr/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Scripting.Dlr/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The DLR scripting module enables the possibility to execute scripts using the DLR. FeatureDescription: DLR scripting support. diff --git a/src/Orchard.Web/Modules/Orchard.Scripting.Dlr/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Scripting.Dlr/Properties/AssemblyInfo.cs index 4faa92288..1e3e0df78 100644 --- a/src/Orchard.Web/Modules/Orchard.Scripting.Dlr/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Scripting.Dlr/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Scripting/Module.txt b/src/Orchard.Web/Modules/Orchard.Scripting/Module.txt index 7f67de3cb..fa60138af 100644 --- a/src/Orchard.Web/Modules/Orchard.Scripting/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Scripting/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The scripting module enables the possibility to execute scripts using a simple custom scripting language. FeatureDescription: Scripting support. diff --git a/src/Orchard.Web/Modules/Orchard.Scripting/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Scripting/Properties/AssemblyInfo.cs index 689dbaa27..aeeedb2f1 100644 --- a/src/Orchard.Web/Modules/Orchard.Scripting/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Scripting/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Search/Module.txt b/src/Orchard.Web/Modules/Orchard.Search/Module.txt index 8401053d1..1651c6dab 100644 --- a/src/Orchard.Web/Modules/Orchard.Search/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Search/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The search module enables the management of the search index and provides the front-end searching user interface. diff --git a/src/Orchard.Web/Modules/Orchard.Search/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Search/Properties/AssemblyInfo.cs index bed30d571..c4529cc56 100644 --- a/src/Orchard.Web/Modules/Orchard.Search/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Search/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Module.txt b/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Module.txt index 8e2474347..97fdfd02d 100644 --- a/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Module.txt @@ -2,7 +2,7 @@ Name: Secure Sockets Layer AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: This module will ensure SSL is used when accessing specific parts of the website like the dashboard, authentication pages or custom pages. FeatureName: Secure Sockets Layer diff --git a/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Properties/AssemblyInfo.cs index 9772b48ac..f8f12be3d 100644 --- a/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Setup/Module.txt b/src/Orchard.Web/Modules/Orchard.Setup/Module.txt index 93dc46ce7..dd1e33ee4 100644 --- a/src/Orchard.Web/Modules/Orchard.Setup/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Setup/Module.txt @@ -1,7 +1,7 @@ Name: Setup Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The setup module is creating the application's setup experience. FeatureDescription: Standard site setup. This feature is disabled automatically once setup is over. diff --git a/src/Orchard.Web/Modules/Orchard.Setup/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Setup/Properties/AssemblyInfo.cs index 1d213a592..7293e5c5a 100644 --- a/src/Orchard.Web/Modules/Orchard.Setup/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Setup/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Tags/Module.txt b/src/Orchard.Web/Modules/Orchard.Tags/Module.txt index 633736aae..8426fb1db 100644 --- a/src/Orchard.Web/Modules/Orchard.Tags/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Tags/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Features: Orchard.Tags: diff --git a/src/Orchard.Web/Modules/Orchard.Tags/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Tags/Properties/AssemblyInfo.cs index f3374173b..0a263747c 100644 --- a/src/Orchard.Web/Modules/Orchard.Tags/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Tags/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.TaskLease/Module.txt b/src/Orchard.Web/Modules/Orchard.TaskLease/Module.txt index 4425d6258..f56af88c6 100644 --- a/src/Orchard.Web/Modules/Orchard.TaskLease/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.TaskLease/Module.txt @@ -2,7 +2,7 @@ Name: Task Lease AntiForgery: enabled Author: The Orchard Team Website: https://github.com/OrchardCMS/Orchard -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 LifecycleStatus: Deprecated Description: Provides services to synchronize tasks in a farm environment. diff --git a/src/Orchard.Web/Modules/Orchard.TaskLease/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.TaskLease/Properties/AssemblyInfo.cs index 76335ad5c..ea5068175 100644 --- a/src/Orchard.Web/Modules/Orchard.TaskLease/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.TaskLease/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Module.txt b/src/Orchard.Web/Modules/Orchard.Taxonomies/Module.txt index 8665f23b3..04cc9d17a 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The taxonomy module is providing custom categorization of arbitrary content types. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Taxonomies/Properties/AssemblyInfo.cs index faf5f0d08..f961dad0b 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Properties/AssemblyInfo.cs @@ -29,5 +29,5 @@ using System.Runtime.InteropServices; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Templates/Module.txt b/src/Orchard.Web/Modules/Orchard.Templates/Module.txt index d10066a5c..d4302b2f3 100644 --- a/src/Orchard.Web/Modules/Orchard.Templates/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Templates/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides a Template type that can be used to store template code and used as a shape. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Templates/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Templates/Properties/AssemblyInfo.cs index cd377a346..c11e65e32 100644 --- a/src/Orchard.Web/Modules/Orchard.Templates/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Templates/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Themes/Module.txt b/src/Orchard.Web/Modules/Orchard.Themes/Module.txt index 528f48d46..0069b6b3d 100644 --- a/src/Orchard.Web/Modules/Orchard.Themes/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Themes/Module.txt @@ -3,7 +3,7 @@ AntiForgery: enabled SessionState: required Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The themes module makes it possible for Orchard applications to customize the look and feel of an Orchard web site. FeatureDescription: Basic theming capability. diff --git a/src/Orchard.Web/Modules/Orchard.Themes/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Themes/Properties/AssemblyInfo.cs index 5df96d6e9..7e53d6b8e 100644 --- a/src/Orchard.Web/Modules/Orchard.Themes/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Themes/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Tokens/Module.txt b/src/Orchard.Web/Modules/Orchard.Tokens/Module.txt index 9124861ec..3f5ade365 100644 --- a/src/Orchard.Web/Modules/Orchard.Tokens/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Tokens/Module.txt @@ -2,7 +2,7 @@ Name: Tokens AntiForgery: enabled Author: The Orchard Team Website: https://github.com/OrchardCMS/Orchard -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides a system for performing string replacements with common site values. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Tokens/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Tokens/Properties/AssemblyInfo.cs index 878f8d8b5..805c3590e 100644 --- a/src/Orchard.Web/Modules/Orchard.Tokens/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Tokens/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Tokens/Tests/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Tokens/Tests/Properties/AssemblyInfo.cs index 418843c79..00d0acada 100644 --- a/src/Orchard.Web/Modules/Orchard.Tokens/Tests/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Tokens/Tests/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Users/Module.txt b/src/Orchard.Web/Modules/Orchard.Users/Module.txt index 934da1bdb..4a22740bf 100644 --- a/src/Orchard.Web/Modules/Orchard.Users/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Users/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The users module enables user management. Features: diff --git a/src/Orchard.Web/Modules/Orchard.Users/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Users/Properties/AssemblyInfo.cs index 8f282f5ea..0f39fccc3 100644 --- a/src/Orchard.Web/Modules/Orchard.Users/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Users/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Warmup/Module.txt b/src/Orchard.Web/Modules/Orchard.Warmup/Module.txt index 9aadd95b5..9e970c6b0 100644 --- a/src/Orchard.Web/Modules/Orchard.Warmup/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Warmup/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides a mecanism to generate a static version of pages for being used during application warm up. FeatureDescription: Generates the static version of specific pages periodically. diff --git a/src/Orchard.Web/Modules/Orchard.Warmup/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Warmup/Properties/AssemblyInfo.cs index f0c8e41a4..8fbeb03b2 100644 --- a/src/Orchard.Web/Modules/Orchard.Warmup/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Warmup/Properties/AssemblyInfo.cs @@ -34,6 +34,6 @@ using System.Security; // CHANGE ON THIS VERSION NEEDS TO BE APPLIED ON WEB.CONFIG TOO -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Widgets/Module.txt b/src/Orchard.Web/Modules/Orchard.Widgets/Module.txt index c8ac88336..032c301f7 100644 --- a/src/Orchard.Web/Modules/Orchard.Widgets/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Widgets/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: An implementation of widgets for Orchard. FeatureDescription: An implementation of widgets. diff --git a/src/Orchard.Web/Modules/Orchard.Widgets/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Widgets/Properties/AssemblyInfo.cs index 3674a1dc2..55186040c 100644 --- a/src/Orchard.Web/Modules/Orchard.Widgets/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Widgets/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.Workflows/Module.txt b/src/Orchard.Web/Modules/Orchard.Workflows/Module.txt index 3a1efae32..8b9b508dc 100644 --- a/src/Orchard.Web/Modules/Orchard.Workflows/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Workflows/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Category: Workflows Description: Provides tools to create custom workflows. diff --git a/src/Orchard.Web/Modules/Orchard.Workflows/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Workflows/Properties/AssemblyInfo.cs index bfd2559b2..232ed2114 100644 --- a/src/Orchard.Web/Modules/Orchard.Workflows/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Workflows/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Orchard.jQuery/Module.txt b/src/Orchard.Web/Modules/Orchard.jQuery/Module.txt index 6deb5d757..83ae92e8d 100644 --- a/src/Orchard.Web/Modules/Orchard.jQuery/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.jQuery/Module.txt @@ -3,7 +3,7 @@ Path: Orchard.jQuery AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 LifecycleStatus: Deprecated Description: The jQuery module contains the jQuery and related script libraries. diff --git a/src/Orchard.Web/Modules/Orchard.jQuery/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.jQuery/Properties/AssemblyInfo.cs index 1b1a6aaab..42c6c7661 100644 --- a/src/Orchard.Web/Modules/Orchard.jQuery/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.jQuery/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/SysCache/Module.txt b/src/Orchard.Web/Modules/SysCache/Module.txt index 4006380ca..561a03894 100644 --- a/src/Orchard.Web/Modules/SysCache/Module.txt +++ b/src/Orchard.Web/Modules/SysCache/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Enables database caching using the SysCache provider. Features: diff --git a/src/Orchard.Web/Modules/SysCache/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/SysCache/Properties/AssemblyInfo.cs index abce8e50e..c43919e88 100644 --- a/src/Orchard.Web/Modules/SysCache/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/SysCache/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/TinyMce/Module.txt b/src/Orchard.Web/Modules/TinyMce/Module.txt index cb61bd654..2214a0e3a 100644 --- a/src/Orchard.Web/Modules/TinyMce/Module.txt +++ b/src/Orchard.Web/Modules/TinyMce/Module.txt @@ -2,7 +2,7 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: The TinyMCE module enables rich text contents to be created using a "What You See Is What You Get" user interface. FeatureDescription: TinyMCE HTML WYSIWYG editor. diff --git a/src/Orchard.Web/Modules/TinyMce/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/TinyMce/Properties/AssemblyInfo.cs index 6f819ff49..84a12518b 100644 --- a/src/Orchard.Web/Modules/TinyMce/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/TinyMce/Properties/AssemblyInfo.cs @@ -30,6 +30,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Modules/Upgrade/Module.txt b/src/Orchard.Web/Modules/Upgrade/Module.txt index 78e0348e2..8291edb22 100644 --- a/src/Orchard.Web/Modules/Upgrade/Module.txt +++ b/src/Orchard.Web/Modules/Upgrade/Module.txt @@ -2,7 +2,7 @@ Name: Upgrade AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.10 +Version: 1.10.1 OrchardVersion: 1.9 Description: Provides actions for upgrading Orchard instances Category: Developer diff --git a/src/Orchard.Web/Modules/Upgrade/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Upgrade/Properties/AssemblyInfo.cs index 3f4512798..7db7f354e 100644 --- a/src/Orchard.Web/Modules/Upgrade/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Upgrade/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Properties/AssemblyInfo.cs b/src/Orchard.Web/Properties/AssemblyInfo.cs index 71cdcc693..6922f0de3 100644 --- a/src/Orchard.Web/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Properties/AssemblyInfo.cs @@ -33,6 +33,6 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Themes/Properties/AssemblyInfo.cs b/src/Orchard.Web/Themes/Properties/AssemblyInfo.cs index 0860dc6cd..36e5bb4f8 100644 --- a/src/Orchard.Web/Themes/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Themes/Properties/AssemblyInfo.cs @@ -34,5 +34,5 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Orchard.Web/Themes/SafeMode/Theme.txt b/src/Orchard.Web/Themes/SafeMode/Theme.txt index bc6d2b8ae..de2409e09 100644 --- a/src/Orchard.Web/Themes/SafeMode/Theme.txt +++ b/src/Orchard.Web/Themes/SafeMode/Theme.txt @@ -1,6 +1,6 @@ Name: SafeMode Author: Jonathan Wall Description: The Orchard Theme for setup and failure conditions. -Version: 1.10 +Version: 1.10.1 Tags: hidden Website: http://www.orchardproject.net diff --git a/src/Orchard.Web/Themes/TheAdmin/Theme.txt b/src/Orchard.Web/Themes/TheAdmin/Theme.txt index 2c456caa6..269feeb82 100644 --- a/src/Orchard.Web/Themes/TheAdmin/Theme.txt +++ b/src/Orchard.Web/Themes/TheAdmin/Theme.txt @@ -1,5 +1,5 @@ Name: The Admin -Version: 1.10 +Version: 1.10.1 Author: Jon Wall Tags: hidden, admin Description: The Orchard admin theme. diff --git a/src/Orchard.Web/Themes/TheThemeMachine/Theme.txt b/src/Orchard.Web/Themes/TheThemeMachine/Theme.txt index 0fccae022..6c49589a3 100644 --- a/src/Orchard.Web/Themes/TheThemeMachine/Theme.txt +++ b/src/Orchard.Web/Themes/TheThemeMachine/Theme.txt @@ -1,7 +1,7 @@ Name: The Theme Machine Author: jowall, mibach, loudej, heskew Description: Orchard Theme Machine is a flexible multi-zone theme that provides a solid foundation to build your site. It features 20 collapsible widget zones and is flexible enough to cover a wide range of layouts. -Version: 1.10 +Version: 1.10.1 Tags: Awesome Website: http://orchardproject.net Zones: Header, Navigation, Featured, BeforeMain, AsideFirst, Messages, BeforeContent, Content, AfterContent, AsideSecond, AfterMain, TripelFirst, TripelSecond, TripelThird, FooterQuadFirst, FooterQuadSecond, FooterQuadThird, FooterQuadFourth, Footer diff --git a/src/Orchard/Properties/AssemblyInfo.cs b/src/Orchard/Properties/AssemblyInfo.cs index 250ab77f6..c2ef37c5f 100644 --- a/src/Orchard/Properties/AssemblyInfo.cs +++ b/src/Orchard/Properties/AssemblyInfo.cs @@ -34,6 +34,6 @@ using System.Security; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Tools/MSBuild.Orchard.Tasks/Properties/AssemblyInfo.cs b/src/Tools/MSBuild.Orchard.Tasks/Properties/AssemblyInfo.cs index d7aca6d27..4f6608a35 100644 --- a/src/Tools/MSBuild.Orchard.Tasks/Properties/AssemblyInfo.cs +++ b/src/Tools/MSBuild.Orchard.Tasks/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Tools/Orchard.Tests/Properties/AssemblyInfo.cs b/src/Tools/Orchard.Tests/Properties/AssemblyInfo.cs index 8b240d60c..6f4dfd7b0 100644 --- a/src/Tools/Orchard.Tests/Properties/AssemblyInfo.cs +++ b/src/Tools/Orchard.Tests/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] diff --git a/src/Tools/Orchard/Properties/AssemblyInfo.cs b/src/Tools/Orchard/Properties/AssemblyInfo.cs index f6051269a..c3a532084 100644 --- a/src/Tools/Orchard/Properties/AssemblyInfo.cs +++ b/src/Tools/Orchard/Properties/AssemblyInfo.cs @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.10")] -[assembly: AssemblyFileVersion("1.10")] +[assembly: AssemblyVersion("1.10.1")] +[assembly: AssemblyFileVersion("1.10.1")] From 77f3a031c5837aa399d055431780e52650d7c1a0 Mon Sep 17 00:00:00 2001 From: Lombiq Date: Thu, 28 Apr 2016 01:55:36 +0200 Subject: [PATCH 05/18] Fixing that stylesheets having a protocol-relative URL caused exception when building shape alternate names --- .../ResourceBindingStrategy/StylesheetBindingStrategy.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Orchard/DisplayManagement/Descriptors/ResourceBindingStrategy/StylesheetBindingStrategy.cs b/src/Orchard/DisplayManagement/Descriptors/ResourceBindingStrategy/StylesheetBindingStrategy.cs index d027e900d..ececdd071 100644 --- a/src/Orchard/DisplayManagement/Descriptors/ResourceBindingStrategy/StylesheetBindingStrategy.cs +++ b/src/Orchard/DisplayManagement/Descriptors/ResourceBindingStrategy/StylesheetBindingStrategy.cs @@ -43,6 +43,9 @@ namespace Orchard.DisplayManagement.Descriptors.ResourceBindingStrategy { if (Uri.IsWellFormedUriString(fileName, UriKind.Absolute) || (fileName.StartsWith("//", StringComparison.InvariantCulture) && Uri.IsWellFormedUriString("http:" + fileName, UriKind.Absolute))) { + if (fileName.StartsWith("//", StringComparison.InvariantCulture)) { + fileName = "http:" + fileName; + } var uri = new Uri(fileName); shapeName = uri.Authority + "$" + uri.AbsolutePath + "$" + uri.Query; } From 6ec23919aa3ca091d2f68e94ff034fe07a9c7098 Mon Sep 17 00:00:00 2001 From: Sergio Navarro Date: Thu, 28 Apr 2016 21:04:29 +0200 Subject: [PATCH 06/18] Element Bindings breaks after adding field to content type Fixes #6842 --- .../Views/EditorTemplates/FormBindings.cshtml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.DynamicForms/Views/EditorTemplates/FormBindings.cshtml b/src/Orchard.Web/Modules/Orchard.DynamicForms/Views/EditorTemplates/FormBindings.cshtml index 6fc93195b..66b68d91e 100644 --- a/src/Orchard.Web/Modules/Orchard.DynamicForms/Views/EditorTemplates/FormBindings.cshtml +++ b/src/Orchard.Web/Modules/Orchard.DynamicForms/Views/EditorTemplates/FormBindings.cshtml @@ -22,8 +22,8 @@ @if (partDescriptor.BindingContexts.Any()) { foreach (var partBinding in partDescriptor.BindingContexts.SelectMany(x => x.Bindings)) { - var partBindingId = String.Format("binding-{0}-{1}", partDescriptor.Part.PartDefinition.Name.HtmlClassify(), partBinding.Name.HtmlClassify()); - var partBindingState = partState.Bindings.ElementAtOrDefault(partBindingIndex) ?? new BindingSettings(); + var partBindingId = String.Format("binding-{0}-{1}", partDescriptor.Part.PartDefinition.Name.HtmlClassify(), partBinding.Name.HtmlClassify()); + var partBindingState = partState.Bindings.FirstOrDefault(f => f.Name == partBinding.Name) ?? new BindingSettings(); @@ -36,7 +36,7 @@ } @foreach (var fieldDescriptor in partDescriptor.FieldBindings) { var fieldBindingIndex = 0; - var fieldState = partState.Fields.ElementAtOrDefault(fieldIndex) ?? new FieldBindingSettings(); + var fieldState = partState.Fields.FirstOrDefault(f=>f.Name == fieldDescriptor.Field.Name) ?? new FieldBindingSettings(); if (fieldDescriptor.BindingContexts.Any()) { foreach (var fieldBinding in fieldDescriptor.BindingContexts.SelectMany(x => x.Bindings)) { var fieldBindingId = String.Format("binding-{0}-{1}-{2}", partDescriptor.Part.PartDefinition.Name.HtmlClassify(), fieldDescriptor.Field.Name.HtmlClassify(), fieldBinding.Name.HtmlClassify()); From b0393a07807603dd04865b9e8d2f4e4fb9652670 Mon Sep 17 00:00:00 2001 From: Matthew Harris Date: Thu, 28 Apr 2016 21:03:33 +0100 Subject: [PATCH 07/18] Add generic default theme.png Fixes #5672 --- .../CodeGenerationTemplates/Theme.png | Bin 125324 -> 35315 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/Theme.png b/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/Theme.png index 81709592e01fa553eecaeebbe9b227d22dcb46e6..e68bb85fac1c9807f549233a10c24c3f81528b22 100644 GIT binary patch literal 35315 zcmbTdWl$VUvj&QV;O=h0oyFZHxVyW%OIX|q8l2$n?oRL}xI=Jv4{-PWVgQ+1P z1cbevP0Z{p+{sKWtZWop<_8?*5 zX69<+>~7=aNcK;UCZ!iHzyBQGw^;`QvR11%)9@4pnn>IXTzuDY6IRB6MG3K zGY`OGaX+1S{)S(!|^031xFrT`NrQyw-BCN53@y9t*W7Z;Z) z+kgA{-{>U(yzD%Z5&!@X7dso9B&QgwI1dlE1UD-uCmV+-H}`*OWgXqzO&rZE{yVk} zcP}Af|CIt|YbSRnH)|(nGI4P-S}hw#b0;r1x_@@)-wT$o zaJBKYFqd+5av=K`i}`H+m*FkhOiax!OnI4DIe1N&EC2v*CKEF*4kmyFyQvAM=|Af? zr}z)O`Tt+mv4AJV@{gSSf8^%BRbXNK=j;Dy0rb8WDnNE_X)w>ryNX@B&3^y&>dnAzy& z=Wpc5trwhbaGlnKf|qoi=C#V4=M7xgu0Mt)=XrKt+NF%uRW7YiTyV?vJ*|GU&}GDd zh54u4_W=zcAi)Km0P3HD0r;nu${OyUA_GDLm&APXf2o(KxX3>R82$}hV37YI`VZB= ziT*FDe-r(O>fb{F*|+J_UZl7iV?I1}xB^27T^4drL!TCd*We)vc;&!?So`b( zGluVwTyDVPxFYQ`mFwJQ(LkcUVEH9JGe7Q1tPSVdK&HHWuE(m(Dv>DYe0p% zT&imMtgVM`oMvIhOW`6k-W_!^{NE{a_7mjr<2-IWB&kA3=aN)v9ea{I;Wyr_;Xl_; z+qFbo5i^Hwy!ye)v{-P}Mqy$-BD5Ir!=~^Fql4beY~RW(8+C}tYWlfB(a8Ty4?>j- zs@VR`mW#;|)seYOz2f?s?UWO?Cq7;wpjKT`UOwKgS(jpMc=tyCi)wvL<&Xw_@>mf& z_tj^An$&T9gD*z`0#)Wyd(PTKGK>F60qd82Qv4NPa%PFrITUa~MUIa}ii<@;MMXu4 zL&BIG_|>=XD!9Jy+Md2XI46E_O!s(mcjM{eBC5D3&t-f<*AOlx`HxV=M1+}Sn3_XB zMH{RCm^%3Rv;VzkbF(M6KluGUcypF5jPf28v??SN2(A zCleL#iq>Yb6d8wYoNbb+x3}2a>A#qczsRl0&8_KqCm9s39#mv=`yubdk_XW%^6@SI zTc5F!kuZvt%gIw-L*|5~=x3pS=E2ov&;FyT%ib_nI9s#w_{{q9$o}%=XDwnCuAQ**13+7FJg` zw^vseceY}p{0I|aendizK|w@BMS)M1-5^sF2kXv{nRrN<731G5iRlW|YF=8>YHDU? zY5`ha{6tjN+sDV4#MqeV=)?pB(;uZQ+fY9;M=jiTt|eta&KJClj7SqH#NtluEWhHx z)_ikWSCT*rlYbH)03F(>gp;sMjp>2D6U&?oOzSqvrD=Uiw z!}BAoxqcw=RhkEerTTb#w>300RaJRgdqX@Bq>|%wGRw*-7&ZXN$gJNn59O(2teTZ? zjc*{qOT(hHjFEKueLVH@oR_ayT3yA+LO14gX&sUy#o|5Q{aZD?lu;pBrs(#AN_oz| zas#@dyrcLS16`4wu}K59&pH^HI0AG^va((UghwnJ ze29bqO5k;op-45NE8qUzVejbRLqIf2NyjCOgqox8FndTuYi-LOu^=g_yb-IdCKwxs{qVI+>Z%hlpef|L}~6({4U9 z>CfNNnOmX}llYm#&S-;A5dQrM+lUa5E<8lcqnRXO!=@kZx|zeK*FM65U}*_-eal7R zb*K}oojYyTjWcw5gY{RbT%d2(EzflS;g*yikyczgIjPT?un}V6@vwdSuc7*2z}v~s z!l@)5EA02c)4L6S9vMEd-_hCr^@}P4m1Ah+-oqv{_ZU<}Lp6xhx)#v61 z5-PG#;NQBUDhOqy;Wa4p+EPy9sM7S(^oY*S+ZNp1+)L@hJ56K3@jxU$NH15FEem#S9qFbEzRNR2sGzLoqe{Y+&YISg3^g5;cW!*X_Z z-Zr^-yBRmN6=DY)VcKO}8J@iIY)V5R_6&RU&$ML{AU6TxMtqRFQIL^Skkgh3>628o zriv$H7)*rYdLl78{+nv1W&J06a(OHWcmh-Mb(2{_55DAh&-pWIH^eJcIGB&;&oECf zGn2^BFCF3BvEee)3xNNWnKp z_O+puRRG|9`F>t;;u}?=;nm{R z5*M#xJ%ac)K4}cuC!#o);6j<_c@y6 zvAdhQXru%X%owxT}Dz{4Z5 zc66|{t~fn9(>7j(`J0&C=6-wNK;k;X`>|mA;{eVC1s7~p9p^yDv3wKy9E7Z{qVJ8L zd4;W;2pTF5cP`LLaY+e@2{Ev`+VE@=^AE!`OC4+-?X7E^>}{3p=FJ6-aAKM%IPBg! zm?&^(vxWQ2Zl8!Co4iGUo?=__$aCVXK+rYr^Yf44yp+txBq5rvCO_j{~Y~ zqClxt#nZ-%qm#0l>WcE(-0W;JD<3K}$K}MFjCR|W-RA@x)Oa*sd2yg8K^E*_0f+59 zOO)`^(wf`bNO8*p&L4(@SoXee0dNXlAyef|!e zI(T4SZP@F%QIe5+CLBCvipWbrTTCv>j|IVEXGD?x`Q^1nUr^dS8Z$#ZGdD9gHjb z2Whf7we!=2fkSI#c!(MF1sVf@4d+WBm0aIZ(ok2FUs;-5H=C8x=6*OWSW}b4TLegE z+7knJk~z(q8K;JG$ote<+hFfj#rF2<#%HKF;wz! z5nI`m8~ou&_{-PynOLRR9fQvq@-4pm6&7FT4%bhDVHCW8x#64nEDS6@x>x2%ACaU2 z%q)JVb`u<0Q)$2DVby+NyXMz|&EN@inPs&KN2zm<%dV@e4df=abMn|?wN6$GVCp0* z_`*jFSi&Q!1T7PsxmqEuXK|l1x->sp==2^?`ij z#^$2y#ow`6wojWCKDRG%U(<_Nbr@4pAmKBmVBU7O&9p1*DoKRK`uRin^Jan^UVG;6 zVpl$3yimwR)fTEuxXR;BR$hap3U~V7_K=o-Tn?dGT7{hjMR&N48&-vpmFbji@F z402MNT{$BLGeT&|MEUVW_1?=%87jtINj643TE)-)_+Ir9s?4&1*1?nQutcslapXQM zDENEI&HTqp7dLW$(gL4w$pI}&g5?VW*nG%>KJ>fs5u=Uv1SfJ79pW(;t2XO=CLUHI zRDQODrECm*cd!kyZE1!5fvQ!LU0cT3f4S(wR?pwiI(8VJv5f_TJaV!=>OdyCCRVs0 z5cq(`${9#L4E;AGfyl?M1#>gSD*}$XI1EMss>&n*DRbp#wx3^zV$Qp#1Y7J}KzDbS zm*W}w4M!y`iB{)nXWsHNf^NPqT3D_|CUmv6e%=Kag{3x4wi+ zvY&gA^%g2vh88Lv^rB(?Mvoz@|HY9Vf*U1k*B(YNZnl1w^kS>bscO(h`{o%4{c5Nr zBcHpQx83e61A-B^LT(ZsZK$u?9=<2UjiaU%a{Jb6^ERT9!Jy5!C>9lx1S81C%LWjD zsrml>`_6Zh;W8*?4z?&wgW($0@=1jQ*r(M&gNyU?-SgwO#>%!`j5|Q49--4#C$9id zEBktZVaZ`?lXq>s-@@gSJ~`4~RCoffuE`^$r~Q}anBlf|UK$$e^Ys>S)3|739T*qo zZ~0S}w|yXEB_|~%qnW-wkq;5!C|-#JygMZ7#KlcRA!8dTW?|BxnRN4DR|ue`d^=$` zt$*4h6>gQx)zM7iHi%Ms6V^$zbLOWk0S4gx%$}34(yG++li1bXSnbP;-*sDgXV&Yc zfuH3vz*+>9oSaN-kVBkvzHMg|M0)KKH!DJm1`7-G=@aayPcWZfK2N)0CC9@EzNs0b zyWLLTzl`V#@PURU{qKJ9o9v)J{2efl=3%zSnRJ7LC-@9us7a{a*jd(Iem$SzbOjgH zXIigWt=(=hXvv)3NlQQ$mY*tT;b!OdRnN{&?-Y()G#?H^+27F6@MpgXy2pXDyb&VBWx5Lr_wC`j>e39(2CH}}^T zz-KWxFb92zHfFlj^fk>*jD^GJ(k#z5-M$UhmzuRXfS2@j(g)=e<65o0ke04tXoRz2 zdb8*53$n0di*iCfCxL>2S%8Cqf|(m8Tb7@CNX)MXkIhROe^DjWaGa_ZsdF94)ZVGblSCg#tI+r<%7WHo2!3HaPF2>j0X_VXcL4f;i& zt-@I3LSdaMr(vLHprN*~x+$fd1Q{*fhdU%OIx@_k~@+HW=QHRuVL4ZEw@&c{*O?3UxZY z(;N7tEpOkoacEDiH{_vX?J_(}dQX!HkN6DEM_l16SP33@o(Alre zM%R0S&KVtfoNeo)z|Zi$F6%{HWtN?DsaUv%UH$~OhS5>cLjK$NGJ7}UD-uYe32_P7 zIJnrUSW5DWef{6?g5O2Uzy8L+OnMR!iUa$|;eAQr_0A|C&1wy>TCP20Zpbq9Z7^%b zhhKOl=Hq@Vhawrp(VcF<|$i>Z&i9rZ>Bc)xfc-#<%!ic^Sl zrZTpEfdKNkt&FFCQv69R8j=tZ{&~iTmxCv?-c3>_JL2!&#+QMRc^|gS!^!#Bh0&ukxj5-K;tU*YiGJRe%oF;V*<5O3s%iP9 zDmn&%ZxIa3@o1z@Tf3vei84i=c}gw-fe|QpUldQSa!X>Yd0Wm>#elVW{e)^AGwFvG zu$jai?|edY_fqoOoEu$e<^-{Yct=VwSF&rdC{1JwNh`VlEwu&HUuF#X;0+J)Jb@9N zM9z0-WW|Yv z7A8Wb{k`5+azsu@NyG)1i@~t^b!mo^i`$rwn5y?_xVF1H;7llDw4Yq`BbGPBUS2*n z= zQlX|j!LfilD%`4e&{U2bP@+lj2dW)t&` zrl!pb3ylKbxRF-y6K`^JI@y1xGkO0umIVoRcYBepJ6Ho@kqP=V&N`Uw#BJqX3Q!%< zWIzyL*Izo5*T;%P;?30k_E0-uNjwjHus-~9#2dgRB^BQL^e4IAWwL8Zf?~G5&}rJn zeIzSidUWJsvscSd2c?_l_)~ktVTp&{AJac{UqP|uO+4QUUtw8ef>C(E&SLiLjP6k& z@a)IBLC-JQkhJ^-U5AUp^}}bL1Ng8$Leb!U{+5fI`-fs`u&P4w8MgVh{Df~5h+sLi z#yuiEmw-XeEN7=ZS1bf`|Kn{=IL-vug-w7F$=d3ta@&(^NOr#H970UYg+N=WYWeoJ z5`JxYO<&uQk>;#VQ2kKSsNZ26-q;%V4|42=_kZM=XCxQy@QTw=SR)P={H{DxbT#W? z_>r60;`ErC4&y!&ldre7RJFfz2{dp75d%XjG%Ak?UgJ_ zIMLgtAL*yn7mq$~VntEVx14H~#7VBRDs{!chvyID;b~(k3#ZKv$EnO=6i)z5wK|>C zdXI*o4&>BSd^E&IU(QPBoBv;0F#o^oONz*?Rm-76SK$S^{9S^4AewS@xoGo>R|0o? zP7!I_l*uCWVdoTtO1%#~=I^}q4mNLSNS@{}$Rs*}CjB|DUYy#}B4PRY!)C)b8ib3E znUow5D=^5)Tk3xAu>F=QhauLMwCXfjECPkzg2j|a8Sg>=v!GGeyuJeI2t z_grTlgP!XR;Y`EEW&JT z&bnNm6!-rmhYiIX+}JRic?cly|CvHz{VjL%0`stEg#I+KHbEFP3l*#ou0xVVZO20<%k$b2dT)RuT*d&PO?$ar2nN2uIKqm_e?4AcShUw} zJT9%~phpArZG-w+OMBJJ>#y&@kw$^QztEkm@KEvJMi0b+CEQh?Rqy0Fmzihs1bYH+ zF*MKqzIR@>x3!TKY!0KldpXUlARfX-z>>3xPD*?W+V0b1kCy_uk;s&n*F3$?Fa1a%#lm}vF}s|ULkboY4GG^97!SB&{XF6r z{sYsWB*^NaW-k=$1nn-NCBD(f%p$=stJ%ix0flhDlvPpyw`Gn;nx8w*G5i-w7lsnSsS*@_J(26~ zQMrZD&vkr90wh&{;rtgcqEV=pE2*Zz7iVt@WVjaOE;n?_)}& zY}y;mUBO}M`77>E9cZX8Vj+Vl7rds@=H}=C5f`2QDgGr^8(nSdz0S*3{>^r6%1vHZ zbyev|u>!7&^X2xgCOk~fhx_a2eg4t&W&G3Dn0>Irpi#^VJwpm6aUibF3%p<2>>-Js zr(ybH7O+SyA8qSk*Wq!xs_(Y-eIwgi38Y)N$gFDMrFA$wVFgM*qf7rdNqwI_%AY&# z;lB@<9@O`S`vk=xFR$o-|8}_Gk&0EWv^efzLpQ-nck&$5^{2p}KcJ9{uc6^5wx{nk zTMY~pj0njEHTwKp3k$rrn8_<;oP74$(gc`IE2fJC_J+BZjn8+-mm@SI%4v*faGQRI zZSvHEE_AD#4@*iPT&!>jaAMm~h=WO4ULWIeF`lPiRr}1@QO|h)H1??*-VT_v2L#=G zEq1uj&Ho*186qz9PuC;)E&MY99~b9~Ez~K)uI=ky3B6i`!-fTKn>UIUtDpdZAucnVs;MFLLhH7w2h zW=>SnE$KC4#>H9j2yxuRL_#(afk|G!9RVbK1W_cg2=)qGuM}19QGNQBW3&|%J38FQ zR#Vlq8c#tO*rGk@8Jrs@ zwVN@wWvi@*v{*AeKKZNfwAd7o%M;L0*9Ld<3FaD)nDFh-+RV$#m@q6hX>yzIu&#VG zpWj7iRMd4w-ci+vbs?o7&kH)h*oyy?@5knOO|D|oE;W~+=bP}l=O77)`3O7 zL@PiJ+^Rj>3a@~oqGGnRgKt_}2Z`{5*$+N}<>yLn{_W_h5J3t zkeOZ5Rq*vw*6Z@UdODsfiz^cuR{FZ55L46+>46uP#gL~^qE&Ee$9dD|^oKnCaN)o% zCT5=h!(&fy;4efptUuO;J7@c9MQ%;&gSX9R-A5CU0?rTXkDfOAO|WrhM3AM(qNlOC z{JkAOpw&^x!ueXa)kV{~cHOO&QJ|0jI}|=7(3UkrUVZy0bh*f)JmY9WB{qJ&&1EIL zx!TYx-uNj0vnaIf;tI(z2?;?*0HH%l74}4WX=#a=XSlO&yrZK7MJs_Gm;LSIun2i- z3eLRdS|}-7W}N4ATVg&uyCWFIyTw&JK`!$Z=ApG-iqG+$*DO{IcwfLx%potEnYCih zq4JtZoH8X{e(O;FCVKStRcmGiU!cDs>tYnqMg*kRZEv>z%P(baWg)&qUQ27qOnR#> zhAD=e9~Bw3{~1*@K>HDCCTMA6P12OuTy-VBy0iX=@AyRe^z`4MfjZDeVaN%LL$1X- z-qB@e-Ys+mSEIHQiH`xrcVk1nYQ@K4ZllNhK?6}ZK9{>Fjx8h<U+< z<<+&!EKIpzA7l>zt$;*5fVmFqZQjSR_y*r85&4wr^!txiy_)43<{IBd_s@gQS$!)Db*npk?+d2Z&9$4T zI|%s7vXViWHp;cx_{#3y)<;3_H>9wXuDI^?+J9?FKVpU!JWM#XhkErpe0h5lBkk9X zVLrpcbVLvP3*`;&;KhOQ3dEsK#ab=MG7a12)r%_zm?5a0!`+W*!prVIeIq|;nm60s-NoEpWJyjo+ci_$in9Z--jWY}on6~# zMj;-gJL_ktclFT}S0jE=n5bN04waUGhXLaI7ogwj+dN9p%7HZJdd^Lz8X8Pf`k$6+ z42dzZ!+bOt=ov28d!@B!V4iwcZRRZy40GLv_&}%kg=U3jW@eOy(K|akSW#SNy zOw^1b&mlBduDHwR6rrLytJdk^fa%9lV|U^1+3;;>Jt2sbRtv)T{^WcgnVEm_g7E0_ z^z!ul{QTtNgp}x;6o!?QiEPjMAO|H=a!TjK#y(*K*Va^bTthbQCneRil25R(A9qpH zMY|0?+r(hB2wOyWwLN{S-Aygd^c6U`L&WQx2+mHJ0H1pbw{iu7Z!~&oAv`VX>qrg1 zHHScl^jUBwYF7nn83=Bi6Q5U~R}<$DZ`UR^W+QuDY`J>fMj|Cp>|aczS64YzoQrrZ zLjEdYNT2yQDBPOKX4fs$9KxPG60Q5ViV#+=5L@*A+fw6k?ohqtq%Wa%u&9uggo#;S zO{1Li@$~X__=xs<&hF)5dJ6#ik*(jdb8KBqTr8bgr^8Z1Q$o9Kc|oIcp+cP=Hq@X%2HQ^3u6`)CFejUw#SK(qR4c`ZeAmVQ91%g zpsf**P!M!`EtwAP1;D=Q`m^fZ1&Ks&-^y7XsP0TbFX%CA>wWF=W9FfHEd(m$*QzLx z%$>Y)E{E@fSSQ|#%8Akob)O%IUsFjg)JqHY{>bgC<(?QN|keEyR&5%AV0 zItjlY=%}cnz=>bD7&25!nLMspt9`%YNBVcI_dU-+uVn?lft&~xEUdUS+2nT6J_|RD zO1!IVu$qBh7wg&2@MyEX$??ny-*jOd4wY&&%P-cugG>6(nDq8sd0SGe?5x}JZod)f z?Cgk!jZ&q`HEPztX1;J=e(+HWLYL})MpGBjlRgcJ@EY5p#(8Z%6FgebaFGqvN>?ag z$x*Q~0S!7tiNPQ@HI6+XJ-&Sw&X@f}h=*3^yDw+Yz{|(wd+?XH0T3onT{wRPe}%f- z==S*W*!yuAe@47l;RpBkit$6%Kpa^Xnvs_2Q;5LyQjI}2uN5Re^gowDAAOSq_RCi7(W1ay)W+A-Y1E}zxCPEi&F5DWd7LH3 zjk7aqCRR%C{kG_GKP-eU#AJ*lq4x#p%dTs#BAd@4inaWH$5`WVXTQkM;J9jrw_yfz zI=Rn@q|UL(sg9lvXFVC>4-TjSmGr1yk4#xyCVFEhnVE;rEHYoGN;FwAdk{ePaE|}II@7F?Cu$pbG9#Dz0U>@CH6vjs4G)!$~p!p%&M^S z4^y>2wP@OX9<56CgJIt2pY7|Hi%}}eXwT23FLcw*2G^0EGRY;C(j@ zIaYpIC6Bp(2;G=H5usQu#S zDh<7^UwBnpmKLiwf9?J>h}*{%RHK!$e~$P~k!cRhJqH+SKZ&tL3v8UcaN4bJtg}{` zI2mmjBz5JUi;Vx&t3o3rey#0&UP{@+`sLy-?WMFdI7&4Mhx^^z-A&`UuY~T>Gg*6FCHkwh%vAhtbg`@@9+MM zdd?41{o8$X4mW|nV>Pn(@}@}x1725YE~#N4STu_aS^Xi3Iyv7;FAwo14;&ju!)$XhV$hpEhdE^jW|26KZaTjR zKkCH_o{9nvrUlciIYyIXntx!Z=`j`oQLMwSj*Hyf^)BfY)%iP5roNzlw?gezQuQSh0L)FA;p2aBcqHBIGT}gql^)O99NeI!C8On{XBM=;H}$$NNCG}6{^6d<09*b- zmf`6XK8vW5f=Fs6W8sz?UUDH4T5F`r^v69}Fi0^h6Sr$DU(alplQnt%XCVfw{)Qhz zTRu&l{?<7?gd|O_2qQ|}w%Z&dYKYnEyUR085leByMdVkA$?X_0N;W}SRgkeEjZ^vZ;dX&*? zZ*$q-7~pf(rDDM6+m?J^AGfyLTthG}vzaR-g0APYGL;UR%X^P{NAYq*IBFGb?Y!cd*@)4!S(JDDibQR-xl1%uY*AF|=i_Ut z-5sOFtd_{~e)2x`Su;1Fh&{H zdyFNJ1Q(MO3r)=Yw*Q=Bpa2X-&0?t<=<)LKY;#gp@oF!|XwS<E%txMW*q{R`kRq0DwSg5&id^#+eJ*p$%;Gunb${Ou`f4BQJdn-bp8WtA%`T6rF7#JTv zUk?1qc9`peU@34MkSn?7!})&DOL&A*??7NVvAMmy8D8O3bSh6^dZYE@*NobvJs3Gm z0gnnLda4kfVRABQd0R;HYv0XMD!h`xl5O)F7_WWB;XEugBeaEngWlr%yU1PI6WoHr z|A2%T2ZsueiVW}O)wnS=NK4K80hH5Ra?OO2S1k(icc_BXm}_%@#5~aacfXe zoGj6-;7Gv@cgN*5S4lnV0R-%kCOl;1Do_x{(#^IhJ0= z50pQUT2=@XLxL&X%;pf8d9Y3olaeU2H#G~$tk13B zYy5olm6hcJaUQy>MHEs|OoS~%62mK2l`app9D1 zgDVQ{nd`$NSvrSorgZxFv-}E%MpF!G zjkR@EY=ru4>XZH?8w^`7%{_mbIY3WAQ3O#}dgV+d?MMo_MsOkJa982CxVl=i&EzPE zDzT)ZoC(Qn@l;+ol0-a^Jm33~N=i!b&!|DWMQ_U#G2-~?oVbE*xq6EAJb_+3^;Ve- zn&{~im%{m(J@}L^s;RDQY-}w9r-{wL$V{R_Yt42+lbVcl7@|(U(G|#XUNN=r%w4r{ zcm26nAy%m%(1A_3*g#KfV{S>o9P_toS|L(JDfiLDM9iVi9Y3R}k^}0h_YyV^+180c zMn=?5rO@H5c*o@PY&~1Jn(1@HB*X^MdQ6a5^Y} z7}6*auNB6EoaM%09cL1!G3tzLRs!uV<#uFd3idQIdR*09GHUowiuokF%N{OH>}GgVNXP#_>wZ|@>C%p0H@uF%KB58@j<{;p3x8h@C z2(htMVU#?29KYxq{_5-Jmrh?a68NZuxK!DC`1DV|F33|c2AI*r2gMb?f-s`Y!LS*E zCOBE);hmqfh{Zr^t7q8BLaHt@J|Ra`6^HJ{<7V@t33`s8r#FrU!HM$_Tv zo9*8Mjjr(ND`lu>UsCnx9_6#pxg8zvpcCAp^3cx5gnr_flp#=T-RIM zI;ts=>{fv$4QxrCLB4N}bmIaCl1w!!!Ke7EMZ~s(#>$wT^{cByY3U@))q(M8=}iN4?(3Czo*tL~c(2K8cM8U%^tB+Yv zvM?6i>)YBmnD7Xu6)irTvBA8Tk4Ny{EPjaou7T(Wo zh_yEtzzpdbu8D#ZlbV?%w@1wFv@ABtv5p9drs^w}bdQB4Omnpi;9x^Jzir^J7aRXB z)&;kE;h?6b7F9(QECPWApw>7!y}Uf}3?*)P8S%B=mmy~bj5f^2R;AhzHPdiPRMU-) zNN4F~MK-$Tqd00=d<7Lfxo(Sr^1pCQaf{q7%!6-Kp=~@>7<1TI*t{dL71gyNFih!w zFW#?c&V}3gi8(8^yv|DW8gc^{8mfxxD2c7Fto5eqOf`fwt^#&nk7bW%KRvno@ zi;F;STquUu@G*0GIu^HBd`=z!K!6>Imyg#4ezVot1)X%$3+C4QA!Q)c6 zITw__a-@Ps$n29Bv}|mzN@}Yfc={pH1Y_VN4Uz&DCYUOLaAH=>vjXc{Y7lf(*k)(7 zSGW2%kkvSQi3m+=gl)&n>>C;tv@8^dgXzBx8Av=i#qB&G6AF{(A!Ha2(@V2d$D*EG7j zt3TC`$3({t$O!SD1+K;n_=nF?Vx4Z|>2W#kyS6F*_5+8minKo}Y@_t%rNRnReXFMw zz!)bJ6C5gvEER?ksgrz#x{AhrSz~2$b#-a&(lI# zw>2kBT;jGfN(Z;2nOgUGLr4pZgVuexR4DAx5v_fL9%L|RZRxNN^K5okfQH68$S4R2 zHOYRhYopw^HYhQB#e_Y}_5@y4kqCu`5hk_M+|Q~~@$puLA8`=sLe(5f1lg}RY?sRN5>DR|JJr* z@95Mh8(`OfMpaNxW!-s8M|=*~_{^RmUxnqa5f|cAsKc0+EsdI^F9D9jnyOB}a1!QJ zpZdPYOt`MBEc{$Vb8q8j#A3>GUw(1Kv z%NiZc&GD@Zn*=SlH+7`cN;ndi$< zp3*%cxB=@3A0{3Yla|t_9OA%+3IQ=ngf67R9@7GivY?*QdhNv1!*db|zMJP0aeN%m z(VYMYYY=ch;xR<5=ym1epCKP!5{ks0M3fZ&FwN!4U@Z7+aYb&j8w^aUP=~Z~h-2>B zN05uIskc@l{>)GI^KOeCK02M7TdP#3&#`K_f4D!u#o?)rl)`L^9o=VAQ1oaa;lM-Q z=-xY2q?{Zl$Aaq?RPlLrUuEVwviei^#X7XI^orGfni#;v&A*n?`MRB})}3rQFt`DI zeM$X=>h{^+>a@P*LXm#R)yAHhIY`e~1djgG#)4zk;hKD3CN?1u7CQ%D1m-XH^$8s< zT2{_o_=uEMmMcNr!Av>fOnGKia(d<_f`NY~5Acsvq(5)%9Z8H-hZxK$c=7j(b2Lb?9A4TsZT!9nXP_Fy>cbYM2(&O50$ zkCfU4dv$dcZyKRlD&XZWzLhgX9{f-SH0Ew{wsYb8HiNFS+}#T&@wZV z$Je*>`zkk7ozI@4&DIZc+11NKA?FI}&PaWpGs)6gtSEgTR7kdS=sc$~Eeueunt+I! zHYlr?g&xt?C@8_;DzNJjo{bEg9TON)_qqI4F<)2;W@D$Tl&j?W>bkHa+_%)WL88GL zofsV__$CyQn2oRG=;F9UJ#{s5T=nQOB0B%xH^(#-6d;BKw>sVPQ#qDwll<;}xDP^* zm8VRz5`P-`DpSC1hw%u(djH2~6?7Fv9xgD<3O`ZV4dNtKk+$p->{b~Gzc@Yr@_RfO zQglsc{PlZyqE)^2rlBEN+BP<(z8SN+^KE#QDx%@A#=5sf8{ppGittN^O7pFiLCotL zO18TXh7xC(uU<)Q$l^>Q zqdqrz#Qgs0rcW*sU^e(XflDNmlB8S**2r!1**wURkx|>z%5oj~Zt1U5$rL&|!@2M2w-Ns=0f$LYss4EQdWiMq8hrR#2a zm%;JJ(lgzP);u!c!`+p6qe_NqgacjtZy1NiE@`Q7bV7?g5)wQCOWM4g)IwhShk>9U zGlvuVxr&?+?tBKaI_MUaOKVHwu}<*GV>c;#SLDlusXrhmEoOppOw7$Ld?x`UqYlBX}2rETX66eE57o_S_=HR)-L zumlSO1>q6vBB(#&n{yEe&;ig4Ku_r{yfCqyGFZ(?@N0E=cXu0~3^y*)N^C-=E3!)x zCKLwbIJBagA`E=oFj0-df8KAI@(_FxU3*&2m^uI_`ZoZTso%0kBE|Z@X|u*k?Y4hC zWHIPIv#)P#Cu06{Rn#PIDzEI6p;Hj|g(W zmY=)e$EHJ)V`QSq5%0n8z5Xv_;G=?W>wvlL5uXUX3(oW3u5CIKey8QgBNJd1QKVbZ z+b<6@E_E}j<6;C+y)!u9SaTqWqzWWWgkf#3@9wH_&$Fw)e|C+6c3p-B{dc}Wj!*O1 zuTMhVC-T~4G~D2KuZ~X50wa0KTTCmcNfQLB57p1NEq3 z{2@_;*6iS%zckNI#9d4n8^(-zp_$e%@8s>it@DF(Aet&4o?t}P@QQ&XgoO1LVsfkbOpRRdV>ztJa$n4~y$8)03KX`9s`YNmh{Pbv z%TZc4WvU%29a$6FNtR~|J48Y(4 z9=R(a00%+$6MQCG=KG`YyYzG+5yF9j(Nk7PjO4lmg6dirgBASOgg8=lTOf4FiHNP$@G+rP*j+|79JA=P-*_-)Ma$;YP4!kQl!q|_)u z(+>ADB?J2~QuuPfDiIg`@AqYMybzWr`U3KFJq3{D30b2su~`M!eS{x`ng#Z_`x zYOee`{ZP1S=sp2@sNG;p!H#IRO;v@&a4}jDiK%;P6d(F<@=qaW1W-{w_DsQ3tZKrA ztegUg87YX&;boNc?DTx>eB_Lu7S?zX_>wn6vpdgcaTOKid5pe8^?aWabwSXP;=l|= zX$gnIgsuq9_?g%TV2qB|Y|UDX8b1t0w5+tOq^+ct;iyr4sd3J;%^Onz$-8e`eRKKY z{Mt!$xVjRwWm*C(<}k<4V(r&TK!pW=qDT#KON2t{x<&ZyTf4$R_@og*Pu^< zpP)WZ*{TnAB+Dda;=GXDlk~eF57Yp)%!P z;k@Ep0jhFAxNaWU29HmVPtT9fPtQ*tPe1^VL^jJ;;q}Wb-%lQ3;AY`9;B({0gGYM( zgvGhN@nxyX=ubuN9c?Q%Mty=Nv_(8_^JzyiSir&E^khqrKr42ulRjglmnXG^8C>N{vAAH!ktd=YN& zB!Mn|W@dWYrZDX*8CZ;`Ca_3Z4I)cXQ(HCL@Yck^3PK1UhHo;W-{h+9_?s4qqav6`&z5D)ytavI+{( z!b{vW_vcPiI3u$CkqD5KNw>qPij;>=^nrL1(&3$~cu06?oN7~Oh)`FdSBdoIayHJs zs`{$V6iH3A!1>J9fy-RvEQ?nEh3nHdFV{`AakSJ~Dl$Ib+6sW#&&SpSDvZ@DbWiMm z$Hq~LvlPbQ@c*R|GAfdZV#4-)3Q%1?1ol_w`+9a~_Iim8h7Kzlq=L_{{=nzZ_c)-0 zz>S1Y08PDAs;95NwK?F*c6h$eoG?;=0e|={PMI?EQ_84$U9sf!Typr*_fIEeKw>rX z=L`OL-)`UI#kw`IG z(A-!!e=CH`^n|AcO7851$j}}<1s#bno}Z1HjR@{S`n`8{`U$PCXFDm0jBoaO{u>hT zuj69^FkYx2sLkW^qw~{qO2=Z9c43`m9Y4YvRcvfH5OqF!`RQn3+ZTd)w))3~Imu zU@|Zn06cVqyBD*^K)dH#=a7}nsm(`9KZ@*ZZEWpqVQ{a^-tNL#wlIrn!LyXnNm*Z0 zytu4ZxMA>}`89?keuTl;DDm{+KAB(+N)Czx=x~UxstUSW#JIwKa(X-h^QEu7p}o3- zx`ICPs(cXI^v_(&&#omExzp&JT(Gc|m6ZVb^3Edx6ytnyMwN+v*ul5D>Ate2ajXu2`-%nI%*$@CUiV)Fi!*;+E$f} z)6PvRjc4_1aig=5G}X+nTl3G>qkSf9{bdO2gpO>EoA~&|UIveO<#}pSg@>Qfc&g6A z2y(1U_*QIZloi1%6_L}R^WKrZt*vvE!H4gUFHaTP4b*Hx0d7|XK#;Gp^|l=iVWQfj zn!L%Olf=HX=HvQ{Mx`Q>>-bi`GG?Z-3d1Dg7^_s+GhjcAOmC(8GdQHeu#TBsAaK3{ zLd9HSAY$)mw9KaLI(z@_?xCCJ=>EM5P^#5(&9O;&~5;%K^N{O}3EN>nWQn zN}Sk~9N0#AcOD%cSO#bGeOnGc_7_MIg6-JT5@o5VGoXZogcPNxepDwj%Pe)eX56*6 z&6bn=eeu|7Rgl9-(QEdaUQ#g>3#8TuBT8`j^qZ)#tkOmfv+Mey!0sK>Pm_+Tv$64p z!-Ii7_B>C9La$h-|HJy!l=4C5j8n_O%izYOcY4arW%t-L4*}cP8sc+eprack76eF% zVv*@&rr1T{@q>Z(;lzO1X6<(gi77X79mZtRi83xAML#%+>=Xp@OGTV5{w@+khHg9Z;04Jg)?H`1v~X;a@3qkCE_< zF6spID{8Wo-iC*uA|OAUA7;NvA_wbXX}H15Yh~jAC(Ap|9?_n4{{u}x z!5e%`HN7uSJ$rOhY#{7`C2cJfLxO?zsqzT2T#asJSyy+(*uj?_sGsyR_dz2|I{#RT zKDk6p2HMBAY8`m}=%mn+ptF;m-Yo}0zXe)4GRKYc4$;)TQNOp{w{zXD$Jdid1Dpd~ zhuaconuiM^0QK*)JER_<35aCFX2Q2Rdmeb+pQrW+j9VO(`qL_!(A1rs`#F))D%rN7 zfc8{Mi_Qus5}K#AtZn5hEStw$d!y~(wfScUp-FfW`<#Cab;JVgAGIW`8RNKBdJr1` z2r%iablS?vi>*gpSCXIK(OQYGM~{uP{*xcj_lLJ<$p*dpWcK|FIl1K53n~nh6q`cm zr`1qExP5R}3rvzByzD7^R21gwr@4AZj@ z$6+C}gtnacswo9bB4MolCdcW|>G8GO$&D6x7O38V$(XWJ->?vL=$$hLlSPOE8%vVQ z7_L=CbSe}JRg8Otz&~<{Pyk|^aIp?mVOxp@a&tU-B0Bh$a`TX3fh9w}$h-ux0XN`1 zhfDoGbT9=6I|)a07S~u3kn{vQ)?%`S%I*Ku{XGc&k?R}YC?Bmr>LS1C=!v0=35&=L zI85}}KO8%_r{pV7L1{INKt|g`xcS`-5vZOb)hPe@avXe$HWA*&>rN~@Dpm{$6;14O z)B7M45&bJ*GH@G63;vO!zyRHa%>Dp1Dl2}D`cPP>Kw`qaQ;;S=AH|FoUKnLrSi+)w zj=)UUO`qb?%ssFQx%-oNkr5ix@o@hFZ1~G?Ml?N?g~^2+q;vrPTvkii+(PA8$7*bwQ4y^_Koo?~uJ+#3f#JgT!>G~A7yoO92rxojC zQ3rRYtn!Qe;Uvl1W2`q|j@qh)CVj^1nRNv@COU7g2+#ovG`kC%S%O&cqwbg+CNw|98nFAsk4@Rp;*@Is#b$DmO$q6c5hz@Dg{Y@&r9 zLI`l970zZK)7&T>5)QI7IzM{1KpE_WxS*DRIf+hL;>(%iN-W`GTyVD@6V) zzGB2lixWT#stae}!lmD&zd=FaNg^nO#T1X?0T{yJZ;D5WBv+5bMC^<)>aocF%={;T z_leVmb-x{b_{5nHaSv%ww|izP;lc^}GsWW~f-(-~Mu!3tT)OScr>on0uwLTQ_w(+F z5p<%@GKiM^zePMwqness?hz?*Eh1ZT@v1JhQl0CQ;zfIfy*`>`;N>>!pu*rNybAeQ z7h^=_p2mCqIF+Yp-#)MKvyQ$GZ#m@A+V4S>K3#T;0jH2d9=W8t0(K=Y%+;n9q@jb+ z!|%5?)GH6gvrV!j>5dK`xXz=$Xilo7F)_&CIxXOvxYQH9y?)owy1JO8W%H6TM{h&9 zj31XTT6tU|VP|)GL_9EEZd(1={YgdA{z9<*If5??DU$lV$O@~zDo1!6i_;lFcp-JX z(R-Lt1?+CLC?GPWhBEzmlcd^w$6~13N?F%%WmZny4v202u!UnN`Q}yl*-&l_rX;(vCt<7-o zG=T9L88C+SE_Il0*etcd3n@qi(EX+H3!O4zB~?V--q}MWo}XM!>^A#q2%e<25*Ahq zD5=JtrW+ofBg|T9v=E!+kX2jI0GjLgkxyGYgtu3G`{Dq@xnkdbLhh9Ji#Kj-x(_k2 zGk`d<|JSMen{6QtB#RnQDxXk^j?dLyUaoF%Ql0{n3o!afNK%_=aRPftc(qI6)fad@ zqNDW+kQycf|L$_4PH_3o2_Ic8*r5;f1z1_bq+ehR5SAAvNydeYiBuXCcKqvM@UGK5!Y>AU-Dl&F(B+)p))$+l2F9{=`%5Yj<`=VG0v zTO?@WO3>qGOJ|rci;ZSq4@vOUO4RVU*ln%p3q$q+(dXGG6EGtVAjn505vDvj2Lk)R z*$MW)JrAsjgPRSnw=6TMhxq8|Fe<7LHFp+KVYXa=Pc5lF%F8W2{zj1&^hqo>#xJt4 zr2)HFazI={h7L2Ow|C9-?Dz{3oJ+IU3BAVexY+LRY=*5)zbk*^#PkGku5`UjmF|@h zJ;GBD#8vYas40+7U=wVTaL$^bP|~gQ|4hZGuUMA){8muX^0`+suu@*GFd}Td!SrA( z$_Nhhr@Ye2s+^_+|406$zR>LabcpH`&|B2aX_zL<$(5!>K&2pCH`7FQg8gZ<66@_2 zpZJWhoSZAB+&^k>XWieJHL5cE2knTQoRN@N4jdjn9DdSNrCPuaAbN8xn7(hmJV{;5 zHc+|NgNT)&T@E^-;IpiujUpg%xsg^$r?UzdKaTDR{qA4|xAI2P5(<07tMQk>u$=C@GCE zwzI7m6X!Lh#8fqrTs^4Us0H-~4f!n$t}I9}HYOF+vpcd{d^Q)IYC-t-#fWg7n@uRY zuR@eGhuhvk-kUt&WcD5q#VXg?iGcmRpKY=fLsg$dr0fm4{;_47eskjEy>2NRKmHK} zXZ$;^ua08?G+tBT0>_sis_I-f{L}pBe-=tU+A!Kd>}1UAK;Q#g~GUG0@`$W*%XAzHjTCIc0bi zEv0DT1VEf?Y;7$hVYF*l042=Z9637hMEcS&F%vMcsw@G4e9}qEC80z{@{B;ail|=v z4;IqB`SFUOilX1Yjq5e1G&t(dBB9OylrFdOeb;5ciAFs%Yd&NVO2GHB! z^K51vwTAZ6)9(D2$D}Urm-RnkR?k8s^;k|CHTk9p4rDL-!Z{E%i>}0MvZ#UCZzka) z-0`KQHmvrS%jIACURKO2^q^&M*!-H^+iF|mC9(Z(DVy4Bk&1gNJ`>-Q+)3e{hcJSk zVV|C2>y*~#B7Bq>*y#tN_u!mMyHj(|#-_H6(XAGh+4v%iValx^pC83BGc5Xn-r}jo!VZ0;&poTe0(3OmyNesH4-Vx%z!3 z!W$x-&>H_X$@1#L2tNa;z7dy}87(byvz&TU)RQrLnxY{OFJFizBTeu)P4X`?Mzwj&N`{#aK-$gzq<)CHM zJMjuOa{v5f{B4B2_S|42Oz)t7pf7c<>0HAX` zw8*|7Db&i1PDOXOcSm?F-L!{ObiX}&ovtr<61&np)r?;f5;yaHl^mua}&>SjbM)!Koy89;z8MrF}V%f1ka!;UrV|hJr0c24N zaIo9k4w7{!NG&`ul(Ug&>k} zkyqo488j7PMAE6a&q&z7O2*>TYAec%&(7*QON=TjGuyC%E&2XSQ9+v;BjV6%BP_B3 zJ>@%2#wN0VCfxEq73Sy9!PHR6>f$Lo@vSDKMGDPscA|O$fHE3r+P=S}_!k?IQp)G5 z&;hm+rj47fih|^f>=apfbj$%h21#iW^K0Gdu*vG~mqhzm8D~2?-@^jv~@O0}j$n&G&ueC4=nsxx`5m z+?o4f-Ia{)74)Txi2h1&H`&c14A29s(~XY}qwg3G6P;dP3YQXWvL7F?9>>5#BgF{E zL%RWNP1l=!cjj7DANvFHQHX`T=a$za7JivJ-(T>FYy3$|2^id|FaTQwHkIn^E;G}S znN#ytr!tZgojOokHID0$a#2H4q2gfU?tGox%+2ld&_hC>j#C!u`UHe*|F_esNyKb^ z8SieVm!5yl-;fQKV0_wr>om#>)e<;TDxA>c8Ux@BKJFBT5+ny`DC2B4NEN}6dg8RI zXa%*AbN2nf5yzb2^E%PmtQA~UY26&V^LH!H z&$~W$>g<)W9k@z(XcFo7_D)iSUyeCwE}}93qapcUJ8B-e{!_Jcdj(C?3j3XmQDfhJ z5Zi&#N$Gg$f?b||v4B@v=HVss7Om6BpfKcKc)!dBw_Impo7&$!4>z*XAD4u^&6*-8wy_KvRjW;h}eDA7ShC~ zAhyN`pJNV2NRgNbfFXoWA2wR&Hgtd#S* zH+s=&cX4RMgDlc3H!An>xFEdV=}mx!sV6C)U(@ot7N&{`fs}`G=E4C zWJFiS2!0)vi=R1tPXp| zvoH1ai36oX$TuNCqz`fh8~@hHkMs6`7~YYdGv&mOl#QIw7tqvF`J+-siaQA()C~d0 z$3>44)6@N|e!it`pe^guHlxa+5-)>Nol%&iYuRpc!VMeqps_@aj$~i(_2J`r(!TSfGOu(7vK?O%a8D6x2K+eQ zNHp#Bh`#<3!O12u-=oqO%;Lc&#wWx<$B}RVcFgvjcE&LA&xj(NUHHn=d#->HGd3BH zq8&e{xWR3Fi?GAkDF=7=mQP2c$hrA-b;V7%#XM3X!<~($2PJiuVLmW8k%g6=D0%|K zEJ9pI`}buoB{6A^d%jojuY`bC$liPw!9~{#nd0wguBwgYnPt$q zs8%Fb#R@qZ+|b#-o*CRQSh9p+dBvI~`kk6#dEKC@aMR9EM&k{-Y)81Vn1prHICJXHx)d#^_#0KI95R7iJbl8m_;f4j{CAQiRoeLWop9=PnN zT!m|h7A18Orb_r2Dv5WE)+wI=J0}mPh`g?7pr}lf5CPKjC^t*0JRENRRZaNO=yyd4 zI9_s$w~_F$w{G(rmw}w7i-Fuj=(?W=8!TZYnpenpUHmaYU>g0955%ev;ffMZ}^#SocK9{ z{++HI21U$iYOT&M(TFK5aYD-?as=u4-O!yMA4~k0p+yreTQs~&P{!~!iw_EF%8<~I zUu($EBeqq_Dk@z0II>zEURcgMoGs7C>N(cFm${b7t)WTu`*tHsV5!|RokG^e-g#s4 zA@M?jCU}Qsu3z!#K-bh4!@OMr7x(StakK)Qi~@`TgJBQ z(|A~C{}B=e8aJt3WNe(cypWWVl%z%nQ=G51HMtC99J_r{G_20OeyUqu;FMJ=SEe;+ zFPG#F@yx;Z7w#gpR{r5H@`I$ukP#>0<*RT3-tp=2H+y><8+#jD`;*gS5S{Aac-zA4 zzNK>FKOt_0i@h@3#C!3V7icr4v6>fSAMKmG(7%rwUd!aG*LGZ^&>-7)((Pz$7eE$Y z9IDynv+rz*ExQNA^^&3AY_iiK3Lkd|!qd*S&`##wQn0OWFHvT79UblH#3rbyHH&L& zYYMa&2*IBMVr>G0YO1HF39{0Rqa>>q=+NnZIvE)$3z4RvA_4H5+k;DQ9)@n-w3XdP zM~i?xG>m^c{b7)ldqgI-5&CQe-#CDIiY8=m=#iUUA`>>;bMh5B)J#ICxdVA0~ zZ<#~{9!eZ(&%yKYb8!Dl`x9mtJ?~ReJ-QN%}r$jIynp8~;nalj?1y6)R8g~g`Qtsomzvz}2i{6S` zm(Q^s7=@$zOk#M4OF*OTKEc;#Io##?G*|a9z7SlS@A++WXN(C#Ij`>`Tr2fah(!CR z?k3mXEbYB_Uv; zms+;r)sOzFSQKA-QnHW@PwE~q{O*5;Sg_YOM#F<1*Qp1k5DlOA1~uZ;--W73TWM+0 zP7CVVqKN~(E|p`3kk1g`|E|F{-NDGJSUK`!?iMUj;^1LoX9&gM=!WNCKK(mM;qc?h znN*U=5|(k^PzTwb&)47`kB^N}X<5kG*eKXC{j2hkaZ@z$`E&@Cn;ro9G>Tt}A56K= z>V(-+#j+}&5G2X!qo^Beoo1deY~E6ks~`xIOrjtoGu#|E``O{@+MJ;MdV5>~Xb~8p z{rE;tyixpT*T}j$r%D)p-l&$Vf(c{ETM0s?#}Y``9E_9A#d5?F1ba_Ot>)bDbUl%J zYwN<8bH9DFD{7^|CqsjC!?7=Rwm|yJ`=_evq>vHaXyjCFJ9yWODI6{`Z+NTKYX>9l z($nr*fQ7|g4t#Uy%)V%RiYUBc2j;tK$)PGNj@D7bw`z91}<v^9SpO>^mY!U;=*vL^g+U*#8y&#wk8OW|L9~TQCMx)NHu!UBnrViKo z6%MqTX(K%}qGoE@S12R3G@JR@$uTHDDTnHin7>SBzb8Ko-}sNv*>REAs?3*_XA# z|1QbV&DnY7?VVXD29_9-b{pF~;Y^?}nK?S*FrdjFc=jL@mbPyYyk#6m>r*t@ z{S~#WYMqj^1t)lNn#~bMvgZ)bercSAQPn-B|3KYBgZWD4JGb4&`N>J00`|6v$wF0t z3=xF-T)Usd*WsFJN7WBg7Nx2Rf^IFUSCz;{dV%usv^TfQU zjP0Fm5n6~Ayk8*$$uJQJs5zq9wO^o5D0=d(T;&ZqD*beotSDL!|1AFbgBJ>ybH-wY zCB9Sa%xFNqiD|3U(Acon;y&pH8`tmUzY<+Nr3?cRD{D%j9teOaIj^WrxGY&2@>NB@ zHOgAF+@g)h7&Nf>WFNo#gENAxA_*Hl{buF%{(NO3$E=U9Li=3<5hb+Fasf5~5^@vk zhdAK3Lr2fcLu(eV4>~9=VA5_+w3EtzoyUF>5st%%PuTzY^QZPB?9S{HD7QPCS!1Ud zkpnk!tsfMrUZQp&C;MF+9q@`84)uO}eZ_+i!LU86z)Bh$SoHJTnG8|b$~Uk>P=Hw2-uivfn-yok!qMveeAfJ$7j-9QJTOe?FQP_VHH`TDlD6AfY1By| z;oFfEi5MYrtf;#Zt~z>sVeVI#7UvT?;x`Pu+tHVik#J_ap;7Jg{e3%hAyc2{t``?{ zPIh*?5q%dIc~L!#tN5zK6!#%BuFB}9l!wk3AxJ5xzN4d~qCdMen3+`TLL}c`Vke99 z>n4&jXRJ8IWiM}UbrQ|vW>b5&jTpJ!Hhl4!Hg-(}^h!^AdhYsg{ZHcgRyYR2P=N;)I6bF zozF5Xpq~Gc@$spvlTJOEU7T|{nIKxxgyns%^UZ;I?p@{oAq~}))7s-p**P@f?RH8f zWFLV51GAe_X+Wwa?V@&CzRR017)W|ZXKd%L^>eI6E;-KWIFqGgap|A=3;u67^N+z7 zp#CMo`FBj2HslY305yGbqnqTb(-x?^|C|xW<}O{q^rGfm0UE4Sywu;QB{{TnrBR`y z)UH*b@iJSJ-?-!iZAc;Xv9m_ft>a*1ap=-&JW`u!$ud${k#(WIO1<7vV`UuOwdZ2L z>H|W%z5SbtXE(BTxsTj!_q+zY;QzlBjfNe^cuu$@FpQl zC?HwP;qk`$LIjswXK^RlX>LNI2So%D#2m{K$H@;C>h$w$c`9hX5+)K9eT~XtgMPZO z1-h5_#*jrcRvF)SB}qmqQ%3m0nI~n!yqA-=-pn8lV`AadmfJ>4+xl zCd>KQcdub%LxRAoD%|U9n6>&MrAVw+_D?*B_m{p}J&}7kh%i8mgb)^uvzDVWKWOs6 ze!V^`vFBfJFD%OYpMT5#_zB9iuMP{@dvYn=jMfmap`)(b%UMDn&X&0F@Bx~;RS0nP zLk{Ep9?eUwq*mV)m2qI3p4`pUT--E>>4Je^GN||}pAeI`=Q%3$H=O7A~K(SrcKuI^8YNlwO zjB&d4*2wa=Sy@@RGQ*C7N$3`vmkDH>dFQNFTSR$imynxgMIPzJ>81CZGzu6Bcvby{ zsIW17~<(QfIxXjoH4Hjj# zP8k65lPCHw1$Y9lH!%g20qH66T-@gCi+~%fXKI2^0q>#**0WKcg0=kQki5J!b>Sso zwPcS%s7#-9TT&%XzSQMz2!8hlj0_>0DGTJa^00NX?u&PXhhU$Fn?-yoob7m|4no8b zmY)wf(#8}BBKs+$N&$Mu?_np#t0P-d-Gbe@&e^Z)qb@ers5%Le{K~D=mI*lYOX>z! z_;kW?gN+yOxAmLbP3PGN;g*YX?-A`BG-xqwS6Va5m#puQ??PjU3Uw=hW`OWYlfP>> z{pxzkk6BEs7Uqd*Iy!z$eN_qBuffnKg+!Ny|I!ITf*!7kjSgWWZj}rDRHd! zrsVSL93gMF^B(BdfB3;Ok+|k>2N&;Xn8+vEdT`bvv9oh~`)k**G3W6rbEms=!I3z+ z&A*1XoilA)Bl8=fLEp*j=JhQ!CdvzV&5{iLZU!pa+^w`6Sy-w%NKWb2+a*qanMy&t z3*f>P1}Ksr7EclzcKD?w=K1)(a@no2M`Pm2)9^zQs!z?=olElNQ>}NJ3HGPm92~}$ znChwQkG=Wld`P)j;4t#L*qP*;5V1wpe5u-)&!*#*5mB>l> zhj#Hdg*&5vpb)%;2;z4?-EtZ_`pJ%m1RF!_r}~hb{qNw)BbY(+ZL4krKH^cVh65?XDuc~K+@M}=}=E`Xdl{G%mRC1ImG8i!d>*fy-)?lQ5eh8WDI{VDpd z_9SGeJt^X%=xTZTQr!Xbu(qPcQ!oDb!iMhxS;F)aDJ2!<`;~i66*H~N{FiQKxQuZF z-R9|O8?uw*$E%^HUP@ap0!*T=?GDj)NFK$-I{}1QD^5NyqFc!hQI4M{S!HNRAq z4SONfw7u91Ezw*h|9X8q7vpLO`j&ajQuO?jKB@F|;BMvNe2Pq%gw^y>z;8NaJ9W6% zaz}ph3q_ps{hB{FFzq6H0t&WEg%-Pj5Yyg%*z)B=l@>#1!15Ey{@4*(CU^?2!XO`z zYp>^Pl)S(9f4I51#@=B86za=^p8zoY1Ho&zt^0R(t&JuFvHH}veq>e&AF9rk2)Acx zpW?^lS=Fhb31Q-QJ0oSq5w@+X#~0zZpsp?nCr;*py}GRS;X}$muFu-VGlxvc_Yb!& zA7>XI`IJXcK7G?&Z@a2WN=oU7&kM&7_j*iS_s!SgzD)+8B8ibq&$4UH9gRWW%v}C9 zvyG42FWNO63B#)$HiqBzUKjbDK(VCfM-lbwcuAKWzOIC}W%e5DT1$>I42JEcCwu5$KEtIaFnE*;Cv@*wrc zp=h9_>sPB#2Y4hB;YuF2SJLpwK*A3D3mW1C{&cQD;@^hMEL~sUFNY}(Gm6L7XZWaX2HgP-DLxNPLcTJc^BN5Z8-yHp6sf0#n3hVW*R=`aCjd%Ce-ywYcbR zGcC1QP9CO`y+Oa(Ac~c=zih5&dAo;ViRDV9qmd+33)lzeRDIm;pfAI>HdO3w)?6gf z&zxrB3EK=#pjL2P?c8gA0`p_=1u2%OZ<3!R(8Q<dF!z7i0c}9h$d1btfPB5o%7|McMn4)AirLk#!q;Klp{L)CCUi^Pi++ zX`*wA<}dtVqHzU8+9ZCDtwoLLeU|9q;w0zGL>PppT7krSw!Uk?^_CiT{QN3T;BH0P zKRKe4s=zr6lLdOKz3;!8m69erhy~0wH$GaV&DfBJx_O#GsH9d>5*4a8w>Yyqp`oE& z&j*IO%jwcSI6^sH-Ulyn^N|%q;3lrcY`m18AETgzBzI}j5vcPjE!LwP7Tfj*3ePP)=4@+{i&&`~`=noA^%sA)g<^_DN;h^VOH-dI!(}p7=ekrCUq$jf4aQ=>& zg?k>zx-MH_Nr;EG<~)3Q%-@h@YAQBjV?)>6?PGw^|2joYVT0{88t(4Y@*2tVKF4xF z(KOxaH@^I<-enN`mR1a*e|Dr;DO=Fi+7_}2LmVHElizw`b+^UN?pz}$3t7qZ zBS_)aJC5(dPgolLEdKW3z;ULI(z^b3K+;Mqjc9m%z{!(^k>h&qoUSOlj;U z?Cu>Ojy~=E@(x&E5cMrovPR*(cAbg)rzPd2ni?8kZ%#f`%l_>OEwm@j0dhJMynRq0 zaiQ4!SM|5;{!v`Ot8a5791TID=4(w2nxzw=p zPo?M5;vC%D9FlWSOKk2`*yT{_pHw63p?aJ~-pbsJbb^?yXL#Q9)gZtPxY6@w_KL)t zn!oLqI+K~qDuj0@OC|p=vN_=1>VI>#@kIx@WpeLir_TF;*^p%8NRJbR^zf_l&Aq}} zM*2cSLzT_T^NZebAe#&?4<|Vzh9@s2kJ&(XRuIDTdv9BzIqoe?yl^&m`AT|nCz^Zl z52jtC%1(*eGPv}slTSEQ=K|$r-rk#kQwsR;zc{&nU&8^cV-f?2<$x(6`eMHNzC^9V zu)B($`yOF}00A5uEfypO1r;Q(uk|ygu@_#aP$P?hSO4ys_bAkTEq(kmVx5Eg_0p$G z)dO@O$Jw=d`^NeEc@%Bf_=a*-$!&6@8FT~*VE%#1hlsV2axAAuJR?ITwUx`)M12O| z%S+;Ljx3ssB?$hu`dk_(7iZ@k?v3}XTQ)KAShdzVkI=rAl|qnhAFhq~m8+$uB@ojs zn~rSUmAH?f6jUKije)}i@a7W2AQ2`Jo*kduSo@aE4u^jQWGG|7v)2KB^y^_)XTPo- z_`yNBQOsJl72vX3Cl@(qOs9I;3i7uj&?oR!Q66aZo0ulX?PE?NpT41gj*rNCOzZ%{B&SG$+1dH#wb4~w?<<>A5ZE;428!nq=1-|FRNG%R(9Mh3z+CmYs~e*fR(-`N`8s~9>3-kEhn$8 zQ|ta6LqsJHb7-5*!r<4hY(|!7w_`+ttfU|JD=d6wiHw4tv z24;Oapsq&OINCfal97V;I0c3TilZ0T38^858_bKwrzp3ZCLSN&~6nT9Fm z*f|97aa%g8Cy@_8<9tlZzk;4kY|!@Lb9@oHu^BkI@7z5>dN@2ya4XB?mj%?4c->B? zZc2->1WUSd3>~L6taE`;LxGL?xeR65*(`!$`kTMtkYdl*JCqpj|E>YXTs+nI&>%r< zB*_lm;`sh)fO0vQ$ZmDMfRRv&FxE0Sk1uTTY}Q{8nIg3!fWw!00>Zi)BMPCMn%USy z7Rhx5hIGr^d?2Zn3ZbotWBuI#8h4eUp#K%_aW=O!e!Z)6oWuz#a0NwLQ(5}8y)-EI z${ct?vd62?1l-uVjM3bdXxPne(R^sPzgP$;oa)!Z4DP#Yf!Gf^+fv>lFXA)C3R|9t}=*s#s9@O59EKG`k?nJ0qltXlT``|`NRVX1fi zkKAGLLe+0~I;&aN@9!jjuSH37ww70xtdU7+HCFw#KBH^zEJQhG1zcH1ZKw?XL&6;89Ib`ej6Odl*&;PD!45X6ck**t|Y2M zXM)2ADFo)qjWVxx`bW;Fa`VuB2ZoRVoA5C;y&v5H#N2$s0GBSRj20zoT_!i`aWc?= zSZMi2$OXXgY!DDS6tt87dnS2-e%d$Nmy@Bif~E(B1r@r6eOsFc77lF0Bsd6xxg{d@ zQ*^GfC;4i+H^-OL7wQ}eha3`%-|x4_`sJLRn7jcICF$W2yqAa8TMElZXzOi&Jat{Q zk(h-><6RZ$oe*5Q4t2WU!pe&C;S{87TY=OiS|p-IxqKQ2F7Q;d({fo1+dOV2Tq7ow zfGSL*Es40e_}1R1*&~su#%_TIu|kf`P-IuWvn7sV;FY1V+XfC1S--)=+(U~8xC4Sr z;8ECJ|EKM)20kY2VskTbdB>}lb5pLY&jIH67+5_&kpX%S&wUZ?YS*!Ucvh-GrvlkP z%*3Z>Q2aNUdv!AE`$5jq$ho`Phon|0sRwpSF zzfDcaEEMqLT>0FG9~Yy-clUA0D8mbbRe!83rKSJeRW;+KOyc~&6q&jewVx}KUn7Dk z8=dqxxQ~jT;o!@fuwa4dt!}A1FtfCPeS8T5t_1M!Xw`DdF0ZrsDtYhCfY_qvbHJX^ zz3U8$<-r1-d8`3_u)!KrSlyL$+vjNZG+?0FQd(p_dA`ULGs7WS|CC|p>&0}ITlnTV z^?JLtH;@JJut6eXR{z$80x5XM=EfCOSh@r6tS1Xq$@+9`c(*|J9z2s<9-LNZNmaM> zT{jH)I~p*Fu(ywNsH=;iBK3G<^{!<`t>-K&?3#KbpsfNZIn}-1N6ZSrD z8L#o2$pY@_H~S5v=D6RN7z7(PDEQd%t@+r5y1ibBKxguS8YPMTFUON0%#`ABL$&H} zOgX}eKgPOwe7G1zA;J8Nm{Ek}Uaf6PA5O1#8JhQAwsz!AOLg(82Sq?RLMGXo5Ztn-sCAG*A+W4?IUB^1 zMrLMi9vJLa-X23kegYmN6SC6RS69Gg)&oM~^scw99KJXC=c#QIjQR2<+N&#~L3DZQ z9OM9CdCH{G_G9EVH0+I~;68z zoLMg?HdWx~K6O)!+A!2SxTHpddttM}&t*0R5pXpJ!OOWrM)^!}<-9=OXL$1Rm7` z#v#L+k=aq3)eR>F=S)vlbtur84qg;YgJQ*(Upc(3RaFlvN1mnb1zDc~?FhR7Agv|` z6a~`woD)14a9;J@W>dh6Tt|ifP0_ilm4g-7kIXf2-ik9c`a^l)((O1V5-x_GR*L`w zgX`R$je6h!Zc4LR2Ry|bF_Ej90fUOX^WNCfQc|!hum5JV-05d#xoc&1Ts?IOw1481 zLH{{>F;y@{Dcm6|AV-ZO=eKb?EM{&1$#(HS=7j<{FKITH%fkm?_NJ=O&#IUWZw3t- zYO0u(;_vuK;!c1p78uCWGHB|d#r-|=FIvNwDp{7SrtXl?zBmuLf`EV-h!V~zm)?V7 zHv{m)?R|YcS5sp{YG-59@!d|YiHqw?u7|FwD1Xeg-(sscy{r-n23~#~;Mg9=>3^vlyh!l&ZxI*~&~@-~JkN zl=`G_MutOB^7)xlWa{tZVbrs6mX76=!fx=$$e?DWfeWL8ZiqcGU`RVTI5{{txG=b| zGD`5}>8fLq6SH2FZEkj9Wp-ul-`c-_YvG;u_xHz^=~oE8;=Z*ns{UON+kuiSNAkl* ztN41f84*EXsGn3(oKZbO9TxEnb-=vB`HJfUmh8MC{ODBE01y#L z1{xzWU@i+rhNg}zoc#vyUsDxjZL0H2({nS63&Mq;@#E0hw6$B{;bjt17qGsV3M@W@ zK*)40#p{+lkpPMLiz~Sdc7Bx^S*ie%!fBXKY>tj=KuTBcH zA_IajW%2Ow*RS%&p9M14d9Qp(aK7WDR)3l0g=S4b!6t{p2~ybD?nN0}NV#O^cH2)k z9Q%`UDXGqGN*-(+ap|5z6RcvuNxS$t3tT*ns#M=@p18k1Fc?EDP~ro4|7_**;xOWH zF<9TX&)udjHV>=9o5&-1ex9-VkqhY+ux(Xf9c94(^bNT}*a7^b3l?{!{X+befx)^;gXc-@BqFI-L7? zLoFw8OOUa(six-5@A2FR)ftmF`tFt7;Hy&9^&dj9^p zXy+;>u7pVf7B)IYn!x)!Gq-JjdhC_(U)%PhPn}KxV`L87UdMi)wO6xygHNb0xtjIr z-oDzet5*F=om#U%zE4i{!_PlIc0_W1^fWa5=rplFi{J3OQSl7{qvi#S>8{xqlzd+U z8|M=)YAU{dv!eR*u5Vvg@7i@;YAqX|!ovhhB{eHMEiE$@lQ*)_*8jMBjy~I9A=ATL z{LJA(gLlKDjJa{$DSywMtX%w}7MoF{aVV~TM8_LgYWwvaRnVx=eQ6U z84n)@E=){hYAkrwe>6g3l9BWt9$*}D2TPY&1;1}UXEFEf&kLECFWVD<$!d~O z`_W?&IWOYbfCc6kho)=&CvL5n{qg0(0F7N%!0AQcVZNK@&3kt)FET#9Kl$le;JHYj zCjRhJ*;fbNt-tTzzZdgnrYSfD9Xs>Uh-+G6br>)xCN$n#VSf77m(r+Og~x6;iz?&e z^YwpSzkgqS`s}j*#}w==Br*)D}^0< z!#T%eGGSh zJoC*2&KkKYnJ@HE5$QUyXU+_toFgZmtuHvo0L;OB3og6mUzu5xYjQW{n@*C^4B&*c z%c&RIJzp6WG8)PjG~6-}il4oIE!=5pk4+~S3j3^P6q5xLn-bBiUgP75G1&^I0X0LPAS#^!QI{6g1fu(+VA__ z_ujZ;-0|KY8OfO0IXh>qz2;tft$9MeDoUZhC3^ep*)wz*X>pZj&z>*;eIdX8gLq9e z#s7IDbd=C^RJApAbTM==c_s?9H8S}iV`FG$qGDnQbhGa@5q$Q1hebwQ^qcG4e&d^{ z+$}f6&7L4>zF9u)mY_fixWxz`ibVHXrqW18!^Nq9zy46RpswCwR{f@rUst9yM(J`? z9Z)W=oG%{xLG(M)Z*ffn@X~BrDi~vNe4MYqqbdDh!wAI}sXb=3NyNa?y}tPE~f>WQeS9aq`H3AeE%2ydVemntHxdQ zl@9l9CnarxhH>UUA9JKoe*gKF4p;X3zvEsM|HT8o{5P2Hx%&SNzol;Z=c@k&eSlt5X>cN}g@2n;*k^Zx@vkfg4ZAB<4G!DeX#5cpBrH0<=rc1aKgS?i&hnw08HevF2DK7b|RY<2PS- z-m@itx7x7ie*Ypw9F1Dh1AT{sKYF&XpG^r;-*MdoQWtTyY_K#yu za?UhCqE@Ra?^fPao1@}?w(vb$zH}7Ltt|f9j{#q+1iziFaJDuS&|ti31;dRwpHCoZ z%uh`A;@()b#}(CA^PPwd>Q!rrg+lJz`KDw#iwuz@HY*B^cSk|P z%)pMhy)WE=nI*4x2ls2;kqCSvg>R_71zxPWGwCeBwuX0rwbtRvaya5uwAZJvBXjE8 zE-MRd_Lx=L9=h8V+}xO#fPbUF$C?bcFz8k72g$j;Hv2g%h0mynGT|g4tEZ`sqgF6i zD+6-HCA4be&aj%>qT9+><653k?ry01!^A7mi4ouLZz|No--vj89YNi~yUp_|ZDc_% zl3ck%1Vu8Q1OCqSH`?N!J$*ycymJwqc$;C7{p~v98;jj@DxPYapcSH;~v~V0KN-bu>y7 zjjvW?r0h@5lkn~}s#uvYNlH9OfDX$QPMH|vA42$NR@v`9<|nQb7w^5B5L=QcZ_n$P zcEZSFl@o`PHe&C(*Vjc3o(|X@vBe2w3RHk1;+pXNrmq>7T6d!_z8@8iTetq4wopcy zD}Xx2$X{l)Iou?Rlwq zu6X%SEzLYwqu*dS7yl($ez7#pI@(Sua;2e1ie7)dj~(={C9Y)*t|?dWVa8fCKW$J` z2Fc0v&r=^>gS;4>ZCMe!i;V;x zgWINyJSx>mq<(WwZ}Us5=qk^%=6exO52`+}hi=0?rWtZa&NnV@4z~xAM39n-9$=ua z96yM!eWXSA@szdc^W3PShLxILDme>BNyt^>Q7!o+h9<2n2$tl!SENs6NN;w$Nj+u! zdSI4rdRV_pb4gs;A$%I)3E{F0O_&O7pcByv;*Pkv)Mm2m{L9`-fng{12ep98-F;$K z4&Ws$q1<7-A#q%4?q-TnpX#t;tg*;iNicWE?-iIG-y$gbJl*qf1v0Eif z8vl6UWPB6Wh)xgfJ3cS)iAA{X(65fZbJs?Jqfd5Fi02-?FkEUMcboU*ZFGYHmDYAgbO*$p< z;P-qzaGI860?TIj-4Cuq%o68Uum*0K&BFeCiRDVhO!BWM zI-t9xAbkWSBfy>^?ZE(Qt)EpqS@lV{fEBPRkrqp>MWtaMgeop4bg(p9K3I7D`$bIZ3(;MoR zC*)Co>ARcXj4?i1;uO&h??7hhwNj?Jh{^4RZV`=YuW0oZyn;vuu|?EBDIVFYS0cZJ zHjeOTj_z0A{+j}d48JITB=Gwu9Ta)_Uqt)=OUoitxv?nNJ7Gk~f0>N#`C}>n?M)l` z6YAsgl~0Dx!%?&JEhWZ5qie$COm~^l@>sR&RaZ?p)8EmaRFRX2mqY&Cv&Z-+KKJ@h zwCcuKUDk27j}IEs@lI#j8GHl%`nME%VqDFaj2X)V)6G47F77uM!|B@=Hn|1gg8-*UUUq=K~wY|A}TWB5hbHr}wyG{z^Sd01F_V>j9c)*Cz5F)-FRRcC}w z5LKMeT)G~f()wIDo!4@LwY~WvSr$)h);ZI?zeLQ-{@vX$fh{Kllgv`r8BaGN?G{rf zTR!);t|uAyED9zx=OJ9~ZO-0z)54uvUD7sQjCbBQoICZ;@0A5KWq&85C+$1kAIdc= z>>ef-E;+^Md%Kg@0>4|er`)r$3U=05_=R}*2uc6lM?;VN9$~i_ylJvAeY=J9%$=r; zD>F;nn_b(~*&{x8s90X^?=<8AJFr_T>Dq7pg|p~&&XtQkN1Hd* z0Hyhx1=n;;)Jbd(U^ofKN*DV2j-unSsJEimAP^Rq0MnY9?ndpj8?D`NmRJ8O` zv7e1~R2_S*q=M%s$T|mJLaG6ifF}N3G)=6#!&v|3n;f4P-~4+N`5!m_&dAT~MAT<3 z)V3=I>#!XU2C_BU$KZXPKxy7bjvXZm3h)gM3rE`ZAwhuO3b~m~a)DR0&IZ4c^Te;uH}gB(=>y@$usUGMCF4PU?@vuL#miZiTHH><+(LbDBzwF3~ zzF*ivKqQW(j5_Yg1hpxOm2IrquezKe>y1_7Uc|+coT5%La{?_BJICgbEeBLV0wLL z_MC7WQ+U*?>4`!A=Cr@TV*`V}u$}cR=B-<0m(uYFB`5Nbz!rdt=}VOd)>-!YUhFFN3S(( z(SGyRS2pI06qA44k#d;lW>@B6_1PdUwgq9;h?F68O`!fW$;FV#PU_Oe2eOyr#F!+p z_0^YEGjBn}Tfkvz(D~5T7UPFY;#r;51!#p%{vw$Y6b zfspSQoG(kGwo~$_97BjZdnmY9AC^p8$MoAawf0m>ZPLlBlt*Ze_}E5(-RgBy)7D~U zdbd-zV0g>jyE2-EuF@S;(L4ziWz7+^pv)3@V91YG7$UWh(I$cIG^cM`28QjFQakkQ zTCTes&0o9_t1QLX;s{DFoD0Nse7e5H6lJ$(Pv3DxKxUf-*rcKDEOVRjvm7iDkK%Tnx5A3 zO?}Aq>CwV5m-R_0(v5XK=7sVF@QYrJ|W3a|a~j3GFf)d-JyR7+!sJe1o`Q zuELX=38RA9fJU16+uQnxHbYgk`YdJ8(An#%ILd+VIh~4yDzj z+?oQggS=N0y<-=d6+!7&H(}9pvvUpmLvU>R30uq@(1dY7Z~QW*5^smf&h^bzV8&)C-llu^ z?87?Nrj&<7Iw_|H9~7$pF=sj?Jekk#R(0Q!#c+F*?>5lPp6k$f{q`=kmap4P*h$OU z0~u_>#~klO!Ow=b36lQKp_Eq})^*7MTjbm1-h@pYEKlos%36a$o9}MxE6Had%%)i| zxc^3>ME(?>`K(9M`YGqm>f6xHLQ_deO&#rSfWA`BU~A32fVHimnH8T{B8w5ox?PCB z<@gv0E~TWr@d><vWs)s@he>UmexZ|F-%yxyK5Vh9&Pjwd zx}Pwu;h;JmEw;zZq`(^9g3bM+=%u?v+SVHqy*yml*?B*wosSbO7#Pk%iprDgy6^^2 znkS$}mafmF*7Ss*b_$T))RUs%M2iI7I@7+CP@sEp;zn+I%<*ecG3q+aU^pC*PiqQ` zS5r~bQ*x?(er1|8na4&Ece2-f=N5)lhE$5zH-Pf^DDub`|0W~5b0xE`$$#<{rj=3A zP_iTwwyXF!iaU#EQ0ER!U&+R|etwcqgH$Dhl?Yx2cA&=_B>%lOLt8daN9p37j8sC>mE=$8j`6i=oL>+TVZ%5ir!*})7|D_v z9tSiI!;HkP zyWPrYSSnFoyUgIql|NZTppNZcOjSNAyl^Rh$okd>P4!X{4)_tnx;XQpFptz>j5 z!}BCoT@z$>Y)Awh{NG~f8-b>b)FTc-rdoJIO~y*)6{R6--59VrkCgg~6y7xT(EeX; zs~uR5<Xo&PN|JLE2A~l0L-TlC8|a=GBvsJM_W}yot&ceEC?!HE<<=x4 ze?K3(;1xa<|ED}+uG3S0QgN3Ibr^4=_6+Ys2Ls6W9$pa%Dq(W^g<;zgSk9HNO}63tJqrFM98)^)HA`@(F2?&&LeYk z1Dor}U{T_XhxM}=Fx!{t)S2ILiRZspAS#FkKe0P!Ycpuftdy8&Tg>F)j7OAixXBHl zytHJQ$(K3sG$tuu0=|BT`E1m)lb%x3gpR}5LMlT?#T)90Kl!Sqr-lOp?t^()p0#V;iuv-fMj22=tE~x!ZSzVsI1(X zs3-S69UYq1?dSJB%O(U#e@~njdJY? zETQJ)nO;H6EbaWV*j_%4cpWI2pO>Z>gPoMG3Sf^Zv9dw#Z=eb1*3wE2mYr&R&*G_o zXJ*MqxPb66fEPTc~voxcK?Q z-6O1tja*643paL2TF#8Pw*)=(mzG5#OFZ3N$fyA>jJ{1>OVk1eNR@nXG{##kHObyRvnwHQX@fjFH&VzDAay5gd>g3^h|aSlPTwv=DMg zPG$!%!PQH3$d*SqhQCr^xjT7HUUJWF5?K+8{<7S&NU)x*=cXl;$hx;iKCyJ>!U1K>vTa9bPk8g?ljc(^f8^rMY)CIkxjV)L;M`7sNTJw z+vS;GZ%3Vg;}ca69i)r1yN~pYsFRk1ku?nfsd+pKE>gt#I^R)`^z+=GaQ3YkXyX-R z^dB6__(PWj6raxDqK|EjjbY2`cCNlF`b4A7=hK*xkQVgQ{(WyGbZ`(?;Br4|e^^?^ z4L)Ef&E5-Gz(%g@OVTExwq`j8n=N#6u%;Q==aOsd5>uBt?DJ#AS<}--92xyQqM?_o z4Kry(G6URef7F4)C)72Rf!s#S&OP^Pp_(Of^G5f5WsNP{2XZxQ5+uAc)DJT30(?PP zHKB73jC(&mF%Mp#={8Ew%(Xhv@R0Sz!F_z}Qn_d*<5cn;97=lT%U(_IfLB|^Q zN8(|-B%cXdOpVR_qNExRw4SEnz1&xw0m|>q0q<8=fi{ydjdFKX9PDy@oq5i%Y9od| z(wXz;L%NM}s&}B`K;)$wMeDY%yepQ?mqCYkgi5Lr^*rw8!l!}w9sq*>cIS+C6~|aJpd-P!MK@{;?jX- zIU+vq^Jf*RE+NTQZbnMX8Z7CwHl;avH2sUP_vx;WZhekeSTpLqEE>n+K*9brY~*f> zMX#t|*o+(0l7h);`*;Fu1gC2aW*S1;OEnGC)V^Q+b$6MZlcC!211|b0NWsC(Jj(#B z){mn3X!u9zjbAEe^cV#D9a>sYS<@+2W^?Pj@SWoGl1v0W?q0(ZCP$c@<01lOwknws zNF@j8#Y{tTi_H7mOtEgfs6%)}jM(RqwsxmD!)pWnYzbWDIfZz-G%_Dj^U527dpjj8 ziRvwiqcbaPL;aLQ{6u1mDwiO(H-c{N|GOA23m zu`oIBtz;ryiej~r3e2B+_fj{tSzeB_TGgwiXkZ!DBOSVc7V-@fXELwjzMDZO4dlz` zbg}gn*NTrmV|>IOG;q_kMQdP*q*G`uEA$-@-JFTdX5?_kdsfPXt;irbedmqz4Kj zJj`>c#HK?>ar-wxw&Mq9WgHbIE2_=sFY>B~r&WU36ubyh z%e%t3<`Ex=xdpy}cAq!HhR0Tr>(TCqMI}$)mj`N*p7(;|eoWncd^OdN-7JhadTU*z zJO$~qPiNQEq^f5ie(hc5zdhlq3#NE+Th5&6LYS-I9~L$Jouu%m7xZ6E=6hE`=d0&t zF^D7Ei%sFxgN3U`TXy@S)yUpeaAoQjL4sa zyL7m(ehdLcx=P%%86m}>>%1d!VeYdvRm7FvOw{n;#5vjzk1IV(eBuY`^;LN#ru(m| z7sj&^3@1XJG;6TPp#hu|%mHPJCNGErKa}ch`OR!3=y+`6J`(YR+(ACZP~Te*o7|1u z&bM}FgG$)=n|o@@8s&S`gIH>M?j=)`We;{` zSbc7u9?=Pl(sUTwZ`-JfR+uJBjSh911LwDBQ@CToOV4)uZ8Ke_mKk87-vdvtP%t2$ zq36nvhpbIs+8_OR9kA||Kbc@t$QuH1jWtv8KpA^kPCi!;9&Ic>dtCV%Q%QQKD%4Ip zr@otpCKfn;^a_Y&f{1d4V$+u^gC>EriG?MFK+|mu964{I-9Ey-BQXu&vena0vw`KD zgp&-`15fEPhF`lS4OU1L_9!7Kxv|6Y>mwb4f}E1n$0aP;yq#O~31VI|8VRgqFC@s7T%tjqj+?>zo> z7jgB^B6>q>&lgqz>c;?-O&&l0#MjrmMb)!D){$W*F{4f1>JOsa>KdN}`e%|e3_z69 z09d#=ry_fm*Zb}Bb-}$oG7Dp@9Lkqej?R2tePioXE3U~QFhh1cTI$Q}`;1DGhWW&1 zWR`;~?EdYfG@{N%I5jvf_sf1)yhoJhTn8Im?AEx>b9TJ~;wK39+M%rWj!pph!vIgIe&NXrU;Fi%=S z@Ek47ej|K(W+2{J2K1?(EU$cE;Op?anb5Pd60G^ujd-3RnUT0y@VI7)y2|J$Q9{4j zS!yF?3&j2lMOgfwYG2UL884Vj_Xr%d;Rb{`37^D$Pl)o$*SeIY{5M&4T{#oEc*H^@ zW8enGj;^75EA!=wiT$A5lt_Q#;~`UhBuNLw*;WD>f?i-m-X%uW|Ph|H8@ zaMaAub_bf;1>Aqy?0R!ruY3DfXSHBF`LIe*yrW>tKxLS1Py5V01J@YOpnLlg*I|TW zpUyTkg(O~BZS_M>e7}$ZcR794WmnPBCn1i$#g)8!2|Lq@h{smZFz3WDct~#CENhjv zhDLke`G=QlMH4(z>>M*veda3ziI2&djUoBJRy}>ZP#fLRY^aNEJ!?3bNkm!XYB#c{l$(nvf6ByO`%A zj#t?m_A$R7LBn2AE}@B*TJGGJ=8n~CV*iVpDO8ii-8WbKlVnhk^ql2Swr)c5R3IPj z`&Q=_T`f_ws&ZkzFGtJbkD|}4P_4E*Ey#H5@QoeAIq*RtYgcwB_gr{*_*CuZp+Dot z78l){(;(vz&)sS7`0!TLb4*(mEmM!U!Mq<(@TR8Nb|JHF*UuDByotfa@?oq|Q}40jUI}xK3|}W>7W7KPa=vv* zu(J{7ob)=?38WyqPT70Bbj91$oUD4rEhHboY~VZtB_?>M%+LywJ6S3!E60V|8<>qh z#F<`8V!CV4o2*6|K`92Hnvdy|+DGYz*1g?Ra||%os2daVtVu3QXXn^6`4hciI^|(B zeA~gV%9cQ&qhcx~;3j~%I3W%RS@jzi*NQ%rnvQUH;huf=cM#7XSymM`RwTovBM%OM zcxz!2#W&r=s25EyL=d~lP0!~+=kcxss1<2z5jtOe%N93nfNUN7E|TL@qqvhUD%VD* z{KXXqJG+cDdtP{_LY+%hIp6qjeA6rTxtH`*$yyo21wN*L%`d|Vv=Sa>jX(<=v`{)w z&z3z3LmLVy7mI)ftG=m)TlB?-iQvbV`8`BMY(k|Jr2S`P*3LpNr$OxXyOa&^K6T#S zz=pEPl!VOn2cG7^!5@IJxe_%A)2{WI`WT_3?L&&1&7t}8^YS1aVA_u*L-p$NeUTc7 zM_pG($sR6TsJDXl(g+5vuAmWJ=8V@}>`0Jwd(b|L;*@#zp{>%^ zN8mc~`mU_GckY&nIwVo+5wwNGNzp6uGC>? ziU6JcYHytKJTkJPsl2UkpA+>XiZ~D*7{-k!)g`@y({Q$1ZT|+iM6GETADYHb8nz_Z z9gtG-=QNJ2>-wkO{05q=ANzrdu1!bLCLm3&%qI;+pG8E!dbqK(Wt#!?l#t&z5Xp)i z+1A3GZZ!;~p#dte z*Kf1(}j@dETTLra2afN=EY&PyASPugM6c$8Bm$^DC433oo=GOJtgd8}bI-JV&gRQ^sCIx_w*>8UqW+zhtqh9BPWD7D zbYa3c1!ZQby0l7$3a_asNvUBEuFN~d(78JPKHb%yR1o%E2eicsg-r(|$K>nAlFqPi z>9QspHM%v{G+{K5s%{0kgxtEUXl$&KQr&uc0`U5|E0r8Uxj??kBW>ZGC7Fcs#o3BIV7-lE6S|@xHa|$9pyo?@BcDk{71U}O1aXF!L zI`uAm69DMwbgS(5pq{qvUN(-prv;GKJNFV<Cs#U=%dIJz;i`699e~urB zG4Xj2VRuc&d!Nt#R#?@*=9gk}B%ZsR7R^$=tc^+8KThf&G_{?_)Rp}&^MV!Ye=|mB zX8#Hq%D3#DsXijNovp|yw~lfdYEarpH=dXU`%?l)D3;yorwHlGWxuQFq+(iEmIV+w zA7rH>SIEs@83lFF#;H##>l)%j8nx2QTF86c7mUh+?=YY~fTBV=Rn__VwgeAu(&#WX z)>c_DFxSwSrE_JKOy=T`@hCB~->Q0A48l@UvYWHH4~iSx*xHVB12|nbyE^vM6e=@5gCVPQiDVxZUYO zfy4N~>7_*=HN=6-(ZSU=7TAUXumd6f}u@lcmrwoaj z%|v2|We4U*Cw4*|aQkdh2ps&bkdud$3z$7dk#+B}M@+vz^;g6DO zY-veW!%X)P%ensQFglZ(Wlfdd$SP_;pf?6+5`RI8OBgf5m^b_;m!$V~a{cAV>=a#h zLWmtNec7+fTzQgYJyh&ph4{4aqP#dLA9;cB2^v>?e2hKr2Kk!X>bkun6gl>#pEV8X z{n(Zd)KVMUr)!`WM@m{&{h+w8{iEdy9bR-PLt?qyPm76iEu7X$=y-vm^jDaSy&7Y^ zi_=#viWlnY3~Ny8bZ-0OZSPQs{7gr$I?qIZYJC4fBBVx|n36b>0`7or=u*baJV;k(`y|KtkjK@CUh!+7c&j0PQx-5 zb>oZgC}IXlvP-Kdn!`1j4oah7^epyYRn#Py*7I_kVsqZi1Hc|L;CoyTt<>{K=CRre z(liP2-|}g z=gokV^E)7cyOgqj29DEWepS;h5TcC>4SY=zojKDkn%rr6py;8exhKF6%g4bEs~j8E zk%CnqB?5J|?U|SPqBB@4kVA7SQ!j~V3Bf4nlhikNz{qrd1q+YD=C4y2(sL7n|;dT{$d#vRt#&iTZ*!uVTv|)-WUg^ ziQfLa&bx#R2PoWYrs-~*DA+5^eJT7Fu_u$Izg+4VeioK>sjbAgF|^bCaG2SmHY-_= z&EQp_TFx)s`&7TntkdKyW?kb)t4NaDk(CHzX*KT|8CjBv_CEkrsP234sI#pe4w<50 zv+oOdr(W;UP2b_W?M(alY00TuSA<8XDm5D4|N24 zQRj`(6a<4z6u2PmLd9Lyo|im6@mgZYN^QO4O60AE)f=%$gBngQ+}N=OhSMvQ1RTPS z5k$^TTzz$8hAwLM``ctjtw@XA>6sMxA3!z+PZ6@dqm|b|*m;2>klbVYy0`A`%S4b9 zm2`ooJNznC!hHo^UR^&v!Su6!S z*AoI8-jPE;==3^p&k3odR{)7OJU%{ zgKDTYDx3X=TIrDF&4rRrsJLB#M)L^+L>r~2i{NlC&&NDMhoNKks9~_2N7T;ExA|dJ ze|4xu79sJt*KfN#`__J|uRfK}MM5@Vto?Z#mIz}%WTECB!;8bJZ}+dT_{U15e|LU$ z9o12z*J~dtIbMtPiVTk*96k?b4UbDEEC_-Qom^uve|Y_D=bxLg%I&c~X>+m;{G@*! z`Se-ah1k~fz?RSDgkQtGz}y^^pOqieyYgIpm1b^l*WB95VD+@V;eOZ3+Ef;{c@Mnc zYr5BX0`&QDn6Wsl-fZQ{n|S_}qOmV`2RIUG%Ww@hT+5{MEetT~KQbP&`19VJSC9zT zr3fv)xjwgjyxK40`0BL|zJEM=vh{p)<>I;By54x&@!9I!;wJ-UwDdFDGyN>DXnjM9p#^wy@b_}aav__I7L(1M=P)+0t0 zccaQ@N(D8RIT!La<=k$b(Lb~khj=V_V%NVOB4gSie{M`vNxZaFFOoFHRN#qglPT<$gP<2x{t@Z#;(3K&p z^T^1AVg+NrwprQ9e%TYIU}G6!YnNTU3+GZe4^<8>K!BT;sgKu zr#~L~f9V~U$p=)rl5nciX0amFVt3(&vJlPFpr7=Ec1PRYAjJ9d%+*Z_9-kmFS*3cA7{W$_ z<#*!C>6Q6N}p@sdf*~Xji6Ev{3hb3Z`89Td@ z_-wBU9SIV>eaaj)Ew+vOx*numfYa#L!5-Nav|esO5q(e_V$B4rS$+DkMU{O*-qwWe z4|kjB!<6cjtk(F-O$hV^8hQwo4RTbk-#yx(dO(x45^Ci<_nojJ#l4H0#bRZs;t>pO5S)u~tfa+I0fp~$|!d0&qovZJut z>j31iPcX$t35vBY{!_85lmP2GHSNRFtz5@V?^l_4C;^*?O~WbpUA(T=n6*(UP^gn& z|9BXa^~i!|kRs0B$#Zw9ExTG-lp9K_oR92K&gwE91EHj@%))Oh)QWU6c3#OVggod@ zYNw`APxrRXpF0f15@pMIx!S^LWmRqHH4q*d?~f9S4Jmhe-j;bjC^%F(^o2r#Uq84m z5}%)=8;#K3+%;cQl%~D;X{VV)x}Rg~An9+2u0$mTV`+o$3Gw#rhau8(vtj;A+AqIN zPI2(K2f^M)y2g`8ieVtsqXI%iO{Xb2C)Dk>#$0M#!O3%7D(*+;s#=S|liz|bvhNQv z9^Oyo6Xk<244nC?-^y2f;_E$Mf01QQg!A!r*Jfd!mWAM3XqkY3;zUY`g>vSS-iCvJtK9Lh6Ao!_}#!EHY=HZ?a)$S~l2ff!1HnuY`R zjN?MlX}>%_Txt~S+HF&_j?ee6vA<#em=-H573hL+C)c%)_f+pVKPCuq{IZ{eZ{~#x zgWIzp2xBFFwHtAl!`X*>mZ<=ZSi0Q32lXx{7!3BwF-#>vzf;PKZQLd9-^j=b6o4+2 z;l{L69+7x&YZGgo5AdpXP0O43hIGlZ2TT%co4OK^($y>CHAiSK5A(}xKU-TsYCF*_ z8Rcpio!7!mP?!`rYBvkU03CyjiL>%Vg(Yf1X3o>(r@-eIaH%9*#};??6!|>x_%oZt@#g9^DE`9)yk@R19?XcV#+4eMLDt7 z0qjX3pV&F&7*@^9JzwOM#Fb7-a!cAC|6)pLnPR}hst5Kc@y2B5!&69YxcnO#&k>}( zBEDnq@T1|=p)J};I0Y_`4^~K2yMwvt!26=q<^{RJIKuQaQ^VQFiV1l{fYky~3ed~# zwbUXDL&wKrX170Q2{Ug;G$mfj2oZT(CGx;ImO4gsv{22`4u^enTLZ9Y_Exr$XL;uB z8#8)`8LDwWd^H2#d57>o9qv&^?RRtZlpmb*fM9@eg7#5{@oZvVtI5XP;C#$%*~*1A zI~SWDY-Z?o`)wz+U$piZe$Hl{b}pfLmav0}p>#kA^_$9a=%Kb!jw5G9U$!Z6!r%l~c_-Ex`IG z^rz~`tz@XB6!+h=O|tipv82|EN)Mq+usa<7;^iwT$yta(o2Pspm{82ceUMq7qd1Sf zve^kamyW_hzxfnDu?F35U2qRBKc+xkVp@XQ?!O>yC?K>QZJsGigdR^hb6TLz5Z#sy`m+0Sa90a#xoGh3GPm zdmCf~8+|4zk7!!L;>$^@y3{(UO_9ey=in3=P5^#xkEOs3H$e+gI9OT?kV))mz6>^Y zo^c2}NBhJtAQoML7F37?LE;n+JyyI_ZZbZ4*osnG5FB2V5CIV8d@l?OGyCGp%E65l zrbE-axhiO!&Z|Tw(6Zn1<GUGQmN8vr}0v)BfTMtArE!H`#aZ-UdQbQYG}ib=)?j zkP2vyD zQ*W-&$z@|xK1l^9dMl20on|3LL0l>;x;7q;&W_N?DpDIN&*Y~NLzi#%=hvXOk!kvW zG}N;xYu~=9FDC+*PveD+Lg@G!)qHCV*Ewl`5Aw_Q;le(Oc%n`G!w9~Odoxg+>4bth9DJn_^XG;I4(|UagmneYpMq?RZbUY zCETThQ?$8z;MnfE)~;3dnxwT z1hJssz%}tT3&+*eVrsQY$Ewk#*)Z*n4@?nWK*!YZ$yeOt+?V^7A3vgs;G)USR}m2C zWZqpXhrtvM&o4GOXv*o&v1>T_FT&*Tbb%4FUq3`p(H-MX@LtcjSZ4sgjd~)8 z7_2O?v&QnOs!#U0!YjXN5|T!v^{P-2#su4ZyNyO?<1S09*BA=#tyQ=hdY`3`oBPO= zw*jw&tH}^Qm=indp;-FT;0tIm%Fv)!x>TxcR^ps`NSvd)PE)IDUi6S`@yzxB9mfI) z9zWye0IARwnBy$!sbgv?e<{04N8z zWztDa5ccu4I9==|dmVqWW=1SuOcjkPpe@G9uzUqeN(jE*o1w8ZCK^uNKe5V>1tUI4 zd9SO!`5`@yAI`@Ul9oG*J)Anmt_q28Rq+6{ie9e|E{oy+gm8c0f<(gsqiB(t9 z>{6&s1_`zHk~|m=T;#{W>g6>)IS6-Y1n$0URCOa}9Alc!Y_ETh%huo9fFX;Q_<`|3 zsn2!7@i3PY$JD`4LB2UjQ6pg)wQ_{y|F zWJ2bpN5~2-`&s$Xj1yMNvi70P8pdw{n%XRi=wm15_o%)0ecJ^>7*J%IA(ottvT&J8 z4rV&Zb1UZcG0mS$jMx_RSWgBnr$4L1_BJJ9wR7%$`*<;9-f5$fdqcX|4c#5?=dRr1 zbokRhca|jJe3TSk;q{cNH)jxF+HE6_PBWLJy)M^|=I6etg>GkE8I-Yun8DJBaI7k| z-#MMsV5@if6TUK2YAU{pk==4s(YOd|!0(Tgt^FjFIP>$<5xcLkuGj-@^^93eO`n?Z zR61s2qnyei0%w^p(0zN{PXCHjOLKLV?GCB`3*>2N`lGm{@d zgkoN#YYM;@&HF{}*L^6XX*kU8WqdYKUAY>AmQ^{?6P7@wwQ0!z>5m8 zUKox)JE|ZoTY=KfYmvkca!n`c(pUVM+NC)S&M<8qM;>;$T>bw%)RsVF;p&9!5 zPFF0&JG?2{AHyWnqyHCKUm4YA)Gb{FiWc|cF2TLHySuwnG?_u}sERtQquCBeP8 zy9DRsy?5Pve|-OTY^{@(C;OQ*vuBR9&hK5*W6dCQcGoC5u0J4{p!2ob-PY#ca))-{ z29xgvpZ~KKDl1>7H0<=F^upMT?r*|RSBa`9_U2Mjskm~WCJ=UT9# zz8zLwQL*$W$t_?_`jwnY7OQDRWvtKsxbO7%B_ldIm4uL=kR3C9HSM{MumO=*SLG}6 zdkkxisc6T>mf4*Spia`7Pm7TyCjqHMTrNUD!jJW^n29#8v(`c1J)iZnZB}pROpMQZ zQDX=Yo2(l*t{F_k>V`u_SI^RvqJ9~by|)Rtg^^8Ch8Px%6*8ylqNWKE;jkt3Hs%;j z4Hu$v2M*q+Xl!mu;cuP9ENauuR}F_#D5t!_7zc)9s*eH*oQV#CQ;Mp-uAVqx zBq4S0$`Km?J|*X=j$|PFh>JT+EzO2&bfP_o`{@x{m(^`7>tf`g7f6W@z)#vlvjUpA*lG#f@VYL&*qBSi@w zXdzU9)}PzF%&3)-o*ZH!(<1{-ydtkqO}>a$PcL(um(Z7dPw|s73Atmthfb~8q^8dC{Z`7l`Ejw!@QD( z$c*Jt0e2S6mIlNV{Jd zq?g7R9V1CV??7%`pDMvaSwKf`m${RpG%z?YC9`}D)O0=@@FRdnonj>CpbRd>4ot-$ zJleQryu`>g{}$`XFP5a5bYDD)s+D^b{vE< zR7H~nvM1PPu6}Y${%DK;;Pmo77%-viQ`JxQZSmNa7d}r1OZ+L`a;%#!jceSlXyk5> z%Ym3;HZ4jb8|7?=t5pg8Arf^nIyWo zCwfI9d}9+^QE}+ER;}KdXMU{X@#~gIW%)g42PTA~iueL z6$k~~{;(MUOnobop%noMzl4B_t|*5r@Mn69TQfQx>A8j;TZLHa0c0=2u^kc_8BY+M7aV&-?MR7qrb4Z-Y|JbTW|U?e5RzqyuPuV zf=F{h@KxeYe>@P?G3r9AM!&eEMk-Swwd#f#*%IlL7*{g%qXXB#W&~0+-{e3Kxf$BP zqV~;(y$c4aWbLAd6%5TYMXPCiDOHf+sStb)FZA-b;VWPtG|gl9$}mc)Hv z@TkVH$jOMLvr3^6r)*RTT0L}ljKP z#dWKyMP=44cl1-3Ij43Mfj%Mgj3kn`3@IkkCTdZwj{Mz|5$&DA-RP^ zakGF4Q}5vjHTDGJJ>FIip;ImTkV(s^kD3S_=zYebasqYx6K>5v>oZakq%Ga`+|q`G zn1^$3Zm+Yd3hOAo8E=NPT0$p|kVR|Sc|9A{nDRK&(Vav$V9Nc9?~%anuA^!vliMY8 z^tPFWS5`RTSp$x`n$e!P0prk>t#7u%2T@;-$b)#M?E=E5;hfjh0x6j5^Egnt9GRyg z%X2PSCa+(az*Yly*rNXKJO4HZTohkfK~+^w9VX9fuaFtTN$yfHS;?Fk<6=};zHeuk zWTKUqO|&QD$iNt7@0Q(L5QQF1$=UQIO31TyM>Lj5TKy%xpGdOA z#F=KS0hgAR{%xoeCB>k^ke6L8Iu}pCi%7eyZ#)9-9;~UQds2x?JxH)5{59t)NN`#2 zy2EkJCg()`?hiu9f~eQiA9%E0VzjF>OVQ%>P~JaTU!&i)UG%H%a1HGss-Cw0=4Wc| zj4o0?bql_qJ*g*7IwVEEmCe8|%)wh&(=IV)*)YHdM7F?$(+xcTO} zPBlc0h+bf|Yf$xXxqHVzc7W?_GyTUWBXf>1&@QoZNt_kGhw20m3k=PO{`1}N3v&IZ zEtxuYVj1vCdMvSw8krpI zQkoGjx4QiCHQaIC6*1`!;2o6^s=9wF+FQCld^?K!iQY2X-EWP&+V)kMTj%aP23P7$;p zz3A;#`5HUw6pN1^r$!Dz zg3pd`;;CWO9TM(KV9ts+Ev0~MngBaJ4{%NI;@s4af$rA%mww_-Czi9LEexH(r zcJ*!(lLVCJmaoyA=B@8uY)5xMFPEt@y1uJQ~`TiwPfJ$T(r zzI@vIr*o*T63C09frH{ayna3o!zang&36~-g7s|0B6#{#HLh&EfAeZRB#UJG9KH+D zPbC4pDyeXi7?Eku_Ks75>5nXXvz25jqIZ88K5Jy0^XD7i9iUyE`BwYO zC4)F3T$`?)j-JxRHhWO}71T(jlJIW=!iMJ`*8VEs1k#43w*Im(#RPq(#wZMZ_t%+p z)_`=_G|zKU4MbIkcJek03<_cb#sr|k6OLAlIXFV*ri0gMPH202nLtve{+lXg+!cvy z9a(?&w7ysbRmx@%zxK@YLg$q|Dz9M74edNi3UXa>Qpm@%cidd8*i|cS82PQ;Lx(+l zuFHhiM8283x_cCQ2HM&f@G0hwcA*inkzb*38(G-xMO3B|#Mm)>eEjt1a94L)j;^5Z zlWK$B+N*Af=m~U-!`Wt&Y%>OQD$)U`W(vqgPpmL57XdG~xbk94ay!*^QAT<@>|5Wq z_EtGIjDI~~C)K>NLOFX2AIorsSH6P?YJx(8Ml=vTa%d6LQB^x^*KX&FN*1|3vgq$4 z_APzgEV1b+2|GPAuakq#J94Bed~{X%rEBn)_Gc)}c{$yhsoZ*zU-*X?ddj*)pZ@sm zCUVAx0C9ppTlz+^-Uwr{zS^Sv95{rgly0(go{H;!132M&KJ)Xs#i87twRpF=^qA%9 z0nHKOZXS0qjJ-sFJT_UC{HRQw(M`TR3k4=5!t0UzdNI8Mbi_2}h1*tyk4Rp84ybZ5 z7zqBml-?r#t|q_2dhz=x|Iv;Vpi5TM381vHyl||u3F_`TW z5JP~eweFX4qD;`hJAQbLh1U0i`NHFh3GE6J&7EzUkv39_iD5fIbrwIiwKWfX$n!HD z)ftdHO^oYIoxlodj~2MtoG)#_=7AN=FJL{Mo*eycqR;OvPUa({taSvMGj6_+5Dj1Lbt3{q_>BuwD* zxbCvnXUP4T_E01uAHkR%AhG$(N-wv7T8xQQn)VuBKrF zIMe$uE{V6#nsBu~SE{K&*E1meDa@N5QieD~%aV8n-KTpp<#`IU7a%@5OW@;*XTbAIz`*H5h{$A8uJ>?a5o^9s0ah%RD z-d`Z?Y=uH`;2+W4660a_Tn3wv<+rc#4=KsRxqfPnY^19^uv=`vqO3 zoHQ=XWu%LU%{}M$(EFnC(zHnJ}Oj+4w)Kd|LzIOTvw#y&zr37A5VDb6} zhHtiqwv@8t2?^c`mYn3W4@2H7J191?5UU?PiJo-{enl3xXh6Bc1u$*~0$s`iNZ?x! z4MZC@Wk`Ri@=Hof++1+tL!*hi7U!Z2bf$-mavj1b5ict5w}~{;L!W_naULkLRNkqu1~C9Y z-UwAr`e#bgp2>+VD@AlY9rE85{}ySK%o0hNh*wOUY3O%65+<>DydRL8eTke%$=^aA zE)oY1Y){eAwP+5Keq}Zs-ysqSu!$=k($YRt=2dMhZ1_VjIDBF=b0rWPw=PW+y-#dv z>zF*2X>RbAmuRKB38J&q24f-9ZK2tc@BvUq0?Jgw1uSR%ptjTkt9`r^#USyj_p0Fn z@G;rBEg~b}uAI~bU6xvKQ1X(o#pJ(t_!nN>l6%e^9AQS6@z9yNmXjaTvhn?gaLDqIPija3FS}vhDemIb*zT}U z0;_fLw6L`(0^7?-FIN1)GQ5#Xi$#kQG7SlwWmdE|65^LDh*Esyecl!+E-A4&6OwLX z8uVZs&3-W~FQ;VknmdjIrZcI}OQ+q~CQ}hq*q!EA6@Bvw(I9W67tM1>zeP6rns0q* zy}J|=$#H$!OAkx=bwxC*u|wR2Y{|~qlu)fQSRWVDP?yrZCM!9xhsXE)>E?k{tN%TB znCoQ3$C=={aQtPSwi@CB@lCF9Hg#%v_vCzW8k`65`;2j}!-{dn%4%uzc^dazv+=~- zsyf~LPuSemNs!{~u0+-0& zc!gQFOZ+EI(AoIbIz3aCc6FVfY-|Pvj!r2JOs!Omq{%BRoh=;+^z`T?{jeBxy*969 z)DPb2%As&#EFvQ}v-@BPYz^=!?u`45sM2#NWj z!%ek3`+f`Z1kFV!iBSK+7!+wY0Va>B0F^|Fc-Hf~2Ab5aXF+~^ijEV`l~&LA%7(;2 zMPwC~jlX-Vf2m>o^0sVVO$(;%gri%c30$bCO>)1R6gvl1!1$Gx8kjm9~`p@$}2QJvC%Z z;^YbOg%;gx8H__os!W5ZiJ(TAm#9`vjRAQxaHcg-kOL0IFVUaNTcW}refIYcx_>Xm zUw@mT?3;zCGE7Dqm6wawFhuN2%L=9sg-O>(=I;NVoG4Eq`H{SG zReF$esiUwtPZ`(};Y7a<@T=B092R44A8vwtzD2psBOf2>A=v%JoXy)18%HzpGN`B) z*Orc*Ay5lKh!in+kty%2i;?f43gqtFpn$({sL2D)KjQC7;frws?FZ87;t0aei`1&TY4~298>RX@=JJStn;0x`E-$!zPhaCP7 znwBD$r$4g9YlbPGo#7}g!bz3PD8dpkl zn$*?n`On)j_BrXpq2<{*b>Iz#PO>eQzO=_MC6Rt zi)H4^{*5c+!;SC3y;ZF*9Co^r)CHAzB~MaO^#4*wIj*#W==A?hCn3IneI`d=G4Zh6 z!d%rGD<-KjVl-#p7Ha#=No?uu7MNDHW0bCFY!wuLAyfZKYD+qPygMJ zAac7$R`zee|ID~tHm2WwD<<jH_WGA=I<(Tu24 zAtq3qMIAk3-(d+kJvFb#)}{m2Q>Agt>yuhc`S{pRLx=P%*gbzf;L9JX->c`;9i6%O zK|>8v%zZ6ovYkxKE(Ig2d7^JL@{yYFr(e%3(tW@SIy${gTU03%EKKfLL-?iad!BnI zFlp@BzGp$rWX+2|A9p%_TS=a&vS@tggDSjHiHKMqUf{#@*?Jz1KLATC5k5ClVd(ck z7siU?M0)>zl~hGG>KZr!t7&I7xm}}9LHDsr&ic1YO)p=X&T=BtYn z3ulL{-?|_lVL8kG?9+Y`H=e*F&qf(K1_9D?gISb96~xu}=fP15!jZgqG8YRUab-*t zdkdQqX+b`?0KS2*N6G&hhp!^3td2^TzZ@U`+n{BIsMS;)vQ#P_eo_4^!gw3rm7E{} zf166bpE(D0^4W^z0C53GiKfgr)pKU@Q1O$Wpp34XfM0%~GKWmXQefe-PQ};JVgX)?03<3IQ9F)YC>SS&rUT5=IXa+W|@_8)c z+rDLAluSu8e>f14-cBz>|77Q5>lHmy(N4y2mir1Xrq6?}vI;Fggs$5jf{EQjPi$pX zQCiZ}8evW@LRNyq7RJuTC$hAk+X6=I$A!1Sf&wq4O=NFU@CB;Lc>?F=$9^*m3i}Y-b|eo?EcKefg;Ls1s>WG2*HsaQN@#G2MJ}ou zde6>5ewDdxDi~7a=eaG#6C^e22qcqg)z7ICB7UK`&uJABu~;`GsA3T?T=FEXxVC<~ z+@A`%_iS<8n6pUJumRcEb&ZMt{wkwQ_rhv9&KAEnsMk`eSW-HfC`l2^F)%;CZu8e^~CNuuer`~RP|9=r6`uD$I z`oH2s$j`UG=YQ7pzr}y8{=ZlG{f$H4*sn1l!H-Pm08J8Y^x72!xT3ODcK6Mtg z(bMvL(U*6=28&8AJZL##m+L-K-sZq?@)Tdtv$0X zM!Q1KdqNg29swJADV{7%FXzi&ojTp`^N@xw^0Y>Nyo>|Gu!YXeNQz-gEw7m|V@gsxfWG^P$f;kwQB)f(VkA_fG&%f$mn4XFOnjDaSV8=Pn4-*AUUpLmfK3-gjyG zbNxAMkJWNTzuhusvMS~TWZ(uo1v9h^mRj2u_1ORA1Z7;!r{J$l2X@)9j+X}62co19Hmt@-CcRA~5oZ0SN<2*U{9Ya*XR=!#Lz*J z3`+K;ADN3m3mX2VS)l5j^Wk&XyO=|7Z-Q}qIQjOwCmoDx8^^UQbBkUHGgnLzrFR+w zld*sm>JlhKT}$IIppvoL6k>Tl+&U_*`gtk+NcMuw$@le9++7jllqy+EQ|E&Ez|qC! zWl(5y?T&o>#31#Wz<0Eu{dyN0ipPTUq5WcjS3jNz`+=yY{efO@gGgrn!`@r+vZDBt zk$qa%OGZm-x>0@s5RCzCZELjxO?&y;^>CP7yGd4${?pU@1d&rA?agz@^IZ$h5FgAn zUu}HbCGO8U({_TD?_zI!0eo3?Z4wE7r!z`NH{+pefS6S5l(vCN=eJuY*Yof_I&U1_ z^Zs?3CN_CeqV2f_xRWG&%a)nrGbhQc*mz}bXP4L{2rr=Q9~VvMB}&wq%xPsGuipdD zqV&%OqZfMYfyp+}2zy2c<(VA_79un+p^?KKvMGH<^72e_wcBdPQ_k4_5_I-sW5hvT z^zWYkxxgi9nmIIS zFkWx4#ui7k+Stx9bs3558^2fBk<-&x12dAfR&bQ!nDbKzs5{M1(a`UN?R6FO3P|g6 z5AaHft^PPUWr0}x2i@4)Iq3CP?-eEcMuOlGZF7p@~N~7z2%px{(+ZiC1+D7Lj0tNJj_^E zO>)bMf`kWILPCn(r~Q*i-z(5F=&t7V22}EkrKaPOjkW1x6MbJ_PkmfVB864X&JU+7 z=+#>f`a~P%BwNI`Gr2g{o726mYjekqqwr&MaeY%B9N`4oOOkr##gB!$Uw`r6D`W12 zS*=rF1dxnU_8W!l-1ktt7R?^gnO_m{T#?g+5{%A+V+H!>bM`lDx?l!ST_pOZkUjrL z!bbIj@USk56cG*Y*t;>+;iOgK^xM{FT6VqP2zOQr>Du+eR$3Wf z%?O$xG6o@EnubM+dZ{6{33V4#x8HabfUZpCZ0}202sPxR6sNg<1pE1o|CUs)pl6C& zA?#Jxkdm^3?{~{Q6|*XZ{z@~vf2=}QaIx9NQcv1nJR&3DDO}aLIG~G*l59A8=V>%_!J67g z#XGvVaL)E?O}wWuRduihOaZT3Qn_g}bL6B^g1~=%Mt*T9ePd1LraSRIG}Q-Bq13cBI6P*5xFpOZ!9Cnd<`~NW8=C*xouV zWnFKlLh0sW@bx8jaSZQn;4Que0$Vrdcl-zJdLah_+6U@O{&K(U>s78leZkDYPj7p; zd&X6|uzH1o$TZbW9DSld&u>Ymu^<=-1FCfqUE>!}v1ds0yWv9W^$=uU+az1&{ohzb zJt$B~qKd}1{dy!;+rY5o;Lhoy3P7wy|6j025N_m&<8ux{eXG7#GHmMY%Dpeay43g& zn4tO}jPnv8a_^=8KS<_|UARt|FEQ^g0PP91S{I;A`w-vf5*(z`zxf7Y&WBZKnQrc9 zVXln3s+1UMXfF><^>K3jG8RJm%2+5NLv&lkZ`=BE>3gmFmmI%X2JSN!?hawv1WF8q zgpqB8yYH2Nn2QGnTw1^p6Q#C}K21hc!xoAFr8>aT=%=sO`mU+h>#jA6FbhHN87%&J z2>hX1#}IV$p-5rVV@2>%MrfWHO>K~Ow$rdXz$aAN7ixJ^?i;|P8IEw&sN`Z12HE5xr0d_O63>l z3!z}pPRO=v*{5u1=XCtnyt_~znY{#+iH;}wqtj1hlc+_jB~k#RZj#Zh#WlK`D<;cr z9pFC*yI||&(N!%M|1crw8Lrb@(q=67ZF7L3$wi#9ucc;~n2y8N(ZUkRpI_XiF`7k1 zlGOw^m)u+El1npu_=Mcs64cjkzf72+qpO|koJ%66uHd7DJ<2ZkN6e%?1lc<%ylu`; z;CbPl-WA0PUbbWjxARWV=chH=*>U%UD6cgyJw7#ZIlrL9`*@A)m#i9P6Yh&sxplK% zWjRm?%H#v$seY1MaRF4Am$~Ei#t)~F1R8jtZkKDI9Aj$aJa)9;^?Ci)^iise<23;iA|32& z7~Ol%a9pY}h7rA6w8}3b@<-3wtUX%KxN&JPZhl{==>4M zf%3>6B6b18@jj`C-ut$dPcxV4anjQ?D#ws+L4>NSr6Z@j3TqrA za}x`G8J`oP83n^Of#EzcA3AS8My47zyisKb)#ly@uRDE*zIepeG@~z& zhLWH^TKNi2QJuZ9bzL>GGx~J(V^cGoDcvuUmt`!8W=IQ1e2eQxeLJJdMrWk|Ze^`z z5YuoL7cQrpU|-!g1^6F)&Z|B5@vW_N$&b_X%oI7sF^3o!X`;@rL0Q|oB&k{Nq0CjI?)HEtXRQ+W{JLgeKOFLGXfIB z*1P%@MWpoPIB`0n^9lwbyJn@xzm(*|`U_L8oYu^YL4dp}-iZ!ZLMzwrS1nGpOp3g_ z2BwmI;Rb7<9q6OI=gQdlgc@WjMyJNoOi?^)elm-2UdGx1ODsblKZ~4L(U@ib!ojJb zwSDLW^2I~{Xp^VMt?~G@u7k%Ta^C;?8|Miz<0|-9mo;^BlcGvVQhkR~w~E*g=S+C^ zWey;RN)-Gb%0nN1BC5`&5wy-Lu}T9m4)s)>9D-fwIJ)i85nh*b((tUiCNAz!M)}kL z*B@t4OrcYJ*VBa8Z4O_A3Rn)S?3_#J{sN2@Et&kwsV-^8MB3XE_68Zq?a2w*^>cK) zZD!ehPYBY>Efe_J_5TQt&E~WZXf6fN9hurfqU|22o%9Jxpep3~?c#LH@~G=HsSp*T zt-mc?z5KW}s*6iI1HNE%9J#Z$Vu(EI;(FuAsek6S_77Ftm zS}7WCrc}+TtsYx!8wS2GK>sEBO7PWhMw4-pI zdo)1SG^l*FCu`{}ma7eV`sj{95|?JlXlSHc6K8yUXMJt$@ZriI{pB}Bq^Vu%zOSlc z1<&ZO?c5g7YjM%g*xW0z^g1NsmnCv~FoFhdh`#KSPh{Oj_@$$BK`$%}O94;Sam^ow z*!+NcTr33*@kv<+M2_l<1Qo|^jwl&!WMy38MX>HtJ)4uqDrT8k*=2;o!_wXkp0IF^ zY0pcbN3TsgN5x(1`USv{N>WRV2}O7aT50vk2p$nO_KyNLjGCLukYmUgc6bm*_e&Z( z#E|&!Jz^bs+f+57Czf7a?tmBU%F|k1qahkjUVyDErVHXkv{apSa|_3qz%t#n$ACCB zR{v)91$2R|aYZhzXMq=fBe52CrDA8a zm_D`)!|$;|&Y355ChapW_8|87!hqXkS9Y3u0Zm6hm`zazFg8Z8~uxOQvYEUgr-nKf-rw?17C%KG$hsK`fny?K1<3^I-H z_WPJ~Ck(G4*gayKYKV@yH))V(Wdx5_ZPy1j!Sr=>Q^D4FJH*aHebXp&Kn36B0t02vpPHO#aRD$ zxxiHtd&}x!ms;Na+?R3|KcuIfnwEEU{(erXnzaSbe0{NDM%(Svd`T-;y?oKM{19ed zezQjAh@dPV$igH4`1oV|r`CLQ13vnA5zg*3o9Za}IO$K}RJmZF(8rGG*pb(@Bd00f zhf%!dfgc&^Q=T;VX)AeoMen;xVdGgSEUBp-?rKEFM6Uzn4Hc}0PbYu`w82sGgTOdj za(wcj=#TKQOhDLF4do9x3XsS;Z#UU1m7?kxCwU18zsSe3pUS!BwxFgkh*?Q7opoM|?RJ>R zFodm|;?mIWa4+z>9X5uAhKi>|Hf*U~%-|}yz&82&RB?!k852#}@7*GH#x)w@2s;cM z3ZL|%VkW+h9@Swdnn&Ht@HFa!-9iTjY&EU4hKmy_9jn8yl5e$v(^En}C8!F4X6TWu zgZmxMGuRF@89knf)R%_bHX1Q$KCp`-3A}60@9F_6Yy7|*ir6!=mu@yVgNUYRJop%5 ztc>)6y*@I{GbI_4X;y#W?@DoNTN|aI4h&dCMs_EcfSlP%+F}n`CLRKg#4((XzP1Si zmIxr24Y1?Cfn=5Hqs&K1Dl7%0m_|E|AH}C6uioiPqrfYgZokYr+fbw&kxG)>BKNJb z)ztC`gY%Fsb0{qkiNaR&NcOv2OGYEM5v18%30l&nYwnUb$rg<2+BFvL0}qU6^zK(I zd2Sv|?{E1xY8VK3v?oS7W%jN?#KaMdG=zqffhdv{*m@F8Ga|vun0Cm=%UU>A_xgE^ zjMb}ITT^OEc`~2EETV{brurM>TqVS4n4;Zz3XM`wRao&+)aT}sq?+4DDdbyK1sKfv zfm;N(Yi1ZbS`f&rGU_{TMFE+hUQ(NxB&k3QbfF_c!9%^i*x{~BgzB&n#VobO$7ffe zPY%iZ7XLP+?Xu#8R|{6ZI<(*MuYyTnXy4n5&HnxM7hS_D$^LH83BBt$&Dbr>8!^2(XRh=oQwW1m(b+_jJ0s{Kd+-;(-8rd&pk%gyCEeuYXbZw`hXNxer@v(WR8OdZ{|-@M^{36WY8gL*psv00Y;7D$PF_<`7CZ(?#a+HzZYsU>6tCCyT>4fzMeuLsL zDLPx)W~edJk1wTb5#=LPgr{8+y$gaca#0r^VX_v|A&@!c*Q^lBdd#SY?GHg0-@uGT zM!tHpp^>?RAp(eZG)=8U*^UFM$e!urnvvX1@pWx;_Zcc3f}J!WZ6}AB2z}|kUc9^w z=+93-Jmh2SC%q4S%;FEewymH_PjSI%MAco=rBpQ}%izjm##Up1c+T~AK$wPWB!+Z} zyvW4-f`V3dG1SzKI1qSkBzREQTgBEPTiQFVBjvj2Hce55)y{kG)p<@VRLWU-trLza z+G=MG5csO%iGmO z<}?#;YFuyTP-2MqnYb7n`1yy+!GF^_#5@aBMrdxH(@k;;nuBVdPDA~->j3`ypw9cM z=2f(yAfabvy4>89=Rv{t8Nu36eNpk-#gC1%;i3m`>A!&a=@!^td+U8Xn(tGjk)K=B z4chB@$?4(#>8qX+A7R`5$b1{g^D4MR&ScRD>mA+EPi%YU@rdbJ=&Ir1(jn^ikKYTa z^f~m#DaG%dg6kVO=W;dehOHW`8*N>@uq_+1<=Oi0X0I5uF3KLGqj>nHP0=HjtNgn_i7*J-p5-z=lu?ss|but^98^awJZIb=h*`+CY z!R-n_BX0kBK5oagtvhz3yu~sA8fZdZJ`(SUdTUiw10o)+qhMG>=cGw;F0-xHIJKxb zII_YRlgvy%<4m2h(%3R5qn-tLHSE}pnWj)lk|P(<3yF6CO6Mb@Taqg??yjzDUJbJ} zFzAv0exRimu)mw$L?V>A!|^F5CqV>fR{qRBrCcAn3?j~M1CQ%{Xs07d@J zFx3r)BHlPSV4zp@?~-LrgikRp7B!mPcko@7VdaTurnjkXYni*-h+~o9pRYb=rDE{ehWlo+S+7p{Tl%ZpaXzg~ znLpF=eQ1Pl&m>ycHEuiDy}VN>xc*UP?xj+J)LFIH0A6i!_d>nSf`dok|5 z=cIdve$j3cNaF*@u6F2(nY=^WH%Hr$3B^_6pNIVRbOH^>{cZy`XZUC?N4*g%zs5NW3-KR|^t|lG}GG9inwz-@4 z@%Fp<{US+L4SQ^u9j;86rN$(Z0=mU$4s4%i=gD?m?_+s}^9x&#GF^q-pUtpbnYB9i z3O;Ga38|Bq^d?}w{5umhfq@ea84T#QuSoa?L&LFzTwYIa5cZ6~;$|SUhn$P15c8;{ zv@Zk2%?JDTPs;^g((LbR&(TPRT%I?VSJJd|n;P~YpUU*fgN1ZyC;0%+ng%1P2UAyF z8ZS_4MiQpw-Y4)b^@S{$kAzu)E`m6Tx)d8!%q)BE=xD-Rb-;AG)}Uu4#6*gC-!q6I zw_$ZigNgE0v5fUQ!LPeq50D_vseu)PV^Q^?6|SCDAN8O!7x!<_C{qy&5QOJ0Vdk|7 z9W2tlljfD>YG7j(!T5ME#MQzaJ+-oauh#H=aJ@@fTuUx#^<2(@Jp=K_NsrG;j!{Vg z7&GgzSHJJOoW3t8IeRTR)IHnhcPtwE#!1S0ftM42WM8#x=`y&kM{49M@B8kz#Vz=G zLF>_+dAQD59j>R(=5EK!^Kx%isRr4}{uaOnT`5E^LqiL8 z-q#RHGVA=qCbKR#XdU$O3AcLkVnwZ^9rQxbMEq#OvHc?ybEo5zYPE(Vz`L|@H;quw z{Jgd1YUTy*y4bsU@2nyI>qX%RWY#aWS(iAzFyj1{KI4?9r1MU~wrZqyzUKSg&6{7x zLJ!a%-_rVnNimwMFQkI(;TK%LbJ|pCKkckHhiF3i2wdBZKjW+c^69M0<9OG=yvpFM z=I^CjRMR7}htOZCV5$k3^}hp8DCz|8O-)UB-{!2z5-HP%jjJn*izWv8UH9sE53Q?y z)V4Mb^^ZC}z`^n&sOS!vJm;U?u3KF0o8FEU&?~ESGfjNul)w)9cp|^r7B~;DB(sD) z{{4D}*`($ue?s~1o|Xxx&Z2(CZq`s>+_j81A%mcE$BH0~jT^VX_X^h47afUPdP-cl zuQzDKq2f>rX=%wi*>P{yFG3KCR4gc{YgNhz;!ban$D-W)xEY@>6S_pkzEGg%4$Abs z^!n9SzL?p{a3e6Doj4darjS=|L)q3OTWI}n5g;(Un$s>mv@{&AiK%vE1NTT2g{A~? zzWbth3W&z3ytvIc!;seeos!=E0QJg#I@EGjTIn^IY3OQ+m1h~+Y^1#}jqGfbq$jiu zcW6DASgAxP^S@sNK>n?`-$ue}5bvDk`_=?~T@5 z$g#}OrByjUhmUX?5m7uF_jO>rL)hg`iQKgObo<3>*Wa2HU@`XvA#Cb?yyScg?dsu1 z<}DmkM1DjFllA->;^?^AuB4%qBTl91YeKRGB$@I$N60I}pCjkZez}Zvo6#A`_@>{= zDY4!yw(nwloczH?4D;jaEMtuR)@~3sDv{9G<^D&EUE5nACuSm__Odn&lc^X*;d;{< z@?fa$AMXuvpBSRewH;XL5nq%V;oEetC?VcXO?6FPm0j_uj)Z~TcS6iw{WjL<@{ykF zBG-N0TlB0BB?IKjaE&q};>DLrq)J-@DLpNS)>b$>C_sg)3R7PD($94Ja&t(l+NTOw8;|m$xPu13#1tTka;>%_;+sC&RU{_zG3>yG^tvi7KdC z{G!6mn=Q~xm~W`qaq|(Y$?w>9*7@eiLS?R_=%`)Jtlil)(=QY?-kq_IZsg(442;+2 z6^~MruooG_fxY>5+O@dGdJG+*AkS%rd6jTXcBr&?T~9CDF=q z-zo#QvMxa%PjyMNq7v!vZaYGA=G=SYr=&SbY;=x&_^) z^rVR;i_X?0%~XUpSw7O$iq6lQ8c?0PnbApOTWc|Q7}JE&q)LH;^9A&iL62eCwypYS zR{xNnagX}u?n&32qspne3tdW+Sqx5J5A6F|H;RhO@V6pDCy0Ht3I87e+(0A09>%3^ zz`k*pY(WsWnrhVY^5RE%3i>CR5=+HIr&eInDoTMj^tyLgctJRqpkRjk$$)!*zRYXDoG$vt8#PxZ>VbbY%>Bz+o2LVdNB1l#G((ci4B!aoNzcz=hH9qWLJUz`0Zi7@|&-4^}DBN+TF+e z$S6u{3pIueIb9Xel@;U_DqMk>r~xscC3*b*2u4#iJzZ6-ZsvIYg#(=W*0{Co% zK0`9!#Am+zG?%}3o%XJ3mX__v)KdJ;qVd&n{Dqgfcj_;&OARzNbnxnPCm1^W7V_Q$ zWEZD}L6iz->mw=*NK@+$YE5454LJp2(NfvI6Ipzk@tGu#KY5UisaZ6YYStY=4jg}m z?nX=Lb0@EzA<=M*Bh6_}og2iUub{D3#ni+q71dQFvmr7<#d-ZwUV3g1gExdTY3|0V zh|qs$l$cgaLuCb@{p@Qb9Lrq1GeIH}LuatE@7Oc6)TxCkn&is;d9-RZQemi~ULQ)G zg}n#&vOG~Vlr?Ou&k3R@$XTtPLeflolL}9=QaGAU{`yb;E$NCz8Y{IZrM1+Ul0-G# zf{@hl)&JvvN7LLQzFmhxUQ0tof%#>(XoCzDt=&jOUokY)vA*o*rPrQhVdyG1XPtC5 zR-#hYpd-YZCxJYhqIvgz!s~Zfv1>SbYzOnB6KJf>baxpT8lE8lLZt&7kl~ZZ{Osl<8_=DeV}9aW9U*|VlpM(ppTs2!+apc&Nk5>f_e6zJdSs26kl4) z&fXekCT+qVClL5EUd}uh+b5N3$9z?g1%27Y~y;2xb zndo#f+4lccLNQApTrU-#PEkCn@jec(=&a=reo=IaZ(q{b(LwdQVlB$Wbt;AI;k)EN z^swTw9F1VBhmP#wK>#OFJcTIVdl!4<;%CJpI3H;(G?!*-c8-)p!5-ltHYe}kN+>Yq zyo@cnsI*8J9-qcgSx1#{JUX2MrPff2|5}v$Az!%kU9o%;tY=%}iwpt?~wcymE0?Fha54p3t;h_*^` z{rW9pLX8`Rv-Sy+QC(Rj9P9|Lw2oan+DpV|S*W*&qMpYOHgV@}KY5jz3Q@;Ff0R(z zP9QC(vD$*Q(#qJq%bdANg@CFAz3dsMdckQeH2 zdL_uA;|IwIrCHOlQ#hO|vWXB=i#FtHlX$jfKAVUMu=Q9T9Jo&fU9E3FBrk3nD1fQ&(dW1~rS@6KC(yqa@t3qI{cl?c77P zMN^72UneN8jcj2DM1Do9QojkXH2CWSL0rA99i#IS+gJ6lB` zRFL+p5!Np^<ARudg}&(jE4PtdeG?g%n#jU)h|f4=$E6j zZgw5mjZP_)p&~~{A|qBjV_n}&mAZgJkcWf2>*&9B8GqVHXS0GkLo-y@){_wZHX~Kj zTyJ4vVV&-s9Y2!|aY|tuWFNq$i+1Df(4Xe2IvO4X^(oo1;<@z)_CfhWcA_|)uF+`T zv2!Zr1ACkZif~!xQ^5$_luQ5AB6Z(^tykw31Nu8DU@* zf?*_*sZvy&Og6iHw)Tfm$Yx08B_*PgPNz!7;{A|L6=P*9KVbbiQz8@Z9@nXaP-w+v zfd@a#2ydcLY(G1d$)YL*IsN7UFMZ+VhwFM-@qVdtI|OG&JX0Z_iTFGDpnUJ021#=1 zt+P}KrM0i4mTbQ8ko2UB@78P+thLE|Y=o_xINm9ogS2FPaza_;ia{R~*V5QIcqs@tMtSrvxgp0DG?V_om8Z>AEW%o^S=d~z}oN2SqHTrDrI zNz31LQ6io|Ey%)0wS~pCOkrJ1_j#6v8MR4x{`mtB>R8m7Lh-J({dCFTZfnruaf!U> z4_VP4ezYCmt}{g4WF=~f)m_{hATOQAE~+P~Xb)*=eN`%xzv~^D5^4O;As&qi(x=~6 zUZPy0WTpB~rBWqg`}QjCJ9RGZ5q(Z8`dn5heYsrq?oLZGD=CriOg3LC*Smg6JT8c& zR#W=wL^_W~d`vdso0UjF=Z;#+dU>B&mZ$rj|LGG#@(%N6BV$7Pfq@P{x$#Z49; zX6gIKZ)EwAtKVm{O&LE!${>uV>}Ng~RwzX@l6?#b2Hx%ben|$xHmN92Cw|EOmJ|K$ z7r*Wq3CBv2;yzBq!(n7vLusk({ZL$zQT))izn^t1+raV^^p8c-zsleJ<#(7ZM&fBK zCKD(c#5~@uVrnm;^b!F=i5z;3ihyHN{996rUX&1qO7mbECm!?@NMwWzDW>fb`Xm#< zAC2JI^kAyA2u70^iX~s#(OZlq9rXE2oiz~fqtffeZGIxDEL!z@)nZiqJRD02Wuq># zA_lLV6Y5Jzl}SM`6fI3n7k^&dE*tQ91p6)!4u{Zbb&q7nmHu4j!XzKtdy3P3zf`8F zcnqm*D?dVi`}s4KVoqOoah=&5S^yLmN$e+ z{LZ;4Y*#2qB3V3oSzJz#2wSHRKVL6xG=1BaMT8y6$kojE-^3+snRj`dkvR|T9Ssl9 zN#8y51{ZJMC7jdJQg1Ce*jzfsn$3Z+LeJ)g9kt$wT$*KNehsZrjoaf#FKk_@d*w1X zU2YUQ4UXk?bQS{+hqIK5HI|f$>r{_)zj~w`aKy7oTHVd@U24vry-hkJBjR3TZplU1 zvBH)9JEY`BI-6>6uPib(G0n)>L@7LDd+``U+Rfj6{kv?r10)kEd~3^G@4ri|AR)Ns zrM<76@a7D|)1rg9RvGBO&$26udvT1RsRg1bIVt-TU;F>QMeUBm)R-Pjs|IZR&DYPN zP-L;Y`YRGf_8#cLtc4o?~iiiuKhEQZftm)yAKyUQ)3b zQl;`o97HY=B~y%+`vJt?xje_v^dhFJ;xU!?8mNi8!>(%!YKWi>A`%G@qq!>M4M`q8dPcpiEvyHo}X??vAA(hR@{X3bNTu# z9c1YK0u4X{EN>PdGr8=gsiBhF=l`CYLmNDP`~b3ah%09= zVDlwutWaL4lmmM6J4y-G)Ct1uREzWTrZF_QXD0xM&}aOO$*ovd$pN<>K`*muP1 zCg}5W^WI%SXey{QZ5!5zeV(hgZ1nBvX6Vefxjo|+WI_<7&=%Kkk5E-t&G_vbOs^Kx z-z|`kn5ees$V9wcxpp1DaBTj?Nk*26yRnsAzjy&xN$juw%bQZje6I>q{ zr=q?Mz3?>l`3bHHg68x%Sri1XR*>^m+i3Fr?(eT=>BS(o!|fg$afhx6p}p^*Q~lh&o$zhRFCF z+@D({=8Fij5n_1o9&0WqbF=f9Yg$SPI8qT8*Du{fX0QE%mj=UzokJjSdje2)mT>v*FHj?CC@JHnvK87L?j* z4(@Gaadt_NMhi7fR-%qAW>&*|?zcaWF5+Op=A~orLF!}??oMoR;)SP4x_or*=wNGV zfZIy}x>~C#B=aO`i>uKT^kLx zrm_QmR6bTN%`R+lyhDOCE>PENH- zfwiUvr8Gw>Bf)Gj2&1mYU{DFx9K=vnM`K+bwGGv!Anc2CBZPB$dW3m#>>;T8_L#)QKWr@gJ1!}m6Fb0q;sfC`-)w?B%{zQWwh28BWlS2!a`N0j+B zmv92YSo%GT3MOuCKOl&Vjz}PZRhQv%|2WCG2Z_vB+EkVdc|c_(y0yy6)&>rLgofr$ zs?FL5D&NoW@I3k|3p#~{w(br>n_FZgX{H66_l9ERCBhg9hoCT6MO``Q?rS5kF~iN# zWvpfsalf0Xu~|XF5~a*hQO7u5e}UPtLDq$O3;7**Txn`6bvWHA+FGg@y>$zfwFErmd8DY1J2F@BThECud5DEvof0T*6uUovVxvFL2<=BM%kkopYD5^zOwZ z98uKo7ev6p{)0PM7lzZ5kWgz>VY6+JjzxvqDJC}%b-pxDTB!59_%_GpCK_us5$ATA zNvAhQYjXwXU;hS6;+-MCU8pAsYFV63AGC<}zkltP_|8gvz7&Q+l0Y(peQ}nhH7|{| zl?>j!gF6}`qY^B306j(mT`ph_sn{f^w z=pi0?mg4wnUcX5`qk^;tgc5n55jjaGijogjP0 z+E!{Re{oAZ#WmUGbsPHX4i4?C=H{JY>N|Qw8&onsbcf}Dw3Mb$BP$+P3R4hH`Ph+m zZe6@iURyzPLoFs@E7V#o?akFfHQ&G$QF7=&FXq~M!PR_ds@rI(vx;jBG&EHTwY<)z z*M-hfU&_}U^>1+d-Y~nL`XqbX)Z7}Jpsu}}MnM8osW|bZM2v@CajlGWDvPPoibb@i zQmvy(w0CiXS~0C*(S}+oE#xyPaZjG6)@Ew!>M`%I0Vg#xD}_m8PdF8=8wdl6d0C0ilS3%nD`WwQnJ; zI_t}GR5Wx`uPdkQqUVQkfQ78C)wX=;rzG0 ziAorih4}@#cJD=-iR1GpG3u3sg!2r#WAq)_$J+P^NwtZV_I8dR*e#sp4BtI9&XH#y zBegZpW?YFrox~A~iO*7!6|B9nwF`ANh^n%ZwHZ4ve)bu{-c_y%(&6<4kQ%L6g#nVI zB$vq|H!9GgA(jlVcD$CC$|xq135HQlZFJSj|~T_@+)g%cC~IFX^kSRwk67f(3L zp`-iB20hG(-z$XyRw|@q5_xh885*S&X-6a`H6o#Og9hmIdbnQ(F8>@X5-PPB1E5Zekexuj5Uoh%QHQ{UB!OQ^wUFvHFx zJDIz8AM37@yl}LO*Z=D4Nc1Xn)*Zb3>>h?LoJZTzfn#=ttW-l)tCdATe8Mp)eLFhE zJ2V_Wxc8UNe%!xun}g4u_|Qu{aY2O7Ub#c_-lsUSqp@s&%MQ4VUk0S&LB9W;GaUca zr%4C5Fjv-7NQCgmp+hJHhckdlBN56`82*kLq2Pkl3iVSwhOsy&jF!woUw0G9;*_sY zB;6fNEHBNW(pL*LWG$UDjtl2d4AfCvS1qQ@tM2SYl}#cM3N@1{pw+5K7T2K_%F=Gr z;*lGvRK|u-gi2jCdRYpmFF})F=$osXLIre_4cT!BwbRw!S~{a$jIW)L=uo8s1oA2x zDouis=g?@?*oBgoDlHh5dA8gk8XIef3TIJMX(_FrF3-&qM@45#J#M#`%9?s)nGnl% z;dI_kZ&=(tFUUtGwVnPhE6B>y(guw^y`{2v1aXmim$)?<;?rMzMK})e9ZDtZiwnYW z*J3UPN0AqIl=80cRg`vfZ-1|p^$i$S>1?1uOTc*#1F0(!w!mjkMBYz?oAcLaf&)BZqCtF*CUAw zf|QY$)M_@JMj_O2_U$y2+3hrwrSyh#3sf|BqRjf)aK&hCZA19c(y^f8x8-t$()w|6 zm$+@khPgthCY`#pj=n62khQUyw9i38W~8;wz{1iR^+Jh~^047f(AU+5ePfBV%uH*o zf%&CntX0iaS&Kn93fPwCQR-`{Gs~Hq7-i8f<gpikSjClA z3PK?-?OR9+f~ycJP%BAc_e4smD2tnX6JamQg5m(bpACO@)C&V zXl|+(brU0+%8Pzt{k0hDrS_7Qcixp9a2dZe2)I^QcBeVCyQf?kKP{Pw1cfsZ%3S-? zZM_PKHkn!Vv;W9J)F07ahMeNwwE+7cJAk^}BxRIQcEG=C2zlLT%+iXa*ZokuoskWw^M)Og0z^RavQ*T|y(A-M3+(d1o0q>TV z75g&!<{m5w7xV5UjaF+ZzUu7!9F^TWX;I6$dhrbAT`%$F*NzbNtZ@GPEn4>-Atmlz z@WeU1Zx@+J7^hz9YjKJ|!H6X0$K`Sm%BfN3!fg6uoOt#Vcqgti zw3g(zfA_aAJ`f9G#{#F%jndRwOH)TrDP-t{bC+n?_c*d>0CP>1uzPK&GGSb9FUuPn zD0NzLSqYzbT@yjQQKkd^Z6 zCtsyf_h@ETdZgmu6bf1L#ngH62%8QssaP1dH-tp4BJEsdU?Ijo`uuAc@-f!d-8}Zx zbI5!PEN=K|={mr(PaY~g=g!58Y{ar`t~qUy3sy!Mzru(Hy``P? zKH+@rt{6v89xG+XdhF0%Y{SDuSTp?fDLviQI zUHYE;0xultWPNoNrKOz{yJ{F6950>g{ls(6Q=yfTcH6jke}PQO!|be$z5_?m2m!RZ z;VPX=-gij6S81WA(aP$I`;l$qN6G;gLs06~%F;G?wKmMP{t@J6BRYkYcveYkjg&Wj zaGp?JiA5*l#`z0KD!XW?Hlf$&85|ldJ!i+keWKGUXcP>y%4$HRR-rTK(CYM9Oa`=i z14g|bYo&o3S1+<66mk*EOEb)EY@*W}OJ`HJ;}7SF#$x0(YC8AsBDFrqmHtUuL|MM~ z))i!C6?gAmBO%vNX*HwK>MR z7R+PNB^Vx?$5L%YYpTSxImX1Qhsvrdv>NRLo1sDdAfI&cNKz&gMKA2$*zgUU@f>=i zi9|3)eNP87*H3YEaFME-N*wdU49*7W-O+`$!o^4;M_vW*|PHQ=y6fYxe3E*w@YkwK@~PA{l6SxV~? z!B7~J=;Vv{uCkV@=DDYKJ-jy-Pn0s|6cLXI<*XKtQ1RneGm5)Qi^&FxzBZYR3nnQM z@6^2aqI{ZgJS&{GmO?R)a8`yB$Sd^SlkC&RNkOu=*QAvGH4#8K@@^R8svN5yw3Aq{0xQ%h9@nqlPEOX zb|{}AC~h(ve*96(f>7MW;3A4gFvoCt6V?YHpUo8W0G88ll~G0+Wqbfq$xP|kSs7&q zTt*pXlu~Rr@r%V6#xjjTLZ=|VBeI`dfw>^m5jtzW~_`63KW4EvHt?zt;TO*65 z>x$D6#Rxnri|bq?#Wj;{A`r&y3q5>VF#=>`MBz7$7&(U#=1 zX@v#uRfMUonS)*J^q>0ykxY)A2cPE9t_I@1HU8?W ze@oxVPh&{i$!Ke_O%LEnsj1NvFw}G)kGWXcbP-FZN_N0(w9r_kWpHYNeaD|9ZyVyu zl%E$)?q_y(8Kb3v&wl=SGQM@roV$(OV8Ws*;0~*()kax%M``NVMXNTz*I&QJbDw^h zwW(zeoY>9y{rkl8T0ZxsFJaY`?M+z$e*l6mJKENrG#Qg@xf2|F`U$Gd7LGr0g6#S{ z)2=*E9^c2-(gwW;9;Z&7!sgFVSDMXkeTD$W=&%YR;2Is#GJF!T8y+%+92m9n>y9fwUUBu+rJo}z}hUD4;_Na!Jo;^;?9p>;S zUSwCZg>X2CFAyM?S9A2(Q92sC=xef&k{IafXkcaJK3jzfj_hn;ebvKbPdtr92#TWS zjrm;2>bmKyDzLc~5rW}3wH6bPoj8Hqy~4;^jHjMDf_-_N_T7)sVkofWj#F7>pithi z`jPQSr6V*}RrKV{HE4`RG{v*I>MYK1ik_Y>%w{8v9qmZMUKG}5 zx|?c|=}h?6CYZ4&IJ|$CaIBl?t6Rysml&M$aQyjasWNCt$6ZX>LcH+lSMYC4;7TZH zuCoyIM}@0&eQv<=^q-WuC14*hKka0fmlk;(c}AB z9J|G;TgKrdjf{u^xcm6i^wg;ZGuEZ&nVDsfEQ!!K*#$i5EL z!se-E1(dpCI#oS7ZGo*|jIQo(tR@rn!bU0*0VMi5dOPaNn~FXn%DbRH229-Qr}?qt zn3X@-{Yk%_F`HK?>pee?4s-X)eI9@ISh>Q>D5H!r$_}`UGRi2Uj55mjNl>0KD5H!r z$|$3ZvIG9bA|CJ%Pk)RLET$-Q1wZuVQRf1;Zq2;!?^dR#2_^Cm|L6f#k~zSvJ(!lEr&cZ5FF zwE?G-^2z3R@W`bjeDm~0tX;ckECjeTxXdfBe1h@Yx5!v)>8q_pZP2kgJ&3Bl4^uY4 z(A*mPkAH$gI~s`xw>bZU%T#sm#VnCvt~TKDWI1rCn~2-S`E$2v*?)xe)*_4EB!~Cy zBom3?bZnMV6slwrOx4}I@brFW2kxM0>cMXtC77w8ufxL9%p#eBf<)MbPpV>XM>|GK zB}vaZ=gwZB_vEKh`exWn>#5AxanQoiUM-We4xW7FRT{0@a*r;fj9(KZBQDMhXSv~% z^T}5ZarTX~9DDWC1g1w>Pr?43eWZMDCMIXmG`F(5xe-G}1qru{VARW;JIeFVzCdH; zb}VN5WIv-mJqMc#3@wL*y{M$BO3S*2~uU}=>6DQ;mtj-?i#Ib|87i^{b$8TI^DUiYETxMrw>Hq+z5|JStHc27Y7AVvc!r=5wV7y?L^Ogw z5GOBKt+8PjM>-6Q3`~+prU-cbbniXE;ods35)HDbpS+=+=Z|!8$DTSE8JZ@O%HXkY zt4s}f;>qm8=Y@k2OqF%ic65@92Jw0VB;(Oi5TQ^p0FhLNEav6@sDtNTeSxIgfzKZi zb}q`D^OukVk!FwN1SE+=*=)o6n(CDhO?@5k!YEA7gBMi6c)v zk3PD}`lg%fXD{JO3qr6qOE9V9_?|A-=GPy|Hh!cWuvBy~ok~d}k{}d~fnJN%tYfnO zGV3uT?XA^x?AuG7UPVPimvEA1RH|ZXzinmNv3D=kS_Sp(`)F!_D>rT<(QRiK*?DL` zW<~LLJycZ~#C<9ZCcU`VfJOXWOjT&oYtS0>rNLot*^N9NqM_$77PXJ7{Ud0s77Ru$ zt7Eqrv!yxy^j;=MZm=H7W7KE3e`kbnE{#%eq{1v`Vs4e*ogLy`6|^*0l`U2oW&9eU zsk4c>yVsa=MaT;xo>IuMR9JB>3^Oq8r*BU$dV`LY@qT8U3XVOogTedPa3*r-j7FrH z9MfaB=pSDwJ+E`$K>~|6`Rbp2o!%plV^VrcDOvT_3e;K^8nv2uEJs6wiu0$>2uEK- zHeut|$O1c$Jx0B-b+xTMsKm2!**xJ?9HqfTl~u*)$aXqGiBddADkT<)6HO+Nn~WH> zGHzWsPsZ3zUA37#NA_Wm$!X~5q0(wVE!4M8t9&He_>tQM9SH`}n$5_Hd3Y0o%LQy) z?04|#fAGvhHd0K-m6j-lv;NU6AIVslf>KvXLl}$4MaOw(+BXp`rYIC0O8yafO+jeb zR35EbNjA2{sW*pt<%^#}EfdcaWl^bgrL0WpOdgpeO**GQqmq#-PHPw0W-yG=Y~&|B z2ERHt#Pos#ncmFPC!aw5Ll5fz{$KOmQ4jy>fBqvZA7-57qFgz5mAF#RQ%{}5sQTcN zWdsxVr=`?bjX(C0p3MzRjZG-acDam42*s3wa<#6M-mjQ9T(3&=<~OhM>=!?S@j(i} zWGsqQrAH|*rX7r-)#}Knlf=>m41)CM@&#mX2g%6AIs4{mDt8^{NKZY9R8BbF?NJqv zgpp~D2-Cva)LoX{dY*Z@mt;nQS|ukV)N)FyEag-$A}t)S(7VDG$wfI6Xo{&?3ps*9 zX`3zPV!l)oc^Mw@tQo(77oXkx@Vkodl4|rH-By+z@UIy}hsoq5D1K==LV-*=heG-D z3!w4G|NTFK_LHc5Q^c#E;D7q3udr!bKyGQKh7Er2kN%ife(U#n^~rtAO^#F1+DDZ^ zNjTsq9L>V)xY>7WY%sBsw`c{U*pvy%}fXu-m!ZxI`LUCVK6+d zEvj33Sh@NQ{^qWmfBw&Yk6Npg*(n=cyLypj(?kWKarzT=l{#Uq4UYl z(QXNI=KM|M#x|ZjQb*n4f57j3;n@eHFUbG-um2T}SRRG3h2QO^uDp3zfUV8auT%IUj{M3H_ zw?BJ}fBE13W44CR@cLaFN=-Ar|4&}yfB3I|8+l!qsJH@Vos{0Ez9dv{Yw6kEsjK|$ zNQQs@TQAUm>Mxo0%aAB7{L?Reiof{3|CC)v_Yf@9@X}uR;(zsT*wxcU#!yd(Aw&0b z|CmG4S^oN_gL=82-JkwV8q0IgWt8#pAfF)^N@2E?3GFWmkJO|<(IIY6i4@3X;y9h# zJBK4d4|c~2Z++(!%WE4fPL6Qt>~;LnL}@CfnAISLcNTXRhP_T=56g8DZ1bmNrW13Y{Jw!9X#UYVy6dFOw!- zvQ-5F_9gmnj**OpaCo;9#1z+y3)w8UPJf?~nN0#d50PY=wefx~T$`YfPvf+^%MJ4} z;gL$lFe99rEs$knZivC53C71KNX4UEzkZu&KF`+t21z zB%Gl}&E~>7az&o0dxH#(OtQ2z%Yto#jWsVj`r6-dz*A!c(XwyXPF(W?oWFDfZzzeg z7(m0}rLwV`<~kF%-ux#0HXqW6hdZ}!vAW?V5^ylTB;KQ|rmv^zXI?L^)p5T2`Wp<* zy7@2u@W11QLoIyc&;OLm<7*r^cnF!KKv!2Ujm8ZB{@?!vvX&$K&gY)O=a19d-AZq> znXiBCtK6A)@XF`D$gb)FfAtq%=iby3PrmjAI+R}i-Pit>&L=+2YbSc}$MU5>@jkbk zeaDY8cIi9#R697)t>91p-G3mWu3|?^9hSOgEOOy|3px($sNrw^<2PyBcZ?d7syuSb z__c>;b&@wvonu`PVArZ!(A5-EL(8;vHDR9{snSO3#DIdJ3z!*}mc z-_}Y;XD4Bg1D7|5Qc=a8-byA$=4j~NO(DJ@oN$&N;aIn9ODHu)QmHJ>Z8g|tmr8jz zn=E;fN(K6SS3$C-cicq zIkB+G#*&Skxmx_LR;cA9M~-(hGw$Kl&pc7?rDc@y2x9We8=Ri-^4R_ka-kGe^;Xu_ z6MW`#C%Jq2@3^^<;n40DQl30J_qQ^BcNB$Q14=7hjT%BZEy1M)4uAetjOhSh``Uk^ z``FXS+(C?0dRCU~7=_?a8S1FEL>U=dr=xENarXw1l!Cq;ZA{P3qbOua<`wMd>g3j~ z^XO_D=-qvkgT2k=Mk*`d4-cu*KrRxZ{m^mxYE^iH5<0pX@NU?tXzIkMh~te(=<003 zHaSebvX5tubuc(MjHRK2=7vV<>NSi_%+VwiVSSAiL$L$v4W*8}wY4e~bPYzWg5~KU zCZ;!N+k2R&kM-f(^3ZYMC>0W~P=*`q+Pe>{QH9&Sfj^w%#B(Rnr=#c^df3~p<9h!n z&D}d_th1JTX&Gfaf~aV$Cl~Z$tm~z(O~=6KEX`dzOE#gdxq*b+Lq%&B^;RPWvjL?_ zjkT(>bOfllcSNn$mW~)z*47}G3&)&@(6sX~R+*onxh3lF&%JhqkgASPe)35c zrv^x=YUyjYl)_8ubp;|hB?os46>ayh??5kMe_A-;ofv*Do59KoxQsH&D5H#DOC-2+ zb(&+(94c2u*#VbPMj2(4QO2Wz^3mur$|$3ZGRi1B;9oryQ*o_rJxDp2Ph#J6z0XxS z=0~T=e84l(5f@j_oaU`7cYgHwYm;2RF8!8rMB zl#NXfQ@74@b##T`#w2&9eH=a5Bb?<7SME-ciD${@60A%wGB|vfh0RTFp1uSo6BDsT7P$#>tnOj@QR zvOdY#%OhxwO0K{47GsNcI=Z@0$Ub7Fz#=xnJhd)2Z7{s4nFJ%BCW z!e^h`!R5g%oN`XwaeT=vxqOb`$~>c+AuPHawplv|o_&VAYZI?9Qk7;E z%X2mg!s(=h6Oij`Idgv0xQm0Y0?n3Su zMP9cD^MkAhwau+$f^KG}m&E&~ST7pBte>R~c==N&gp*6s-ciT$_#}-x_7j>KU?yqe zm8V*`e&IH?9s8-4CCG@fR2V*5sHj5H%jNSU?AY6lb8(c@XKrJttzzPOF{?^}!1@dm z^A5Dq6qhetW@&Rn4B%NzwQU&GGS=p1+1Rji>)JJfc{Lf=GFQi@i3>v@S1NF>tzny+ z;r8ILaP%uIuKDR`Z!8(Rse4yAeeMo5&5ca=U&WPHk_~#v7&i;v<#BFJuVPRZ zxO?>)7;6b{j&tGGF#Tsw;mGKbMOPV{*}}dsz}f3l=+tWA^m42%uQ1Yow^T3n)n?qw zlj2=xFg14(vJLUZTQ^YZMEMe7#s}{(CWw%#Pz=7{VR-nCASP16E0bIwnGw!CNxn=4vsnDBg`N(&-eJzV~fbqFQ!$H$3poer{f! zrM^yCGUlR)6tZy^XO@YII$fL_W^~0(Pg@hIpo{tW6=D1b84(7zt-BqCsIq}eXSqH) zSNcZ3!^O(-6r-zKgtvTHo0?HeqfAe(3ZfcgU3~xG{ZRq|FZcTI5X`F3q+GoI_ova- zcZt5LdPo{>oIb;n-9sXoN0y6m?bP?UHoQze>S2CaJU^5`AxsEndF$deyrHOYm<19cA5Oc2+jsj(NEK{N3~+zmCh9SP*SX1+t2fE1wS+g8 zdHoyTg6bYxYK-_c=eT(BHd>2?u^U$yu{qHRR^b#RdVKI+>AiC^Gh~!j;cRse$}eGM zYzU_>#_Z?-o8cVoO|?I@y~>0(xqN37t#G>cgfcZ6Wys_zl8GcLjhfD$Lo^uk*uWUyM4%nLDKY3im{C84&pUG!@^T|3$yPJ}kM){Fi* z$I7Zhh=x(5W<9}G8yRyC$9L3_QB+cGRg3zcFMaRW-TOq%JpYNc=*jk7BB8qobvo zklT&QY(Y|x3PTrRWPFoep_+BVkSHZtbd~j(^&d?!NQ9wWSr3=qd*Q+z4nMJ*fh$*t z=PEh6x0-Lhd08mD6mF-Vn#OiPIznQATXDG3v^G~_o0`D3?xAnrUR-lS_@XIMk1}F* z7y7Dd91F8-`qOlZff-AyP)B^|T6@sN*0?0ZZRZ?<`g4u7bZ{hI;QR%BOOH$~o zn+VQ~aaA}l#Q)=I89R3!rnj@^;rCw=%zyW*{|L?27{SUO)c#3Ei>cmrcHvuE!5{St zBB5mb_Fa6!IY#WuENtZX@<03(#FDf&RdMd(En&lwf^3;Na`XU!%`G%~r7*^mBrx&p z$%7@rvAQ@X$clrFrB!0eDxNypgKNV{G$homwUsKR=#w*U(UxhPp)iVcgqe*DU;d3( zSeqPWb<<00PalEFVJ3r8P9ExDYb!}xTQ%pt^-b0j8InRl>r{Fo!l7#PRXqOmlNdD* zl$&U4yCcUF&mLgt#tl+gJ!V~j*%?77b6MO0k06V}uy?hQ_SqR9nHQTX^`Q874+IXQ)9Cjn|9Esj}wX(FyW9Ju-#L z+JH_F2Xk!$u4M;Zy<*I4EHG~KU{vLZL}kb`K{mxW3dBXb1l(+-O#H?tpJ9G@2!}Vp z-u>Oo3Wu7_Yp_-|@x;jk6i3eMfAu$nMQerqE};v}G*_rtTHF+Ed3o_TDo{vg^w8`=$4pm049;-gVioc4+V6NRS|BIYV+dOYV#` zYeFG~B3AmOkhG!i`lQcV?XG55OLE`{4>W*AdvB|{ySiMLH|f3iMklixjvR78f*hL8 ze?dGFjU;G843{aRl*tX3{*zJ|F zX{Ag)vK6h22Ne$|CeU~8V7OZ)qGJ+$QwzhYR8+FCgC@jM5Qf1O?XYtwEz%B7rmY8o*XDsnRTYGZBg)-{3(11~&%lD&tv zj!P#K_58gx@1azCbW%KsQfrXoE8=Z$d0{<+J1{r*U~Y2M(~b@FZj-{A(2WnV{ZIz8 zX)ER7`0=fz*9>nd*G#5>@vG+1)Tjw;&T-?m1A_r>UAad~_W+u*8MDnU-lhC+?xoYL zKxea}$Y!uujO5~5W!GqQ7CFbFCa+N}YG`Zjz-F~lQYhq} zGqnU%D2x_S&u%W?anmu-&B~o?7;FygCOw+YX6{|Qimk1aPN_JHVQY?8ZL-iJ#J0Zf zrl-A^Y-p25t{6MIjkv{oYU=4gCtbR!$%ekDl=7M>8Ljkn7s*%5LcZPN#VpG`hB0=J zvumK0zQIl=&VNLIvj+dlgczqLx;k{&nyjRJAsj7jEI-=B=xjw@s4}vDAKtlXKDuy2 z-ls$?g=lZLN!h!_aB0MAT)|<=bNSj$EaoQh8d^S`+VpIA(YLi>RvA!a{BrLp>=q{m zO$Fb|EYTJ_-JNEXIwQ?OzQKry2oZwkE?=ioQA%I5;&4bkN*P<#C2mbT#M*tZe(hc{ zi2kL7c&Z~L*F30292#_KW+!hlqb~Epv(MCn;s-aU#S7nH^x$#w{sj?u;u$ryqS5Jb z>YByd^pY${_fslSOWQi^4ouZpZM#H`DWzWQ(*7n9WlHJCT3XF5tgd^ce1>|oBs3-= zW*67)R&ZE_yjz;k0NFq$zgC2_L}-@saXHqHsjExsASd4V1@=Du92U8jy}22?*-kOP z$<@16x;t7}o}Wgqw~D81MW>5%>6#ClMf!-n31y}tZ6!h@nBD3dRy)F#1fx0WkISqt zrx_AaXwAh5=ae$80$jR&lZuFJT`|M`iCLO^1~5ur%%t4RE(F;>(#nAJhn1+B!I1$G zycJAF1!|QLx(E}y-G)k279n6I6Nq#6;suVLd`>)Mn4NvVdPK=HyY~=|hN;%#&Z@qu z#WM0g{!jn5{_2~5`9tC&Zf#~GtxX+RqztuK&c%wVp2=Ax5~Zg6NDB@ta})s_dmXWt>>nWD5)ExOfC26rT|$e7*M)s1{yPnBB3QwNSR zen2e(OFZ#Z5~aa{c4&}2nXG(fXfW!p{V>0QFNIt-_m3VE@VKh!LivyG-oidtb!F9E zEtLvY*QTfbSuvNd|1YFs)lGMxS}d2U<#MH3$QP=ma8^Q#Y%% zPtuVe&zA+rsJXNhFrUbkQ|%L%Quy+>v}df ztF;o83;9pWSt(|!>nm&3biP=vT_huA3&+y+?@GBub$!!aEfh*}ALVMfSdj9TrL46R z3)S^?SG|0(h`;*&`|nqMiPERn-CS9%rsRHN0Z%oaE!E3VyVp{&SPjc(9)GlcoNr^j zn#jpj%Gv75nyZ>CWUG-_LVi0{-EjH0?jsnkX0oZO%j=V}6zhMVqLi(!ZERF)RhLgk zs~g@x{deM?N7WzyhgYhRL#d zuLh#2$CX{G=5x7fp(yoPC~VbZtvI#zlX|WFueE(p+AR=G)L(zru3@ROP`%yDwexEI zMJ`a18?Q(mth-#*L}0!8!P#rSFuu}>Q2pF`Sp$J;D!ui2F`KBmJbo!pv0mO%u~sH2 zV}7fCOZjwlP5MTuevM$&AC5_VNq<>guYXodMXKu_U$s=JRL{NoQuX5P#mBcoKd;wIseZ48$M1{vepMR>`D!#Ct9~-t{W6Ap()Q(g9pyf)iv}9_ zRcP!3Zs04Uri4}E(P|oN>VL!4fkl$(ig=b^KE`#(y^JrZV&_tmz6*;Ml}=U;+gAsdF<8@(n~A^ zBIM&ZO8)h|u#U7=X4pi(uY&6jexO9e_* z75@~~Rmc~m-M-itOND$bOS_DfuYUb}zJU54>FWjQJGJNEia)}(ig-6kRkii89!{0& z&t3x_Hzl=^+77Vwjm`R^s&vRlQEfu2Qn0zYhC**ZEfuVIT;HK!5RJ*q-4EZ!Q?SzI zv=a5Mvb+(erFknws6weE8uk+ox;S&{D*fZba*P+H$@+!at;Na9+?bfb70EK#+fiR3 zZnRoaRI*%n`z?HhCb5xr%J~d#e*mj|S5C+9$MZtWdP21{im2=MszJa{5CNyXbG-J( z1(uf{vFY}b$S6px-Q~ah{f9!9YR;U$g!Ec&ojEI=w2G~o;lKX-|A(l$i?IPGEB9}* zDTL==y~pjlQ)DX|A?w;=l`?DVVHD*g_pjgK(yg0h6lO;HIzA=f`&Vz%GCYJ`oo8xx zv%Ys!rB(6aOaGY}Z=T@N95as|F*CPq~^gd2+EJ6O%WXo?n&0y1~T6L%iN3V`Kea+Ti3eX{zGIt7O2IWYFX)%6j?Y zi41z3_VbpToQRj&idm&<%b+Ea$vW}X453D|HK5X&3|h@+gDaIvqt$L*r#1_qkvh&4 zO7dStCY`RYqOBX#j0{UT@AIG4$v5NYy*Dn>IW{D9T&^#Qp|4&V2YjH}B8U**}O;yJftyi7=5wMTAe4RJM#xt0tL9qSJj* z$>*i6lp5{h>s6(!nR;1QCU4?Os%dN9nhD9IlOhY0lnVtpUQ<6lpUt9@*Z#E)j7>Ij z>D1%9hUV*<7x^UpX&AO8q%y zkV$yC_|ZA;Ep5<0IEbQn`FUTptJ3_Kc($ky2pFx?}?4c%DA4wwdum|S?8|Uo^U9E>(Kc*xYBjDfv1jKvzWJMcc;*V>WFD{BB$qc# zOV21h?N%6^@>Knzefm5g&su8*bvx$8U3CI>f*D(YLvC^;&&9Npf?EqNxQ_ zQNh@rAzTY9qGo-hh4@q&9i1Hms535>vRa(71d8Sb8X8Na5NL;WUJf+~i4)lAj0zU+CL=Z}sP z^(^r5*(;=r4#H~>dF99N@XU9=PjK!55v4|i(U34w0?+y?uf7?e-{Gw9D^9F$;E#E6 z6*T({o(zY|# zxEECNjUyvW+g9rIiuZH7A7un<@O_n_UuMq z)nPZ6$?JRBHR@#Q+Q-~}xXG^ldsv^Drfg|pw6~LNJjS})MJ?63T1d5T>@X(}407&+ z4;bCQkGmJn(ms5UW=)#Su!xx0175!FM%~&LJnS6j_JV&oXCnC;FIm_p|uqe3sp{> z*iAL=<&AgVL+2c3tk1&jYqwC@cWjZ>>@9wFd4_|B50KuN!<*J{VDC7y_io6wb<|{3 zB^~6I*WROfU_?kOh%Z)Q`_6vmChnta?PbKN<;L752lnqGv^Yb&Y7>&_;l9`jwW*c% z)(*P6ZG>Y*qN{hf@2fJ}s=$?YvTt|aZ~f6yaKlUYo@4CmO0yKKvbQtGoymZVt!IfZ z&Z6%fq-%ARn^F(OCMSFBIyPMi_8vLN>hzr0hAhccnU$3#Y(sm{hr?3G9c&-l+C|aP z(~E6BNUo3;4>^iLt}$d#3312h9~+~RPciV+e%vB1*McG1Y>s-W)!oOR$GNdm->Y9s zwW_kWVIV;uZsOoUu~)gRn14#Og=bFgV(R1bf1p~W&=%5CkAzi^~F^*O`VMPwcrXz7#i&7 z;gt)dj6EDbEJWPhPj{10fyTk`Kqp2ad7WNIONaAI?SiPL15C{O=xR1GJGI2XiEs1F z4l9@MNBEn+e36Zrhv;k;HdofLwhb}bX{WVksJ_?H*yf-l-cN0BYsbJgGJY@US~#?C z7}t7C>Y|e?7jLlt8_%&md4+l~ zJ;LGaAR7xH&Jv|u8gsK<1lGC;8zV;!jEkVL&~7Y~)!MO%7^=;z*xI^rh?2a2`>x#Q zBI}6~9Zf2h7n3~q&z>gfi8Cx7aJiTvoJbK{TV`@2PQMVPYr(~iXP(E9iqkE15?^}A zYNea+etnmCgKoZgvX2{=?=vDK*QUylR+(gsm+(HCV>T=TqTPgh$lwZs{~bHf|muqiWA45LZ{VXFz9f!Ink<~Yyxg9 z!uq2_hU=GRIrhwNDSeoz-&5ix#d0e4i&wQUaRX!Dc63P(o}7WE35 z){61gH<9+a$ch2-cx0ejjf4_mF$yiT+goUL%KHfH-8YDDVUkm4@3HITan#8SyTq%V zx-myvyA{7D#Ad`rrD_xb&@3b>_Y|Gx?3H3O0Kmoem9)ZZEwZ zT`WyZU=lLeyS;~$7>&i*8S!k#IU>gX?1ih?n)~T&*0Sb~Viu!m7vpqryk7_?$;Tgk zz}@LJ{@efle;_n_nW^F99SLtbU2#Z>0bod*o>JchRH5|XNN^w=Ke<#!$8 zO&s4hN2(gg@Emp# zf-14s)Atq_J+y~%IE&q(CRwntW4x2i`MX@3T<7rfC-BeRW@;(IGvE4N-8)`>a7_eL zm^}x_$S11xKpGxjyuPozwr`qb3`0w;ZZjM_D&Ao!!B1cLfFJzz_qqK38w4_Xwhs76&okaxdv|R*02NsIxwjVq#zT=83vDIeYCi zUc&$fo*K@yCUvj8$S;g|t%(o~1{Gg{Z&&{6X$rKS!cuWvI7D1eS`a z=}FWE@hYXBI=Y&OMhh5J1^ls)5J)#ib`KGDKjP}G88qfL_U_)sy{lKSNI8473C`Yl zAVO?E-+FE@q0M)=t zKhL2GQMbLp%Q_AYjBYy0^*fyWO`A+$8bQb@eBBSXLb5B%J7()If{2&?(GI#5s3rlCOQ|xyIOQph3V5G|)f; z4K(n_4t1jnesfHmKZ~Yqh@rtgjQU^H+kTgyw(c)_Se4p>hiDOJTO$xa0}V9ryTkhI zG{){RTCH1VKDhjl$!Ql&9YY*GH2f>hEO7Dtk4UHt4EJ?ov@~PZDzLV;ex+bL*;t6O z&Vkv`*e>`9o~T7w`RE3(zVs$j3k%Fl&r;FZ@jtl0%kN#IufLN^AHBuI)CQS|kJBGt zpsaV0TE4@7dF2#6<4<8TJk~3v3>Q9lhda}2Sj^V?bH$riPct#SP9`kpp1DX76}d=+ zrKM@EOwCga`MG%GHjzY1$`R+@?VH?q@PN6wSzLhvLjxUD^C`}}`v&u_7=>7rOrgNS zg9SSKyMCv87}L=xO2aP(2+2f)WGZ^}+JAV!tWHmG{oWilXAfrG7gtlV-?J_`+xus;zBM$uxSyS4&x#42Mx0 zjsHYJS909Eco)6Zg7F_HcQv0TnFZa?wNWk+qpa3{E?wbQ$E|ahact}Rwc7o`<*Vr1 zdiiCU4ds`tlqmM;nu;U+2u-Rh-5$@0>nQHk)Pg`W2R%k3@4v^rRTs+Q)|Rz<*UqpS%93y`@!m)0DX5z0X@4@4I6P4Vob;~|E8B63 zjp`j9!8bEUMy*3r$})9-f#GMrPA@4IH)HHQw2$z@Jh7?@WiClk+r~iGme(3xo@OQA z%*oxIc)dchvvc%6^9_2c36|yD{Rj6FSbRh(TS047lFt>;X|&{O`)7*oar>4Ptm~t<(NR-amhjT~F<#MGW5j?Tg%dD3~3D<|jFQ=I(Ij<}4#S#)LRC{D=SZ|DxPBKw$1R zYvDYVbc{eSK~@I5N{mO`=f&sQ!5vI|_!`${{TQ{i zmC);A94^t)*2bOlXSgRua8Zm+s$!X^U05yIMK__RpC2=NaAh8S&)eZr*wMHCBT;xvq(PHpu&Lo%;0L+w&V3 zgtKqu%M7=?| zuGD9&f}_dE+>J||y?$HDzQN)~kT!>&cV2ykw8la{Ai~3-;o8}=sKs;In7PfZh4p&! z0*wd&*SZ(a@_kNUoMhYZ0F&q6=i=REdi$L9ML}6ZJ6$anY3n%ezV<4fRF%n(US~0B zX6NwZef7lz4<=_th-BRynFgmEma!XKnQlw+kwhlVmtiLyVLLspqminH3y;?(FY>Ki}Aet(nujWY>&5R5<$)ySmcDL3OhuG{o zibVy=ih@cdj~t1*lprExSrGfD(c0M7*S=+EaUbqTN{CpE z-|a(dZfC5o1)a4M0$$p7jG`%ISXf?1T`dz!moU~=l>4IejqRt?7-oJYPH=Hr+OmjI zT_6!Dvv>baJc}+yK243-AmBe)6fz0Yc@-wD{Ml_3;wfT6t_7uvQ6ZOz`w{c20WtpF zINO`WIg;*+W?tapd4Bah8)?Fd;QjU#9H)?&Am>3G9qKG>f#~?0OgzFO zO5LI}*V8+O*W{kWhy>O*2u5OPElzBT0#;`y!4(f9+XqO9w{icGOFVx)nM?-H+6J*i zmVwco4D>sBc=I+bz5OI31-hEFY5o_Y2V?uRoZD<%ej`ff8`e~y8^R!+VA z_qeiUvQqYRQiEBO#T!%7*X>~P+HJZ9`{Z+I(TI_aBuU3YY;4H2njPG}ewBEoEcczL z2Vqf&00?geX_hgyI=e_gQNh3AVpWLQF}{cGEheJUo^iiNys0Dy_KlJVd3dz6QO_XN z+C9v%r%zyh{Fp~k&a%9?UJpLfEOmG5ql;u)hxz`C&q{gA;>nrnK~<984MNEnv1E?+ zt^ry_JS@&k<6c`QjYEWtliAz1ar6!oTUjJ2!YL#DAyZMJ6|r0shwZJV-TeFp{2&Sm?0fk0KYkM16Y421;RiAxIr3>WpLaZui6_MB19Mh`RkkWo=|B9NACWF7F&nkC_l=9eH2%)(MX%M% zfY$Qh?p2BvyHY1Aqn~)ENvEZx(bLsx z!Qkj;TeFI3@lw-i6}9AvMTLgu=4Q0&3_V>f+`Dv@rnXKxM1fnaCK9QwHGq191zjyq zX}XNrsuS{ACL;pIVXtCzw4&K~h)2k-MU1F>WkrOEl)1YNMLq9ZEmUOyZ&JjM%~&_s zR#Exka1pz+na!06V$l-g2X+w`k8f`3CgD&o&mY-aUoERQ80wLnl)4hLbMrK-)wqNZ zt=;Wtsg06u4*C#QQVgXfxB~FmUhA1o@JZ?shv?n@R|N znUs)bm;BDdYd6rf^s;xfi?((Xcdy?-D_&oxqnSQqj>+4T^(am~^4?@ppb;@un+|uX zZEUWu)4i>S#Ks0G3^>genyfaI>9mwXyujF2`TB=?2`wcU+r5|Iqla9&6=Ll0x9Z=S zEVixif(1Pmb(Tls!Iz{ynuNG&DK`7$T$j{S|L8E;pqGUeuLw>Zw{BiTtuV=ut6=YR ziomntTbLr7u3(UUq;NQ}7Pq8DD&Qld(&1e2k#`4xUh)?fuQTJt1k=4z!OgU#;I6>=p_^ zO`W`KZS92T7Vs4{SVBu&xVg!5NA~|->{ZwJem+0R-nVUtiV$0EOzG4Ll5*b`A<0^# zE{(KfZH7MexwL>gPJEl;Qd#a*j!osTn2lnKwysqv?-Ki^tVaS%ig#_1K2WJtwjP-% zEd1bK|FsB`JT@WFz9I2|h4gFRr88+v#-9@O)za|* zZ@%^sFZ}3-C^8YOO|4XfTw^%}UE;AsqH!z+C81gX1gD*NGKI}zt_u_I#yUl{h2G8< z%HpkhV+Fc9TkDa#bVdhutD&}sL`c0Vs+xLCV4vHKqpM5Qa*5i9#WHmxP!rYMB2iM~tmVxu zmV{U}M8bX{S1Sf(kw7>_dq=CN^di=Jp5-cj&nDT5nlAY~9*JXfw4kb_#oJEGJ-4E$ z$JDJ*6(TDa#GvWaRD=v%F7Y7x`zWU(QeR4Pn-96QRNycE@@weD%R?dc=5?d8G-ESp z>f2jt1f^Chx9(Rh_gnt#egonG>ddW_Lkqln?kb(5CwSr5c)hM`k<`KgFABX?JnI|u z?LI+wEkcES=W=_nJK8YnHH6ltId$Q>oO_%Xj*iQDRjL09DrJ?R*N3sW4P`D)qNuL7 zXR%PM$Jnk^O7%w&mB;0)Pl1X@WR>xtucq)v#fxlft(Ub_J4drcwzVj4N|h3?xAqLa zwQf{v?`!daEv@a85<&7Ri?oLskJp3K*(n4Z#~01h)8QmqOMI^|(`q;1miuV3w~2w@ zGR%JIM_QBgBeR;7*#|5{l)QLyU%kyr#j5m`41s7y`hb&MJVZFJq}iga=g2MO6KHfz zXsfyUF}*zmW#z&$E=4}RY)6T6H(&X3Z3n(a-TV}(m}0eQ^P#| z#;8ym>S}dk;Z=ix8~DZN;$b(Q1dRRz3tAfZH6N$v(v*}&^j|T+Z7Sks)tzGduF+q6 ziYg`Tx#~?ZzH<~+qe&WQph3WY6#j2MU7sGTMRoc$OfHFd0jurHpOcP7P#WzReuq)W zqroUmt#%ZRW^JH>20pbtakOR|nqQ*oD%JX=R0IEnc;eC#M*OvOgeB6+I69+QJiuBy zLIqjR0{53vbTzAqq{^5KT72#eGGzt&+OvvEg+e|@P|nv|t>Rr&xOd@0rk0X89U8K7 zoZ)fiphP%8ycUo=<>u{oZZJ4L^66HO>C5K`7Ok|mnkkpcC~N7%*4J5@y3N#LwEm1w zQwwg4l4Lx9FOs3jVyb7p@wh!G4YibGTNjJV??kdi6qy*&bWKD=iN^d~KQqC=?$O33 z?*m3hP#A4A*{y^sOb8p$h_(%_Wbt@K?Fr3ZKwRc}e*>i-w+l;KZqd0my znZAC8Q`gt{xBu>cquZvzH9yHq?_TG~i9>{gValJIW2oi+U3_>4opJ|x>EOY9lDx)D z)w@PUU*N{M>+}z`u`#>Ml5dUXp}q8Vw#s14ar*Ti<0*IXzy2@(3Qg9>>o32HrK?j! zgM(^1#q7o!edF8FXmn^BeY=4M{;09}@Fu5kuAov^gc!{X?>d10{>R*0De&!Y9%Oxe z4OK;lqEaLwPR011gJhPjbL#d6|MUOx@945@5n*(5k@L4EQ5keZJuYr~mIxYD92r-|V zC4Y(*XA`#0ZU#G>@N9ZX=SBUc63k3Y(YOC;?D+umt62^nKSX+CksvJ`-q}YWn4vZ; zJ-Zg;EaWsXQN zAf#+!bZm&E$AeHmp4l19{ZG+nQ6Pe}zOAHda3_2Eop?8VqHOJq4EGapZPW*&FA^kM zC^vd|0}cGK+N*qpJqHgl(joS0-)`1!-ymb_%zfNRh14rLZ`r52y(+O6@u^2sY9H&{%)iv|<@x66BlgL)YK90!= z0hApB^jg%cZpi1!+V;9VVrvH3w|6h)Xrz8!-|`Z{k`9N%QV;GCk3~sj@{NZ3HSmO` zBdk!Zr6aVNFxf1aEp~L89Kmdr?ZX4~jcuo=Nkv{|r^{);>xtI4VN`N%d?_{ipBlsG zm(JX~gFS;LuHK$u`=0&iNf0fn*|l>!X1#`TCd@`W!`{75kxqEIa`}pQ&pmXtm?;%X zbo6zLQhbQAX@IAXY~%c?bC}xNh({7QoO%}4{PiFOS?TDe)^0}nIxy(9tZl5Iw|BB* zw7)(DUM#C=vRg3Lw}ohlhs7iB=w(Qb_j)(bT59RTG>u-~Km&h_sFYC~%$SUN%reex zP0f@`5fS88o;|vYhZ9#=^OxAWZ)e>OSgZ~dVvAB$6Z(vc8F!Ac!7iHGnwYtJi;T9J zk--5*<+JID%d7{>Vx#2TCJS1xzA>-P1y)nl6joi8ah=H*kbUmR_t$s63YAnL~ox|(%($dy}rm?`Gfd(4* zEua|pa_aPX+QyEH$J_r4-zTC0D*9%c48Qn1wiuIhKbCX1pWx`OzD8v>2)Ka;8fc(_ z2A(W5c1JhRKm!dl&_IKLf43-Sg1r6HpK$8@b-wKKq)O%2oggSNckdzDpZ|fMn`j8H zO>^ne%%|^ji3s6n=9iSA@=Jfsx9OqM=*JB-@I+yC@;VO}BR^+jezhf7o4mp8`|H2- z`)t_7+#~lFKD&PEL;R^NH zwYM))HmI4saRFDZjsNBcLcS^pE>3b|As{l*!-wbYaq_!=MN2lwJ0D)Bs;l6x#r)M9 zP>big>+rJ-Ipwvvm7;fpaHfJ;dU_^Xs25{$D!_OD#b03-QV&Oy_08=*>D;N**7uvP z06l%ZJUDZj#kiG!`6D4;IX|6@($qP^NOLpeJ9iUbUB(xP(Rhg8Km&hzsO@SP+I4^q zqm8{gx3h5T4ns)!*k5Q96g7qFYyF zamhulSixY_kxyr+D4yKasZSIE*OII+Oq}MO%Zq&bhu>D9UkJ zMU~Ex?Q|L9y!6J0Buk*t8fmhbFiRV@80<}GYt~=vN;a3JVl>j(;b3j)9`C>P29La3^UgZGmHut5+`4v-l)0T<+f2Oj z<_Cm}X%?0?C=%f6MGLcC{d^HvUZrN$(-%Yxo$s&9MJ==D;* z3du|vyLcBLojpw~_vE$l6SoRFmr07JYS{{#Z@gAbJFqjsA@5zrDJ|Rt4dl1 zi>a12tXiZ{R-*m6@NMZ#M!w(5){{(SqzsLWEDbd9q@z;GQ><#xJ&pxgE#}GAQv20X z4yMIcSxl7VGo@NrkL#Sx3Mm^5bvsf^t7_D1>vpN6(4zY!K5k{puGKPGmGcR%Pt0@p z=pjBIu0EH~ij%UH=CGFI*=#n|vyG`W3JP+rR?3q~Cd6)9KXnMQ*|ZS2>6gTp7IBae zyJ_7@&stA~sC@Dsq&2o7{U(E;n8EFf(ACr3c=p;r0}V9LK!boAXrO@x8ff5;1q}!8 zw~i9=So)WKn~6oq7Jj=Mhkn&Ir3M;k;ExyiT=oy59F;k!#oe^#uuQhp z=*$f?@TUa-!UX^IKmC8a_V#IN>ysj4XX3RLp_L+=o14^^JC(DzJpTIe$&iON_h&Y$ zW|tC$ExWY3v`n2p3n|>b@YeSM4;yRqy#C`YyW_3d!7a9}+qT+D<+`marn&IWTikxI zRwvL(sfc@Jh4AB5Q}M7LUtsH+*@&N&4c{kpi{IlW{Me@Db4gYfHyRE5IXqGOfK%Ri z-g@ggrZy`!rHZVgnI8Ln9?Y)N+SNfMniOL6vKgJj-aUx17-f0gL$a7BUnpVH>)CVi zMaFupoO$gf)--MG*<4|M?h)qp0Xmv=YMzvZ)-0U;Gia)CBLm@)ky&qP8p8aEqfXv__bfa1?IM>9%k`pi zy%MF8l6?n`(xR=9%%+HigX9!y8ARhmU2eMe9L26I(%e0QLseuWoWt2+uWe%nQJ>Dv zAr6j>vTN5~OrmH*k@OdG4mZ$11AhYZb=5LSu|d&Pfpk29eRv1Wssz!5if5iZLD{p) zy#*J}u68ov0H*fsoIJRzey(?AD^*~NL(951!{Miop%jvxS@YA@-i+1hWMrU&Xdp)a z_U**oVt1Z8hFR=M`_KqYr8MqnS_+XSlGd?r-*z!QIkAliBC$A`Y>r}m)~&$YdYtE; zKg!DFG#ckH&mVcJUWUAQ>pS)xW~{T1{d>2Q^!Z6Wo)v6h3r|!!!cscOo3Fi3>&_$W z-`<19*u=9lp(V z5;-l;y!br2bR7G@PPTU|xqN$;q48a`w_357SuoQ%nUQ3%nN$_i`_3kH)J zqfsxf9kg{i(fo#TYS|OSXg1ZiPc68Dm@Heb8)%?`-=lF>6uEuv66%f}eCN-eVgB-Y zG~G{$BhZH4Y{u+pW7k**p>T;~-*|@P$|U#Jql|6qp|!V{N-T`EcLz`P7&&wHEXvj~ zUO2RkXjVgiZwvlSKRqMk=*n>_;zVRJ5wSacm{b)qMHOS?qgeDNs;Ld`%=i9_dJ@|A~)sOarwTM{#BtfVm28t+ie*11{}^-TAht_ zg`ePwS_Pf*ud(2+h??8>do4$3WtLF2jj_SzKLnl4k3YV{_rGxnv%LFHr*8B8ZyiFN zh%z0_aA3F#ZMldima1=*AL}r4e?82Ofp%&EI`EH_*TzBK%ADxHz%I z{%2ogsLj%-kOl!a@P~w-oW4X%;bARV#bHpBD;7!R3Y2Plj^%$@ zsiMPbWTdN;7kBjGG&Zzc0}cGs5o4N}sRg3p5b6Avivv*p2jT^+OkCsEiGc5huwp(ebxMmQMe`sIuG z5->E-K`ye+OF#Y@%Yif|MT+;{{D6$w!0O$re0=pT*493nt$H3_{+PEvxt7fV8=X(Y}_i zR4=7cg%*bmokD6PU*^zwKh;Eta|;2!d1MzuRuw9(ffl_AGv@y;#uST`Evv_BEtPqaf%CEKXaN(x8`YU(ec_({+^VO z`_+%mqHS&F{-x6_d9w^{>!y5QyxK~yF2kAY3%u}`FS2&$9Ep;XgS&g#a3$F`(8izS2B~g3gv2`EI@LX|>e{Mt55)$40t^bk!IPMp_ISG&%#F7M=7OHJwc+ zlqwBR4R&*6TYH0i8))FSjKJCg_Wq|(MQ2#vEc2~D{~8zGew~8Zj9OJ&rF@unYnjD` zO`4o-#Jy|yVior9AE#8%(P1o;Gj!5oRkFUaEOw*H?JKt^+nTA0GvduQ^UY^>l1MA* z?P_Ip_F8>`rCqB+XA*+0ZP65qlS$?|`t&i}^S6kmjkMa;xZH8}9~RrANRrN#iH4Hw z-ggvT*3FIO07hkr(VgQIqb~eu6WwMFU4tWH?;a6LR~gKL+@w0b65CYX>w2X#MrPfqW8K{;Hymxm$7vFjxWA83{+ihrddMw7Rg-X^YyAYcOhqDW_ zKE{O`lUQ1uSj`4BMyqu0ac;cx_o8~&>&G8Hwhse(dItN^Yt&@LW7il9TswcBQ|B%< zdU68|{E4BKrS0+ur^uSOF*4XrEuzK2!@GnM^+Ikt2zjPi_GKB_(a+q}mH(f;_kfb~ zy7D`Jm2G*%}$d#MjgLoMq|qvc!uQlbi*vzBORiI~Dn zi&c-Kxl^=L)GQNNS~|WdFjA{69py9$?5m_uy`z#oZ@ZvNsRp%%EdfYpbEt$eOT=Pm zgjHGkE*?*y(`lLOzsPE?h7*r<-6@++r;#g^WeF3Sp4s6rL`=~C(L_|id@KkqcTg3wQ0Mc=>MW&(^MNB8+Qo>nN4q?pP9RLje)7PPh9uJ;3X#4`~*t< zjaBZZtU6WyQt4$LH2oms$6?nH#;y z_rCcG!L9s)gf={Q0-^Hfp!nSz4B`?0mVZr0ac_k1Ob_weYZu9Hzsu)d#j_a|S|(4v zP$ZX)FmUNAm(E^gX*D3~S|htXOHzrgv&Fego=h?#-WMday1?~o!z@mZ@csY!Dxu`v zL&=*SmuOFdSir-p-+q;i_-8v&CyBfHZ~x;v<F5SBwWX-p^T}y_Axy3vDDbd2v zIsVNb{5Lj2Tm7G#o*|a~aNDlE@kjj2|NJd(4G;29{^37hWO* z30(4p$mR3p^r$8BuCL&aCdC}vWI^EA!ps7(cna6biomoSt25KQ@vZMNy?WQcEv7>J z(ZBx#M(4e(isur!Z2%G&SG^&a|Mt&%JB)g0NghpFBR zgi|SMoA>g}le<|SI?tB}kNbJ$ zJAZ<1=L`IeUpv7_?^$FuorG7W*a&WI>2GaqL0M8-(|)|7E!q6t)t6|%%goBW_%%#X zuK1A~z&?=xRCQCUev<`v5J$^SB&D;_(*btuIl#!p*Z9M4zk|Zm&ab?DkUFQC-najh z|MKcJ_B{0h2Q3+1JJm~}DCMvG_U|xp=8qX$$s&=;sIS*EIu+)h|L))C+;{&g=lW-9 zKJYaE?C<@x^5&0qp}2>xU*`1Qy<}a3+??|uRafzk{@FjF)*!?(7v%jR7ys%%{XXWB z!oKv?!SGPg1w8s z``5q7zx~~R$HC`+9h+p8tEHT#0yw%})MK*h$t$E46sXY8CAlYh`OcXU_U-RtE@!0L zCK1N(Dl^^<@!f9LXXdHy=pgUkWMbqtp?D0P-Ht=4#O>Lj;hrSn617#}+g=ujt}-l) zen;I7o`3cru90h;>|3C&z5%T|OCS(qZh4M?s3#-v>yZ;L(ot{V%&V^xkm#tdwxQNo zuo;U&;V$8i#c@>EqfsRAMr1rl$3ufiL|+{iS}AEOLI%4Bq~}vI;k-#h1nQkWkCWh zoSig_HfJ;W&&-vMW(Q~9dz<>*$FUXMTo{bLHa#S_4ewotj`7$3w|~rEexU=eqK*IfAOC=FJYLO(-tlddThynul$CFZ8e5vl zCWFXr-Tc4*_iwW@Gs^$|ul_r~`#XPwDrJ#_U;Hcl`#<=XY);=ME;mr$*hJR7#@w0! ztLMJK-~6jjGU+bz`~T+m_^U4-B`rWms#BMbMpURmKaXUnuA{5D8qdlav2+5z$A`MA zfzH+%=7vXzt801U=wZmjDa!Ob_UI9$@c=Pl#Md{q)8NqJ@%itBpd-;RnXHoIPdr8; z6x@nUWs4km->^$-4J`%nF>1>iXEg?!m5#1fVxk?E#&(=0DIR~QGPs}15Og$1 zKnRbe+KI_*rmd@SD_WAzBbBJ>>e)@to*t}*9Mh{pNF;h8><%IYDZBRdP;EB~&$a=B zUPI@x$N81#A44fOv2)*UVw)>Og)TJMs;R5BVXbZA$RoR05!R%&v6VJq0k(9sabSNB z$yAKSuJ$d#wl;HQ?=HFy9p$UfJ%Uncp|!JJ{MSa;&K@kL0zdrrw;7n)3YF?@wLJd9 z339$!yalbWL_hm+_PskBIrY}t)b<>u3Lh7Tmf6wLfXU+EYk&D~^MC&R-=@u>CYh5U zO-JaPa^d!_AkC#1nqFsQa1@!wfI=oIM*;Fh1*MZyIbkfwRV9OF4}bf2{vp5fo4>Ms z;fHu8mu6vh0>3{YCUq&S9$*Nh#mHYU^|M3dVoqJKrwk&9c zq`>gNAYPxBjc^LJsuW%*qAG-W?d_9%;n#nYBRzE_lSw49Egt1#LDn{WTW$ZrqDAkq}o)kE$v=mc9X+HfN`|I+&_TCxc1@AWQ>nA{{FaK}(xh1qPPWk*Z-drM6NRW^ZZU3+-(@h%30 z0es|{=V@)SV|LV0=QNg|YZgjWXE3n)=uu3XIG$L6U3*LTq@%iX7cV}4kjrnr!koJl z_Ez)jUwFnQ+kfdx$B5+(>@dgpXTSHK>3Zr{ z`Ad(t@bCZ4e;{jY;UE8_zr)bQlN^8Xm$-5A2XuMHa5ute z=f!7_GI;7+{OP*`R0+@G8^86xk{r82q46O5+8h-jtI#hr%?$Ko*>Qv_eT5el1ze#D zRj5K0s!)Y~Bvp2x{DM)%T&hroD)dvwnS1{KNuREOS49E;*pv#aGdsV+-1sE^K&ZSM zutd51$M4!p1Xh`x{OEC(`^#>+=Xme+*EnS5AG$*S@baC%3;B<3u8O*6ICp07 z&fkHB+w}G?+$ZD(Dq>!t3jN~K=K2(W`pxh0pp%BhVxDv&%G$ylV`KC8eE;#Y-@iP~ z{7UfQ4-_I?eCHIW-@8QY6YTL^y46Sj&@A4S1;)odj7OVZ4~g>e!W5@oJxRPWtRJG! z)iI=WaG4*xb`EsfQUWA)95{|-^(Gf51MF)vb8~#1LSmEF{g2XYGjiQMPh4Bg*PlN@ zVbjI;UpYfjl$A*&?A-SV(%>}H?hF=rl-mml0vmg1ZL7w!xX#+f5=mVRzx3Rbd~nj` z=C$ik)y3|v76PtG-ap$%*U=Mb63d)9bAx?fY%V`Ha_J<4-V6sj>X;v!#L%{n9nK=B z-#w41^$5e~-r|yI^HY!RhRi0{PQSrM+CWdUm8(Oe>^%55kL+%#NOy%Q^b1U8t4&~w zoGb6V$!Z|N@n>G5yTQWjjSE~^3ejC(LwtRK-q8(eTK^AhS}7M_|2AVj3C};VhZ}u2 zk!aOOi!u%$JBD|>4}ac3(LakT)4<>PUtYpLf1B4&-=MK)4^FibYmI~T*}3vP2f~)e zJ9mpedi7l%`|59Ubf=RmXU@}oa4*wi<7DGO!UY2jW;OA+myyL~u8;X~w*59X&DO?8 z@5(ZnjUY=C{miWvIZ+wb57Fl;9bweFOgL{7f+nS@s~gYw1aX-PMJ`3Epykmgo}j^I zqphQswfS`R~wf^f|nRa0{tB}bJ96oZCY;XgG5csu~ z4P=_q#S{e^no8M=wuG^vwVBw)3ghF8jE~+TCf6c~tmD~E3l@#bXsEN4FP11J*`6Jp zX5W`yCO3VN-iZt^fBjjaOUpz{ZO$f$W#!~N%M7{#SacGUY8~l#M6|(5OMPWyQH3h> zi;d0&JPYe21vVY%X=K$ErM1;bXv0;`!j_N6DWax(_d&Ybt0~4e7@hT?$fwu{#M!ZD zKZ<0U?wuWsoV&m+PZ+aaidt>w$gwA|3G8yuO`&#np^11{@y4lk7+IQKL7@?fTfBWU zmPD(R;tS^3y|bBQV4m{>ljw>m2B+7sm}C?Raw(i?>$0y>s{<|&rj0dH^ZLi zp2M1n3;&~?%E7<8^tlQ_OO@L4wt0ieRL%fm(CbL06J%9t>S}DvPK*+W`nWZ=h|X?8 zEmx3CWGG!gBUflJn@eRas8w>TP3;`r(~MMZV`onjlfoh_YO-9u+6x998l{?IHphhv zr&#uFT`M^=Ie{;fL~pO==%m=?WGPa%^cA(52R8;m{l5-vWFl4iN%FN)oJdO&1AADl?qWdE<9*0 zihI&26$=@n(G*70*4etWct)<(ZKVZEXV9p&#Iumgh`;k<9%+QKO(R!s*^J3_T0B$w zoI^a0>Q1_^9EoHBtwu>a8bfFJ6lW1co7UHZ)YdzHyr@DbD3rhT$F}6$QzN7dt+do_ zwR!ydb*lF~ie2|H^=@to9u%-Ute?EHT#`WP<}$nCCn7oVPymGhF6H)7>|8uTq96<- zgW?mF_X+P{Bdrx)O`R|Zx5hG?h?0{VgaLP-oQeMG1ekvOL9`qLmxpNI-$Nmp!eF}ag| ziM6#@$d^;5s#PBzgVJR@iBzVXHnogkxvcP(x6a;|Fea0ip?csz z@p%eCKP(9F!F7((?Yv*I?Z0IT#hu*052KQ@{cu^?c3EY4t@uOMjzmn1dvb4f?cbDlEa`{Kv{K4Of?Fpw;eLBD@CViZKcaWWXJMk}#^3J=xm}(u2 zU%7-QQ6#cH#ptXTog&Y<(`Q+9yO|iD!c^0YUL|9BYLd0}4SKI!Br4I8_b+i_c!Fdo zib4R##_B3dGgDlL!De9-7+f$w$1LJbfN-Bt~p)iSPc|_tCfRrpBUWY4ir~o$JFctnlGW=ea$< z$imDtIh8OD!i!w#n;;%o;LpBwn!U%4ppkElO+2{5>#v_AFFN{Am=XIvk?^$?zIyPF_GJyd>}ZGMQ|K(?9$U z3lS~5JL|S}W&b+@%uKH^J2u44 znKfEFTFM(nhA*Ds^6)fzt(w4^kJaT#h8J8!*Zr958&FH*Oij2b<&8H_VW?@xtW(@E8hTHiW_EQ$v|G%be1Z#azRKAfvq;k+rsr3MVVM@j zY@XGn6>bmSU~FNDx#>xA3JX;h9ZCNxC(mBQFJwdL08-Il`Offb*Lz7wm3Sux>6=_6 z8%qlQx`n5A6*M}+EAxE!o8Ja!H%$%$o9^~6mc8LEoO^AcP zq}q1wz&kaBHxwf)KqJ2H5g=w~eQKPQjU>%=79t5b3IWFYmM--16)uejc3RGpD?=BUTTF7~*{84y?<2fE$BnUNEJh9CjVSioHXb{+yBtB7 zn;c_)dLDl$f>dcnS4^U@)Ur7_%7vTbWCf@vQWCm$9ArnwU2p%~Yj4r{+}F{#ZV@oG zq6~~OJnkzioPbc`-jElmO3nDSUc8wc;k9|DTp51j*Ip(cP0&?6u zK0+%l)H|3HgI-dT*mbbY&H^t1%0xqGj;xaRj9qz&>lumThk3?UCMd@Q~$|n?1 z5?3IETD)^~DZw{>GuqsI)eYK6xCI_Ku5=d!xvc&m3mp{8^G&J!Wm5iLnKth_kGD-R0$v&h{2kfi-U3 znj|eZVv}b`$*YCJk#qg>O&P`4LM|V5-8<1qH@R_rL3oQfMux^w z*K|^+i4ravh0E_DCbVP8X!9pE?CPrDwgRJEIy1s!&mLg<=7Iq4G^?H@hmIX$V{V?F zCmvyGa2%~k$=J{+QhgQ5bOd8nHJ$|z9o8qvY3Bn9S=-|AykC&MHxMI}EANTc{T8S(sZ!s?(EAZZKcI`YtQL z)=O1uBc-(A7ONGj$y)A%LZvBhEYWC6YxT{-D_UmgMlTafTX*EvHdZs%cNu?9f`4Wd ze@ZRtv|OV^*JtG8zhm9w>NM72r7 znkRxrnd0*Ge&YEO%XC!PEy8g#U{Mqp8Ji)y?XlD}Ril(^%2$|{TtJCTDaJF$%*YUD zuUy?qgDL9rt&H==>+jKa;4$IZt#i5m7811znNmefZ57_-RW>uF$csdHRtmufd->|s zVxjbgqF{sIt?)QY8+0TJ70$X^0>V3tWC~kem|QEWU!zYbU%B2`=A}xEK~kmtz^?Kt_@A1x9M4$ofd5~;t=wqRED{FeUQ9TEylGp zzBbVg6CbP&sm#J76-JudCzO43k-?E!v^90uG~n4xBg+No9T*a0BlsfEF*P=a$ytv^ zt)!R@Fgw334|PJhD~-YcYsPFcmHS?jb*U(4Eyo4R%Z>l%>ce+j;7jbHofZ<^>!>`BCiQ6-&S9T zT43JhhL>bPN|nQow3wss{ddXQdN|l^Clb$K7l0!ZGq;d05b$r5*Lu^*Bu)Y7cY-!) zAOHCe-{LFZc%G#R4~LKKqZAoh9UtcA$P$LCCid@Z5Fo3j+G_r(@nmClnN2ZITACc? zJ~jzOmPw{iY1E`60oKD=>V*O>h1v7joB$*7Z&4}$UM9St45OD$v5>U#m6wl`6rMvM zA)&dU8rRAqMynHzLN59xAz#X6md^{1NnN)5B0&%SSdrGo8oaJ0)b<8Sx>h3I?^;-- zs<{<;CWTBWs1nW=vI!O!*Qsu76kskV5f75cYj6mKkWGYG7G80^7(banWr@4<%R&pUX5@WR(>#hD3@;NpG8>GwGLv*YP3d<|yG??`OS^7@-MdGR-XNhli)sYEH_;KAP1hBg;w&K;t@rlzcHWJ@YoI^Q+d+Dn~tQUIPIo#IDAnUQTDnz zG@^s0uxU1zFSoJ093<*38J+oTmPj&=#bVpa?j`0>Q5Zl@p@6gLq?kJzK6AuX$e-Ko zMj?#NbSh0vjlin4RaDk0+_$f>5RsA&hUh-98@siHDM?+xpI!mc4o;yv7AkxFrspzY_0vyy7u6O_gNDblC7bGY zH3;P!u4vt}O?FW>s(cd6OiLLrzyA;7<}TFK1J z8VZF3y}edw`e|M}Gs55ahyR4mYVFS@Uz3r|@>-@+MumR7kO!Nw(uSr_KE4~S8Qem~ z_U!7Qvb6T;C>jU~58L{4&o|fYE1Vu!5(Y;ez1~23&we&W&eFe>VPA)XWKl_M!%xTV z9T1N*u{2A4&m(;4iBg)u%bf0CE|)bL&D7S`v9>TuLKu^pQiR0dz^XCO+-zoXYEc+@ z%cAU~qU?bWd}_|U@dMI^Iu7sO$K1dfhG*S$?%FFHhfO@f*g5$8ud$;+#cTilzY=$} zQ76k176z%tXc5Lsww!*juJZuVxoZrpj5banyEGt&!8RvlHL!0!C*$T`dMi`fuaQD`^&< zVLnmdz=>z5(o4%0b|`J;iKF#Q&#nuvptSC2q`jkwg0Q@w_`*J>$7Y4Imn68EX3yb6 z=H8nIk z4L_HBRjAa+DvKGPVIfF{TK(xf0G&yAst#L4`TiKB(rSJo_~v&lW32DQEaanWXFF4U z{ba2*)CFa|mMAJ04 z)MD0Zsc&f$_~Iv>Ns^WuaM*SDJOMOj116)fy!=vCQ->-Yp!fQ1me$uX){3&ENXVVE z*yR-UH8`yTvvNt|J`bbw0ggX=oQ?5*{24n(4z@BkJVw!0L#;tZJS8E#zQTG&N=suk zwG9pBO_v#^mDYNDMFIasr_#}er3Dwx&b>UozlBhwKxa=U28|A#L4)38Mz51Ic`J2+Ul#yziZVpN=f%hxq7SX>sgu~CLz4wy*&*qEUr=4)QqFLnxJe_k~ zvIGGkxVv}tVEmkhY06IGcIf-TR3w)#3TwZjjy?&Mj! zs6JZ`g-bssz>pPf_{9s)l<+~WHI$Dz8iZoBSgI)GLIQ7$9N5#!>gon+U6DviL4B=- z&0r8)T??&sj`B5Da;?5xR%g`XXl|p)svsq`vZtp`V3iNML(bw_nD+KY;-Qehvj*`F zZ#g8ak`YirA0DwD<>Y`%}DPc zJx_my7GspFx0X0?_@k;`=B2 z?)2eaibZ1|{yvv1o#E(>R ztNlwOgT=}DjXS?&k_pkid@++w-_yUX&z|MgV*b9qr|#ijnTN^bL&qz5r<~xs;6XC% zFZu$at@&K}z1eK$M~?SY@5SQqglMZ6$HINGfBk%KF_y^|GnuV19=Uq8=#J#db!GE~ zhse*}e#8Yo#&7f$7hT?>$2D6#`O3*+Mfpq`;Foc z-acK7i_R4U4?lP!=)>FBRzxc+t-Yni3$@2Ja%ieY$OMJ)_ zK9JRTnTMt4wqH@qq!Pv4eSOZPxBBd!9x2`)cU54sLO&MCEB?U!q~Yk}2R>Il?mzV! zmnTB}#&5hx-^EKfyLw2w7l{AT9^Id%E zCXO^~nRP=~i-ytRaT@oX;K{?CguQc|djBGkj2ZvJ2;cwC+no67*Vq^v#xGOQ)7n8H z62>(@&$nN5({8V!s=kKEii?e~hn19+m!JC*)t0TD)HD5;kvR79;?6i1&tIg*VyDWX zVsYM$L9628${f1J9aIxxbYhX3rdDd4bwVnVBnmJ$I*6ir2QNQ=On4|+-u?C;Oz%$Xut5+vE^w=@t7mBl}steVer2&aReP zVxdjWthvYtw^k;R(z^389y`#&g;S^KK6HSAbLVijAHu4L;RGO~>+23%QMEP1Avyad@$m$dkjTon!Ls)klrlm?lFtE<|zV%(Y+gh=htB|DvY$SwtcWVGiri+x%#k$9b zC%lQQv|&r8=jE@zjD9=V&$v%Ynh)UELqo_P5=f&w7p z*f{aTAq<8Z9^co=Z2@e$`cABcC<`kwo_h94mTnIdRj5fs1Lg9wLlblz7s|Ze!1%0} zJ-d5Y9Gk%2dVnW(*DyOZ%VspizGKg^%PD7OZn=CuH4qT+>9Aoa3a|`E$QSR1EL9o< zMypl)ktQ08lZwX(`a{H11uRu|@&Om4^9f$~^0VYNgTxXkGN~8?m#?yxmXc2g%NeJl zYl{@k^;F5T$c&AA;mM=rI+S_?4y%#1sWIaE8X8S9W*2=t{rpSllIwUkf?U0LO&B;@ zV!}v3Q_JJ~J6IRWtVEYD^pe-=iEnz@+)NUWMu?`i&bwT^*pJktCE#&kuI=GaYZdde ztL65$>^MYsb*)e!La7S_q(n_lEpNPa3Tv&CY$8Tf7%PcfPV_m+!6&{*lP1pMinn~1 zZzNgZk;k9LB1vNs<02DdP`~3ST~-+blj|tt8DdG$*R|rG>toCnVtsCws7#DkEQG=8 zK$TBZ)x4YIhjy^(E*%Zq%X5!*urM)&@HopidS&vI_e}^dl91m|BCF)_M-S6b(?N&5 zbUGn?CzDvy-eWv|pp9GCu5$X+S)uF-$g+O=t}pY<*S?BfwFO}+ot~O13#+3;T$yyE z*A^JKI>?U4pJ!KtwR{XKv^WdS{k-_pVU{8)o;%UOt?Prd?0%FEql|D`PHmNuxq&_g zRzj#135I*eIPirRsMAOY2E#&RQmo8Plhrw?H_FM%>^$@Iv5NAoq+qM80e>1<`C$F2 zbYAcNwXl%KjZ|wuE{SsLwTsm6Z0Fw9SC;_R&720aUM0Xd#>Pezy+KR9P-J;xoJ3JZ zI-WwO*H9=H#QP;5RkROSfE&4Rj;N{{tKmoAX0oRLe6?SQe{>e3*RVr@Y9>?Nr#9_0e)5=i^-be}=^3o!a%~W}vDV!2K zFxqk2Y?v%s0eC9mCEL);5}ZAGmF5GFVACjYG*%G_L@^5mmCqIkCIU#525KEu*lOy9 zm!ZJD7NKL`KB~=n(Z>Q8E?golGg2k^;*LhC70P6O=sLcFg#&v#QA#Du-X0*TY2^5k zCVG3XArYRTS+67-&5}q6MJ7DqI)?>YRTX15&hYA~D?Iy^uaF5$G9&=Isks@0PE9Hq zB`4}?tdViy+%>9NdW5!EVrnVIqbD9A7YYca(o;U_QOu^8oSR3gHq%^ZU~+by9bHXA zsrqrbeCP~jviX>Jp9ZTMu3hS*e)kcaCLPV4jl_HrT6XoImB=udG)NTs@|k6mL59~G zWA7u6kPc3BbIMKE?mbkQ)WS>8$RBdR!aIvYtoa?OQ~dH zER$;~o__8)vtzxuW1?NPH9|J5jE@hL*E8##rFND!7z#cZ)NFVba7XeqIBodXW*ELT zjoe^o|Dk-i!dfONflJIHQAY(UZQhn+fPRcm(q($BtO=AdGSYJ!}Rbl5;4A7rQ~67 z^btyjT%5Z$DdxBempf5D4_>0>kpZq>zb!C87%(;Fd(gE)AB(@Ar(;O@M2NTEew%1o zM@OTDWp|3byPaG*b3s_`-86UYq)r#-im_b8d{*Os~cx+9nxf&f=b5N zKtJ}*qdfI!57E^re)#rfjIABm(_uyyy&U?&b67T~dH2R5FMatbZeAH?*Q0w`n;b!A zslzkYkG#GIc_c{d{{8r-`2`rOJe`KlBdDE@S5Q;xy z;uSyDq%7u2XFTN(EMNYV3-aDuH+k`E&)oA&;Q;}iqA-9Y54e9e&($;UV-Q~S-Ztk) zHYiE9uj%tl-((?Z;4$IB-3y2XQO|?+dzGfr2Y{CqeNf!fhoxa5OOghT>}$N|Rr&H+ z8vLePL?hHus6;ZUO2=={}gJI@I(aYYPC*|J+YtV;XynZ zBTqlRn}x|)@w*LT8(g{EPh6=IUPM87OYMZ#7g0HOqEFA`3aB`7;xOKc3BqD>Y02UC z1Zn6zNWId_yF<&uJ1%7=Y2ncRHa3F=jz8AM)U20$B!szT7dHKmx2!LDz-Q^lg37(h zP4Wrf{t4Rh5v4Er@F%H;_U_jEFi-NpdLP^cDUEF%IIa30S-0L^Lw&vN!|#wt9*VX1 zDueqC7jsPmbx!kr&r3fA5AJEb^s}!VX)R8gn;oBOgdVob{7zdR!kEvhnm%lZ+~xoM z-rc>st?#x~@_=#T6Y=(r{L3`7b~isf()3f>PF}k3!sQc2d%(@r2^S8#ibyC<>&|^B zQ)#-oTbQ{uNp1Hb+RQQDdGiu6rA`>(X`;a*PkrT!!Z`r{@(dY$J3TevjTA}v*U{Ko zIk2~hNJPc4Bel#ghanljwH{&L;R6)o1zKxO_@i>_YfR<#B*T8P1tlx4=~B>tD-xCp z;R~lw2tzWTO^{P)N%=Rhw(h~It7zblmF>?{XR8J1CYMLJaB~_uI5^zXh(c3MOLH9>jY1gVW>jiTIkVU3wbP8b zWxV*yFJM#3a5Qz4mw#m2u}!5=ltzOVOHCEiV^?v-C0LDF28IO=IxJ|6c6@6ijJiTN zYO2u)@7HWGp);AuZZ2@9cW~R#l3}lJqr0gZwZlQoH^I%>bu0p-bVeOog^GAOhTLdE zqo`~zs)V3F61&TA{^aYd#teMzS6)QFZJ?!6Db(tZoVVkKN7l^7lIK0=;Dr|seq1X%Dx;m09w_r&h>HCzOkP+7+W@IE+##{rm0JbYzpP(u7|9 z;P(x5)@uD3S-2SnuH2?=R~Oa?w7Zx|5X;Ch=s&!- zARUV!(HiebSNPd!=wdHBPCUk^xwCDow~vN{k6?O8=EF_z23lcYe$dWhIz(UJB9A`# z(bEb6w+~y*kCzfKK`EBl8>ynNu=^S-`!hB$uj*QZQ`fi zu91uJ-n*wsW+df1lzpysJZprjIVqlz{PjI&y7(xj~zRJG!^8%H{NB|m!Qrn=iS%dA!n>2G<%!V*9Ngv zHRw}d)`in)<@}qk;z_H}Wc-{G&kC!DTQ~dhC5!l{hq*K~L+6eT zVK^lC!+-IwDO9)OpB-c+C_o?*WZfGil}MsctB80#Y#bAvY&apJOv8cs6;H z>ys|3j0(=ady=(O0U|L<@YFBLX4Gaj#4~65ZVKhlia{gCH8#lU%hy?57yX@Iqo&%- znKxd+mp5RQgm~qZw@DUDd>N*1e2Kc+DlWbKI`e@n?M*dzRd3Y8Ti^cyvz{0xon9D% zLEe4qy>i*riDCMuR?rErDB$)pJ#|w&7a_U6#Pz9J(Z?9kP=NmHz09wzF(Jm>P@#> zjQJWDuHO)CDs665m(y0heflzvmK_*GdrCZd_skU}8Z8Nrk3i7P)nTE0*FDJfHPkwd zcjV;eSO{g#i#sk8V?My`v8X~71^f|#))|DwFaH?| zh(z+EZ)lQ8|9tagN|kK77Fk;IVs@0$2TtRQ_(_S0WD<(1r@f9DcbuIK!kb^o)7r3g zXRA_gL6!@%Ae2WwwJ8Agwy>U~Oph+nxc@NLLZ15WcGA8@;U#CNRi!z5d4#=BK8kDb zB1;=ZI-06jTaD4$>SVm{I@;=bqW%~)=F(A=5b@0o=B8H#sALF6bLdI2=nkS23N;yx zFf%%Vv2ia>p-hvp9923|$MsR6gf>fCSj9NYNJRojHD=)V9V*iyjx zWRRhuY4lYV^a8j$d%6g&tdJJ!b7guKUnnd<&WbLdL}zp0TW|}d-$K|u$Bl^3xtKYQrp}`%5$3yf02pd8v?A8BsM(+gGJ$qTX1`m<)jz4uk~T7ttaA7P_37< zz7ZxG^s+QLFO+PGM}_gSIx@~?Rz+6zw*kK|~m)(Uwk5M5ou z6Y}AYq^PZL#ctLxH#y4u0i!TRoc1j_ zNrlCnP&V+yK^yOU?;RBF2dI;;bM5*p4eg!eR~I*_mQZzVl*vyzMhVr$Z zB~q#N*lZT;rF4fDJ;CJ_Qffmv*}A@}7F8mID^|p5HLyHA&GKf7y5^d4#+b4rFWTr8 z;A_!qsBUP-q?MA%7BE>YxE6;QTl8QPo{2%4XKc8aOZ~UD!)p@MS}j_QZYzDCPzde?3RvZQuW4FhMxaVtl)7m9+|^K~tXOGSSCUYQS~j z$?IzBNqfD5Un$hW^DFV)YPJgRwv=Xa>-=r4s7EPR)4g{;3OrmL7!`xG6}r^vjDi;y zF*dexrXu(35?HD*i#}&^MQVkIu8?VI>FmH+S50W$PeGGspudk$JSGeQVPrMeihh~! zElx7&aP3=sd5VzRkg>grZ*>WzLhKrp8eoN4ellO}#_3%fOx^ z2hbG)T(~+wD*H3YOL)&JV$c`_l&-KSrP3~mG};Q3k2r_WnD!U}zuQo`GP^#><; z>g&HkF}{JxTwV5POX&$qDd9H!A&eR+zD?m-)LDfG8O3HU?TXB^vM^6pW~8mjNj4f} zbu&YY0Pa=S5-OctC;)wFaY=x3p{xYtN(HNni`bi5P~@`|g)+-$i$eJ-$OsRpl+Lb@ z%a`x=ErrM2?iCa|8(K+*jZi72nvHeWD%DMG6knvvi{;RNsn6@eGgTR!NJ5Leb?y?*_G3JIY-d^Fl$J2O9v3pT znW>>(8uvd*Qz_Z4XxHM>ifFSFy+%#YHO{-|uHo!>jAumIQcBEprXc<;ltb`ZTMaTX zzTvElI)|;iUqLSTp3mjVIe_z}_HCz6TwPoc-f=UkVg$E8Nqt?-R+5lps+< zDKEXOthz8-9OwnV zEyrOLye)|Tk|7joD=JcWg5sH$#;yGqiA`3#Ve0D}%KJ68#z86ipDFLQPHcwQOy;St zttOjJkQDN{B`0}Y^9#tu{3yv*#J5gdY7n3GE-z)s#{x;#e*z*W3;z5 zekL!+y|h4HW5y{At&NS%au`2bkcc^GDUVYzmtuNyiH_afEDl|ye=@~OFB~LZkWy2% z6|Fk;-EUES@EKa|a)N;na;*)Uz90;+IHQ-YQ@{6sFwRP6zQvptZLSydKp}XM&lgY% z1KYK@LTyX)mO-6Mv%2QSTvJQm4`0Ky|1l2jY$Uku0=+OOje5MRYZx5=KYMQ;9oKc| zcYbQGLZJW@3j4ki1PG7-_e~^4NtSHOZMPkF((dU_a*|2GzJXqT+9@h5`g3MgoZJ7?pDX#zVs-K!mmkhz%<3T% zr>L=)7PFu4zJ89njxBWW+=(H+!s2p{swxwHp9_ttmgdqJ-~Qf3zVzjP%Z`>ZUi<(4 zE0)f!tj{{=-?N2~a4Z+s=CQW6;~klyS&TESa4e(Q5Mh4|lfIbNZCgpKF5}DRu%4cw zsqdI@eg>GleunE44$7-b(L_=NQb{`c_mP^r!Nn0D&mQe#c`Z$EM-jJ&#>H{fL|ww+ z+0w-Pl$+;2eUM9UzQj_phJX8S{^7@d2QhgI`eRN>Wup||Ul2Nz<>waPJjJ#~b`Jb( z0%{Tcxl@Yo?*#eZ=Nq;Th$!16X6h1-9NNy(qLaOc_KAqKfwi$~I4P&0RK>!)hpvI0 zsDn<%9T|>1wG;Q+#x3HS`bO%jD`{@;p|?{+rb!iBy0?(1-d!q}C7Y8EyZpA1-)St9zvrLdx$GnKUFye;fhVPsPUn7N3dCOom9|obZ(n6* zHOj!Aek!YM7!(naI{ozSIzXeX?VpE@h7g_87b+eTT5L3|-Y z%&i4!?`$jl&Y%C;CBMJ8rK*LdY6Gk8Fx&U+L7#ST;nIBu4j#g@K8>clmFJG{BIxkb z+`WzRVk4e~QBGYLVfVAo(_C4Msic@vTP12GOgLwxcWXPAGAr%ftt4C?DqDM~EKaiI ziqqQBLbZsTmzUkZuc<@~MPtCA+nBgwo;l83Sm1Miu(3^KIv&F5Nz%|* zS=i<=nGx67Tv`#0L?|jQ-dz5WBb5o+KEX&3d?6_zeNBAZSXe%s4$W2nfB2cFNC~Gw|5%*8Rd5_j(=ED9vY5eQiZ*} z^ZOw3=C0GOG*W&O;6ltJ8zx_`HIQGt6W`Yh5eO%iuQV#XFn*|LKq*^!|8dm~|B1l77RPqy*@XleYNHT(HHyKUbGI|ayNZ;^gJSb5;Y|Jhd9*mxSwsJPfJTNc*IJQ3AU zF81Q(&bl{(;kJ&QnXP*KZ-*P@If@C`)(r3{$Z3#aMPf=PgQc2KqNS}30N9pS#mA}_ z7_Yo3Om1im_1-~g%uWve{y;gwK#|0rn^{onD~Ez|M=J>X-}v3rmTf=DZgfO;&C96- zr7ac27HcGEbT|e@hH@^`S`}N`^$Og?(k+B2l~`#ud#3%WhLbVHE$17U{)B^Y;;8@l zf>TVx;c&c{tjPo$mUEe{;~E#eOvJ*11K_!umI*9(ou%eoe&ThUVBES~fx}UoqF82Y z*evWQ$si?R#KAcT#nC#nwlvx5vc)E&xP|}VN6r^@H^x0M?|GNLfo@xKy)@yUgf5cC z)p2k8Q5)ge?Sc7WQ*fyU<~YK6l^9e2I3W^rEF*s3hTZUefT;)RfH`o%7R6Z6lju-N z(HC685M)GVRu3!@U#={kj;v7c-;EoB5}qcX-xY=;@Ok5E2I)Q>OJ`!?9F;f&25 zM<*M?w&1;o&c~1as-YU4uX=T3gtHN-n_HI*vLGvxzt2IJWj9>!d-j%#@BDjkRL<-F zXtOZVQ*fLfR_ylg=|HJIn0)}Kdfq5}IyM1Xe z-vcZdbCZ_{p=XubF3*bSuSX?wtemZsq-|qO0ujE(zx-vaZp7gC{AQY7QP4=2)?c5% zaKS}LYKsn9$iT;7C3B$m`bj8#<#dc5~!*oUaJ;DmylODP1^RNm{T0$ ze!zXXePBU5vxO2II({-dxpfnC)Ere8bd$H5iFoz!{zeRYg{72*E@q%S@s?Tc zVtY0KgoXWZr#vW0m76wPcosAp5HC#cM&O4RWgiAHR2P+IAt7pAT3PtBaYUM7;EWHq z?FMtW;vCDVgX9gZ5@NE+7iUklr6vr`ClNdpYA|>M-{ZjYw_<< z3{msC1Jwd+h?y<2OMlU{BidwTpSitWzG)Siko}1gU1~UCu0O^caZ|{NvP(v2FQ|4n zFOSDzb|;_>wa*0eHEKrE?gD?-VbcM$zxY}b4#WtlEutMwm2-d`2&S(->pVTo*bHxt zq2O#0?5z}I?O4y@=XZGGOQ6`D+Hi33$mBWv*)F~LT#F4Qs*F!cvg4KB+|@aNwT?1% zlJa^&!RqBAhBCh;3FFBgjPl2cmQ31DnHI*nlI-fDjjMAo0JM|z;I=e5FtiA_*UKbh_Lm!4vi5 z<2z|~_KY3A@8||L*F4#_U9LJt6L5<*vq)%L7Yl~uh?jIyWI_z_=GND+)5;{~27X^Grn*HG!6rAI|V>)Z;RA?L?F1nhiPIN&&-`E}} zbCHRPrp-~0g^DJkL>qoZYZDa(Sz zM4348=jzok-L_`ox?0`CTAktCB49_eho+`GlR2&9s9V#AYslS+N2gcUBGk2Z?jLK4 zoj)a!k^!*xf;c)jSNiYRNGV79mFvz|2kv3$3QOdXFYNbE!&Jy4@$nf|-EE3wD=~!0 zMJa2$L19=W$JWJFsklBDa!DqM{N6tJ?xKMij3wEFsK%x)N(mrQ9c8H~xv|HRED`U9 zT&BgGCg$H7v#OZK%4rJK7Ff~0EDV&4aDz)OIYv$I>TJRL^PAtLrNSnWkdDgYUL_iw z_xCiKYEiSnU|=hbJo5<`Ta^idYt-B#4w1w43+`#hV{m*eb5Hn!M0MzF#K&puI-o9x>l-}2=`Ksk2>d-$gL*Z<`U{sGR2|Pauc442D)h&5 z3=yeGXAizP48nlDfI}=pgYoc*4)gKNh>Vl!>~acz>lhf};7XKp{_psx9M-gCS_FgU zu$YiNCtud-_fGj$N`kgyZ4422&iRxB`_`}VTiwb@%U1X>DoRE)u?Bo%Y69Jv>^i^I02LA6O7I@BDti+M%$U-TRk zQD+ql=Z=akk1%)YRA(vPCu39jlI5?i>FkxON)98A?-_Zmu-4I$Bf&l<3Le&CYDOET zI%2rNKFAg<>!e|*{ny&G8MWGqb_ivBT1n-_FUKDwRUMm(b=Q#zv ze(fu1x5NM$nfBB6o_vKS1Ue7M4Cu%hvtOxE?DhhE=Y$M59*XW)d_ZuF&gUf{9DV-B z6GA#;T?^F`;^UBkqh~+Un0G~UOwui?uO0p~Tf{ST7qw$d*z?Qgc;ixN0AC}epYR7r*-!V(m()v#o2MQFnF!w#c|YwKcC>qDo_1kc zqJA8Yn(AM^+az3!`sQBiueEBFS>ntM)eCozo8Q+LQG5vCwr>WA-wAI&XKJ!zlVVDt zLU4(mu12HS+Argu1+b7&;fwsY9X||wG@r;YF}?lZZZH2r;JdRaaaMM! z%rgE*kV(*9GKEvyqv@Oqn$1fZ2Z8jfa<+}H@u@iR#=W3AkwwP{z%hcj`zCMcBb;YG zvr*FXpd2u*lMp&zo!NH;P3cB<<@YpKh5LG@(TQNp&T|^E+PwI2`R&kSWD@g-e~=oVRFk>!bU;xxUp7fGas1@9UFOH6v8ifP1?~ zbSW}24&`5_w)dXSq-bp@bXz@w#SGFKf~}0tvE(z_C53It>n>xzIunf^lOK#{m>bzf zfsdMnk>_*{)=gYEBvtfik~ajzrZxYVoDzws$ZN0Qhw|ZYzpf*Zq>&(si8WzULYGWT zJ7dRMnHh#_M<2?6hmLd&cYoBdN35waGdDK=-G9$Xv`2tKA9X#P9-x|FnS!SytYJ#N z@5&<78M#5XY{bsO=aU#mA*6Q}733^#pLx(OBXWpj6vFw?&hGu+4uO1N` zaZr)R)W9s{1gh1Lu(Sg2U59anrj``fYNfO}{z+C?70E(k<7pIKWEw|mZ5Diq-5N3f z=2I0ZWiMJD?R5N11zU(UeT6t=5v#~P)C-as<(XmUP|X<@=Xn@!MP%Y(fe$&(sIspq z#*|qed)V-b0haJmRu~uyq>(jo4jq=oCx$HWuyK=R&{H9t{A{C(*KHG&ok?PhOs9FA zCgH2hYU;k%YgHQXDXRz?`i#RP#7+Cu0mM%puf~(!G)UQg>gAV{D?j9bUr=Ztn`}eS zi3_j2$n2-+y&irr=qs%x?cg0w5C|o~*q`;rk)$?W^|?7Aw_U4K)p_iHegy@^C+e;*!{e2K;5TeXpH#=g>w_Y@wk(BO0`^I2n|ss%t-cz45(>h>MseC8iMp_-KY!#9n7Y(xDoIPTk=ZLC-({p1Ta+;%3|$ogOo5Sq}kE?j;;-B7A@>6 zdK&q=F8|=GbWiN%;F1vi%&-=u#ZL?3_6C=hnp$~aI=k|z0}@rJf(9v7djBvI+*5mJ z`3AG*rPU8Td(64A2AFm+Zv2E?_7_=%D@VHhf04k1;;@ z_n-ch`08eExrWauR01}{i}J>6@~Yf0C$-LH5hfUxWUY-0m%}Fqis0+8jq=l_R*^-= zXn_eLV^?L-@f{Tlx`s(ry*9MOh^sohMn?~OE-W=l>>{y^2><;7b15@Seo|5nop8rc z&Rs5XOY4gtO=|oEsfM0*TB29E@@G1575sk<*ZSwRk*Ju~v5f$scN{{lW45AabSXAt z1YTahe9|texP&hMpaA``4pi1NG>7RTR2iLU=iYP&eEerz1IV#r^q)f$0s z#hY8u$ev5ADR+-RE%O8()AzXBZ%UdL+uHm)jL0XXfD@kUAms|thunu*PFlaOjN=660?#D{#4qD(f#8L+mFi9^!N(7B`*EKCB5Nk=;9&vRRqHqW|#nIrs?o8?J%9K z@aJ=uhSP3k<>0v|YCYpr2ln7*%HCRs2$uN560n}=ixN5|8__dtk8`QTowh0-2igGd z?~JrGuNCq8-dtn)R9F#=+G0dAr3buRA_CwJ<9RG2tq4f# z;24BvGbWdS=Q`V9+Xoay<5KTq@)v{6e<5DwcCMG&Yu z%LR1tR=nk?AQv+k#bfaj=7%-Fll0ITdkzoX_HCdPqvV+ICnzP`)TZma;To8TU$G zTq{FI65RD#r|)rx}2p=IKhdP?{lT$Tp6?( zJDS?6{9U0yX>#I5{&;jpzY+(EsSYs;RBSg%@q~KUBB1O6=eUl6`f3Ms`@SHRkdDbY zXvPZtek;G^IBccpQiAhYw;ye^rOchfC)!K61wK%a9VbLmaoTKaqPg7&cH9r%%?$fP zB081&5A<@^@h_G%urZUFlsyRL$gjW9d73nX+yG-oOt*8}+igvDFOEFXcWO!(NUcRG zG!%!vfI z{@u(`BsEjHsR|3g&Qa;ssKhWpSSYw{xVwgI!wKLkr%P6&lw~nlKFU-HkKc!7@cq#= zG>ny!iV{=dJNc8ilJV9HA5ionqR8V5*S|6ON+%4FQ?S{)R?pov7lyC; zcbQJ!36sA=X(FaPG7gkv^0e?dMNx!z>6vM@o&qTsYB4idWSAIBiileeISA* zme8+a5z=-gVP1$Sp)EajpCDWJWI)hZjmq}Mu8EG%U%Mql@ECkiyuz@8-Mj$Wea$&y zxOLbLCxRrEF|;7=no}B(IB+)3<^q9V=MEx=i8)1$36ipB^l5iJW@odG^V!qV(_Lv& zr`1~&zlvi3Rxg^gQcUCfUcNOP%-{(g#f%9K7l!r%uOq(4z2L>-$NP;cfmMqWFcD_h zR`J`y_&^3G)zaOHKjYPxw%9)>rV|Mrgdxu_6lI2zi{f^INvLIgSb! zaTQ?W7wUmj#v9@oQWX0^^4TIG_0#9PJcQfx<*t{2uZrqXEXL+M>U}>9*gAr~`dsvW zrx+_otW$Hcb_k7r196KJDK^*&4LrE-q;yWS;z%4F+x0Zo2>0ts#jEwa#_?!3-YJ$$ zE6-W<2nvLZuuRBo+)XJhNP3EWN#5{CPSizue-(QDRHr4x1Vxce%Q#L?tW9>$QTKxx zR7(OPz0ffsXP-Id$|Cg#R##=TmdC>odS14Ko;6(NY+eM@qROCKoy_kV>f>E{zWm?X zq_uQVXdAgT34}U)=XthM)_Xt#GTXKDHfg=47Id(sxIPmr!}3)gPn=Z z>DEIQ4|OLZdRXKyiq7qCDP^H8*EF9RZ_n}yWMdi}zpkkXvk%O3yS#88YsMzo^1+td zh?Ze-loKqi1+e9BH6MKa*6E9*V=c7iDpowa%(KWO%Gw#NCfaQ@z=~6el*7c(eNqQ4 zFUpGzqt0u%x~=XBy3UQ`ZjBLCh!~$pw>KbFQI+Lx3SL$&SQ5(B2(1v; zEgiuI*h~+hDG5a_^tDiRwkpYrwtZ-ECpM2k%@2ZLB^4D?+nwgpW01ts2L4W%bHke7 z)aUmNU{DZ>q2O20HTWZklD2IXO|TTvr#c?jBwfI*fZv;F+hX zUNv;Pm7C3r6;5a?C39zjm~nT1Od{Q`D1CX{4+c-B30g79C-h2z%z@V=Xf;r*u;V1b zegA@xV8+kxa*?-Q*1g)CjvbGpAS@Bprzm-nB4J*4J#-L_uBVG`dy7!i-@m2zTGx0t zWh{F=&W9rf+bSl4Ji8AQeRgEDyNnd+3S!4o&hR=QFltY2a*t+d%v9j7O`ZC*Ya zCbm2#+8l5Ju==YzLZc26ZxDigCrR|#eoV(L!Tw9y+C0N7M}klX;mZ3g<9Wv`L;oKu zC+CM0IL#%F$)NS@KJ^t*k@mDwt_$U*)xqUnSIYUj)8%%g^!f}B*1(+AU>5&QiSnY{ z>F|ET{mtq%r~sB!cS{hh(z^?*1fV<$JY_Unz*z?o;Be{wIf=(idFpdf?u>6-yuj+T zhl#R)=(DBphKyvUWTuBdHpWrRWsi$5i(O)EP0hr>SmrKpIV#w{{*0`Vtis>kijh~4 zdF;et-}wYBd;Bz;JmA>xELvz+ol%nC+(GYOM7U=5#9KNRyl#PcSK6y19wzfFr`x}i%GH6b9w6qpN z8{cm+>uhp~e(oUdM@$Yh*t@06`jhmMJM^x<~+e-#h}bs6w2%80a3~#^zQwk5s%98&YE0Ne%Wn~{5pC!oK@{`0VAk~ z(c0+$h#jP5^fl_K=rT@-ynJ2ZiJy3`bQX`t;$M8}KTwhne{5qm#eWVz(nDvge_xva zKuqMyzy5z_(f^s!{%e-}ko51_|26;jdjA(Q6fypHUi{y)q4VIs7x}OG-#7MIvag$b zdN{As;}ze3Z0Lk+HzCWXVy0tsI&FuFIAsJlYU=N#hYq(y@}Il!?sOTvR2u9Hy_^ko zpX5B~@69VmE^ZTc+#iDn2J%&oh*4+B{hzbm2;WDb!H!4&w+sIX`~VgFk7=@go6KTE zSZ}Q!5A^=eAPk|Jw$*+A&IgV6)bv`rB^vawU3a{4_TS{^8HKOl2{hQ?L78oDXhD8V zy&`6qgUPNfqButVF+ktjIyNus9Ube6MqXDdyR;rND<{74WTfHuS14~o zLI8_H){XY&?so|BJJS=MjOkY?a^QxPYWR<|t(~#Hi?=Vy*iNQvY%gz}Z!yKe22_*x zQf{nWVU~~6X!r(C1Me7W9BRFCST>c6Mhg+|s6E|$qsf9}I4BL6!*FBz2SQmX2mWu@ z#5esK?-*##9E=K){;w17Det!z?+D&m%j436qc{)A*CFq_8%la67<+S0Rqc@_0$G4Y zw`eZnesIsvnJXbv36PdsG<3;>R<-NS`L@?J$}2avMqS8zzSbmON%KAuDD7cx3B{?7 zRKxc>L|$UvpR!_Q20RWDFO=;{v%}3gUZ+djn%*Z^z_p{5+)5`dLCPF>98mSI@MB&j zV6<{=v{QF^cYi1!xsDT<`(VQ_DlHAK442qTEaOd${Clfj0rv2zlHk0Fm)iVi}AxD!Kfuo7nVn6zS3^A92y%$r1{_MG2KMDkDD+u zP+`OVgt%v`+pZe2q{!B}xUxB2 z)3v#b^<+{$a=j}jxNnp8zlZqu1?**?eh(A9=8I_i^2$zM>`1S3w_{Ms3t27uXDw6-Q_-4s0h!5=(X{pRo5RrXbD%PMS>LNz8_ekW@>^62pVk}I?yW@~o_8WC_TMvsGKnL0pYF#~R&$+AWZVZP-UrC{yB ze9Rem{#_Zlu?LkH-mNjV`4V8devn8Z_Ab5y*PYwRdO=6FdBaasYQuOA`y?Q$0zruI z3V+i{)xk7j3)vv1zMVW?Wj9~v9n#($YP!WbO(D)?`8f5>(J0Hc=o|jj;LeHPr0wwa ze&ZW(W}#oS^GhIMjgx+y5BaXVCb4@UY7+rI#`xL|RjMZ3)b!f$@Fh9u*}YbfLzcOq zD6blr+6<`a2C!M&*{ne226^eO%9cGZ4HH}&5v=tv%t#JP@z~^Ok>mu{9+MBM5prO| z;84XPlr*{{{2$m-!W{P3X3D(8>Np=_Q*}-b%hWXGu+7f(FXBUBgDt+hDi8v{LYQpfJZ*}27$iD5cEH+Q8z+Xz_zUz>~+-UxZ~+>UAt5wEDB zFT`_Ll!a#9{C6)#b!k!i3hT{(H&uU?j{(XmTPBm#l}f_d$a(=X8eAj;m^s_p4G9+C z2-9<`z5h{jk(=%KHqc{am8hH)oO~%dtI00KFGVKJ{=?cF2?2u*$|h6$5Tu~2ZPVSz z+NII)8-Y85B7rDI>?Wy!$OrCc*~y+xIr+fRZv8XHJ=? zE!Yt|;_|Z<=HfP4ImW4$9o$U8$*$8$0ORVnJb(^UzcL0Ln{#B0V1EDP--d=^xxMi4 z3Esz9s^!PGhYho4aC%`dsaer!LQ0gbW}2wMLLW|+kTC7BxtD3QHRD$rTQsQPjPq>5 zp~p!d=id(G{(F@ymZFMC{I{6jGiHfJ##tH&NAoHN#2&@(1iLtZrC=&;1h zNIBuiF^+Vj6Q(4+;pS9jMH9b$+**U`=)|t4tTMlhdZ=WrYqllgH)usGJ*``J;TK7q z(QTLSeBhuuSEEwJFzfv#$$X~3Y@!;g4+OJuAZc;A^V7jCJFYViAreP74~Bd&H60BB zX?v5M+z4_e&up!hKhhd#CB>coa!teDq=EC&+rR@kAVZIw^<&bD$A|r^3jEp=$7ue> zug{Ov0O4D=2AyW1W^v0@B~g7Pw{t#O30I8P=hn+by&&i9IA+qvoyA(??l5l}TdQ1I zsTxYs-lkADA7N^aLU?H0Jt8_<5HFnLv*?fF&wG}dwG35tY8`$NR?%T;c;-lxgXLxZoFrk zTpk}^dmdy^aE7cSVyAzJU+O+@e`dDE+y+N2TG}}!?if7s*SF9E*1U_S!l;Mh_8-|K zBqIhJOPasP&<+O4G!7;#DsIb@{NeSxh@Yq~_5Z~%*B2?fSPhGhr9-#Kv~2l9REpH< zCfuT?!{2^retLbzk^l(A-y-|}XdJufKZ>7e4cGED;9L*phA zV(cN8*E%eKfP9xkmxeh*%qg&ZV00e<`!?8^mQF@8oSGWj#o_MwlNT~!0X054MrC+r zhk9W@v0>HxjH-$pxc*!Dc<4}epSE7akaDEAUrG)Su|yWn-G8S!H%XeNrn< z<@BU~s8?xNO$pv@w_0QbwW;HjlokLh>Mm**$k?WZ;EGis%I|jC#cf+|tD2CkqMF~Q zY9nsWSl}&F@9^0P@pP&G`V`aM9!XdWqkf*0mNqiO_Zf3PSp6lwC*M}*$hH*yKwC6{ zzLy+}Dv8zM61eaohK035Qbyuy zgA?5x#~yxTwut_|o_>p$yYioibPQ`3SJ!Y0xxP(EgyPar=Gob<6RxnJP(y<)dm5Q8 zVOoA}O)$I;51@fHvJaq&36*xc;!R3Jp0dZ9o!7pq2s>=@#>Z|)b_OTbpr@p!4xGEq z%unm0u7SM+BI!Lnw)zzE!s(gW&rsv`u*)cdyKRm86r~rEuxFPrhwAXG3y^B1m@*=y z(fUq8gH00Py-PV-grVdpBu>0+^=fLfToJG;_TBaW#v(_P#@%eNut-U+2l4GKiu33dOPu@R zm9Fpoam}K)aoP%Uz7%o4(hDeXqCljyQI%DvQZtK+Qh$#M9H0N`+iq_q^{TM9psW$> z*$f2<48$lYsRrggise@nRToAshm)>WeADr2Wx+?pOvcQa#}m_$p~l*w74nlSDEP*% zMVY)0CBtNxeIGBk4s?QPX>h~N=nD^C?oLUR^doShq92+V>wf(SoVROeNO)DBb+_}2 zrbHt-@e^ri9u=Q&avbPWQF!p*bv8RU*q(0+Da!Q!y&t~4(eX1rjI|c8u(o+$!|!M- z0tdY08kvUPJOTdC@)JU%RD(OsgX9ImMEl>}A}}WMB~kcV=SNa06;s?xl_WEkIpCP2 z(N5lXclsPfe|zmFS;{{$;SNqm0#WsQk{U{8gL+Ulqe z-N2j$R<40|nGfG#X~7Yi5iecDVl_L<`JkBQ$aWf9RoNP_k~}`s^uXQM1qjAoBkc(%bn3MH>dH zV<(Jo&lL3do!WuSy#AIrB1cFU2LV{Q#YTxyw@u00>KzfV(V_H}RG7B6T zLvOqv&VN$OPUt3(mE*ils*W$;`c`a!00%j~qwCF5gQh0g?U}JcfomO-!le?4LsbRu zuzb9wO}@6V<$R57E_?8aW9I4coiv&F4}}tkM83 z>I*Q8GannX4ESY;891FBOx#!+6RufD+ zKN>PED0KGSmZSw_4M%wXQK{_w+0qsVBN9H8NF5S$y7{(OsyH=V;YO!%9$jN=NM-p< zey;oF*^Se2tJe}yt-MZs!LXDa1F^_)3^}YpyQ=Uk(zDzL()rAf#{>0V>0OmcV)tnh zqUfKYE9c0I;WpOiTk zYZ!N`OYmJHhcXY@3h#-Q7X0+O{z$V5&Y}N4b*(X}d(bHV&9>jZxW=JfDI-0X@+>Vs zUFqilDK|mal&c7;sv=C~A%Zm>?QeqqVKwW%vtVTp6Dj4c?+a7AbOGiT9-x*&t9f(LbSEj&Fhry=9cqT(BMVOI*06XX<&AXh(CGc>cqHoqOY5PKeuTUV1djoV|F zrVN|#=K=bR8?l#?J}n3%E5f9krr}~)#PEpd_pg7^Z!~pl$$sBnj6NINhV9#33oGh_ z=Z!aPlBnONy)v|Rf3w3k6_TM0zgv5i{t+&5am5=E{i-tQauc_wc-7fiz!pyWBkpo^sf~_I&DwWyQRXxcp+2VY;Z$1e< zDS5%Myw&pf)Lf=M+MQ_w!!1l{it~pWIBf)H0)2cJii>B3T1Zf$QGn!grY(ZXtrr{p z@nuX@Fy~xZCY5@lN_#ZvPNW_+uBcSW0|ZAKq_?uij34q3&nzjh7nCdHb78*@TCK;j zS-XB(s!9igDF|fPBFkV~%|6M>!f@YjvrM0VJJU%QC2#2+O>?0CC|?oHsAN3M3^9y5 zCmRTqq_j9Z{?6^0JZ164{{V8<=5F$P=j(Cv<2q7_cB7F>pCb$@c`tW#<+!uAJoo2r ztyIF=TD@EA@#@H)VQ~-29=YPNYyG0^WflaT51W@)G zXC1zA$k)#^+OsTF&e5o1PoK$5;w{3V($~e^%K1Hty28BZ-KO=M&P`WdBE|GDvR-8K z==cq^wWwG~V`FN@*Dek_%ghb)@?|g>V}y4er+&kw(wF5eu(VQgsDrx=BL}c695#CBWvZCFdUn8kYf;Y0y3e9g9or5=1fuofB zXrLUWl!zIviQv1UJ!Kgcm`t=i#pT>I(0}bED;m{q!74?7EW~r&3J?p@6RkVcH13Me z_SawgxEKR>~C(&`n86vfU2CLfmMNphM*Q>NSb$ z61hRxOLkfi){>%sJ2Smb-|qr;a02ei_K~+SDhC@&-x`9?4Rt~i`MB)S#}gF|klaJ4 znDN3x;Upxi*^Mw>8=6jYON->*GN~ZAl!ikCnWpr`9xplFCmxffkEBv!LzGw{D^%-4 zwECR}LwgC`o!jrkSvUw^u^O2)JzJ+X^$I;K~9;(=f0~j(+0(j2P71VL}~sbCKlucjkE6Hp@E&7DUMa5 z7~rr?X1bJMLo+a1pu*bkRCEVSs&eg03iHvw=ywau|1|n z7PxP0J=|s}s438F7d$WS~FC#iJ zz=70M+QnfT2fi8iV|z|m$`fJ%et(R+qhUVv0%P3TCLHeX8Xd$jm9Ll`9XChY(=&Vz z=uxN^I9KYYSYt+{*zZh@<(`r~k19L6ASVHcnL-ooak!@urJ{L|-LLq$Ns+;@ecORz zeA5>y$=Msv`HV+VtUVv5g3FXO5z;XSV0<%?9EaWvy=xzRKA?y77OrtFKTC$L%2P=x z$?L=VBjt*)z$w>hGlb6<5-)AvVLNf^&KTscVA@m&9QOzxCde=*6@S*prf=~>+5Ac`y> zIr@1mBUbV0ZSlk&cojl6%EW82vMg_5i59XU_1EHOEo)2zZ$1$UBFg!X-y2mhP zn&CFzyW8nI;dp<~!R&Ib7o5~y%z-!BZ;VX9^S5B3L%yyq*0$n$Ge=h!{-KoNuzH4%&m&WHwIMrj+>8w8B=Cp^ zt<|pzzH;WB{8Xhy5~D=;8gqVdO6M<9X#7h+M+S<&=B=uW@NZHSa$e6)i6C~|F{rb; zzASaV1kjCQz`Y1jt!^ZtAD)OFSLv&GNalJrK{z_$WepILlD4Z^&Oei&V_s785@QCWO zfKMzIt8R`A2ywsc*XR_soIvBX*^69j8|^*(#<2DpcsfIFd$+g^fA&hqo$Pz)RNCfg z7s=#z^q`eaNJ0KmtZE9X^nWc?y?7%qcp4QNDX-6+G)vSD z(8u4oZq}*eOs;C#M)PeAFUZZfx`K0}{Nx(Nu-kUR&3`ibMTP%iwP=yFzry#0)4=tQ-i-@BXhrzE2%puR%z&a zkEf>Ioi8n2W!!0bPn_n1*ji5rC&sx)fO1lWqT!@J(7*o_C3XM7#e0xZ!mB!7Z=e?N zodU=T{vp%*3KGd}IS%r^cyBfEP`eOBPgmwi&)_~Y<5!7)tYf4F@j7M9CG4%h+5`{Q z=Qs0mOQ-=lFcptZO&~yJPdpp97dn|mx{^V-av6YC!msVW7Lyn^m8|SF(sC+Tyfk3i zKD6hee(25>TuN(f=_j^so!4zy*w�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 From b292269f2b083b39b80cbeb68240e324dc870781 Mon Sep 17 00:00:00 2001 From: Arjan Noordende Date: Fri, 29 Apr 2016 17:08:43 +0100 Subject: [PATCH 08/18] Fixed Specific url's in SecureSocketsLayer not redirected to https Fixes #5294 --- .../Services/SecureSocketsLayerService.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Services/SecureSocketsLayerService.cs b/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Services/SecureSocketsLayerService.cs index ebb75857f..a3e3ced50 100644 --- a/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Services/SecureSocketsLayerService.cs +++ b/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Services/SecureSocketsLayerService.cs @@ -97,7 +97,7 @@ namespace Orchard.SecureSocketsLayer.Services { if (!settings.CustomEnabled) return false; var urlHelper = new UrlHelper(requestContext); - var url = urlHelper.Action(actionName, controllerName, requestContext.RouteData); + var url = urlHelper.Action(actionName, controllerName, requestContext.RouteData.Values); if (String.IsNullOrWhiteSpace(url)) { return false; From 34bd78a487bdf4554670c9a16073b4e314fe40fc Mon Sep 17 00:00:00 2001 From: Lombiq Date: Sat, 30 Apr 2016 00:47:01 +0200 Subject: [PATCH 09/18] Text in the token helper's columns are now wrapped, so longer token names or descriptions can be properly displayed. Fixes #3100. --- .../Scripts/orchard-tokens-admin.js | 40 ++++++----- .../Styles/orchard-tokens-admin.css | 72 +++++++++++-------- 2 files changed, 64 insertions(+), 48 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.Tokens/Scripts/orchard-tokens-admin.js b/src/Orchard.Web/Modules/Orchard.Tokens/Scripts/orchard-tokens-admin.js index f83cef9eb..fff9e6893 100644 --- a/src/Orchard.Web/Modules/Orchard.Tokens/Scripts/orchard-tokens-admin.js +++ b/src/Orchard.Web/Modules/Orchard.Tokens/Scripts/orchard-tokens-admin.js @@ -1,13 +1,13 @@ jQuery.fn.extend({ insertAtCaret: function (myValue) { - return this.each(function(i) { + return this.each(function (i) { if (document.selection) { //For browsers like Internet Explorer this.focus(); sel = document.selection.createRange(); sel.text = myValue; this.focus(); - } else if (this.selectionStart || this.selectionStart == '0') { + } else if (this.selectionStart || this.selectionStart === "0") { //For browsers like Firefox and Webkit based var startPos = this.selectionStart; var endPos = this.selectionEnd; @@ -26,19 +26,19 @@ }); jQuery.fn.extend({ - tokenized : function () { + tokenized: function () { return $(this).each(function () { var _this = $(this); - // add an icon to tokenized inputs - _this.wrap(''); - var popup = $('
 
') + // Add an icon to tokenized inputs. + _this.wrap(""); + var popup = $("
 
"); _this.parent().prepend(popup); - // show the full list of tokens when the icon is clicked - popup.children('.tokenized-popup').click(function () { + // Show the full list of tokens when the icon is clicked. + popup.children(".tokenized-popup").click(function () { var input = $(this).parent().next(); - // pass empty string as value to search for, displaying all results + // Pass empty string as value to search for, displaying all results. input.autocomplete("search", ""); input.focus(); }); @@ -51,14 +51,18 @@ jQuery.fn.extend({ return false; } }).each(function () { - $(this).data('ui-autocomplete')._renderItem = function (ul, item) { - var result = item.value == '' ? $('
  • ') : $("
  • "); + $(this).data("ui-autocomplete")._renderItem = function (ul, item) { + var result = item.value === "" ? $("
  • ") : $("
  • "); - var desc = item.desc.length > 50 ? item.desc.substring(0, 50) + "..." : item.desc; + // Place invisible space characters inside long strings to prevent word-wrap to split words. + var value = item.value.replace(/\./g, "\.\u200B"); + var label = item.label.replace(/,/g, ",\u200B"); return result .data("ui-autocomplete-item", item) - .append('
    ' + $('
    ').text(item.label).html() + ' ' + $('
    ').text(item.value).html() + ' ' + $('
    ').text(desc).html() + "") + .append("
    " + $("
    ").text(label).html() + + "
    " + $("
    ").text(value).html() + + "
    " + $("
    ").text(item.desc).html() + "
    ") .appendTo(ul); }; }); @@ -66,14 +70,14 @@ jQuery.fn.extend({ }, }); -$(function() { +$(function () { $.tokens = {}; - // provide autocomplete behavior to tokenized inputs - // tokensUrl is initialized from the view + // Provide autocomplete behavior to tokenized inputs. + // tokensUrl is initialized from the view. $.get(tokensUrl, function (data) { $.tokens = data; - $('.tokenized').tokenized(); + $(".tokenized").tokenized(); }); -}); +}); \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Tokens/Styles/orchard-tokens-admin.css b/src/Orchard.Web/Modules/Orchard.Tokens/Styles/orchard-tokens-admin.css index f47bb0bdf..23a17fbc4 100644 --- a/src/Orchard.Web/Modules/Orchard.Tokens/Styles/orchard-tokens-admin.css +++ b/src/Orchard.Web/Modules/Orchard.Tokens/Styles/orchard-tokens-admin.css @@ -1,60 +1,54 @@ -.tokenized-popup -{ - position:absolute; +.tokenized-popup { + position: absolute; background: url('images/tokensPopup.gif'); background-repeat: no-repeat; - width:10px; - height:10px; + width: 10px; + height: 10px; cursor: pointer; - - padding-right:8px; - margin-top:0.15em; - right:100%; + padding-right: 8px; + margin-top: 0.15em; + right: 100%; } .token-wrapper { - position:relative; + position: relative; } .token-wrapper > div { - float:left; - left:100%; + float: left; + left: 100%; position: absolute; - margin-bottom: 0px; + margin-bottom: 0; } - .token-wrapper span[role="status"] { - display: none; - } -.ui-autocomplete -{ - max-height: 12em; +.token-wrapper span[role="status"] { + display: none; +} + +.ui-autocomplete { + max-height: 12em; background: white; border: 1px solid #BDBCBC; width: 700px; - overflow :auto; + overflow: auto; } -.ui-autocomplete .acdesc -{ +.ui-autocomplete .acdesc { padding-right: 5px; float: right; } - -.ui-autocomplete .acvalue -{ + +.ui-autocomplete .acvalue { left: 150px; position: absolute; } - -.ui-autocomplete .accategory -{ + +.ui-autocomplete .accategory { font-weight: bold; } .ui-autocomplete li a { - - padding-left: 5px; + padding-left: 1%; background-color: transparent; color: #333; } @@ -65,3 +59,21 @@ cursor: pointer; } +.ui-autocomplete .listitemtext { + display: inline-block; + vertical-align: top; + padding-right: 1%; + word-wrap: break-word; +} + +.ui-autocomplete .acdescmod { + width: 42%; +} + +.ui-autocomplete .acvaluemod { + width: 28%; +} + +.ui-autocomplete .aclabelmod { + width: 24%; +} \ No newline at end of file From 951962f6d9cc6f1c03f42dd9a8ba2d37e9d84c44 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Thu, 5 May 2016 12:39:39 -0700 Subject: [PATCH 10/18] Fixing dynamic compilation issues Fixes #6858 --- src/Orchard.Web/Web.config | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Orchard.Web/Web.config b/src/Orchard.Web/Web.config index cc10d9dab..13876a268 100644 --- a/src/Orchard.Web/Web.config +++ b/src/Orchard.Web/Web.config @@ -59,6 +59,10 @@ + + + + @@ -75,7 +79,6 @@ - From 06778eb584c59737992a8cccc7a4a7d3bd3bbfc6 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Thu, 5 May 2016 12:46:48 -0700 Subject: [PATCH 11/18] Setting correct nuget path for Kudu Fixes #6810 --- deploy.cmd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deploy.cmd b/deploy.cmd index 53142d03e..8a04b0067 100644 --- a/deploy.cmd +++ b/deploy.cmd @@ -69,7 +69,7 @@ echo Handling .NET Web Application deployment. :: 1. Restore NuGet packages IF /I "" NEQ "" ( - call :ExecuteCmd nuget restore "%DEPLOYMENT_SOURCE%\" + call :ExecuteCmd nuget restore "%DEPLOYMENT_SOURCE%\src\Orchard.sln" IF !ERRORLEVEL! NEQ 0 goto error ) From dfa22687b52c9d189a26991404bb2bcdd3241b77 Mon Sep 17 00:00:00 2001 From: Sergio Navarro Date: Thu, 5 May 2016 21:57:13 +0200 Subject: [PATCH 12/18] Fixed problem with case checking request headers in output cache Fixes #6863 --- .../Modules/Orchard.OutputCache/Filters/OutputCacheFilter.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Orchard.Web/Modules/Orchard.OutputCache/Filters/OutputCacheFilter.cs b/src/Orchard.Web/Modules/Orchard.OutputCache/Filters/OutputCacheFilter.cs index c18343f8e..6c8c8e135 100644 --- a/src/Orchard.Web/Modules/Orchard.OutputCache/Filters/OutputCacheFilter.cs +++ b/src/Orchard.Web/Modules/Orchard.OutputCache/Filters/OutputCacheFilter.cs @@ -384,7 +384,7 @@ namespace Orchard.OutputCache.Filters { // Vary by configured request headers. var requestHeaders = filterContext.RequestContext.HttpContext.Request.Headers; foreach (var varyByRequestHeader in CacheSettings.VaryByRequestHeaders) { - if (requestHeaders.AllKeys.Contains(varyByRequestHeader)) + if (requestHeaders[varyByRequestHeader]!=null) result["HEADER:" + varyByRequestHeader] = requestHeaders[varyByRequestHeader]; } From 91488f31dac441f4eae5bd5e849613136d6b7188 Mon Sep 17 00:00:00 2001 From: Arjan Noordende Date: Thu, 5 May 2016 20:58:18 +0100 Subject: [PATCH 13/18] Added SASS support to Gulpfile.js Fixes #6860 --- src/Gulpfile.js | 4 +++- src/Package.json | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Gulpfile.js b/src/Gulpfile.js index 67c70060d..7b73ef54a 100644 --- a/src/Gulpfile.js +++ b/src/Gulpfile.js @@ -8,6 +8,7 @@ var fs = require("fs"), plumber = require("gulp-plumber"), sourcemaps = require("gulp-sourcemaps"), less = require("gulp-less"), + sass = require("gulp-sass"), autoprefixer = require("gulp-autoprefixer"), minify = require("gulp-minify-css"), typescript = require("gulp-typescript"), @@ -123,7 +124,7 @@ function createAssetGroupTask(assetGroup, doRebuild) { function buildCssPipeline(assetGroup, doConcat, doRebuild) { assetGroup.inputPaths.forEach(function (inputPath) { var ext = path.extname(inputPath).toLowerCase(); - if (ext !== ".less" && ext !== ".css") + if (ext !== ".less" && ext !== ".scss" && ext !== ".css") throw "Input file '" + inputPath + "' is not of a valid type for output file '" + assetGroup.outputPath + "'."; }); var generateSourceMaps = assetGroup.hasOwnProperty("generateSourceMaps") ? assetGroup.generateSourceMaps : true; @@ -138,6 +139,7 @@ function buildCssPipeline(assetGroup, doConcat, doRebuild) { .pipe(plumber()) .pipe(gulpif(generateSourceMaps, sourcemaps.init())) .pipe(gulpif("*.less", less())) + .pipe(gulpif("*.scss", sass())) .pipe(gulpif(doConcat, concat(assetGroup.outputFileName))) .pipe(autoprefixer({ browsers: ["last 2 versions"] })) // TODO: Start using below whenever gulp-header supports sourcemaps. diff --git a/src/Package.json b/src/Package.json index 654ab231a..6c581c02b 100644 --- a/src/Package.json +++ b/src/Package.json @@ -11,6 +11,7 @@ "gulp-plumber": "1.0.1", "gulp-sourcemaps": "1.6.0", "gulp-less": "3.0.3", + "gulp-sass": "2.3.1", "gulp-autoprefixer": "2.2.0", "gulp-minify-css": "1.2.1", "gulp-typescript": "2.9.2", From 018a3faa2ecd35cf12dba3b6b161c1e7cf2911e0 Mon Sep 17 00:00:00 2001 From: Sergio Navarro Date: Thu, 5 May 2016 21:59:01 +0200 Subject: [PATCH 14/18] Create target folder if not exist when moving media Fixes #6856 --- .../Orchard.MediaLibrary/Services/MediaLibraryService.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Orchard.Web/Modules/Orchard.MediaLibrary/Services/MediaLibraryService.cs b/src/Orchard.Web/Modules/Orchard.MediaLibrary/Services/MediaLibraryService.cs index 7205aa631..082191121 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaLibrary/Services/MediaLibraryService.cs +++ b/src/Orchard.Web/Modules/Orchard.MediaLibrary/Services/MediaLibraryService.cs @@ -379,6 +379,8 @@ namespace Orchard.MediaLibrary.Services { Argument.ThrowIfNullOrEmpty(filename, "filename"); Argument.ThrowIfNullOrEmpty(newFilename, "newFilename"); + if (!_storageProvider.FolderExists(newPath)) + _storageProvider.TryCreateFolder(newPath); _storageProvider.RenameFile(_storageProvider.Combine(currentPath, filename), _storageProvider.Combine(newPath, newFilename)); } From 0ed5198cb3843939944df458b55537b3592f5464 Mon Sep 17 00:00:00 2001 From: Arjan Noordende Date: Thu, 5 May 2016 21:01:06 +0100 Subject: [PATCH 15/18] Added scheme to OutputCacheKey to prevent SSL bypass Fixes #6850. --- .../Modules/Orchard.OutputCache/Filters/OutputCacheFilter.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Orchard.Web/Modules/Orchard.OutputCache/Filters/OutputCacheFilter.cs b/src/Orchard.Web/Modules/Orchard.OutputCache/Filters/OutputCacheFilter.cs index 6c8c8e135..9ada76e2b 100644 --- a/src/Orchard.Web/Modules/Orchard.OutputCache/Filters/OutputCacheFilter.cs +++ b/src/Orchard.Web/Modules/Orchard.OutputCache/Filters/OutputCacheFilter.cs @@ -370,6 +370,9 @@ namespace Orchard.OutputCache.Filters { foreach (var p in filterContext.ActionParameters) result.Add("PARAM:" + p.Key, p.Value); + // Vary by scheme. + result.Add("scheme", filterContext.RequestContext.HttpContext.Request.Url.Scheme); + // Vary by theme. result.Add("theme", _themeManager.GetRequestTheme(filterContext.RequestContext).Id.ToLowerInvariant()); From ed13ac2802c1ecd14856908181bdc93ab6286db6 Mon Sep 17 00:00:00 2001 From: jagraz Date: Thu, 5 May 2016 13:02:13 -0700 Subject: [PATCH 16/18] Update localizations service to harvest only dictionaries for enabled themes. Fixes #6600 --- .../Services/DefaultLocalizedStringManager.cs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/Orchard/Localization/Services/DefaultLocalizedStringManager.cs b/src/Orchard/Localization/Services/DefaultLocalizedStringManager.cs index 12918fc7f..936183a8a 100644 --- a/src/Orchard/Localization/Services/DefaultLocalizedStringManager.cs +++ b/src/Orchard/Localization/Services/DefaultLocalizedStringManager.cs @@ -6,6 +6,8 @@ using Orchard.Environment.Extensions; using Orchard.Environment.Extensions.Models; using Orchard.FileSystems.WebSite; using Orchard.Logging; +using Orchard.Environment.Descriptor.Models; +using System.Linq; namespace Orchard.Localization.Services { public class DefaultLocalizedStringManager : ILocalizedStringManager { @@ -15,6 +17,7 @@ namespace Orchard.Localization.Services { private readonly ILocalizationStreamParser _localizationStreamParser; private readonly ShellSettings _shellSettings; private readonly ISignals _signals; + private readonly ShellDescriptor _shellDescriptor; const string CoreLocalizationFilePathFormat = "~/Core/App_Data/Localization/{0}/orchard.core.po"; const string ModulesLocalizationFilePathFormat = "{0}/App_Data/Localization/{1}/orchard.module.po"; @@ -28,13 +31,15 @@ namespace Orchard.Localization.Services { ICacheManager cacheManager, ILocalizationStreamParser locationStreamParser, ShellSettings shellSettings, - ISignals signals) { + ISignals signals, + ShellDescriptor shellDescriptor) { _webSiteFolder = webSiteFolder; _extensionManager = extensionManager; _cacheManager = cacheManager; _localizationStreamParser = locationStreamParser; _shellSettings = shellSettings; _signals = signals; + _shellDescriptor = shellDescriptor; Logger = NullLogger.Instance; } @@ -138,7 +143,9 @@ namespace Orchard.Localization.Services { } foreach (var theme in _extensionManager.AvailableExtensions()) { - if (DefaultExtensionTypes.IsTheme(theme.ExtensionType)) { + if (DefaultExtensionTypes.IsTheme(theme.ExtensionType) && _shellDescriptor.Features.Any(x => x.Name == theme.Id)) + { + string themePath = string.Format(ThemesLocalizationFilePathFormat, theme.VirtualPath, culture); text = _webSiteFolder.ReadFile(themePath); if (text != null) { From d21538eb54ab59961f9df8ffc1054a19f3bc3ef7 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Thu, 5 May 2016 13:05:35 -0700 Subject: [PATCH 17/18] Forcing Nuget restore on Kudu --- deploy.cmd | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/deploy.cmd b/deploy.cmd index 8a04b0067..151965c59 100644 --- a/deploy.cmd +++ b/deploy.cmd @@ -68,10 +68,8 @@ IF NOT DEFINED MSBUILD_PATH ( echo Handling .NET Web Application deployment. :: 1. Restore NuGet packages -IF /I "" NEQ "" ( - call :ExecuteCmd nuget restore "%DEPLOYMENT_SOURCE%\src\Orchard.sln" - IF !ERRORLEVEL! NEQ 0 goto error -) +call :ExecuteCmd nuget restore "%DEPLOYMENT_SOURCE%\src\Orchard.sln" +IF !ERRORLEVEL! NEQ 0 goto error :: 2. Build to the temporary path call :ExecuteCmd "%MSBUILD_PATH%" "%DEPLOYMENT_SOURCE%\Orchard.proj" /t:Precompiled /v:m From c251665dfe2e4a89b68e80aa38998e5dc101558a Mon Sep 17 00:00:00 2001 From: Matthew Harris Date: Thu, 5 May 2016 23:03:54 +0100 Subject: [PATCH 18/18] Add 10 digit precision support to sass Fixes #6865 --- src/Gulpfile.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Gulpfile.js b/src/Gulpfile.js index 7b73ef54a..bbeb40e1d 100644 --- a/src/Gulpfile.js +++ b/src/Gulpfile.js @@ -139,7 +139,9 @@ function buildCssPipeline(assetGroup, doConcat, doRebuild) { .pipe(plumber()) .pipe(gulpif(generateSourceMaps, sourcemaps.init())) .pipe(gulpif("*.less", less())) - .pipe(gulpif("*.scss", sass())) + .pipe(gulpif("*.scss", sass({ + precision: 10 + }))) .pipe(gulpif(doConcat, concat(assetGroup.outputFileName))) .pipe(autoprefixer({ browsers: ["last 2 versions"] })) // TODO: Start using below whenever gulp-header supports sourcemaps.