From d90bc29ef975806962d63179d12c0571560c9588 Mon Sep 17 00:00:00 2001 From: Christian Ruiz Date: Mon, 28 Apr 2014 19:14:25 +0200 Subject: [PATCH 1/2] #8 Added Windows Phone and Windows Store support --- .../Resources/Resource.designer.cs | 20 +- ...lugins.UserInteraction.WindowsPhone.csproj | 129 +++++++++++++ .../Plugin.cs | 15 ++ .../Properties/AssemblyInfo.cs | 37 ++++ .../UserInteraction.cs | 172 ++++++++++++++++++ .../UserInteractionPluginBootstrap.cs | 11 ++ .../packages.config | 4 + ...lugins.UserInteraction.WindowsStore.csproj | 137 ++++++++++++++ .../Plugin.cs | 15 ++ .../Properties/AssemblyInfo.cs | 29 +++ .../UserInteraction.cs | 118 ++++++++++++ .../UserInteractionPluginBootstrap.cs | 11 ++ .../packages.config | 4 + Chance.MvvmCross.Plugins.UserInteraction.sln | 84 ++++++++- .../Cirrious.CrossCore.WindowsPhone.dll | Bin 0 -> 7168 bytes lib/WindowsPhone/Cirrious.CrossCore.dll | Bin 0 -> 71680 bytes .../Cirrious.CrossCore.WindowsStore.dll | Bin 0 -> 7168 bytes lib/WindowsStore/Cirrious.CrossCore.dll | Bin 0 -> 71680 bytes 18 files changed, 769 insertions(+), 17 deletions(-) create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone.csproj create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Plugin.cs create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Properties/AssemblyInfo.cs create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteraction.cs create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteractionPluginBootstrap.cs create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/packages.config create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore.csproj create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Plugin.cs create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Properties/AssemblyInfo.cs create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteraction.cs create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteractionPluginBootstrap.cs create mode 100644 Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/packages.config create mode 100644 lib/WindowsPhone/Cirrious.CrossCore.WindowsPhone.dll create mode 100644 lib/WindowsPhone/Cirrious.CrossCore.dll create mode 100644 lib/WindowsStore/Cirrious.CrossCore.WindowsStore.dll create mode 100644 lib/WindowsStore/Cirrious.CrossCore.dll diff --git a/Chance.MvvmCross.Plugins.UserInteraction.Droid/Resources/Resource.designer.cs b/Chance.MvvmCross.Plugins.UserInteraction.Droid/Resources/Resource.designer.cs index b7f630d..caf7a9a 100644 --- a/Chance.MvvmCross.Plugins.UserInteraction.Droid/Resources/Resource.designer.cs +++ b/Chance.MvvmCross.Plugins.UserInteraction.Droid/Resources/Resource.designer.cs @@ -1,15 +1,15 @@ #pragma warning disable 1591 -// ------------------------------------------------------------------------------ -// -// This code was generated by a tool. -// Mono Runtime Version: 4.0.30319.17020 -// -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. -// -// ------------------------------------------------------------------------------ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.33440 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ -[assembly: Android.Runtime.ResourceDesignerAttribute("Chance.MvvmCross.Plugins.UserInteraction.Droid.Resource", IsApplication=false)] +[assembly: global::Android.Runtime.ResourceDesignerAttribute("Chance.MvvmCross.Plugins.UserInteraction.Droid.Resource", IsApplication=false)] namespace Chance.MvvmCross.Plugins.UserInteraction.Droid { diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone.csproj b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone.csproj new file mode 100644 index 0000000..6238829 --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone.csproj @@ -0,0 +1,129 @@ + + + + Debug + AnyCPU + 10.0.20506 + 2.0 + {3856B230-5B7B-4285-B591-A36C7BBE08CB} + {C089C8C0-30E0-4E22-80C0-CE093F111A43};{fae04ec0-301f-11d3-bf4b-00c04f79efbc} + Library + Properties + Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone + Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone + v8.0 + + + + + WindowsPhone + false + true + true + 11.0 + + + true + full + false + Bin\Debug + DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE + true + true + prompt + 4 + false + + + pdbonly + true + Bin\Release + TRACE;SILVERLIGHT;WINDOWS_PHONE + true + true + prompt + 4 + false + + + true + Bin\x86\Debug + DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE + true + full + + + prompt + MinimumRecommendedRules.ruleset + false + + + Bin\x86\Release + TRACE;SILVERLIGHT;WINDOWS_PHONE + true + true + pdbonly + + + prompt + MinimumRecommendedRules.ruleset + + + true + Bin\ARM\Debug + DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE + true + full + + + prompt + MinimumRecommendedRules.ruleset + false + + + Bin\ARM\Release + TRACE;SILVERLIGHT;WINDOWS_PHONE + true + true + pdbonly + + + prompt + MinimumRecommendedRules.ruleset + + + + ..\lib\WindowsPhone\Cirrious.CrossCore.dll + + + ..\lib\WindowsPhone\Cirrious.CrossCore.WindowsPhone.dll + + + ..\packages\WPtoolkit.4.2013.08.16\lib\wp8\Microsoft.Phone.Controls.Toolkit.dll + + + + + + + + + + {C912911A-2216-447C-ADF4-8DC190804D75} + Chance.MvvmCross.Plugins.UserInteraction + + + + + + + + + + \ No newline at end of file diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Plugin.cs b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Plugin.cs new file mode 100644 index 0000000..81b2cf6 --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Plugin.cs @@ -0,0 +1,15 @@ +using System; +using Cirrious.CrossCore.Plugins; +using Cirrious.CrossCore; + +namespace Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone +{ + public class Plugin : IMvxPlugin + { + public void Load() + { + Mvx.RegisterType(); + } + } +} + diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Properties/AssemblyInfo.cs b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..4e32fea --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Properties/AssemblyInfo.cs @@ -0,0 +1,37 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System.Resources; + +// 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("Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone")] +[assembly: AssemblyCopyright("Copyright © 2014")] +[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 +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("3856b230-5b7b-4285-b591-a36c7bbe08cb")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] +[assembly: NeutralResourcesLanguageAttribute("en-US")] diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteraction.cs b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteraction.cs new file mode 100644 index 0000000..cd5e53d --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteraction.cs @@ -0,0 +1,172 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using System.Windows.Controls; +using Microsoft.Phone.Controls; + +namespace Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone +{ + public class UserInteraction : IUserInteraction + { + public void Confirm(string message, Action okClicked, string title = null, string okButton = "OK", string cancelButton = "Cancel") + { + Task result = ConfirmAsync(message, title, okButton, cancelButton); + + + result.ContinueWith((button) => + { + if (button.Result) + { + //ok clicked + okClicked(); + } + }); + } + + public void Confirm(string message, Action answer, string title = null, string okButton = "OK", string cancelButton = "Cancel") + { + Task result = ConfirmAsync(message, title, okButton, cancelButton); + + result.ContinueWith((button) => answer(button.Result)); + } + + public Task ConfirmAsync(string message, string title = "", string okButton = "OK", string cancelButton = "Cancel") + { + var box = new Microsoft.Phone.Controls.CustomMessageBox() + { + Caption = title, + Message = message, + LeftButtonContent = okButton, + RightButtonContent = cancelButton + }; + var complete = new TaskCompletionSource(); + box.Dismissed += (sender, args) => complete.TrySetResult(args.Result == CustomMessageBoxResult.LeftButton); + box.Show(); + return complete.Task; + } + + + + + + + public void Alert(string message, Action done = null, string title = "", string okButton = "OK") + { + + AlertAsync(message, title, okButton).ContinueWith((button) => { if (done != null) done(); }); + } + + public Task AlertAsync(string message, string title = "", string okButton = "OK") + { + var box = new Microsoft.Phone.Controls.CustomMessageBox() + { + Caption = title, + Message = message, + LeftButtonContent = okButton, + IsRightButtonEnabled = false + }; + var complete = new TaskCompletionSource(); + box.Dismissed += (sender, args) => complete.TrySetResult(true); + box.Show(); + return complete.Task; + } + + + public void Input(string message, Action okClicked, string placeholder = null, string title = null, string okButton = "OK", + string cancelButton = "Cancel", string initialText = null) + { + var result = InputAsync(message, placeholder, title, okButton, cancelButton); + result.ContinueWith((value) => + { + if (value.Result.Ok) + { + okClicked(value.Result.Text); + } + }); + } + + public void Input(string message, Action answer, string placeholder = null, string title = null, string okButton = "OK", + string cancelButton = "Cancel", string initialText = null) + { + var result = InputAsync(message, placeholder, title, okButton, cancelButton); + result.ContinueWith(value => answer(value.Result.Ok, value.Result.Text)); + } + + public Task InputAsync(string message, string placeholder = null, string title = null, string okButton = "OK", + string cancelButton = "Cancel", string initialText = null) + { + var textBox = new PhoneTextBox { Hint = placeholder }; + + var box = new Microsoft.Phone.Controls.CustomMessageBox() + { + Caption = title, + Message = message, + LeftButtonContent = okButton, + RightButtonContent = cancelButton, + Content = textBox + }; + + var response = new TaskCompletionSource(); + box.Dismissed += (sender, args) => response.TrySetResult(new InputResponse() + { + Ok = args.Result == CustomMessageBoxResult.LeftButton, + Text = textBox.Text + }); + box.Show(); + return response.Task; + } + + + public void ConfirmThreeButtons(string message, Action answer, string title = null, string positive = "Yes", string negative = "No", string neutral = "Maybe") + { + + var result = ConfirmThreeButtonsAsync(message, title, positive, negative, neutral); + result.ContinueWith((value) => answer(value.Result)); + } + + public Task ConfirmThreeButtonsAsync(string message, string title = null, string positive = "Yes", string negative = "No", string neutral = "Maybe") + { + StackPanel contents = new StackPanel(); + contents.Orientation = Orientation.Vertical; + var positiveButton = new Button() { Content = positive }; + var neutralButton = new Button() { Content = neutral }; + var negativeButton = new Button() { Content = negative }; + contents.Children.Add(positiveButton); + contents.Children.Add(neutralButton); + contents.Children.Add(negativeButton); + + var box = new Microsoft.Phone.Controls.CustomMessageBox() + { + Caption = title, + Message = message, + IsLeftButtonEnabled = false, + IsRightButtonEnabled = false, + Content = contents + }; + + var response = new TaskCompletionSource(); + positiveButton.Click += (sender, args) => + { + response.TrySetResult(ConfirmThreeButtonsResponse.Positive); + box.Dismiss(); + }; + neutralButton.Click += (sender, args) => + { + response.TrySetResult(ConfirmThreeButtonsResponse.Neutral); + box.Dismiss(); + }; + negativeButton.Click += (sender, args) => + { + response.TrySetResult(ConfirmThreeButtonsResponse.Negative); + box.Dismiss(); + }; + box.Show(); + return response.Task; + + + } + } +} \ No newline at end of file diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteractionPluginBootstrap.cs b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteractionPluginBootstrap.cs new file mode 100644 index 0000000..dc6faab --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteractionPluginBootstrap.cs @@ -0,0 +1,11 @@ +using Cirrious.CrossCore.Plugins; + +namespace .Bootstrap +{ + public class UserInteractionPluginBootstrap + : MvxLoaderPluginBootstrapAction + + { + } +} + diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/packages.config b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/packages.config new file mode 100644 index 0000000..5a4331c --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore.csproj b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore.csproj new file mode 100644 index 0000000..fe5b658 --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore.csproj @@ -0,0 +1,137 @@ + + + + + Debug + AnyCPU + 8.0.30703 + 2.0 + {53FDB605-5B5D-4EA3-959E-D3F29B37686C} + Library + Properties + Chance.MvvmCross.Plugins.UserInteraction.WindowsStore + Chance.MvvmCross.Plugins.UserInteraction.WindowsStore + en-US + 512 + {BC8A1FFA-BEE3-4634-8014-F334798102B3};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + + + true + full + false + bin\Debug\ + DEBUG;TRACE;NETFX_CORE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE;NETFX_CORE + prompt + 4 + + + true + bin\ARM\Debug\ + DEBUG;TRACE;NETFX_CORE + ;2008 + full + ARM + false + prompt + true + + + bin\ARM\Release\ + TRACE;NETFX_CORE + true + ;2008 + pdbonly + ARM + false + prompt + true + + + true + bin\x64\Debug\ + DEBUG;TRACE;NETFX_CORE + ;2008 + full + x64 + false + prompt + true + + + bin\x64\Release\ + TRACE;NETFX_CORE + true + ;2008 + pdbonly + x64 + false + prompt + true + + + true + bin\x86\Debug\ + DEBUG;TRACE;NETFX_CORE + ;2008 + full + x86 + false + prompt + true + + + bin\x86\Release\ + TRACE;NETFX_CORE + true + ;2008 + pdbonly + x86 + false + prompt + true + + + + + + + + + ..\lib\WindowsStore\Cirrious.CrossCore.dll + + + ..\lib\WindowsStore\Cirrious.CrossCore.WindowsStore.dll + + + ..\packages\WinRTXamlToolkit.1.6.1.3\lib\netcore45\WinRTXamlToolkit.dll + + + + + {c912911a-2216-447c-adf4-8dc190804d75} + Chance.MvvmCross.Plugins.UserInteraction + + + + + + + 11.0 + + + + \ No newline at end of file diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Plugin.cs b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Plugin.cs new file mode 100644 index 0000000..9e80fc2 --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Plugin.cs @@ -0,0 +1,15 @@ +using System; +using Cirrious.CrossCore.Plugins; +using Cirrious.CrossCore; + +namespace Chance.MvvmCross.Plugins.UserInteraction.WindowsStore +{ + public class Plugin : IMvxPlugin + { + public void Load() + { + Mvx.RegisterType(); + } + } +} + diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Properties/AssemblyInfo.cs b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..ced7be3 --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Properties/AssemblyInfo.cs @@ -0,0 +1,29 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// 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("Chance.MvvmCross.Plugins.UserInteraction.WindowsStore")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Chance.MvvmCross.Plugins.UserInteraction.WindowsStore")] +[assembly: AssemblyCopyright("Copyright © 2014")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] +[assembly: ComVisible(false)] \ No newline at end of file diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteraction.cs b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteraction.cs new file mode 100644 index 0000000..f9d13f3 --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteraction.cs @@ -0,0 +1,118 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows; +using Windows.UI.Popups; +using WinRTXamlToolkit.Controls; + +namespace Chance.MvvmCross.Plugins.UserInteraction.WindowsStore +{ + public class UserInteraction : IUserInteraction + { + public void Confirm(string message, Action okClicked, string title = null, string okButton = "OK", string cancelButton = "Cancel") + { + Task result = ConfirmAsync(message, title, okButton, cancelButton); + + + result.ContinueWith((button) => + { + if (button.Result) + { + //ok clicked + okClicked(); + } + }); + } + + public void Confirm(string message, Action answer, string title = null, string okButton = "OK", string cancelButton = "Cancel") + { + Task result = ConfirmAsync(message, title, okButton, cancelButton); + + result.ContinueWith((button) => answer(button.Result)); + } + + public Task ConfirmAsync(string message, string title = "", string okButton = "OK", string cancelButton = "Cancel") + { + var complete = new TaskCompletionSource(); + + var box = new MessageDialog(message, title); + + box.Commands.Add(new UICommand(okButton, delegate { complete.TrySetResult(true); })); + box.Commands.Add(new UICommand(cancelButton, delegate { complete.TrySetResult(false); })); + + box.ShowAsync(); + + return complete.Task; + } + + + public void Alert(string message, Action done = null, string title = "", string okButton = "OK") + { + + AlertAsync(message, title, okButton).ContinueWith((button) => { if (done != null) done(); }); + } + + public async Task AlertAsync(string message, string title = "", string okButton = "OK") + { + var box = new MessageDialog(message, title); + + box.Commands.Add(new UICommand(okButton)); + + await box.ShowAsync(); + } + + + public void Input(string message, Action okClicked, string placeholder = null, string title = null, string okButton = "OK", + string cancelButton = "Cancel", string initialText = null) + { + var result = InputAsync(message, placeholder, title, okButton, cancelButton); + result.ContinueWith((value) => + { + if (value.Result.Ok) + { + okClicked(value.Result.Text); + } + }); + } + + public void Input(string message, Action answer, string placeholder = null, string title = null, string okButton = "OK", + string cancelButton = "Cancel", string initialText = null) + { + var result = InputAsync(message, placeholder, title, okButton, cancelButton); + result.ContinueWith(value => answer(value.Result.Ok, value.Result.Text)); + } + + public async Task InputAsync(string message, string placeholder = null, string title = null, string okButton = "OK", + string cancelButton = "Cancel", string initialText = null) + { + var box = new InputDialog { InputText = initialText ?? string.Empty }; + var result = await box.ShowAsync(title ?? string.Empty, message, okButton, cancelButton); + return new InputResponse() {Text = box.InputText, Ok = result == okButton}; + } + + + public void ConfirmThreeButtons(string message, Action answer, string title = null, string positive = "Yes", string negative = "No", string neutral = "Maybe") + { + + var result = ConfirmThreeButtonsAsync(message, title, positive, negative, neutral); + result.ContinueWith((value) => answer(value.Result)); + } + + public Task ConfirmThreeButtonsAsync(string message, string title = null, string positive = "Yes", string negative = "No", string neutral = "Maybe") + { + var response = new TaskCompletionSource(); + + var box = new MessageDialog(message, title ?? string.Empty); + + box.Commands.Add(new UICommand(positive, delegate { response.TrySetResult(ConfirmThreeButtonsResponse.Positive); })); + box.Commands.Add(new UICommand(neutral, delegate { response.TrySetResult(ConfirmThreeButtonsResponse.Neutral); })); + box.Commands.Add(new UICommand(negative, delegate { response.TrySetResult(ConfirmThreeButtonsResponse.Negative); })); + + box.ShowAsync(); + + return response.Task; + } + } +} \ No newline at end of file diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteractionPluginBootstrap.cs b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteractionPluginBootstrap.cs new file mode 100644 index 0000000..2e3b888 --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteractionPluginBootstrap.cs @@ -0,0 +1,11 @@ +using Cirrious.CrossCore.Plugins; + +namespace .Bootstrap +{ + public class UserInteractionPluginBootstrap + : MvxLoaderPluginBootstrapAction + + { + } +} + diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/packages.config b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/packages.config new file mode 100644 index 0000000..1c98e82 --- /dev/null +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Chance.MvvmCross.Plugins.UserInteraction.sln b/Chance.MvvmCross.Plugins.UserInteraction.sln index ac335af..6859187 100644 --- a/Chance.MvvmCross.Plugins.UserInteraction.sln +++ b/Chance.MvvmCross.Plugins.UserInteraction.sln @@ -24,33 +24,103 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution readme.md = readme.md EndProjectSection EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone", "Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone\Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone.csproj", "{3856B230-5B7B-4285-B591-A36C7BBE08CB}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WindowsPhone", "WindowsPhone", "{CABB35FF-C32A-4379-ACBF-F0B19FBBC9CD}" + ProjectSection(SolutionItems) = preProject + Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone\UserInteractionPluginBootstrap.cs = Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone\UserInteractionPluginBootstrap.cs + EndProjectSection +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Chance.MvvmCross.Plugins.UserInteraction.WindowsStore", "Chance.MvvmCross.Plugins.UserInteraction.WindowsStore\Chance.MvvmCross.Plugins.UserInteraction.WindowsStore.csproj", "{53FDB605-5B5D-4EA3-959E-D3F29B37686C}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WindowsStore", "WindowsStore", "{A5CA957C-99FB-4547-8E59-5265FD6B573E}" + ProjectSection(SolutionItems) = preProject + Chance.MvvmCross.Plugins.UserInteraction.WindowsStore\UserInteractionPluginBootstrap.cs = Chance.MvvmCross.Plugins.UserInteraction.WindowsStore\UserInteractionPluginBootstrap.cs + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU + Debug|ARM = Debug|ARM + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 Release|Any CPU = Release|Any CPU + Release|ARM = Release|ARM + Release|x64 = Release|x64 + Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Debug|Any CPU.Build.0 = Debug|Any CPU - {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Release|Any CPU.ActiveCfg = Release|Any CPU - {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Release|Any CPU.Build.0 = Release|Any CPU {C912911A-2216-447C-ADF4-8DC190804D75}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {C912911A-2216-447C-ADF4-8DC190804D75}.Debug|Any CPU.Build.0 = Debug|Any CPU + {C912911A-2216-447C-ADF4-8DC190804D75}.Debug|ARM.ActiveCfg = Debug|Any CPU + {C912911A-2216-447C-ADF4-8DC190804D75}.Debug|x64.ActiveCfg = Debug|Any CPU + {C912911A-2216-447C-ADF4-8DC190804D75}.Debug|x86.ActiveCfg = Debug|Any CPU {C912911A-2216-447C-ADF4-8DC190804D75}.Release|Any CPU.ActiveCfg = Release|Any CPU {C912911A-2216-447C-ADF4-8DC190804D75}.Release|Any CPU.Build.0 = Release|Any CPU + {C912911A-2216-447C-ADF4-8DC190804D75}.Release|ARM.ActiveCfg = Release|Any CPU + {C912911A-2216-447C-ADF4-8DC190804D75}.Release|x64.ActiveCfg = Release|Any CPU + {C912911A-2216-447C-ADF4-8DC190804D75}.Release|x86.ActiveCfg = Release|Any CPU + {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Debug|ARM.ActiveCfg = Debug|Any CPU + {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Debug|x64.ActiveCfg = Debug|Any CPU + {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Debug|x86.ActiveCfg = Debug|Any CPU + {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Release|Any CPU.Build.0 = Release|Any CPU + {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Release|ARM.ActiveCfg = Release|Any CPU + {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Release|x64.ActiveCfg = Release|Any CPU + {5BE32F99-E41D-4D84-BBE8-E16A331C7767}.Release|x86.ActiveCfg = Release|Any CPU {CA487D21-3429-498C-971E-70A9C4453E6C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {CA487D21-3429-498C-971E-70A9C4453E6C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {CA487D21-3429-498C-971E-70A9C4453E6C}.Debug|ARM.ActiveCfg = Debug|Any CPU + {CA487D21-3429-498C-971E-70A9C4453E6C}.Debug|x64.ActiveCfg = Debug|Any CPU + {CA487D21-3429-498C-971E-70A9C4453E6C}.Debug|x86.ActiveCfg = Debug|Any CPU {CA487D21-3429-498C-971E-70A9C4453E6C}.Release|Any CPU.ActiveCfg = Release|Any CPU {CA487D21-3429-498C-971E-70A9C4453E6C}.Release|Any CPU.Build.0 = Release|Any CPU + {CA487D21-3429-498C-971E-70A9C4453E6C}.Release|ARM.ActiveCfg = Release|Any CPU + {CA487D21-3429-498C-971E-70A9C4453E6C}.Release|x64.ActiveCfg = Release|Any CPU + {CA487D21-3429-498C-971E-70A9C4453E6C}.Release|x86.ActiveCfg = Release|Any CPU + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Debug|ARM.ActiveCfg = Debug|ARM + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Debug|ARM.Build.0 = Debug|ARM + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Debug|x64.ActiveCfg = Debug|Any CPU + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Debug|x86.ActiveCfg = Debug|x86 + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Debug|x86.Build.0 = Debug|x86 + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Release|Any CPU.Build.0 = Release|Any CPU + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Release|ARM.ActiveCfg = Release|ARM + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Release|ARM.Build.0 = Release|ARM + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Release|x64.ActiveCfg = Release|Any CPU + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Release|x86.ActiveCfg = Release|x86 + {3856B230-5B7B-4285-B591-A36C7BBE08CB}.Release|x86.Build.0 = Release|x86 + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Debug|Any CPU.Build.0 = Debug|Any CPU + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Debug|ARM.ActiveCfg = Debug|ARM + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Debug|ARM.Build.0 = Debug|ARM + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Debug|x64.ActiveCfg = Debug|x64 + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Debug|x64.Build.0 = Debug|x64 + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Debug|x86.ActiveCfg = Debug|x86 + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Debug|x86.Build.0 = Debug|x86 + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Release|Any CPU.ActiveCfg = Release|Any CPU + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Release|Any CPU.Build.0 = Release|Any CPU + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Release|ARM.ActiveCfg = Release|ARM + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Release|ARM.Build.0 = Release|ARM + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Release|x64.ActiveCfg = Release|x64 + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Release|x64.Build.0 = Release|x64 + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Release|x86.ActiveCfg = Release|x86 + {53FDB605-5B5D-4EA3-959E-D3F29B37686C}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE EndGlobalSection GlobalSection(NestedProjects) = preSolution {7EDF8691-1C9C-4453-9564-CE4A651E7824} = {CE291FF3-DF0C-4946-B6BD-F083D5CAF14B} {BB599BA6-F8DE-43AB-80BC-68537C4C316E} = {CE291FF3-DF0C-4946-B6BD-F083D5CAF14B} + {CABB35FF-C32A-4379-ACBF-F0B19FBBC9CD} = {CE291FF3-DF0C-4946-B6BD-F083D5CAF14B} + {A5CA957C-99FB-4547-8E59-5265FD6B573E} = {CE291FF3-DF0C-4946-B6BD-F083D5CAF14B} EndGlobalSection GlobalSection(MonoDevelopProperties) = preSolution StartupItem = Chance.MvvmCross.Plugins.UserInteraction\Chance.MvvmCross.Plugins.UserInteraction.csproj EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection EndGlobal diff --git a/lib/WindowsPhone/Cirrious.CrossCore.WindowsPhone.dll b/lib/WindowsPhone/Cirrious.CrossCore.WindowsPhone.dll new file mode 100644 index 0000000000000000000000000000000000000000..f5d6e75a319c1e3e0e568710dfa02939ec767acf GIT binary patch literal 7168 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 literal 0 HcmV?d00001 diff --git a/lib/WindowsStore/Cirrious.CrossCore.WindowsStore.dll b/lib/WindowsStore/Cirrious.CrossCore.WindowsStore.dll new file mode 100644 index 0000000000000000000000000000000000000000..e1c57316a2b91fd488830d608df2722d1be2228f GIT binary patch literal 7168 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 literal 0 HcmV?d00001 diff --git a/lib/WindowsStore/Cirrious.CrossCore.dll b/lib/WindowsStore/Cirrious.CrossCore.dll new file mode 100644 index 0000000000000000000000000000000000000000..5636e0a9689621bc2456803a7a267a6b1b0835c3 GIT binary patch literal 71680 zcmeFacYIV;*EYQOIWuQ^l1Xon1VR`l1xV;MR0R=1u!7Q+CId5|NC*Ut1w{l4w^#v1 zL=YQ#t5`r0>|$>a;T91U3yK}#yVlx!P6k1r`+0xg``+EZ-wbx#|mvheK)N_{z zQwZU}_vld}p1_qp)lC1H)Ipq7@Klo6=y|>92|4KXqTv%K#R{iKBNs-;TvRx2%(Q8d znT2B~6h>!FE1Wc~u zG!@r`Pc^)+h)$Rqfg<@T;4_th$UIK3H;EHJE2v!YA>Rz)6yHyVvFC;GFt?EmDHNiv z5&muHltrIk`K(wJ>HEyKSv8rX@2xMZc)a61P3m5(OuAyZFZIkTM%?t}npV@ldea4wQOj`EpxL#)_MSkcrWla|&lqQ7NFl$kn zj&T1dvNzqRArMN3AUrP$`ScjrRvm~V+R}z7GQ=>-W!Nz1Wk5NSNiha0jw6;utZZTl zk=90vAW8uyg2pT-0$!`kvLZPoZfb;b>DtUNLwOYFVwjE)nvYk(9)`oo&M>MENr6~KtT||?83^Ln zz)uIIQp*7_(7P0a17N@p#oz!K@JBH?00!Jr3=W*BoyiQfpyV<`C{9iaeNL%y0P#>- ziot=jHil@0@vRn%FS|Lv^zBgl$CdmVMb7JUPq)1Qm+-kaOL%v zrno5uug@@Djz}pa?nnu6`Thp4y9|ITe`i=oWZ4j%ME-DrilelhVlA#1qk;~~ls8p` zzDM-3E)LU5kA%S4buAQpuIMRnA^SSCD(QD;IwEk=yULxVywNCz0eBWR&kSvY!~ z9V6h0$M75z!xIZojOZ7(W||}Di0cL&$0!FKAxokP;SS|Ph-8t}M3nUctTfp92xQ#G zyOLg0gG$01KHu1Z%&MlBNyX+3As3}&CkIM9eu zlv>g^LMIc8#|LVwF4RSIuo16Xua#+pXe3a5&k8w_XoJfLbp#JxoqeY^)vOss72j@wH%Jdp7d>A^b;fxu< zh~#acN!JzXji5d58X`4a<*Bi()tsSi)clA9Y(qxPA;1$@i`T6o@|!AqH1}Yh>J>z=cDGQV}1DfL_QcbzkprlQ&)B| ztm>`NC$c*Yb}_;S)4j1>NZ;o&YRSCItR=H9M=hCgagrf42ya=rtEMqQzm{+zx>SpDMZSFp6L>@diqh zQq9mw2%*!R4}XC$9(c>YY=GcMW+5t0^*j}404I$8=(gJ&7GH+Q6L}rTZ3-J=@DSxg zMQkAS>nI1|r;N~O*bkio4v)!YzUVs`W?~ostU1Ok8m4&$2n~V;=89A4($uKqt6Fbj zex$8T&@4+z6-P2Cilx+5`$B3|{^-BlH+p%anD(Yyk-;z(nog-BidRo&vrwN6O?}ZT zpyE1CdND~w7w_%2cu@Rl-{kS5h zL0ZzSMfTK^&J3BD_PthlO7uA}m1H>L&9Ne9;4+IQcAx8bu`6;W#K-fEvgS%;@LDl) z)(N#-S&_3Lh@1mbc3jdfo>z1}(IQ0#*B|CE?<`cCEGsu61ZEOI8%2}$&cXnx93AdB zCLgY_Qf38AdNkW%Clopl7c`|BG;rRN)N+8z)+v@F%}h$O+=~7Lb1*^8rEHM8a>MXO z)0|>@?sceqq?@U;+X`x{Tv-NnVK1$yqvt_ul`GqbjAl`ewaUf2oN#muBsm-(tJ=i) z?&IRS!UQ3WsHD+OV zMRvlILu05QExv?}*p0ATq5$dw8wv;23HB4bKQZC+LikJ{BQ_Q>Ytif-Mr<4fn{jYF z1)Fma-N9Q+HjK~&1PzlaAclrv)sjVJH-e65mE|Fe#A6h?0NS%WNTU`r8T5#jWg0t( z6)GfC%nGeURP2R!U|z{%e&}Z6@EA?&4J1YLG3TSPFl)$XGjbv9oUq&s(X=o=KAQq_ zk;tJsYD@*S@-L+0Gp*H>@&Y0*e?viu*{BoR1&u~=roTbBxn5vSG;b~nEaZjSKHAHT{^6}gR$3o~RDp9po#5gW;sSGeXQ$4f@=*h(}kq0tfUJ%7LTW=9~ z!(~P$qF`199cn*j`FTa=QB#RKzHc-{_ns$6|F&b($Ef*t>1V|zAsKjqaq$1Z3v_Z! zGBl6%>30G@?)b0$$o&7?k7)_@u>+N>8|Gc`D4d4+rnN^N>IA*!QSi_!tk44_#NO0y z$L1mqa{H!Znb_mdP-^k@Vt=D%GD1;maz;uQAs37`iV>5CFotg1w zqBvT6Pwn2>ifv<5M#ZV$fpIAqMoj?o8JZb3EJx@*@;Z@cTF%gV$}pX6AP=ID>W326DlTQi;jrV?71yn zfjpqtgE0iWIC{Dgmp~@mnCuBUZuJ?i$W`DVb2P=3pX`cU4Or%$w-6V9X{YF36t-F= zrBOe3MXrHhRnVEGBI>^D%#Ihk9sqFgcr6rhj(0Xyl4tRx%ImFg<$P-DM>0V3!tqmD zvo-{#;i$zh;J`UZ4PA{IV)A$t_GZ$$kyaO2#vog~M&YYBD?w695?%`oLY^`Iq5oi2 z!0Rl!@;Zx@61LgIFAridLj1@gBvDJO#4WrsVz05nT~%Em>Axp&d*5X%)=1!~a5ra6&&Y_{6R zs90#=t66}?rDJ*2S=Q|hUQe0jQ9EkwZ&u`9sOdWID<-a2bxz}2XXFpf7yH>YQ1LZX zc%!xM_;|z{iTl9E@wmm?lvQp%xz4;U3FC{eLAX#%yq3X5;LM?77$EjHYY{1vrvp9L z(qu;m)wBjbg_Q9zxVYxE=SGWD>IM`Zms%aMn9t=muR~npQ(J>r%x4WW9ko3ksD@pm z<}l=u`{4!Bq_$d!^g>jRU-16ctR)2ltBL)z!L_UEctd}Zp>=F1ZU>F*9bjaqn zC$>2lgDg%P99aps65@Hpun~-Xr|pmu+4=rhJI8EY-bB^drH7s*5l8o=xXp61c~ILV zIobT-A8fvrXtTFbW7sySZP|IQAiF2+!jpt#ePCcem8E0Le0&}iznq&PKo`(9=U5B;9E*CuOn)N z@5t~nfvwF%o(oo07f0$Em6^YF4Zfz zT^MxUA=*$GVX1~SwGnv~SKPMTN5yc1F%M&aO7}mM?nX+NSj?w8q@|d}B9DVj_ee_{ z<8_J0`^=65sUfry2XW`laT9( zSj<;-L|LOc`jdR4!c;|}>*)757j?u%8!sBPGY?`O+s+K0V=IvdntHvF=Rk}aKlG|H zj2a)V1xKoUMrJJq4R5I{Gv+oZM@9{vd2rMQKoCx$a59Cdhhkl5@qVaK3Q+~y%96f; zhY3skj_)pfJN*P=WGL(Dwdt^6#Ev2dwHXwwQIrhVlJAC5LkUKnfS0v+F2aG^Gvrt& z%#8v@Cq*)Golk8B>Xuu4>=s}f~#W2>me!x>1PXvl{qS=I#+ z6^~7RNp(Z5yEcs!jT*YtdMTXE9%W&@uAS3vmB6hoXCFO!)Cl3epOxvQ8&DQPJFRf9 zeAF8GSJt@COSJvK!8gZH5K9PiW8@TeP#w6$_(t`Wav$7JtKJni6Tex0Nl7 zTxBwDZ;rh}LL1#yT+D*Zcc#Ei|7J&^lH3q7G zL(GCsd-9WOEKquuhieDR6{-_evVE)wl_sCq`II2C1*u@gos6aa^9cIguF%iW0ek@v zcj~bvIFgBOp;!KTWwJ7HWkPe7+7EOP`KPNrfPo?yH(9Ms;@tx0-6(Dc?HFkbz~zfY zo51|9{Z4b1&I&q}=P@seHO-Njfpb&_d_jjRhAo{{OXh-TVm_$yF@iraTNbiqakc^; zcjyph%WBM)m6$CgO0A~+vIc+9S>^(y;-`CLXfK91L*&nh=gTcFyGGr=p>iJ$|1s)o z|NW)C-HGMS#TzJ1$88cSU7t(W06HbzI^iPzOx-$ZEMonT#N)?2B%%Ds7e(FUez?To zGgSFrW|SN0Sg2uri+wyop%)P<GK^thbzdJr2?EHPa`SExsu!#jKMWnSy^0B_) zxsxk6;)(o(u1@cGUs7z@3DOJxQ+n6x^iB{j^`GJ`wBw;kC6*_xc1sswL7T_NTXgPR z8t(lUt}1Vn&VLi*Vx^r9_1HGl44p>(ZGJOs*@?>Vs=xEC@fkBr+X!La zw<2#MT1lq2^hM=pK&R>{7+K}W@|JG!xGKDEk5VgL;g0NpKAp#?e2zyxu~G|i>fX|H zln`ZCsUMSpay;Ndq7Zf%-trGDHsp8X_QKo5D2xWY@nXSIo_m!iUK}2kKNp`#7GXxm z5RCiiWXr2lz&f+wj5e*@1ufg8x(k|ht%p|t6>~ei&!ILIHBjif6rdAEU&zL`$#WNs ztQg}i7^7ASXMlYc$?swL1r?{c3#OgZ4@(_>-gPpr@h>gcC`=2CQhb|eTu69gfhSxL z2p4$61ueq`&B6sE!YL*stRHY}nj6COhz1gE<`dIH@1QWs z@}p%4tGY&E=*rUtVW@b~Wwr{RVOqKwIaG1M7dpf3iz_CLpiaeW6`F86^e$5IxeDpY z=ngHSss4D$`4bj#8SamELH$czwDGNbI+(gik<32Xa zI56bKtQ!TA_qoiTqp`qLjV;{6Xu-YMJX>|@4u(0i7o8^MQbk-=>N>W;CaFedhMGcL z{@Fh$G*Jrk{%RrKxiA|HSi&Prs3a%h;$qJCxaTGFC=%ft;YY#J=w z^Y0yqHyt_)bc&TId5m7@3;9scb&wyO3N`xyzGEv<_Zkab!)X;XtMbylUBn%l71sR{ z>~dzeP;3MJvpIrgUWaSZ`KU~&8lh&yaXQig%<_D!@UNpG3{_rGc84dcpz9r;P*}x> z4xg3K85D||KMo#0O{T4l%y1&E$TYA?rSX*q(@;63L^>uP2$ds<5>jgnOvR#_@}Czf zh8pIq52;NWQOt(Ztq_I^tIUIjPlIR{dLfnT$?-V(e~I&PV;sMZV`iO>%trSnO7hs6 znF$Gqve_OsY42gG!e;N)gm6yiBl5^9x8{9J^{o_?%!*)+prbPGr~kqg<)g<@RZo~R z%Bzy`j9g-?&h(d_t;7LOK}A)2cUeXBdw8fGuH^|u*EvrpG->Icqi2;Yf2rHU9j+`3 zXO@Y!brV{lx=WhF2s+%Mmaq^WY?x+rYLb}F$7zbken;VVZ}{yf>tq%bhjt=MXt29* zDRWtiMx#}Pqtg-3e)iWqZe%fYRWuoD;ApNzV>#Nhb~H3B^SJqd_9aeg|Dq4Iflw*@ z^qRP-^(n0Q8*qy;>P=1u+p)lwiXlZh(z`oLAM~)eLBb z%8>K&s_5y7xm9gUkGk=p+>@;*2|bhWq)nTh#70osT=|Akc{fV3-03bDRh5OCu!%}K zkMFs777zC}LwiWqG7CmwQG_EsQ$@BJ@x3Lk1<>TaScLpwPmkv$P}1rt4RtK)wH8mx zY>TdLgt}1cgC6x=r+~p195b#)oeIw|s~f2J%IFRP4{hNywiWdIhbL-hznV#_*RWxz%k9+-&O! zcl6#9&#Wdqps(&3r-|Hhwcn(B4d_ZV=D{ZIFum5Sj$An9O`^NdTTzWgCG@MHhK9z=> z^2;H7ZK^R^1c?jjGT3Nw#PuKesvb8*{ph`t+E)xfUg)(C>{G1BXVj9K^4(?F)3+nA za*ynV01J4QSA>e8&d;5r(rHa}8GIZ_Wiksb%E0IxjIKsD^#g?bmO$f8CcXuLgToat zS=J(YK`>rwSSlrGwSrjRs0mw)xXp4k3uNH5^Lt^{?a7(+M86rNapRr}P@FJe*)S zyjnx7vK@t2J<*`ynFLqdIZ8vUzmbsbQFb@hpgj;|Naq z_cI!fCwQ&6R>KJdTTeMdL-aw!T@-inLV~YVF4xkDEVbiKA~;e$1b6O?SITUb{`#v{zLcQ&Ag(-zVBzYI zwX}v{U0t1qb6L4A?sF}{)<+-E(s=~GKN@e|^9gR86t`SQaOB9>wekXjmx)s}#OUBC z_+Is?%Sp6oU))YT!Qc1o)0$Th{OS9+*((W(!*jLtDuS=uC37{weILd>Tu894E^hf6 zf=7?;)^X7^9ffcI9`DPG2)^^qJ6d`j!6n}=(Qq-rEsw|DxSrsg6>+$P;QfyjYGrJJ zk%c#|(hy4uN8$3TFVXNuf(=_A((oq0g59bpZYGhid(bk1m9JN7O)OuLJG29(d<#M7 zYPg)^ig?}KO7Q;IFVNE42)=H2#@h+LbH-CzdI!Nzrr)UHodjn*+D*f|2!1=UM#B{Z zZ~Z;qDpnGF?X7qpSw--QjO|+aZi3Tuax}b$;O|G{W8i9nd+agrUV@L=a1Fr+8sZte zk06?rHno=EzMuZo@P2~AZo2CTHeWnNOV_h>b==eg4Ex3527>QTkN1KH3Esc|TOIcy zg17u}i-r#q{Px=iHGG8NjnhBT@KJ*AeHXX9k>Hab$KhiHdtMRm6ps^pb#q+$Z-Tp4 z?9!&5Ah>ULyq!Eru+FaErwF1jwDKl`*I)m%hEEgRGpUz`&k#)O7auU6B^a%XH>BqX zj=txRR^CkTtZOSY+(Pi%pW+EUPq6&-6Km+PS(A~@e}{4W#Scv*ifeTCqnjq!QvRf2VO@y75P!4IGNP%ERMI|@%47q|Qd z!5zD+we(Gb-(D84-yH-WZHTwYw*WI#4||&=KiM<(I|NbU+RVEID__4=!}kEgx7v5N zJ^?gBUt{4>`!NOeOS`onk(!`&h(%{?YHeOa+EHxk^cD_pj&W3@hT@*1b{JNcQA4p; zS)mBlBKpM_es+C4aJWOXDGXpmb^)Q>c@2~jUIO9k;?M!Og7-!`K}Q{pMWYCYCP6t? z15y&6rgYNyLg&Bp!FEQ@Aaj$IEY+6Pfg2e{qIpV`r9`2L;F%oNp`y-F^2}r8jnUNs zG@nYV185cG188+tO$X3ZDJ4FDRv|ioRw0t|Nj6JWh@>29hGV^H6tx+)XDWbgDF>Dr zp>I$m2EBV+TDuE{Wz-PG8PFWNjBuL8OuR>}GMj*hlimKd9PeIoNpamec%N|!t)st1 zBJ*~_aOgXPd^qa)9#?Plc_dmQj;Kw+s(be2a@% z-8;yId=TWZB;5L=_hd*7cj}YrPT&t@t%BXCBR62VW;b2wRc;ROzNigsoC+H_OHX(t z|5GR?-1hhpw*Kb1_h!XvKa}|FOyp`RBDEjD)GP+Wz8T$(j2C1_4skBZ^P@iiC+v|X zg1^cWnnh9Ze)CV1Bt6J{W?EcLZ<1IMTO-zV&FYP926mza(We>}k9p!*DH`s`LNZNz zlnL3As7CeziMv9ZdLeB+(bw=yW>{ouMQ=<*IUF zM*2{KNQ?H0y>J~u%dkR=5IyoU^!Sl~`|UAo z{!-vJ{4debf325~4MK>Zx31?l6QS>vrc&b$I zOr7enxj=)@jXT8-^*RD={OKMoy`j;ptLR_=lAnU&)c&fG0GAj+E&Bh)PF@wrz#!q~gG*Z99Rd zMT9(GnNqib8;#;TIQA=y*HQuN4egmm=z64pF0qH0j@tj=67IjF8YV-9R7d*ZNjf7z zKcV0KAm495B=kj0R@S`F5QVp*H-V`hp&=IY>8B0ofqY-IFe5$yyZE?ZCMDsg$DDcJ z3_USi*}jo%N2fvGK54cvJWzYLLchZ&AD&XAc3gotF2sr62VHe%05gbspl%gS8p-mLwcn2y?gu?qnj2ep(W%B4rIGqWtMrI4Kx)TK{p*588$%baq{@MihK5#?#l4xLD z{V3j?P}&#R+E}ibO;4Z3z3`3O?ntB)b+WKoh9xjd*gobGaW31(iM^L!w;<0rA$~X7YjK{-TJwW# z-Ux2VX_gvYk+>1T(|UL>RV9q456Kjdk4`c282eaAe@bQLrfG;DaQugqGXBSuvQ$d+ zjuDoNc*h7gtyMYVuC+IYdu!hCb@Ln4{$u>ypcsAHX^J>M-3-@Kc#BheTq4S`o3y5*ABT|Sf&l2Tn z3g8`BV&Rq`UQD6(NojFwXoi4Fl%LDRl2lEUJ76(}JD=V-F(T0t)Nf^7+^(WcMOB-sw$!+VQ%nVY8jG*yScHYpAlubO>Gl6?gjf^E_d}s}GR>9*wPg8*3TU61@ z)|C2%_}1WyibjXRJ2dzf0mENKYNti#!k16MLld{j2i zNu)t(pka%vJqtXRxSr{9rgt;l$n;fEuLyfHyh&n!w+eJLs8`(Ly%h9eP)q#jB?~D& zq7O0sAo;~)OC+WI2--J=!n0CFr&!{J6w(oq{1)fxKQfli|OAJq?@TDBiO(W@T z>7>~_gW@jCrErt{w0uiEm`~wznvl-=<`jOngmk_xp>SSH3Xf<>;ZY%?Gg_VA$`bv{ z%gVtiC+WpZZ)Exi(^r}9WqOopZUt%ft*EN7#04Cl&-B5H+biA_FJLKVi61K7hBUSH z+ZCyz4X7phw5AlNGOcHNGt(zo`YwlmXic7%x5>rHz_2!y%7vh*;={JDwMCh=ZKXSJ|#|n0T&|QcSLDS80iSremr|XG0am-B#5)HC24T^lMN{G;2rFSC}4YM>hMk zC(bSHDV*AcQZMa(JNew5Y)t5@V~WwY*V%DSESNk3{KT3R-hJ^d|~0z$WK({7Q)vPbxbYU8#}9 znzxEI`289O)&&&rMWA#bpI8Z-JGmz~@SG$eLsGwRKu)NsMwuM13Mc?s7Nh<^lwP)w z=nBJug6I{^SvHAfNgCBNO2yl~Wb+n@RSr67C8Hg(9eA0@3CX^;(E|8+1jq?l2SF&s zP^dGbVvTxmyiUe6w$g{uNgDNKbhbwQINlT>ve}=}H9(_*1~9shWm(v{P#4k zO8pI>iOB14M!U7_OxFB?Q4U5E()5{>LXJ3(Q8v(Aj5p&LwFFASNOK{_>&cpVViKd% zHJZXD7zN6~^IR9P>`HSDY&I3sIY)OxMq|=UMvs|PV@<`y9PdRS(wxJxT`Vht2NIrr z1C)wZvqY>y43h>nycP8@M!*yi0CEC7%BUHmuy~wNJ4U7ANwf~^M}dN(Ts+M-M>)P0 z_ldR|)d4wyo@1}CXVhN2%vM&imF{96%eFaQanLgpUvs(aa(uzaFDV6>KnlG?Ye{V) z%}MR0uSP93YQwTF8dWhG_| zH6R|zda%ud&cpDgujs`n%TlN}qY91sFzTsMUq&M}>c?oBMuQk#snMzI%bk|;fm43rCWF2`%)s>G^jfHrcgHT)N9$l=`Qlp5xsQ zG+gcxOBg-JXs@`L(fh3VIYt4h+izi0h%dzLj4*J+&o9J1teFDj1X|60=D4X>?HB)M zSsV8$Zm0NCJi#ae)J%LUwlKOGs6>1xwlaDcC=9fX(I-H4@_X?zBfsYqcZE18UT4$^ zs8akW-sbd%137`-l_uKD*_b~FeZuH6Mn8#Nj6P%ZtN4^r=PJ_tP3&Pb9D|z^FVuXN zp!tXRoKe>fBs(m=V5DsRDZXTMHOr1*JfzegV{}w}!)QMvA-`i3>_}FmJjkd$BSZek zXcQw;{={ejBZvHj(F@ogIE5vDW8}oz%qd**Fr!x(dE`+>zcKPkX^<~hb|=j&iR}$g zdJjU`($7ehM2<{KK)Eu-=pf$q&c-Od6SPQt;ib{&Pyc?~t zf6BekDGUB7RJg5}68r)d?hYQ2L+ic|&J{!JT&d*Mqp3%v(kT*mq>(3gr`-!qd3wlE zBs!&6f%Z!81xhxH#M$Ws5gwDiU$hnXrk{f_#VQiBGyaWmT?Xk~oAIJUayXu&+cMsB zoLTn((|?0X(I@jL=oF^cFkPMLb_T`E?Y~YA3TFqRFL!L65)?-}Qn*j2r3hci^n%XB zU)A|*Yy``*cQ~aug{S1|Jj&6zd2YKTSLbE9&a7Jp8u#R#CWpZZ<`B&R4T{ry?n}!Q zzcopAX9{OiqRCA2nHDiEV_M0y6Vskd`!OBP^c<$+nNDUplj%IB3z^=?bUD-em_E$( zNv6*--Oh9e(*~wrFg?ih52mgH@-vfZ5z{iJ?U?ptI*94HOeZqEnCSwh*Dzhi^iHO0 znLf(&Ii{~NeTV5Tru&(G!}J%XhnX6M>Tk(_*G& zOskl7XWEzPK&C^Oj$k?#l=@n_`^>s&&9gu+2F1wGd@jbKh0WaoWQjA{3+VsUYA$wIii$9WeN1z3^T84=6KI=oQ|yLr z?${jk-j2N-mgvZwoX+3coRh(k;>|8Cah7#wS2xDtwV;;h9j**o;>)f?Nyie0x)L?J zwFD=*+YTr8yd19V_BD2D=XUD~{*-Rjptp9v0`!m29?;)QyQW)WT$zwN3b70k3$nlU z&c|r^DWh%TkhdOd)`N_eW)E%s9q!Boi%4@BZYW$0S#uj*k3CQ)jS76Lu*W)s(Uq{d z25)SfXQTN*7uaYWc4V_`^ayriSJ-HcND|lCXg<&~8?D1mZH0{wp1)=GtgBmI&1VY zPz%vZqvW;&T_s|GMrQ!EBop{-bGA?ED{-#PpKZ=lQ%;dMc++S>%1~KqqlG}N#duDA zn4|VlJb7tl3pO&1fso2-#C?)iR3LM>udhmU6o=Z3XKNW*876MhvYS)p$+N_5jFgoTb{_6cStAm5j@CteDMcnYcIQVL4W8)@XgoCOJ;HxeAww z^(our1TlosHn~1!vAj^6%}ABRL@`<+L0(T3(=;NlCyBWlk=K*OwF&X2iWQ8OA>Ida zswku5ON?NS;0JP=*sM`Tut822gSY{y{KdpvM*HMQG+2=1eh>QC#z1jF!0<27iR+ol4WaEch$XeT=pWN@13GiP24BThL`( zEV`AE*UHKzVkDzwVkcymh!r*p7_-F=jYg!NV$Km)ms7l@;+oVE=3MbHBkF&PWv%#9 zA@^OWQ_OkdAfpBDwW*8cJaL%OGO;6dmN{RntRO4P#IDpDvrar|qsz<%;w2khV_r^b z_-qS&o_dpcr2;^|09|FHmT9+|SKFxfF=%)qa*jOCRjGQ(UbO%5xY{lQv{% zpQQ4oVnji@~D5gTo^9jF-R29zGv z!)npZM%#hbYeeOFuXxEup96ia5tZkC;!hhLGS`X_P9MnTfwVu&b>e&*S&sGMB8{j# zH;8&h+vE|{?FP|}4q*|G%JV@n#75bUhr|v>3&iI1v5rT?0gYZxf6v?~4%=wD<8e{l zo~$eoJJaVoo)nukdO7_{$5WynrxqkTlD^dOj3~xg1kD|(84Kle;$)4gGH!Kj79TNE zW61NQhR-(V6KNYv8wEyYtaCgs_OT}Qho^xKGukIfbE`++j`7%Fsydp+0y3(DK z`IX~UF;2@WG7kYwRWkUpM!Y7TV6;!ti1M1ar3?A8OnjJ`=X_oGyDIc8&>NyoqdzlC zoNtPkG;(K^INuT}-IQhq&^uzhMukA{iS-(lWp!|VAU?FwNzRY>m0wD)A7mekGMpYM zbdqzYI9sFPknIxnHaf}qso0^>xU93ByTu(iXQFtMvnDzJBi_>}3iO$n*;C1)S(iHZ zis`)-nxD1Exli1r(bB9H&i!IgA0=B2^ri6kRp=R@uf$Cny_vNRr@`NIDJ>Nn+wXH8 z5PxX&JPMS%_qFZ;O^^%zR| zK?F2f+6DI>R0S4L$O*ZOhx#fczeV%=)<&{rq zbTIpDD@ks(Wn-$tf=WnSv(EasbiEPTUdUruiy(p0-j25`da^?fI*0Rny z3$2#2qm~WKxelnB(N;MEnjtwvYmUj;BwERd8col+!D=PvDkSQVLMu6b0Qp%jmgX#j z>|Kpkv!>$|k}VKVF&eJXhdH-GGh>j7w>Rf5D=b@R^i9q^R;jGA(fwAL9B!jWt#Ua_ zBTw!cQ6X<;v{Yp0K4VqL`)u@*)kZ$8HQVHFFe~M5jk@H%ZB@!8r>fLX%KgM@CwFT! zDtD9UAkzmc*_7NpRtGszqdB>^S{>zjjc&~S!s;YXJ56ccnR@_eyp4XaI?KHpJ&^mG z)m2sxQJT-=7n{1vMH=k{>LGV%^i^)X=qaZSRhma~Emu!DU!%f2%T+CxD8wUlFG+ed z$33362KSlb=&8JXS0j2Yueqytf-L01^RoQe=G>Xr+SSiShw|FH`rF9N@8UYiM#cF( zT_?v;phNy9F;L!;;LAX{g3&TDK7XHcpxmKR4CoYDd^#mavVpEaa=1n@pi|{)Ml^!0 z5rgGJjJCTQQagE5iFaL2958v}=oAamq>8?a{P&6WUlj*MEwq}bakDE3MT-am*WQ*AA zWum6ZT|hT#w7AI{*BSCwjg~ig$aSV%rO}!un_Oqh`)%~H>szI0zGe_*6accT1V$ppzJ%Ix7( z6kFx~Cel4g-pfd7PL^IqOGV$FyVEAysej+Z?Vc<*uxy_sKc~otY_#7sO>VT&LDvkq zg^{v3OTNZPt>k9O)bl8HI%z9(&yw93sU7BQSxC|^=YQjdE`rjI5w`y}uQH-iddB^jJj7_LAkBZv zA>+vAR+-k~1@{xOUZcVmuehI-dsuU+_^szY=Tq`omhJOU@82X}QkraKlMIa~E2l{(E#@bnMk<@lB> zJYUEVqk3^k%X@(?Vx-2iFXddVN#|K#%BvYI5LdKZBfgURHM)h-kV)~>AMku7M={ze zD1`&^B1UTbJRq;OHJ^m+#stmp&-g*hT6ElG<{3S@H|8(j=&z6%09n4VEJ4=9ct*=&kTo&xOprA-)@#`VkTo@a z@6l+pz!=h#k@%p~zLWx^w?%w|TD>PDN* zjTQ=t2FRKlofz$rO}k_Ui;YDZt?E()bdyGVv3DvqcJ>nZ?D6dEQU=*xh2;5N*Fbha zqstkU^;VkCcHLm&IYmZP^4D3##xO<;#3kLKBTE?rG?Q=A+f6a2D63H^rS=? z{RuT_idH=+-pEmjvhfOu?LF%ui`w%MY0lAejE=* zlrgPj+6B}QCv!N)Vd9wLGUog@IyZz;@UGEv)>rob8=4qvC8v8or>pEd!yFY}f%8}? zj;GJF&UR2K=&#vG&YdAXLf914{~hAn|Hn@#ho8AL6#aw4$5N_C17o8U$u>2F(kD(l zd?E{takE%cSw2xXCB@XKG~-lMYf<52{h<^qSmy?Ki+4OZtY~5z>&g5^Y6#VCiDQVw z_M8|?wHaz@Qk;ky;16KS&)|>Q8ah0WZPqjYYNj_ZM}_Z5;Ha>&tn#H=^&jXjQui0t z!q>Mtaa!xyS|U|xZD9WYY3h{UC)wxc*-m2al!wp5A5-U-G*$T+h}Fnfo+v5x-?+{P z3HtjvoLDj{zltW-MPgXhOCtRab__gyLa7`d=D)J2`Mz+Y4xUZX`tewJPUU~(wE2rp zJZ?wk_XfpiX@@1ASs|N>s=7|BuTi)!B88%V$3LBIj$%8Bk9(5XmKxi(ccm6l_(0Gm- zIq|&z&UK+^Vt-Msh5pzze*OG7nqEe2yXA3wrKv_R748fj%!aHvl*9DYhNS21Koe6u zK0Ns^I);dWV~W|#p9dP}P+W)RA8$u-uHsmVF58iB;nWLoSGiCwK>ECe@bLzsL7ti!FRjn&=zWeXPYHm7;yXsOThJV4n znVt~!;W@p4D8zG;#d!M#Z|LEjnKXRU@y!*(A@$;K5N2Q@a1WaIdc3`~UR2=Q7EdL1 z7P|$uZ+N23E&GWSISB8#oF)q8>ChjB>lxskCDQRtk>`MS9=?}|ukalzFTq{ z&A=Try7$qRX=l*+xR*n80MnsN&tW=-=_IBzm|n_s0n>#{moi-ry4t%I^g8Qd&^6*o zrXE4zEplM%!M?WQ?AF75W5oHb&-Tp)f3d7bIOc1Gr>WN9=}^)nO6Q6bTF>`U_)6c) zWYd?!(ivh+>rK8rZ23#j`FJw*tJcqnMR*zaP2Wu-sm&DgH%YtTOGW24&w&nX^P^81 z=eMaBGsJCeiN6k18c(zh`h&)2ZFBrH#G$q!|Lw5f862asr+>YmrwEG-@@KuErv{$} zCk9H-{^bjLF3iKv*R?X5SFRFUIrY~#^>;bElf!#Ce1OA;@a)`T+15C<@;m=>7hs7&6-8sx9;FpxTU((ZPeo60z1jUZZ zGXnW6?FFAZ`v({;tHuV><@v1_OA5~o3hVchzTeg-j={d7}N$;8jg{xgXY9|e}m`k9TYoUy3JEp}P>r$hv z-8yHn?AmT$V1_se`rRO1EC)$?3VS%bnqrP*{gKQWDe0VPJUE?E7Yo|;N(vfF+YL;b zDp#}{lk^eF>cXTld0)HBl4eROpP3xDOm1vSOuJ36Pfy1cvktYihm#g?e%nF+ zhNKx{U%Tg$+R0zwPcg?TcP9qN(h|c+SOAq%t3GlF>Uc^^)F+sh9LlOueLcVivKrdPz^u)Ju9!re4w$F*j*G zJppsOq-WA^*Bp96<|Zz;+a;Z^-2;AS|9bfOrf(zrxkXNI|73E#q-SszabD^rJ*%@t z&TC%}Pw4rZo0z{)T;KkKTbIK`l`zC-7f zr#Z!-(X!KNDO=gAt(@Q2G=EB`$5UpA4V^wn4jNB)dOzh|_HCsh+7tzMvWLInZvGna z8^RmRwJ4u8;$dT8_aVWDjgj3KT2C?u=lv-8y{x~NOMZsf(j6WeA9oL>9N@GLNqYYM zFt=d`$8s3NaTs*2v_dr&v#NO@z={B$YT^lX-1WIo=rBE6kKeWV@7?Z$r25MT5ho!-j) zzUSohZfvbDbRIyM$4vB>7tkJh?RL{y7$#F+=-0>V9&*7N} zclJ+(op(G$zx2!mb$i{IVUwj>w85O|Mos3(RQzUAvP=?FMV5hIQWxtC{8j<$Ji+v7 z*4zwDH|Ai9>z5Qaox|B2&X;883UE@z1596LI?G7L+pHtae7vnW+HC4h5-V^L?h$Jp z>3C=3po2IcS@f4PX1G>(D=?!QnH6{&y8<*OI)GL&r>k%y+(&$sQGvgtK{}UESy`DPAp;qV@&QWC$2X&?Ec zxXIU7`e6AUrqUp(!yrx(hkG#{!*o3J7jSqb(?XNo~lE=}M-X zneJvP92B>ZX*JVv4vxj)6-@7D&SnnpX1du)v34`X4@eofNhM^V~mZjwq5ar$_s zI7X$71HCD&&`bPkrlXl&?juf}pENJ`Q+Nf3?`HY})6bZi0n%yCv=7tK0n#7G;meuc z&2%%<7nts5`WaJ^MEWM)S49bPxH*TbIoyZCqd7c|!u)6q=p zn66;Dndxq(B9HZ%Rx=&Vw2tWtrknG~&n--MGZp#7kxUDj7UxsGsyRHG=@_PUOjj_y zhjn&ycn{OP%n?nv9GF%!?bVbxql<{vFVu^Cj z3)A`v;_PMGw>5?9nHIO9a9tbHT)}iNbL!i&KGVLHtW!xkeXBSw)2&Qbv?KmzrsLa_ zbaw~xs;)EfMHixVU5K-S>1L+8nToFLKhtUzuKwDIx?@_$bOqDhOhqq}&hfqA+vEGg zH^P63|1$qF|HJ-I{6G7T`n`diK>NUuz`21*f%?Ghfwh4r16u+I0zU+P4fvBfCS8w?b*ovBSyJEsmv9g#XVb$;sAskfxQkos1jLCJn5C`C#RpC9!Z~{ zz9{|X^o{8srteSxGd(pUFQYKy)Qn*nCD>!0gMBZ4&nT@eXs?nk{7Wisddm?rO920} zv5GImzOxwn&X(ABhVV{X7~E3qKg%#rlw%KCfp^5(il&%xn&B@m7K?7s>WkkL>IcnX z&>RlUGoX1EG|$1`mmMK0v9qMd+Q0I>3>x$k?Z9+||8<0?``-qA!M_vqL+1bYn*UC2 zC570+bXUp>grC7iO^8=gr<+1dOS=d33Z^$QeJ1z_I0G_>4$rvPA;i>-hfhe4kGnlH z=oBK7{UPYwZ1Q||p3f!3g1ltV#d(yk<#}lcpO#PIeobZ}9BZ-!bYSr!w-B?6DcwYV zb_rQ%#k3RC?ImRGHKuPc-NE#2rdM_w7{rND_eV@OemRAH^JEsNfww75)Zr@W0OxK{ zk~l%JHv>(@UYPzaoewk}^-OjZ26wiYi z;su<7NbI_MA^aj%LQ-sFx*zS+!0&Jn{ZgC+{#T#|)@TC|4uInCVaQVuP6kD}$x}g7 z@ur`FUt1Xp+D{IHv_B}$#&Mn^#Uyza!V^L9TMv@@)@7g)>$?#M*E78t@9s%)2j0sw z@cSU65WY)}LHJHkDOSpH2(JK@;$Arc;nkp0+%GRgcrDX)auPV}K@F@K>34NDFnvf~ z1kQs@9YzFUmoWo9@K@trW0?5exDWKOaX;QKb2wr+<1rjFKrP3qC~>!A7Q$Y~C7^ys z6*x(bOQjd>ARF}-Mvv`+QacsDusIrkne9Jjwr7;@Lf=cik9=+Y6a7>CGyOIGtNe@o ztNd&I&-h>Rzw1v8lm|`@TpV~fus!frpdlcWJW07p&5~LrwM`n4bZycbNwvvWBwv?& zbMhU@_a{G`+&|^^l=UgjU?4al_;K*t;LpK7gVR!HroNwcDD7}s@ASdxcc*`!9?IyM zac;)kjQR{m9i5S>4_()LUqP>>(F~oDMN-W6Q1Dout-`=5yKB*-SCrA~o-D!v!tI}P6mzSHrYfo~Mw7``*{orUkk z_+EnVY7$5+9$qkNs+@uO;Gsyz4H|s~%#02$=LLw7e5v9im!nX8y^V zKUloSc&xtOB0gb!E3RbkR`D6*H9Gzy`uddkk>yW`KUn^}wzo~o-`458tL=WEzW%ANQc}Jg!l|zweGN#;p96i5^5;O0qkK3-hQ8*o9{w7j)^DY+<@(xIU)$?z zXMOFC_++=cT%1n!dTD$8^mPF1;TN#=b*1c*Mdi9$4(97xzB z>-BZ1=HIOGzxe79w;9UsJM{G~eO(EAvux|;1f#An|_ zF@J;|A=YXB1N!L>X^dE%JObBIa&_`JIU{9?d?O`-@CfjK zh0bAo-SV1%z}JCqI=(6R{w!Y#W*YAV{qmjQ$MQ>@^;{Fk$9I&hNxerNPJJKYkMV85 zcOSlA;rj!056f55KE`*6@n!H;`5nTU>3;K?z>i3Cn)zk$eeq>5fZcf#MvPRrK6c`m(Fqjiw6T*XjGJl4U_1S0kDD-k zCgPtcqAg_A0g*nZPl!dPUW`QJkp{r*fXKMh*u)7FM=U{FL!y!CaR1T))5wWPG#=$d zGICbw^_q#_%N#pvCi|a|&~XMS2gflRQ#pZ%y&62`q6y;%aG{TzaQcJ`C&gw)FCE?X zM1?VA>X?}qM4}gQyfep4oi)L(k$A)th{&m9m5=9)t~>#+EgS1Kefrc%F(?lpDlKS>*tBV8LE+h!X1!y_uu zL6LD&$jQcZj^&&@VJa%0ThTDMGj+mDRb4jtJKrZn+3DD&)5gWKqge6gL=|Xz7w-e{ zGVgcsglRK-MK6pg^LDd6E&??|vLA^}7#5io9j8ir_@)0}d*2=#S9acaW=L^JN}8oE zSM~}WDYLM**=={ZdhLS?u55~=w5&;y%Neb9QEi#anM>-LGjpkVNTPQQ4Bc)}r`_Bo$q|_^PMv@d%=QVxfR$&`k&a35ncd=A;rQ3h&a%>6IKs9mT$AoL*y_3wLDI(&Lv;p_dnQMRzLoGXra{Y;g65sD z60ml@QC%kXbr8;{SzzV59|{|WXobw~H(OZa5aYJa76Xxs?p});uXdt#P%Q`d+CsI< zQPhUE`Fryq2E>6pU?Z>z{aW}5k_}aVtQ9q4MU$FA3AbHI7BX)o@+~Vcuo@D&UlSM& zE%#WJq#>@3X_FGD>x~Kx@GuDRN;WzT;Wk-P>+FO>jjFb^WGR??JKX6ssXKOr*h3j? zm%)m`eyK(sxav3j9ZLvp9IV%x7?_Y9&>=1HiWRSN(}xbANeU~$ouKCMZFTB)7D!#S zQ^7;L+?Wu`QfC{;4V}8b!+C*v4U%>zcr9#&TVXA1?++8D>&u*GG1%(ttTk%;F@g(G zEmFgh8jqf(cC>ec)-PU#Ott8@eXL&>5##M>hl(qq<3y@*7(LN9UESjXmg``J+C0#J z4AdnGvP38@h=p2iY)2^up#4VR?@Cjtv(>6JLvgQg6GL>2UDLe;yx&;57gXRj7jF5D zouE1Zi@mM}5LUl7wC!5d4!8H6U3nN3@t}w6uJWLLL4g|L0I24}fQ#oGKv3cIFFdB8 zQ`&l~5;be#mMQJG+Ckk|=M;MZ6YINKYIN$zN|moPBfQhMsy7hFTV8G;>e{A82r6_a z=tSFFRyU7ycnSi;|g=V(F)qaC9_$ja+(Fc_<-|*{Uo%jt6+f(jwd5?p_O?gO2R67^_K+y2 zx;+@(L!mkp!~RN#9ham_g+NEPSLjH1s~O#0-tHX>?NpKs9fmmaeTSIM(8l`)f^t}% z_H}(Qk=XH2gks0uwOMu!Yj6acOEKypB6w+cbMvxa*@Zq_34>bIq{lrF_rXzzS;*k1 zVXJ!oUUrEC9q({ov$+Wq(9kWHa4$B1DWO4BH>{fU94akrc(}xD*4?fzH4TLpzDhxw zO}|#_YXlx}>;%&oWr&% z6;0trooz|9m*0b z$OAz14o`+|w(0HRrK}_@_zk3|B0+>_eu4QORtbK8-;mRyniO$mH%{?D6 zV%u!CZ@I)2i>bMc_0H=7B1$29VnGnv?lz*k*upc@6F4${lMG z*(35I;7)o;3U(Q&oEtvFfP&8TOgGpZ&pp`GKj%P?{tk&nEcx33I7SA5l_VEsN*|Xb zuT8UWN^QT%w3j@93(Spi53$@JTJSZn%4|!vW#y!}+<+enA%x}2Fb`%i3R>8M*jkGU zyrfP#--<&M+RaL>Q-vplAaN7df?})Y&9@RYP3l(CX}(lnD=StW7K3dcE><)xl|NJd z^;D3{gE=+zKLe>YGnXDaz=OF#Km&c!0L);2Q??xvr9;xsEk7X$$q=i`&>l#~#~n=B z-$9;1(=zr|YHs*VVY0R_HJdOAu1=pwABwFc2A#^tgXl-6NhMxxRD*k}8|eyYZJ<0@ z#&HU%iC8H$3_DuvI*|+4+@tkbtiZ-K+-WfP-wv2IW8G4#;_n4j4)QCI7OA{~l;UEz z6Sl86!V0$Gy{*@z35jjEx@!S4o2A`w@5U|IZINftE$)v!e@~lPZb`=y1%Is>_mf$z zr=^$itM(yiwLcc@-;J6;dOZks?P|mt`&F89bxVE~X*NVZ4MW9D^%OYPOmYCD1EX(@ z9E9dV2aQmfoYARS$=2)0e%6xJtto}#7KeFQT_}NudsJ(z5-`H*m9W`r$7@{M9_+D- zVUF@W?PAn8$$+TOEu@5Dpfwh%bT8l&3yQ7hteT{TS%FbO&=}oi#A+5HUN#wR{SI_T z9kq*dgWDbOB?*XaTu67qRP@q4`1lrM2QI+Xx)^VH4MwpU_;q%0jkbnTOk8aOyM(a5 zCGPmam2q|&jMv`D_;doCp46{W|0Vg1j0_T@O--94+Gc2};h5_oTMC=f6944V))Wz2 zzueN?mn2227Ua+>&6LeoeFn9D(k4a4QIg?{F8jr%pcHn0_|&e!S? z2|P+m2U&BddfQw^DyCsBcbc{R8&L$_BIn+gPLyuQSO-pX;Z{_Mkf=l{LgJUNjcv$! z(A1uIY=yO5c(|~RQx~(a4;!-RH+Q9(g}CNwRI3IJ8~{lB)uz913qhbmK6cCB4W(|? z-+=-5rMy-{qW@~sby@>~uuwu?YvQ0%p=}`MWL3%MTD2JX$*2;S5ThhdF#_dI^L8g< zmXQ!FaTbGMZ#``6LZ5@Z((b;F4eL58s>1$D6>Lzi})zTRRvCwdx{z|8E zs}=g@DnggmR@98l)msn)AMi+x zn4+s;qs`d1j_Ou>e*+s`c>PMnZ{e8lnt#Xtc%)*0^1fNCRaY3#ioomZB62>)O1!>t z4!e+bzZS%tG4do@!cu}DpAz)e{XKu*$E15^J-{*bdS`nZrDn$n=U{v5W<9zK=@G(N zDsfUEzpoZ!Bii?sM6ITQZV>O%18Z9x5{Sd+?wyX*w#^N3!2=j>?!gA| zmdqj&wXlra;XNd6ZSr!--BptKBhJ{s2kR8BhH;~0Hkl0+e-5xbPLCnVg5c+o_~|{D zx45Dn*v9dYtz}4MNhl|@>ppg+DJ~|J>?ymGq>BCes@O|9TyNF{PW%8}(iV7Mp1-L9;-vE%S1-$iQeZ+78;ug2KzoDs%1ALu9&^Zs^xqJR|BEl+~o+q5c z;uxWUy@h1S=9}=~Nwy^9J(M_OZK#kwFGATN$`|AEhwW%1Xm^?o6Uu21!(_K$(`I_K z!Hry;B6aF)6pRGKh;q?~duE)^0#;z|-U7EGHac7LW;Ink~YpXk~AO$$tHtX z2}{wEbSUgy+qC0HD6OVqQMlbfY=|t0R>+dKWk;JDYa@M9tYyGdm+Gn{sV)*y5(ARN z^4;Y|fwu*rk%BH5^tL#*%pNXawM-kAL{z3)$%UOlsMsK%-G8?W+2Wvyuqd#} z3bU8wDz-E+p;?7m(Aa?iMzR5U2yTy|9hI=|*AT;mQMJTCG)Phrf-G`22*-Is07RR0 z91Jm|2({FVP0J`(xT6nwr9!|0ZQZtG6nV;xx!Qi&eB13?1<_7erT?eMJG~Yy2M6_< zmPj+6^!^a~=mjX;*}x{JY3?Lfn8fi43PydG>~leL9G+nBJ;Y5qwMx7slmM3>;JB?L zbzV;aip9|?JB6vcn?-fF1k<8JFi{i9DrB(vY4rDhp z>7~DrCG{#sEv9YgJE-d_ z(&nn3V9;II8n-UJCy?Mhx15rx{Dmh>Fpz3Coca=&4(AoSj#z{>0vX8h=}J^&R63~W*pXB zT^P97;3Pw@>eKwK!U|G+mKYV_Oe<`gxl5HzIbN^%`wKO{)w*EjAlCEgdluyI`N5tq zO3xt|FxdZjCPsB0gvf50oLufyDA9TY%mGx+nYrX@go>HE?kY}y!nQjH$G#uCW;nR0 zW?t37-n2*rYE&2#6OB3F1YnN4z`6ZHtIE>jo)! z0b)Kd306K(hrGcyQ=$W0x^PiZig|DWOdl8y77WyZp#yb?WX}2RA!858q6_ z0Fr`nz#$7^FjZ=n)Im}j!ChetyWsTpFec-I)#*fmW-;vxo11r$*1y2j z)HgQ~`6ETMe_`8^AiWNIB{@y6-)l}Cl1r|e?lXhtD`6GK%ZayFZisiZT~jssL9J@c zF~r&S%3?ao9xy-`FBs&tBYm&C|I+M4xeHUBK zz3;Ut!W?2r&NF^}43eFlr;7aR-~@z!jSg&EB$Z*s)2{&&^`0=Pv@&m7tAS5y7co z?4He>yc>B>x?Q^Lm-Xz)aviZMBCfu3DQ&|jwAxJw9wgf)SlBv2 zNRnWbJB_YwlS>k$k0)HBPNUJDlMkJc@Z3O2Ab` z8t8$qb-IjiL}}o=e)zhB?~gIli})^-Yxu)&sM}g|@;X|PKu6tc#>e-jbWk?Ok!!|x zr68GzdNY3oPa)cnX2dr%Aj^qYLj5>uDtOi>t$z#O-SA1&L})MKyHw8M$-J?Q=LJ0P z0cwO-q=qqW-;Q)}LOW`^XTELJHU-uY$bbC%gWSTm!-SZh7;r5Qh28yyWh|mC$Tomd z4FiZcmq3J`!Cwocj6k%SfP-8MIV#ed{jUh2U=>p2^39eIb6p@gVuXO*!ic*VK?W7^ zbw78o-{|dy6kH0D5^P48iuAq7+~}Zn7k?4pkO3ri8xWNpZn-2zxx`TSInnJMz<`7Dnz;(1y#*`xFLx<>dG5{Rv1*wDsCY`zanH#7g5<5U} zSeHq3PRrgFdiAp;k)>e}io#4HJ84<)vbh8p{StQ#i>jlS>HeiOQWP~(hgv)g{Qm<4 zPd7vrRZ;u7W0qBzUjn{rmnQKoY;T$KuuzktR+JK?`-bq<$>v-5_9@u2k!MWi4?P%~ zd2X1+R1QZVI;ETPxevaxWR+}f*r;uhO4_Q5hy&%fiB;0>su^-hJpk|7Vekf_#Pj>} zn57p>>R=tSan_>flj82(dEYO499v-cIy z1?S(wZ%UzJzAba(3|%y{2%}67rd~>QlK4@B)Apl-@tl{&p7yAp3NilOcQ??j1;Q&6 z-L!3>(Zq0P2)9zMF(HkznTC$;w}Mw97zxB8Myu~=0TvA-nVYy)l9X;y&6ahm-Oml< za4!Yvb4ednVRdGS-y7EE&{T@2(Wft0^hv9<ouTNp{oO4v*X;eBIwZV7d)j=ru&&Ctlqh7T`#Sy;;Y)^p7>6QxraZpmLMsg zYTeRObQ|?#mzrGq8B&-!sUsaygh)*%1Txbi75$&%q%+lJCF+l8BL?TAH_p6q9eB8~ z!$ok87F+|z5h8sxSDs+JEwrl(?&{ff4kv*gxyXJA?j z7o;kysh5!m0rBdGGF)FZSmw$Tf9qg7mRNGVRRVO1BaO`60m{*w^_!x8Y94N_q%u7_ z>8Qe(c|&PMfquVLI`L(=#dWEsQN+m`CooQ&%^PWPR_jL1S2IdlJDw(R8Fnd6NYfBd zDHV=Ou_1Zu{}yDGEN64+&K$QnH=TUusbNY(*d%1UfRPR-L5D3gN(Y@4|ZZ zAfz)leQL(Z9r~XRdNPWn0nj?fFAdr0lc;&ge!@!i$PB){ahNMgn;3e!j@|jt0nsEs z(5!sy{h%!a-!{Gg@FH-1A6Qp4p4B}UXLMNgOJy34x;jS%hKO)#4+@OaF%k_7y+N-z zAVYAY%MzDAuS~Q7D=JtXRvv0a`<;rhiag zZGkX!%p5^`MFOZ}PHUgaecF!@E@y4P=|2oUb&0N29cAXmFdLDC?Ci;%6D}1B7Su`? zuBVxiq$N})Gap+TvI*&phID=DZLEXn?5YjMrd>VRZV7*?4*PWvmV=v!J#z!twZ#IO zSg?b8|*2CF7m$FeSz?KkSn#;J?`?T;aoLHwP^r zlT0p5F{g?5)6nsk@IHe-6<%v|PAr2DDtH>~o60&yCz809A!noHU`=uHnC= zhmUqr#z}$`Ggfiar^z&;pT8!GN=>Z=Zp(9Ck=3lewY!6N+B}= zX^O6(7k!`VU9TLQg(cy~gGW<~)4EIQ_rcg5X7v*uP@)q45)|oHjZ+=}n(s zij?+3OR!PRHcP$jPA>Ybr|wQ2%?F@#|D`j=$&R09i%WF@0ds0JV##0)4Jm@XNRSX| z^;9)T!cuM(H2*;ePa-?a{X9jF%GrX#(-7SOi5F1Iz=L(`DG}iFYv|9AWD9?~vDmj> zuD9<~@O7Dw&@bGu-8>zf{xMo>PLWyyZgeB~9yz>{ zsAiX;p62k}?lS4mO^O?#)Z`dPS2eoaO8E%e6WArpw*{EYaWb%T!j3~raDvc#V*r`9_XeN6%`h9)O zOFwe_tN&x|Z-4YJocr|pbn&gvnDMuN^PO-0@?YKmb7LpHxs11nx0{)1Gk((Rb~9f0 zyRPts9BO_BEqFgToAfv+PN1Tl#jkLjLSK{$-YHx4xc7uDJ>@-fTpI!9$1!?j%p1>+ zo{hz8Sh-do63x2PI}Mb58cj~!Wn!kH-0__T{2_EY$kuYFkT$VcoQg~ zE<1`}$&G03Q7j~0MKpY2H&Ry_c_KL@f*^}OU2E|#gD2Po_5dGlfF; zC)4R=-A~bmsY=m9{oqr|-Jeb4#HfKrgkJsk2Y!!$3HicF?+wuKO>hCv8P89iA(No? zlS=KpH!+6qS)cGGawf~S{Dc{i_tPQ;-nogQIq3!2yf-`Xq$@$>3lQ|e=-G^+BxfPX zD4wD0L5y-|A>dPI3}gi@Q|N{tw9d*iM9-TYLpuvh08oUF^ z?iakmBm^h`P_O&t6Vo>nc%H>_KC@jHRq4HoF->gQCrPOZYt)E$VB2s`uHOC9l&x@S`#5NBlz3 zBNkfszBYKahkHhs>E5dDebfO71>C(4l?5?C7F0l&!Ow9niNy(7CQDY)XU8cstQei5 zs6Y%LDkwr2fT{?IQ6ZVcGayo8X;Hu&5d+q$9f7Ef;&-7l5LC1RB^_{`%`8$#q-Avy zrt`$Xhx0JbkY*{KF62;R4NVf>fQt8MoHAM5hzw3f8+QYp#*)4s&EFs{(>$LRCX6=-YUCGb)Jfor^)m>M@ZwBA|X0ND?oR^Cn6Co(uo9G*S~XGLzXJx|XitbxmMJi;OmKCB2&;jM7uU=ezCP|J=T zVbdZo&Ezo7^3ywbg{5(@4yDrt(&zvVB|nOO`D0*nJlj$58V@ovI71Q<2lSHyXDMP- z9;38Isz=66KDILlFjHK{cn(}UfEShb#~^-Cc1t^O7%LOTrE;F4WqoxfI;R6gL9s~#2#x=Lx%rp&%(!VaCrxB17A2uqJK(9{8@stl{Vy)arfLZM}HS# z7$xCE_t(1b;fJ-%XxEs}vXTKBo;OPK=M0QJq}A-7eENq!c=71xmY@B1pZcG_@ne7U zYZs6Ix3Av*`ME!G`O3e&^2KjjdwD#uTx%Xp#bn(B2v)}mS zU;D;WwSRu;dru#E^4I^w=T3d(pUrhX_4$AO&ENXjU;H!w_%Hs#&acn@jbHoNU)lJL z*?)TK`agO1zkmJcU;g}^y*H2j)>r@if2{n--j9B#_@UqVxl`Yp`1;S|SH<%AJUrnk z;h1-dK{MmnM4Z(9A^;rCWxSIxieeinh=>Seo&VtvXAIVeA8RUSkIQ#5t>UA_A;0OP zoSm@O#qlA=94zVViSBD zi1m@vC_<}Mt6t8+@t>w)q?H#RcE*fMif=s)UkS^tx?& zolUQ6)9aHQr6Df}jOA(>BNzow=YSdu=_UiL;SO@yYyoUqJp$Std={oCTgUxYYsjOEd^V&O2P2Q24y?$#*)c%yy_co#IRQ88`J9Lws9bIYHW>aiHZ|C?Y6%q)! z$kxI{4zxz|83VU`+N(n_jzVCZ7?A&U^hEdu>`!w`lfhh%=5pxk)uqA79{u&SnVQZh z;U)5JWqJLIy#6hD{Y82G zC3*c7dHvPVF+icW{zu%bV3rABA$elWZbSUr}LcMR(%8bL(jYG#Mma`ws9YGgZS2xDi6Z(6_Tn>#k{KhH{{#9SE z55VeZ2c6Ik=3Lz`(0XK!AWVmUnG}KpF~;;1_Un)(bkN+*ckpiOC}-b6AKFxiiIkyH zBjYqc2jR#gx$!J$6{@9ywn64b;Igv$sfh_-a}Y8Q1C4|egA$J9M??utb|Qb`;Px0S z)Wqq+Q7rl(9G50&B_edp&X65$Wn?@zIzr7I0h#gugcu5rB|koXGzaR2=)^!1G+jQ1 zj0~ZA2k%TBPd`io#_>s=c!V)}7O3UDgQs8*sAqtJ3Rwny-Wa@F_rGK@>G%;?sqVL( zgA^SiWoN}PcE9Zb`O}4$Gv>t`L2<9iUtTCe^YMjpMSKFKSj87(RNA%uM8o-+3w}?> zT=~+IPtjl)b1`F{#r5gbP*{Rgzal??5mt(I{Sh-A^jyZA9X3e6ycN)gj^b(#rbP0l zpeY9z#n*~F8p^C}FDL~Wuw5SDDw0@uoLa#x86tY2%s~-j5#b}2KXLFAC@|VDn&aqr z92Fq00L_a-$jiLnb#CZ@?upK=Jb~TT!B2s4$01mS!XsqsPr>xU=<>f~l%iwUB=LbL z%yQ6i^qTc11OT>@R#gukgIF@7HbseonqlZ;NSUArTjX31J0k*_04!_@(1=*qTgua2 zdP|s)vKPnv5EM%b&QJY5Fu(%R^P3R6To$q=KDhf1DcTl_igSJkJ3*-XyC4ChbnXrb zAeY4}gl^i<7cp9ft}#&Zp5XSk;5|d5@p*s%uRgCmprYu>K={p!d3xsBQh6O;I?d1M zK5f6X;N?3PXU;y2E9=|%vVoWF`?=>{%$Rci(fErY__-c@AeuMYA0?Ec15@M&6N2^! zGsYYIFcor~%y#0JCe65OHAecnZ*(Yr?Mubt`LpLP;9L>81bjIOei_!}&dr?Ve~=bb z5(EqQ9bf!A!&tnW{Q$pb3ty?Np9+LC#V1wp6EHI0*S`6^4R+n1)NTe-RV+H0!|8*8P~&GRHo3c;5>_`M)Bzx+CD6!^y&dm5A_0pUffV9Um5)@fM$RbFB9;Lac2mm zJ?Z1F;GM-Kp)Jw??>NZ72^TLO@no}sME*6r%jI^o_n$#>&UK{D@hj67+eJB!7&wg^ zGIl0)Zpj&WkimavVXhK*uc5Yyl_qOECs!SK-GP6c|AXjHD(Mv%9zfJmSoh;RY~C51 z{PB#A|6ajwkHhL=UVH@=>WJGO=s;@j;Oq~d_Zd=GG+%>%*%mOa=2fF#P)Kj de;nugf&VLJ%rQ**E0=!YGylPazYi$zzX3l-<`)0} literal 0 HcmV?d00001 From 2a6e9f3950511eb8eb269240a8ffb3949bbf50dd Mon Sep 17 00:00:00 2001 From: Christian Ruiz Date: Tue, 13 May 2014 16:24:18 +0200 Subject: [PATCH 2/2] NuGet package support --- ...s => UserInteractionPluginBootstrap.cs.pp} | 2 +- ...s => UserInteractionPluginBootstrap.cs.pp} | 2 +- ...lugins.UserInteraction.WindowsPhone.csproj | 4 +-- ...s => UserInteractionPluginBootstrap.cs.pp} | 2 +- ...lugins.UserInteraction.WindowsStore.csproj | 4 +-- ...s => UserInteractionPluginBootstrap.cs.pp} | 2 +- Chance.MvvmCross.Plugins.UserInteraction.sln | 13 ++++--- ...Cross.Plugins.UserInteraction.1.0.0.nuspec | 36 +++++++++++++++++++ 8 files changed, 53 insertions(+), 12 deletions(-) rename Chance.MvvmCross.Plugins.UserInteraction.Droid/{UserInteractionPluginBootstrap.cs => UserInteractionPluginBootstrap.cs.pp} (83%) rename Chance.MvvmCross.Plugins.UserInteraction.Touch/{UserInteractionPluginBootstrap.cs => UserInteractionPluginBootstrap.cs.pp} (86%) rename Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/{UserInteractionPluginBootstrap.cs => UserInteractionPluginBootstrap.cs.pp} (87%) rename Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/{UserInteractionPluginBootstrap.cs => UserInteractionPluginBootstrap.cs.pp} (87%) create mode 100644 nuget/Chance.MvvmCross.Plugins.UserInteraction.1.0.0.nuspec diff --git a/Chance.MvvmCross.Plugins.UserInteraction.Droid/UserInteractionPluginBootstrap.cs b/Chance.MvvmCross.Plugins.UserInteraction.Droid/UserInteractionPluginBootstrap.cs.pp similarity index 83% rename from Chance.MvvmCross.Plugins.UserInteraction.Droid/UserInteractionPluginBootstrap.cs rename to Chance.MvvmCross.Plugins.UserInteraction.Droid/UserInteractionPluginBootstrap.cs.pp index c58656d..3a6d392 100644 --- a/Chance.MvvmCross.Plugins.UserInteraction.Droid/UserInteractionPluginBootstrap.cs +++ b/Chance.MvvmCross.Plugins.UserInteraction.Droid/UserInteractionPluginBootstrap.cs.pp @@ -1,6 +1,6 @@ using Cirrious.CrossCore.Plugins; -namespace .Bootstrap +namespace $rootnamespace$.Bootstrap { public class UserInteractionPluginBootstrap : MvxLoaderPluginBootstrapAction diff --git a/Chance.MvvmCross.Plugins.UserInteraction.Touch/UserInteractionPluginBootstrap.cs b/Chance.MvvmCross.Plugins.UserInteraction.Touch/UserInteractionPluginBootstrap.cs.pp similarity index 86% rename from Chance.MvvmCross.Plugins.UserInteraction.Touch/UserInteractionPluginBootstrap.cs rename to Chance.MvvmCross.Plugins.UserInteraction.Touch/UserInteractionPluginBootstrap.cs.pp index d82fb71..d1d124e 100644 --- a/Chance.MvvmCross.Plugins.UserInteraction.Touch/UserInteractionPluginBootstrap.cs +++ b/Chance.MvvmCross.Plugins.UserInteraction.Touch/UserInteractionPluginBootstrap.cs.pp @@ -1,6 +1,6 @@ using Cirrious.CrossCore.Plugins; -namespace .Bootstrap +namespace $rootnamespace$.Bootstrap { public class UserInteractionPluginBootstrap : MvxLoaderPluginBootstrapAction diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone.csproj b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone.csproj index 6238829..d2827b1 100644 --- a/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone.csproj +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone.csproj @@ -26,7 +26,7 @@ true full false - Bin\Debug + ..\bin\Debug\WindowsPhone\ DEBUG;TRACE;SILVERLIGHT;WINDOWS_PHONE true true @@ -37,7 +37,7 @@ pdbonly true - Bin\Release + ..\bin\Release\WindowsPhone\ TRACE;SILVERLIGHT;WINDOWS_PHONE true true diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteractionPluginBootstrap.cs b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteractionPluginBootstrap.cs.pp similarity index 87% rename from Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteractionPluginBootstrap.cs rename to Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteractionPluginBootstrap.cs.pp index dc6faab..43cf71d 100644 --- a/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteractionPluginBootstrap.cs +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone/UserInteractionPluginBootstrap.cs.pp @@ -1,6 +1,6 @@ using Cirrious.CrossCore.Plugins; -namespace .Bootstrap +namespace $rootnamespace$.Bootstrap { public class UserInteractionPluginBootstrap : MvxLoaderPluginBootstrapAction diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore.csproj b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore.csproj index fe5b658..c06592e 100644 --- a/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore.csproj +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore.csproj @@ -19,7 +19,7 @@ true full false - bin\Debug\ + ..\bin\Debug\WindowsStore\ DEBUG;TRACE;NETFX_CORE prompt 4 @@ -27,7 +27,7 @@ pdbonly true - bin\Release\ + ..\bin\Release\WindowsStore\ TRACE;NETFX_CORE prompt 4 diff --git a/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteractionPluginBootstrap.cs b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteractionPluginBootstrap.cs.pp similarity index 87% rename from Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteractionPluginBootstrap.cs rename to Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteractionPluginBootstrap.cs.pp index 2e3b888..976df7b 100644 --- a/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteractionPluginBootstrap.cs +++ b/Chance.MvvmCross.Plugins.UserInteraction.WindowsStore/UserInteractionPluginBootstrap.cs.pp @@ -1,6 +1,6 @@ using Cirrious.CrossCore.Plugins; -namespace .Bootstrap +namespace $rootnamespace$.Bootstrap { public class UserInteractionPluginBootstrap : MvxLoaderPluginBootstrapAction diff --git a/Chance.MvvmCross.Plugins.UserInteraction.sln b/Chance.MvvmCross.Plugins.UserInteraction.sln index 6859187..8bda8f1 100644 --- a/Chance.MvvmCross.Plugins.UserInteraction.sln +++ b/Chance.MvvmCross.Plugins.UserInteraction.sln @@ -11,12 +11,12 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Bootstrap", "Bootstrap", "{ EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Droid", "Droid", "{7EDF8691-1C9C-4453-9564-CE4A651E7824}" ProjectSection(SolutionItems) = preProject - Chance.MvvmCross.Plugins.UserInteraction.Droid\UserInteractionPluginBootstrap.cs = Chance.MvvmCross.Plugins.UserInteraction.Droid\UserInteractionPluginBootstrap.cs + Chance.MvvmCross.Plugins.UserInteraction.Droid\UserInteractionPluginBootstrap.cs.pp = Chance.MvvmCross.Plugins.UserInteraction.Droid\UserInteractionPluginBootstrap.cs.pp EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Touch", "Touch", "{BB599BA6-F8DE-43AB-80BC-68537C4C316E}" ProjectSection(SolutionItems) = preProject - Chance.MvvmCross.Plugins.UserInteraction.Touch\UserInteractionPluginBootstrap.cs = Chance.MvvmCross.Plugins.UserInteraction.Touch\UserInteractionPluginBootstrap.cs + Chance.MvvmCross.Plugins.UserInteraction.Touch\UserInteractionPluginBootstrap.cs.pp = Chance.MvvmCross.Plugins.UserInteraction.Touch\UserInteractionPluginBootstrap.cs.pp EndProjectSection EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{C6C2BCE6-73AC-4EDC-A08D-B12B2FF434CB}" @@ -28,14 +28,19 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Chance.MvvmCross.Plugins.Us EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WindowsPhone", "WindowsPhone", "{CABB35FF-C32A-4379-ACBF-F0B19FBBC9CD}" ProjectSection(SolutionItems) = preProject - Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone\UserInteractionPluginBootstrap.cs = Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone\UserInteractionPluginBootstrap.cs + Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone\UserInteractionPluginBootstrap.cs.pp = Chance.MvvmCross.Plugins.UserInteraction.WindowsPhone\UserInteractionPluginBootstrap.cs.pp EndProjectSection EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Chance.MvvmCross.Plugins.UserInteraction.WindowsStore", "Chance.MvvmCross.Plugins.UserInteraction.WindowsStore\Chance.MvvmCross.Plugins.UserInteraction.WindowsStore.csproj", "{53FDB605-5B5D-4EA3-959E-D3F29B37686C}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WindowsStore", "WindowsStore", "{A5CA957C-99FB-4547-8E59-5265FD6B573E}" ProjectSection(SolutionItems) = preProject - Chance.MvvmCross.Plugins.UserInteraction.WindowsStore\UserInteractionPluginBootstrap.cs = Chance.MvvmCross.Plugins.UserInteraction.WindowsStore\UserInteractionPluginBootstrap.cs + Chance.MvvmCross.Plugins.UserInteraction.WindowsStore\UserInteractionPluginBootstrap.cs.pp = Chance.MvvmCross.Plugins.UserInteraction.WindowsStore\UserInteractionPluginBootstrap.cs.pp + EndProjectSection +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NuGet", "NuGet", "{DC07D288-0C1B-41A0-A814-0C285F6BDB65}" + ProjectSection(SolutionItems) = preProject + nuget\Chance.MvvmCross.Plugins.UserInteraction.1.0.0.nuspec = nuget\Chance.MvvmCross.Plugins.UserInteraction.1.0.0.nuspec EndProjectSection EndProject Global diff --git a/nuget/Chance.MvvmCross.Plugins.UserInteraction.1.0.0.nuspec b/nuget/Chance.MvvmCross.Plugins.UserInteraction.1.0.0.nuspec new file mode 100644 index 0000000..3b89971 --- /dev/null +++ b/nuget/Chance.MvvmCross.Plugins.UserInteraction.1.0.0.nuspec @@ -0,0 +1,36 @@ + + + + Chance.MvvmCross.Plugins.UserInteraction + 1.0.0 + Brian Chance + false + MvvmCross plugin for interacting with the user from a view model. + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file